Retkarčiais skelbiamos naujos skaičiavimo technologijos, turinčios „techninės įrangos spartinimą“, tačiau šis terminas tuose pranešimuose retai paaiškinamas. Laimei, tai iš tikrųjų gana paprasta suprasti. Didžioji dalis apdorojimo kompiuteryje vyksta programinėje įrangoje, veikiančioje bendrosios paskirties procesoriuje. Tačiau galima sukurti atskirą procesorių, specialiai sukurtą atlikti nedidelį užduočių spektrą ar net tik vieną užduotį. Tokio atskiro procesoriaus naudojimas vadinamas aparatūros pagreitinimu.
Techninės įrangos pagreitinimo privalumai ir trūkumai
Aparatinės įrangos spartinimas turi du pagrindinius našumo pranašumus. Pirma, procesoriai, sukurti atlikti tam tikro tipo logiką, greičiau ir efektyviau atlieka užduotį, nei būtų bendrosios paskirties CPU. Antra, iškraunant tą apdorojimo apkrovą, pagrindinis procesorius turi daugiau apdorojimo galios, kurią galima skirti kitoms užduotims. Kiti pranašumai yra didesnis lygiagretumas, mažesnės energijos sąnaudos ir didesnis efektyvumas.
Specialių atskirų procesorių naudojimas aparatūros pagreitinimui reiškia, kad pridėti naujų funkcijų ar net tik pataisyti klaidas gali būti sudėtinga, o kai kuriais atvejais net neįmanoma nepakeitus aparatinės įrangos. Taip pat žymiai sunkiau ir brangiau kurti naują aparatinę įrangą nei programinę įrangą.
Techninės įrangos spartinimo tipai
Šiuo metu yra trys aparatinės įrangos spartinimo tipai: specializuoti procesoriai, FPGA ir ASIC. Specializuotas procesorius yra atskiras procesorius, kuriame naudojama aparatinė įranga, optimizuota numatytam logikos tipui ar tipams. Populiarus specializuoto procesoriaus pavyzdys yra GPU. Šiuolaikiniame GPU yra procesorių rinkinys, skirtas tam tikroms užduotims, pvz., šešėliavimui ir spindulių sekimui, atlikti.
„Field Programmable Gate Array“ arba FPGA yra procesorius, kurį klientas galėtų konfigūruoti po pagaminimo. FPGA gali būti užprogramuotas taip, kad tiktų įvairioms loginėms funkcijoms, atsižvelgiant į užduotį, kuriai jis skirtas. Kadangi FPGA yra perprogramuojami, jie yra populiarūs kuriant ASIC procesorius.
ASIC arba taikomosios programos integriniai grandynai yra procesoriai, optimizuoti specialiai vienai užduočiai vykdyti. Naudojant ASIC, procesorius niekada neketinama naudoti kitiems tikslams, išskyrus tai, kam jis buvo sukurtas. Dėl tokio optimizavimo gylio ASIC labai efektyviai atlieka savo užduotis.