2016-04-10 2 views
0

Итак, в этом семестре у меня есть тема об операционных системах, и я пока не понимаю, что такое потоки Hyper. Я искал интернет, но то, что я нашел, - это почти то же самое (я не знаю, искал ли я неправильные термины).Hyper threading на аппаратном уровне

Вот источники, которые я нашел:

https://www.dasher.com/will-hyper-threading-improve-processing-performance/;

Hyper-threading Performance Comparison;

Why does hyper-threading benefit my algorithm?;


Но мой вопрос не о HT в Дифференц языках или как я могу анализировать с/без, но , как это было реализовано на аппаратном уровне.

Как взаимодействует HT с основной памятью (ALU, регистры ..), кешем и другими устройствами. Где я могу найти что-то об этом?

И, наконец, я хочу сравнить НТ с параллельными процессами. Как параллелизм использует гиперпоточность?

Итак, ребята, если вы знаете о книге или сайте, которые могут мне помочь, пожалуйста, поделитесь этим.

Спасибо,

ответ

1

Современная гиперпотокова реализуется в очень умном способе.

Подумайте о двухъядерном процессоре в течение нескольких минут. Он имеет два ядра, каждый из которых имеет регистры, кэши с механизмами доступа к памяти и набор исполнительных блоков для выполнения различных операций с целым числом, с плавающей запятой и управления.

Теперь представьте себе, что вместо каждого ядра, имеющего собственную коллекцию исполнительных блоков, два ядра разделяют только один пул исполнительных блоков. Любое ядро ​​может использовать, скажем, множитель с плавающей запятой, пока другое ядро ​​не использует тот же самый блок выполнения. Если одному ядру нужен блок выполнения, который используется другим ядром, ему придется подождать, как это было бы необходимо, если бы этот исполнительный блок использовался перекрывающейся инструкцией, выполненной этим же потоком.

Смежные вопросы