nastavak na nastavaк ,
nije fazon samo naprcati sto pedeset jezgara na silikon, nego i
osmisliti kako će oni zajedno da rade
to se zove
paralelizam , dakle , ideja kako upotrebiti više cpua (ili polovina mozga) istovremeno (ili u veoma malom vremenskom razmaku)
i time ubrzati obradu spoljnih nformacija u koristan output.
rešenja tog problema su-
1. paralelizam na nivou instrukcija -
pajplajnovi (deljeno predvidjanje velikog broja sledećih koraka unapred )
Pipelining is the concept of simultaneously fetching multiple instructions to be processed. While an execution unit is decoding and executing one instruction, the fetch unit is retrieving the next instruction(s) to be executed. This overlapping of the two units conceptually creates an assembly-line (or pipeline) of instructions so that the processor is constantly executing instructions without having to wait for them to be fetched. Holes in a pipeline and branching conditions aside, when a processor is capable of executing an instruction upon each tick of its system clock, it is referred to as a scalar processor
i superskalar computing (itaniume vrati se , sve ti je oprošteno)
Superscalar processors are those have more than one unit of execution, each with its own pipeline capabilities, but are distinguished from scalar ones in that they are capable of executing more than one instruction at a time resulting in the execution of multiple instructions each clock cycle. This is accomplished by the processor looks for instructions that can be handled within the same clock cycle and processes them together
2. Thread level paralelism
serves to improve processor performance by isolating the execution of programs into threads. Multithreading refers to the ability to run these threads independently and simultaneously (DeMone, 2000). The performance improvement goal of isolating programs into threads, and multithreading their execution, is to have each active thread executing an instruction each clock cycle.
amd ima
8 threada ,
ne jezgara
ali je njihov cueuing ( raspored izvršavanja ) izveden redno, a ne paralelno. (slikovito govoreći)
u praksi je intelov hipertreding ( virtuelno pravljenje 2 treda iz jednog jezgra ) daleko pametnije i efikasnije osmišljen.
pogotovo u procesorima novijim od 2010 godine .