Michael Abrash | |
---|---|
Syntymäaika | 20. vuosisata |
Maa | |
Ammatti | insinööri , peliohjelmoija , tietojenkäsittelytieteilijä |
Michael Abrash on ohjelmoija ja tekninen kirjoittaja , joka on erikoistunut koodin optimointiin , kokoonpanokieliohjelmointiin 80x86 -arkkitehtuurille . Asiantuntijan maine vahvistui hänen kirjansa Zen of Assembly Language Volume 1: Knowledge [1] ilmestymisen jälkeen vuonna 1990 . Tätä teemaa jatkettiin myöhemmin hänen uudessa kirjassaan Zen of Graphics Programming [2] . Hän aloittaa usein tekniset keskustelunsa anekdootilla, joka osoittaa rinnakkaisuuden hänen tosielämän kokemuksensa ja puheen aiheen välillä. Hänen esitystyylinsä saa lukijat ajattelemaan eri tavalla (laatikon ulkopuolella) ja etsimään täysin uutta lähestymistapaa teknisten ongelmien ratkaisemiseen.
Ennen kuin hänestä tuli tekninen kirjoittaja, Abrash oli peliohjelmoija IBM PC :n alkuaikoina . Hänen ensimmäinen kaupallinen pelinsä oli Space Strike , joka julkaistiin vuonna 1982. Hän kirjoitti useita pelejä yhdessä Dan Illowskin kanssa, joka kirjoitti aiemmin " Snack Attackin " Apple II :lle . Abrash ja Illowski työskentelivät yhdessä elokuvissa " Cosmic Crusader " (1982), " Big Top " (1983) ja " Snack Attack II " [3] .
Työskenneltyään Microsoftille grafiikan ja kokoonpanon parissa Windows NT 3.1 :ssä hän palasi videopeliteollisuuteen ja liittyi id Softwareen 1990-luvun puolivälissä työskentelemään Quaken parissa . Tuolloin Michael osallistui myös Doomin kehittämiseen . Jotkut Quakessa käytetyistä teknologioista on kuvattu Abrash's Ramblings in Realtimessa, julkaistu Dr. Dobb [4] . Quaken julkaisun jälkeen Abrash palasi Microsoftille, jossa hän työskenteli luonnollisen kielentunnistuksen parissa, minkä jälkeen hän siirtyi Xbox -tiimiin vuoteen 2001 asti.
Vuonna 2002 Abrash liittyi RAD Game Toolsiin, jossa hän loi Pixomaticin , renderöintiohjelmiston , joka emuloi Unreal Tournament 2004 :ssä käytettyjen DirectX 7 -tason näytönohjainkorttien toimintoja . Vuoden 2005 lopulla Intel osti Pixomaticin . Pixomaticin kehittämisen aikana Abrash ja Mike Sartain suunnittelivat Larrabee -arkkitehtuurin , jota Intel käyttää nyt GPGPU -teknologiassaan [5] .
Gabe Newell , Valven johtaja , sanoi, että hän "yritti palkata Michael Abrashia koko ajan. Noin kerran vuosineljänneksessä kävimme yhdessä lounaalla, ja kysyin: "Oletko valmis liittymään meihin?" [6] . Vuonna 2011 Abrash liittyi Valveen [7] .
Vuonna 2014 Abrash jätti Valven liittyäkseen virtuaalitodellisuuslaitteita kehittävään Oculus VR :ään (muutamaa kuukautta aiemmin yhtiöön liittyi myös id Softwaren ohjelmoija John Carmack, jonka kanssa Abrash työskenteli Quaken parissa).
Michael Abrash oli kolumnisti Programmer's Journalissa 1980-luvulla. Vuonna 1989 nämä artikkelit koottiin kirjaan Power Graphics Programming.
Hänen toinen kirjansa Zen of Assembly Language (1990) keskittyi tehokkaan kokoonpanokoodin kirjoittamiseen 16-bittisille Intel 8086 -prosessoreille , mutta sen julkaisun jälkeen uusi Intel 80486 -prosessori [8] oli jo saatavilla . Graafista ohjelmointia käsittelevän kirjan suunniteltua toista osaa ei koskaan julkaistu. Zen of Assembly Languagen avainsanoma oli, että suorituskykyä tulisi aina mitata, ja kirja sisälsi sitä varten työkalun, nimeltään Zen Timer, jolla testattiin, toimisivatko teoreettiset koodin optimoinnit.
Suuri osa Zen of Assembly Language -ohjelman sisällöstä päivitettiin Zen of Code Optimization: The Ultimate Guide to Writing Software That Pushes PCs to the Limit (1994) -julkaisussa, ja uutta materiaalia lisättiin [9] . Incremental Program Improvement -esitys osoitti, kuinka algoritmien päivitykset voivat parantaa suorituskykyä jopa 100 kertaa. Toisaalta uudelleenkirjoittaminen assemblerissä voi parantaa suorituskykyä vain jopa 10 kertaa.
Abrashin kirja "Graphics Programming Black Book" [10] [11] julkaistiin vuonna 1997 . Se oli kokoelma artikkeleita Dr. Dobb's ja Quake -grafiikkaalijärjestelmän kehitys .
ID-ohjelmisto | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pelit |
| ||||||||||||||||
Työntekijät |
| ||||||||||||||||
Yhtiö | |||||||||||||||||
Tekniikka | |||||||||||||||||
Muut |
|
![]() | ||||
---|---|---|---|---|
Sanakirjat ja tietosanakirjat | ||||
|