Što je hardversko ubrzanje?

click fraud protection

Povremeno se najavljuju nove računalne tehnologije koje sadrže "hardversko ubrzanje", no taj se pojam rijetko objašnjava u tim najavama. To je zapravo relativno jednostavno za razumjeti na sreću. Većina obrade na računalu odvija se u softveru koji radi na CPU-u opće namjene. Međutim, moguće je stvoriti zaseban procesor posebno dizajniran za obavljanje malog niza zadataka ili čak samo jednog zadatka. Korištenje ovakvog zasebnog procesora naziva se hardversko ubrzanje.

Prednosti i nedostaci hardverskog ubrzanja

Hardversko ubrzanje dolazi s dvije glavne prednosti performansi. Prvo, procesori dizajnirani za izvođenje određenih vrsta logike brži su i učinkovitiji u obavljanju zadatka nego što bi bio CPU opće namjene. Drugo, rasterećenjem tog opterećenja obrade, glavni CPU ima više procesorske snage slobodno se može posvetiti drugim zadacima. Ostale prednosti uključuju povećanu paralelnost, smanjenu potrošnju energije i povećanu učinkovitost.

Korištenje namjenskih odvojenih procesora za hardversko ubrzanje znači da dodavanje novih značajki ili čak i samo krpanje bugova može biti teško, ako ne i nemoguće u nekim slučajevima bez zamjene hardver. Također je znatno teže i skuplje razviti novi hardver nego softver.

Vrste hardverskog ubrzanja

Trenutno postoje tri vrste hardverskog ubrzanja: specijalizirani procesori, FPGA i ASIC. A specijalizirani procesor je zaseban procesor koji koristi hardver optimiziran za predviđenu vrstu ili vrste logika. Popularan primjer specijaliziranog procesora je GPU. Moderni GPU sadrži skup procesora dizajniranih za određene zadatke kao što su sjenčanje i praćenje zraka.

Field Programmable Gate Array ili FPGA je procesor koji je dizajniran tako da ga korisnik može konfigurirati nakon proizvodnje. FPGA se može programirati tako da bude prikladan za niz različitih logičkih funkcija, ovisno o zadatku za koji je dizajniran. Kako se FPGA mogu ponovno programirati, popularni su za razvoj ASIC procesora.

ASIC ili integrirani sklopovi specifični za aplikaciju su procesori optimizirani posebno za izvođenje jednog zadatka. Kod ASIC-a nikada ne postoji namjera da se procesor koristi za bilo što drugo osim za ono za što je dizajniran. Kroz ovu dubinu optimizacije, ASIC-ovi su vrlo učinkoviti u obavljanju svoje zadaće.