Все теоритические билеты по Архитектуре ЭВМ в основном были написаны, кроме: 8.4; 13.4; 14.4; 15.4. Задачи будут позже.
2.2 KiB
2.2 KiB
Определение параллелизма уровня инструкций (ILP). Определение базового блока инструкций.
Параллелизм уровня инструкций (ILP) - возможность одновременного выполнения нескольких инструкций в конвейере ЦП.
ILP существует, когда инструкции в последовательности независимы и поэтому могут исполняться параллельно (с перекрытием). Конвейеры с большим ILP (меньшим числом зависимостей) показывают лучшую производительность на CPU с конвейером. Базовый блок инструкций - линейная последовательность инструкций без переходов внутрь, за исключением точки входа, и без переходов наружу, за исключением точки выхода из последовательности. Пример: тело цикла.
- ILP в базовом блоке определяется имеющимися зависимостями между инструкциями и размером блока.
- В типичном целочисленном коде частота условных переходов около
15\%
, что дает средний размер базового блока - 7 инструкций. - Любой статический метод, увеличивающий размер базового блока, расширяет блок инструкций для оптимального статического планирования конвейера компилятором и увеличивает ILP. Один из таких методов - разворачивание цикла. Статический метод - метод, который не имеет доступа к полям объекта, и для вызова такого метода не нужно создавать экземпляр класса, в котором он объявлен.