Dom > Izložba > Sadržaj

Microarchitectural koncepti višestruko i multithreading

Mar 09, 2019

Računalo arhitekata postala teškom položaju rastuće neslaganje u CPU radne frekvencije i vremena pristupa DRAM. Nijedna tehnika koje iskorištavaju naputak nivo paralelizma (ILP) unutar jednog programa može iskupiti za duge klupe koji se pojavio kada podaci morali biti preuzeta iz glavne memorije. Osim toga, veliki tranzistor se računa i visoke radne frekvencije potrebne za naprednije tehnike ILP potrebne snage disipacije razine koje može više ne biti jeftino hladi. Iz tih razloga, novije generacije računala su počeli iskorištavati više razine paralelizma koje postoje izvan jedan program ili program nit.


Ovaj trend je ponekad poznat kao propusnost računanja. Ideja je potekla u glavnom računalu tržištu gdje internetske transakcije obrade istaknuo ne samo izvršenje brzina od jedne transakcije, ali kapacitet da se bave masovnog broja transakcija. S transakcijama baziranim aplikacijama kao što su usmjeravanje mreže i web-stranice služe uvelike povećava u posljednjem desetljeću, računalne industrije je ponovno naglasio pitanja kapacitet i propusnost.


Jedna od tehnika od kako se postiže ovaj paralelizam je kroz višestruko sustavi, sustavi računala s više procesora. Kad rezervirane za high-end mainframe i superračunala, malih (2 – 8) multiprocessors Poslužitelji su postali uobičajena pojava za malu tvrtku tržištu. Za velike korporacije, velikih razmjera (16-256) multiprocessors su česte. Čak i osobnih računala s više procesora su se pojavile od 1990.


Uz dodatna tranzistor veličine smanjenja dostupne sa poluvodičke tehnologije predujmovi, višejezgrenih procesora su se pojavili gdje provodi više procesora na istom čipu silikona. U početku koristili u čips ciljanje ugrađen tržište gdje jednostavnije i manje CPU dopustiti više instantiations stati na jednom komadu silicija. Do 2005, poluvodičkih tehnologija omogućila dvostruki high-end desktop CPU CMP čips biti proizvedeni u volumenu. Neke dizajne, kao što su Sun Microsystems UltraSPARC T1 imaju vratio (jednostavnije skalarni, u red) dizajna kako bi se stane više procesora na jednom komadu silicija.


Još jedna tehnika koja je postala popularnija nedavno je multithreading. U multithreading, kada procesor je dohvatiti podatke iz trom sistem pamćenje umjesto odugovlačiti da podaci stignu, procesor skretnice u drugi program ili plan konac koji je spreman za izvršavanje. Iako to neće ubrzati određenom programu/nit, povećava ukupnu propusnost sustava smanjivanjem vremena CPU je nezaposlen.


Konceptualno, multithreading odgovara kontekstu prekidač na razini operativnog sustava. Razlika je čipsetove CPU može učiniti nit prekidač u jedan ciklus CPU-a umesto na stotine ili tisuće procesora kontekstu prekidač obično zahtijeva. Pritom se replicira stanje hardver (kao što su registar datoteku i program counter) za svakog aktivnog nit.


Daljnje poboljšanje je simultano multithreading. Ova tehnika omogućava superscalar CPUs u izvršavanju naredbi iz različitih programa/teme istovremeno u istom ciklusu.