Показатели производительности алгоритмов распараллеливания. Технология гиперпоточности. Многозадачные и многопоточные системы. Суперскалярные вычисления. Группа : tt-13-20p
Download 341.47 Kb.
|
4-Самостоятельная работа
- Bu sahifa navigatsiya:
- Параллелизм на уровне процессоров
Суперскалярные вычисления.
Суперскалярные архитектуры Один конвейер — хорошо, а два — еще лучше. Одна из возможных схем процес¬сора с двумя конвейерами показана на рис. 3. Здесь общий блок выборки команд вызывает из памяти сразу по две команды и помещает каждую из них в один из конвейеров. Каждый конвейер содержит АЛУ для параллельных операций. Чтобы выполняться па¬раллельно, две команды не должны конфликтовать из-за ресурсов (например, регистров), и ни одна из них не должна зависеть от результата выполнения дру¬гой. Как и в случае с одним конвейером, либо компилятор должен гарантировать отсутствие нештатных ситуаций (когда, например, аппаратура не обеспечивает проверку команд на несовместимость и при обработке таких команд выдает не¬корректный результат), либо за счет дополнительной аппаратуры конфликты должны выявляться и устраняться непосредственно в ходе выполнения команд. Рисунок 3 У процессора 386 и его предшественников их не было. Конвейеры в процессорах компании Intel появились, только начиная с модели 486 . Процессор 486 имел один пятиступенчатый конвейер, a Pentium — два та¬ких конвейера. Основ¬ная идея суперскалярной архитектуры — один конвейер с большим количеством функциональных блоков, как показано на рис. 4. Pentium II. Рисунок 4 Со временем значение понятия «суперскалярный» несколько изменилось. Те¬перь суперскалярными называют процессоры, способные запускать несколько ко¬манд (зачастую от четырех до шести) за один тактовый цикл. Естественно, чтобы передавать все эти команды, в суперскалярном процессоре должно быть несколь¬ко функциональных блоков. Поскольку в процессорах этого типа, как правило, предусматривается один конвейер, его устройство обычно соответствует рис. 4. Параллелизм на уровне процессоров Параллелизм на уровне команд в определенной степени помогает увеличить быстродействие, но конвей¬еры и суперскалярная архитектура обычно повышают скорость работы всего лишь в 5 -10 раз. Чтобы увеличить производительность в 50, 100 и более раз, нужно создавать компьютеры с несколькими процессорами. Многие задачи в физических и технических науках предполагают использование массивов или других упорядоченных структур. Часто одни и те же вычисления могут производиться над разными наборами данных в одно и то же время. Упо¬рядоченность и структурированность программ, предназначенных для выполне¬ния такого рода вычислений, очень удобны в плане ускорения вычислений за счет параллельной обработки команд. Существует две схемы ускоренного вы¬полнения больших научных программ. Хотя обе схемы во многих отношениях схожи, одна из них предполагает расширение единственного процессора, другая — добавление параллельного вычислителя. Download 341.47 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling