Статус нашего сайта: |
ICQ Information Center |
ICQ SHOP 5-значные 6-значные 7-значные 8-значные 9-значные Rippers List ОПЛАТА СТАТЬИ СЕКРЕТЫ HELP CENTER OWNED LIST РОЗЫСК!New! ICQ РЕЛИЗЫ Протоколы ICQ LOL ;-) Настройка компьютера Аватарки Смайлики СОФТ Mail Checkers Bruteforces ICQTeam Soft 8thWonder Soft Other Progs ICQ Patches Miranda ICQ ФорумАрхив! ВАШ АККАУНТ ICQ LiveJournal
РекламаНаш канал:irc.icqinfo.ru |
Таненбаум Э.- Архитектура компьютера. стр.324Модель IA-64 — вычисления с явным параллелизмом команд Основной принцип организации архитектуры IA-64 сводится к тому, чтобы перенести нагрузку с периода выполнения в период компиляции. Процессор Pentium 4 в ходе выполнения переупорядочивает команды, подменяет регистры, распределяет функциональные блоки и выполняет множество других функций, что ведет к максимальной загрузке всех аппаратных ресурсов. В модели IA-64 эти задачи заранее решает компилятор. В результате он генерирует программу, которую можно выполнять без излишних манипуляций аппаратными средствами. К примеру, в Pentium 4 компилятор получает информацию о том, что в машине всего 8 регистров, хотя на самом деле их 128, в результате во время выполнения программы приходится как-то выкручиваться, чтобы избежать взаимозависимостей. Согласно архитектуре IA-64, компилятор получает достоверную информацию о количестве регистров в машине, а затем генерирует программу, в которой нет никаких конфликтов между регистрами. Кроме того, компилятор следит за загрузкой функциональных блоков и не запускает команды, в которых предполагается обращение к занятым функциональным блокам. Модель, в которой аппаратный параллелизм является видимым для компилятора, называется EPIC (Explicitly Parallel Instruction Computing — вычисления с явным параллелизмом команд). В определенной степени модель EPIC можно считать развитием RISC-технологии. Некоторые особенности IA-64 заметно повышают производительность. Среди них — сокращение числа обращений к памяти, планирование команд, сокращение числа условных переходов и спекулятивные операции. Все эти особенности мы обсудим как с теоретической точки зрения, так и в контексте их реализации в Itanium 2. Сокращение числа обращений к памяти Модель памяти Itanium 2 довольно проста. Всего предусмотрено 264 байт линейной памяти. Имеющиеся команды позволяют обращаться к блокам памяти размером 1, 2, 4, 8, 16 и 10 байт (последнее значение введено для совместимости с 80-разрядными числами с плавающей точкой стандарта IEEE 745). Категорической необходимости в выравнивании обращений к памяти по естественным границам нет, однако без выравнивания производительность ниже. Память может быть как с прямым, так и с обратным порядком следования байтов; тот или иной формат устанавливается специальным битом в регистре, загружаемом операционной системой. Доступ к памяти в современных компьютерах считается узким местом. Связно это с тем, что процессоры работают гораздо быстрее модулей памяти. Сократить число обращений к памяти можно путем размещения большого кэша первого уровня на микросхеме процессора и еще большего кэша второго уровня в непосредственной близости от микросхемы. Двумя модулями кэш-памяти оснащаются все современные процессоры. В то же время существуют и другие методы, позволяющие сократить объем взаимодействия с памятью, и некоторые из них реализованы в IA-64. Лучший способ ускорить обращения к памяти — выполнять эту операцию в фоновом режиме. В процессоре Itanium 2 предусмотрено 128 64-разрядных регистров общего назначения. Первые 32 из них являются статическими, а оставшиеся 96 группируются в стек регистров, напоминающий регистровое окно UltraSPARC III. В отличие от UltraSPARC, количество доступных программе регистров меняется от одной процедуры к другой. В итоге каждая процедура получает доступ к 32 статическим регистрам и некоторому (переменному) количеству регистров, распределяемых динамически. |