- •Центральный процессор
- •1. Повышение производительности процессоров
- •2.1. Технологии многопоточности
- •2.2. Технология Hyper-Threading
- •2.3. Многоядерность
- •2.4. Технология виртуализации Hypervisor
- •2.5. Технология удаленного управления компьютерами сети
- •2.6. Технология ускорения процесса ввода-вывода данных – Acceleration Technology
- •3.1. Архитектурные особенности процессора Pentium d
- •3. Многоядерные процессоры корпорации Intel
- •3.2. Судьба системной шины
- •3.3. Производительность
- •3.4. Многоядерное будущее
- •5. Многоядерные процессоры компании ibm
- •5.1. Двухъядерный (dual-core) процессор Power 4
- •5.2. Следующий шаг - Power 5
- •5.5. Процессорный элемент Cell -"суперкомпьютер-на-кристалле"
- •7. Заключение
- •8. Планы Intel на 2009/2010 гг по выпуску процессоров
- •9. Тенденции развития средств вычислительной техники
- •1. Повышение тактовой частоты.
- •2. Увеличение объема и пропускной способности подсистемы памяти.
- •4. Системы на одном кристалле и новые технологии.
2.1. Технологии многопоточности
Основныенаправления развитияархитектурысовременныхмикропроцессоров определяются стремлением к увеличению их производительности. Последнюю можноповышать,например,наращивая тактовуючастоту и (или)увеличиваячислокоманд, выполняемых за один такт.
Одно из решений данной проблемы связано с реализациейконцепции "параллелизма на уровне тредов (потоков)" - TLP (Thread Level Parallelism). Если программные коды не в состоянии загрузить работой все или даже большинствофункциональныхустройств, томожно разрешитьпроцессору выполнять болеечем однузадачу (тред,илипоток),чтобы дополнительныепотокизагрузилипростаивающие устройства. Здесьнетрудно усмотретьаналогию смногозадачной операционнойсистемой:чтобыпроцессорнепростаивал,когдазадача оказывается всостоянии ожидания(например, завершения ввода-вывода), операционная системапереключает процессор на выполнение другой задачи. Более того, некоторыемеханизмы диспетчеризации в операционной системе (например, квантование) имеютаналоги в многопотоковой архитектуре (MTA - MultiThreading Architecture). Очевидно,архитектура,поддерживающаяпараллелизмнауровнепотоков (TLP), должна гарантировать, что треды не будут использовать одновременно одни и те же ресурсы, длячего требуютсядополнительныеаппаратныесредства (например,дублирование регистровых файлов). Однако оказалось, что можно реализовать МТА на базесовременныхсуперскалярныхпроцессоров, иэто требует лишь относительнонебольшихаппаратных доработок,что резкоповышаетпривлекательность МТА в глазах проектировщиков.
При использовании базового типапараллелизманауровнепотоков (TLP) вмикропроцессоре необходимо иметь не менее двух аппаратных расширений для потоков. Это регистры общегоназначения,счетчик команд,словосостоянияпроцесса и т. п.
В любой момент времени работает только один поток (тред). Он выполняется довозникновения определенной ситуации (например, выполнения команды загрузки регистрапри отсутствии данных вкэш-памяти). В этомслучаепроцессорпереключаетсяна выполнение другогопотока. Посколькупринепопадании вкэш-память операции с памятьюмогут потребовать досотни тактов процессора, егопростоипопричине ожидания данныхмогли бы быть весьмазначительными. Современныепроцессоры,имеющие возможностиспекулятивного внеочередного выполнениякоманд, вподобнойситуациимогутпродолжить выполнение другихкоманд,нонапрактикечислонезависимыхкоманд быстроисчерпывается ипроцессор останавливается.
Архитектура содновременным выполнением тредов-SMT(Simultaneous Multi- Threading) допускаетодновременное выполнение нескольких потоков. В этом случае накаждомновом тактена выполнение вкакое-либоисполнительноеустройствоможетнаправлятьсякоманда любогопотока. Посравнению с суперскалярными процессорами,поддерживающими внеочередноеспекулятивное выполнениекоманд ииспользующими механизм переименования регистров, для SMT необходимы, вчастности,следующие аппаратные средства:
несколькосчетчиковкоманд (по одномунапоток) с возможностью выбора любогоиз нихна каждом такте;
средства,ассоциирующиекоманды спотоком,которому онипринадлежат (необходимы, вчастности, для работымеханизмовпредсказанияпереходов ипереименования регистров);
несколькостековадресов возврата (по одномунапоток) дляпредсказанияадресоввозврата из подпрограмм;
специальная дополнительная память в процессоре (в расчете на каждыйпоток) дляпроцедурыудаленияизбуфера выполненных вне очередикоманд.
Однаиз основных особенностейSMT умногихсовременныхпроцессоров -переименование регистров, когда логические (архитектурные) регистры отображаются в физические, с которыми и ведется реальная работа. Техника переименования регистровможет, очевидно,применяться для того,чтобыизбежатьпрямогодублирования файлов регистров, как аппаратной принадлежности потока.
