Michael Abrash | |
---|---|
Data nașterii | Secolului 20 |
Țară | |
Ocupaţie | inginer , programator de jocuri , informatician |
Michael Abrash este un programator și scriitor tehnic specializat în optimizarea codului , programarea în limbaj de asamblare pentru arhitectura 80x86 . Reputația de specialist i-a fost fixată după apariția în 1990 a cărții sale Zen of Assembly Language Volume 1: Knowledge [1] . Această temă a fost continuată mai târziu în noua sa carte Zen of Graphics Programming [2] . El își începe adesea discuțiile tehnice cu o anecdotă care arată o paralelă între experiența sa din viața reală și subiectul discuției. Stilul său de prezentare îi face pe cititori să gândească diferit (în afara cutiei) și să caute o abordare complet nouă pentru rezolvarea problemelor tehnice.
Înainte de a deveni un scriitor tehnic, Abrash a fost programator de jocuri în primele zile ale IBM PC . Primul său joc comercial a fost Space Strike , lansat în 1982. A scris mai multe jocuri împreună cu Dan Illowski, care a scris anterior „ Snack Attack ” pentru Apple II . Abrash și Illowski au lucrat împreună la „ Cosmic Crusader ” (1982), „ Big Top ” (1983) și „ Snack Attack II ” [3] .
După ce a lucrat pentru Microsoft pe grafică și asamblare în Windows NT 3.1 , sa întors în industria jocurilor video și sa alăturat id Software la mijlocul anilor 1990 pentru a lucra la Quake . În acele vremuri, Michael a luat parte și la dezvoltarea lui Doom . Unele dintre tehnologiile folosite în Quake sunt descrise în Abrash's Ramblings in Realtime, publicat în Dr. Dobb [4] . După ce Quake a fost lansat, Abrash s-a întors la Microsoft unde a lucrat la recunoașterea limbajului natural, apoi s-a mutat în echipa Xbox până în 2001.
În 2002, Abrash s-a alăturat RAD Game Tools , unde a co-creat Pixomatic, un software de randare care emulează funcționalitatea plăcilor video de nivel DirectX 7 utilizate în Unreal Tournament 2004 . La sfârșitul anului 2005, Pixomatic a fost achiziționat de Intel . În timpul dezvoltării Pixomatic, Abrash și Mike Sartain au proiectat arhitectura Larrabee , care este acum utilizată de Intel în tehnologia sa GPGPU [5] .
Gabe Newell , directorul Valve , a spus că „a încercat să-l angajeze pe Michael Abrash tot timpul. Cam o dată pe trimestru ieșeam împreună la prânz și am întrebat: „Ești gata să ni te alături?” [6] . În 2011, Abrash sa alăturat Valve [7] .
În 2014, Abrash a părăsit Valve pentru a se alătura companiei Oculus VR , o companie de dezvoltare de dispozitive de realitate virtuală (cu câteva luni mai devreme, programatorul id Software John Carmack, cu care Abrash a lucrat la Quake, s-a alăturat companiei).
Michael Abrash a fost editorialist pentru Programmer's Journal în anii 1980. În 1989, aceste articole au fost adunate în cartea Power Graphics Programming.
A doua sa carte, Zen of Assembly Language (1990), sa concentrat pe scrierea unui cod de asamblare eficient pentru procesoare Intel 8086 pe 16 biți , dar după publicarea sa, noul procesor Intel 80486 [8] era deja disponibil . O a doua parte planificată a unei cărți despre programarea grafică nu a fost niciodată lansată. Mesajul cheie al Zen of Assembly Language a fost că performanța ar trebui întotdeauna măsurată, iar cartea a inclus un instrument pentru a face acest lucru, numit Zen Timer, pentru a testa dacă optimizările teoretice ale codului ar funcționa.
O mare parte din conținutul din Zen of Assembly Language a fost actualizat în Zen of Code Optimization: The Ultimate Guide to Writing Software That Pushes PCs to the Limit (1994) și a fost adăugat material nou [9] . Prezentarea Îmbunătățirea programului incremental a demonstrat cum upgrade-urile algoritmilor pot îmbunătăți performanța de până la 100 de ori. Pe de altă parte, rescrierea în asamblare poate îmbunătăți performanța doar de până la 10 ori.
Cartea lui Abrash „Graphics Programming Black Book” [10] [11] a fost publicată în 1997 . Era o colecție de articole de la Dr. Dobb și evoluțiile referitoare la subsistemul grafic Quake .
Software de identificare | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Jocuri |
| ||||||||||||||||
Angajații |
| ||||||||||||||||
Companie |
| ||||||||||||||||
Tehnologie | |||||||||||||||||
Alte |
|
Site-uri tematice | ||||
---|---|---|---|---|
Dicționare și enciclopedii | ||||
|