Redigerer
3DNow!
Hopp til navigering
Hopp til søk
Advarsel:
Du er ikke innlogget. IP-adressen din vil bli vist offentlig om du redigerer. Hvis du
logger inn
eller
oppretter en konto
vil redigeringene dine tilskrives brukernavnet ditt, og du vil få flere andre fordeler.
Antispamsjekk.
Ikke
fyll inn dette feltet!
[[Fil:3dnow-logo.svg|thumb|3DNow!-logoen]] '''3DNow!''' er en [[IA-32]] [[SIMD]] multimedia-utvidelse i [[AMD]]s prosessorer, som ble lansert sammen med [[AMD K6-2]] i 1998. 3DNow! er en tilføyelse av SIMD-instruksjoner i den tradisjonelle [[x86-arkitektur]]en, som forbedrer prosessorens ytelse under utføring av [[vektorprosessor|vektorprosessering]] i grafikk-krevende programmer. == Historie == 3DNow! ble utviklet som en forbedring og konkurrent til [[MMX]]. Mens MMX bare arbeidet med heltalls-beregninger kunne 3DNow! også akselerere grafiske operasjoner basert på desimaltalls-beregninger. Dette var strategisk viktig for AMD, ettersom [[Intel Pentium II]] var raskere enn [[AMD K6]] til å utføre intensiv desimaltalls-matematikk. 3DNow! ble lansert på en tid da [[3D-grafikk|tredimensjonal grafikk]] eksploderte i popularitet innenfor [[videospill]] som i stor grad var avhengig av desimaltalls-beregninger. == Oversikt == 3DNow! består av 21 nye instruksjoner for SIMD desimaltall- og heltallsberegninger, ''data prefetch'' og raskere svitsjing mellom MMX og desimaltall. Sammen med [[Intel Pentium III]], lanserte [[Intel]] i 1999 det lignende (men [[Kompatibilitet (teknologi)|inkompatible]]) [[instruksjonssett]]et [[Streaming SIMD Extensions]] (SSE). == Videreutvikling == AMD videreutviklet 3DNow! over tid. [[AMD K6-III]], lansert i 1999, tilføyde fem nye [[Digital signalprosessor|DSP]]-instruksjoner, men ikke de 19 nye MMX-instruksjonene. Ved lanseringen av [[Athlon]]-prosessoren i 1999, ble det tilføyd 24 nye instruksjoner som delvis implementerte SSE og utførte ''prefetch'' av instruksjoner. AMD kalte denne forbedringen for henholdsvis '''Enhanced 3DNow!''', '''Extended 3DNow!''' og '''3DNow!+'''. [[Athlon#Athlon XP|AMD Athlon XP]], lansert i 2001, hadde full støtte for både SSE og ''Enhanced 3DNow!''. Denne forbedringen ble kalt '''3DNow! Professional'''. På [[system on a chip]]-serien [[AMD Geode]] (2003) ble det tilføyd to nye instruksjoner – <code>PFRSQRTV</code> (innbyrdes kvadratrot-avrunding av to 32-bit desimaltall) og <code>PFRCPV</code> (innbyrdes avrunding av to 32-bit desimaltall), som ikke er blitt implementert i noen annen mikroprosessor. == Fordeler og ulemper == En fordel med 3DNow! er at to tall kan adderes eller multipliseres i et og samme register, mens SSE bruker to registre til samme operasjon. Denne egenskapen ved 3DNow!, kalt «horisontal» av Intel, ble senere tilføyd [[SSE3]]. En ulempe med 3DNow!, sammenlignet med SSE, er at 3DNow! bare kan lagre to tall i et register, mens SSE kan lagre fire tall i et register. Imidlertid har 3DNow!, på grunn av sin kortere latens, høyere båndbredde enn SSE. På samme måte som MMX deler 3DNow! sine registre med desimaltallsenheten ([[x87]]), mens SSE har sine egne, uavhengige registre. Verken 3DNow! eller MMX kan derfor utføres samtidig med desimaltallsenheten, men benytter de tradisjonelle x87 instruksjonene <code>FNSAVE</code> og <code>FRSTR</code>, for å lagre og gjenopprette registrenes tilstand ved kontekst-skifte. Dette ble gjort for at det ikke skulle bli nødvendig å endre [[operativsystem]]ene for å dra nytte av 3DNow!. SSE bruker to nye x86-instruksjoner – <code>FXSAVE</code> og <code>FXRSTR</code>, til å lagre og gjenopprette registrenes tilstand uavhengig av og parallelt med desimaltalls-enheten. Disse to nye instruksjonene kan også lagre x87-registrenes tilstander, og kan dermed også lagre MMX- og 3DNow!-instruksjoner. 3DNow! og SSE kan kombineres på Athlon XP og [[AMD K8]] i et og samme program, ved å skrive programmet i [[assembler]]. == Avvikling av 3DNow! == I 2010 annonserte AMD at de ikke lenger ville inkludere 3DNow!-instruksjonssettet i fremtidige prosessorer og anbefalte programmerere å avslutte bruken av det.<ref>{{Kilde www |url=http://developer.amd.com/wordpress/media/2012/10/26569_APM_v5.pdf |tittel=AMD64 Architecture Programmer’s Manual Volume 5: 64-Bit Media and x87 Floating-Point Instructions |utgiver=AMD |dato=mars 2012 |besøksdato=2019-02-16 |format=PDF |side=18, 333 |språk=en}}</ref><ref>{{Kilde www |url=http://blogs.amd.com/developer/2010/08/18/3dnow-deprecated/ |tittel=3DNow! Instructions are Being Deprecated |utgiver=AMD |forfatter=Sharon Troia |dato=2010-08-18 |besøksdato=2019-02-16 |url-status=død |arkivurl=https://web.archive.org/web/20100824061554/http://blogs.amd.com/developer/2010/08/18/3dnow-deprecated/ |arkivdato=24. august 2010 |språk=en}}</ref> == Se også == * [[MMX]] * [[Streaming SIMD Extensions|SSE]] * [[SSE2]] * [[SSE3]] == Referanser == <references /> == Eksterne lenker == * {{Språkikon|en}} [https://www.amd.com/system/files/TechDocs/21928.pdf 3DNow! Technology Manual] ([[PDF]]) hos [[AMD]] * {{Språkikon|en}} {{Kilde www |url=http://www1.amd.com/products/cpg/3dnow/optimized/ |tittel=3DNow!™ Technology Partners |besøksdato=2019-02-16 |arkiv-url=https://web.archive.org/web/20010124000000/http://www1.amd.com/products/cpg/3dnow/optimized/ |arkivdato=2001-01-24 |url-status=død }} {{Autoritetsdata}} [[Kategori:Advanced Micro Devices]] [[Kategori:X86-instruksjoner]] [[Kategori:SIMD]] [[Kategori:IT-relaterte introduksjoner i 1998]]
Redigeringsforklaring:
Merk at alle bidrag til Wikisida.no anses som frigitt under Creative Commons Navngivelse-DelPåSammeVilkår (se
Wikisida.no:Opphavsrett
for detaljer). Om du ikke vil at ditt materiale skal kunne redigeres og distribueres fritt må du ikke lagre det her.
Du lover oss også at du har skrevet teksten selv, eller kopiert den fra en kilde i offentlig eie eller en annen fri ressurs.
Ikke lagre opphavsrettsbeskyttet materiale uten tillatelse!
Avbryt
Redigeringshjelp
(åpnes i et nytt vindu)
Maler som brukes på denne siden:
Mal:Autoritetsdata
(
rediger
)
Mal:ISOtilNorskdato
(
rediger
)
Mal:Kilde www
(
rediger
)
Mal:Språkikon
(
rediger
)
Modul:Citation/CS1
(
rediger
)
Modul:Citation/CS1/COinS
(
rediger
)
Modul:Citation/CS1/Configuration
(
rediger
)
Modul:Citation/CS1/Date validation
(
rediger
)
Modul:Citation/CS1/Identifiers
(
rediger
)
Modul:Citation/CS1/Utilities
(
rediger
)
Modul:Citation/CS1/Whitelist
(
rediger
)
Modul:External links
(
rediger
)
Modul:External links/conf
(
rediger
)
Modul:External links/conf/Autoritetsdata
(
rediger
)
Modul:Genitiv
(
rediger
)
Modul:ISOtilNorskdato
(
rediger
)
Navigasjonsmeny
Personlige verktøy
Ikke logget inn
Brukerdiskusjon
Bidrag
Opprett konto
Logg inn
Navnerom
Side
Diskusjon
norsk bokmål
Visninger
Les
Rediger
Rediger kilde
Vis historikk
Mer
Navigasjon
Forside
Siste endringer
Tilfeldig side
Hjelp til MediaWiki
Verktøy
Lenker hit
Relaterte endringer
Spesialsider
Sideinformasjon