Многоядрена технология. Развитие на многоядрените процесори 6



страница8/13
Дата29.05.2023
Размер456.45 Kb.
#117877
1   ...   5   6   7   8   9   10   11   12   13
1Kamburov-1-1-2-1-1
Свързани:
ukazania kursova rabota(1)
    Навигация на страницата:
  • Фиг. 3

4.2. Intel Hyper-Threading


Първата крачка към SMP архитектурата е технологията Hyper Threading. Положението с приложния софтуер се оказва такова, че програмите в болшинството случаи работят “линейно”, и даже теоретично не са в състояние да се ускорят в условията на многопроцесорна система. Ето защо от компанията Intel е предложна технологията Hyper Threading. Симетричната многопоточна обработка (SMT, Symmetrical Multi Threading) представлява междинно решение на проблема за многопроцесорност в персоналните системи. Идеята за превключване на процесора върху различни командни потоци не е нова – тя отдавана се експлоатира в операционните системи. “Вътрешно” SMT-процесорът (ядрото) работи практически така, както и суперскаларният: свободните функционални блокове, за които на дадения етап не се е намерила работа, се зареждат с команди, които са предназначени за втория логически процесор. Така се постига по-ефективно натоварване на процесора, като се намаляват интервалите на неговия престой. В същото време “отвън”, за операционната система и за приложенията, се създава пълната илюзия за двупроцесорно изпълнение – използват се два процесора и всеки от тях е способен да обработва свой поток от данни, което е изразено на следващата фигура:


Фиг. 3 - Архитектура SMT (HyperThreading)

Технологията HyperThreading беше внедрена през 2002 година с ясното разбиране, че тя удовлетворява желанието за висока производителност частично. В същност тя позволява оптимално натоварване на суперскаларния процесор, допълвайки неговите механизми с механизъм за формиране на различни командни потоци. Процесор с тази технология съхранява състоянието на два командни потока, за което съдържа по един набор от регистри и по един контролер на прекъсвания за всеки логически процесор. Останалите елементи на физическия процесор са общ ресурс за всички логически процесори. Така или иначе двата логически процесора не са реално независими: те последователно използват общи ресурси, могат взаимно да се блокират по причина на конфликти при достъп, поради което работят неравномерно. Въпреки това именно тази технология беше първият опит за внедряване на многопроцесорната обработка в персоналните системи. Производителите на потребителски софтуер и потребителите приемаха добре тази технология. Следващата стъпка беше неизбежна – появата на реални многоядрени процесори Intel Pentium Extreme Edition, Pentium D и AMD Athlon 64 X2.[8]


В процесорите от серията Core-2 (Core-2 Duo, Core-2 Quad) технологията не се прилага. По-късно обаче в процесорите Core i3, Core i5 и Core i7 (както и в други модели), подобна технология присъства. В такива системи за операционната система всяко ядро се определя като два логически процесора.
Изпълнението на даден поток от команди, подавани към определен логически процесор, може да бъде спряно по следните причини:
1. Неуспешно обръщение към кеш паметта ;
2. Неправилно предсказване на условен преход ;
3. Не е завър шило изпълнението на предидущата команда.
При такова събитие физическият процесор ще бъде насочен към потока команди, който обслужва на втория логически процесор. Например, ако дадена команда се забави тъй като очаква данни от паметта, физическият процесор ще бъде присвоен от втория логически процесор.




Сподели с приятели:
1   ...   5   6   7   8   9   10   11   12   13




©obuch.info 2024
отнасят до администрацията

    Начална страница