Барабанный процессор

Barrel процессор, барабанный процессор, представляет собой процессор, который после каждого такта переключается между потоками команд. Эта архитектура процессора также известна как «interleaved» (чередующаяся) или «fine-grained» (мелкозернистая) временная многопоточность. В отличие от одновременной многопоточности в современных суперскалярных архитектурах, данная технология не позволяет выполнять несколько команд за один цикл.

Как и при вытесняющей многозадачности, каждому потоку выполнения присваивается свой собственный программный счётчик и другие аппаратные регистры для сохранения контекста каждого потока. Barrel процессор может гарантировать, что каждый поток будет выполняться через каждые n циклов, в отличие от процессора с вытесняющей многозадачностью, который, как правило, запускает один поток выполнения в течение сотен или тысяч циклов, в то время как все остальные потоки ждут своей очереди.

Приём проектирования, называющийся C-замедление, может по схеме однозадачного процессора сгенерировать соответствующую ему схему Barrel процессора. Сгенерированный таким образом n-поточный Barrel процессор, действует так же, как многопроцессорная система, собранная из n отдельных копий оригинального однозадачного процессора, каждый из которых работает примерно на 1/n от исходной скорости.

Источник: Википедия

а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ э ю я