Дисциплина: ОП.02 Архитектура аппаратных средств • Раздел 3 (§2.2 с.8 программы)
Серверный алгоритм обработки транзакций имеет долю параллельного кода p = 80% (0.80). Строго последовательная часть составляет (1 - p) = 20% (0.20).
| Число ядер (N) | Последовательная часть (1 - p) | Параллельная часть (p / N) | Знаменатель дроби | Расчетное ускорение S(N) |
|---|---|---|---|---|
| N = 2 ядра | 0.20 | 0.80 / 2 = 0.40 | 0.20 + 0.40 = 0.60 | |
| N = 4 ядра | 0.20 | 0.80 / 4 = 0.20 | 0.20 + 0.20 = 0.40 | |
| N = 8 ядер | 0.20 | 0.80 / 8 = 0.10 | 0.20 + 0.10 = 0.30 | |
| N = 16 ядер | 0.20 | 0.80 / 16 = 0.05 | 0.20 + 0.05 = 0.25 | |
| N = 64 ядра | 0.20 | 0.80 / 64 = 0.0125 | 0.20 + 0.0125 = 0.2125 | |
| N → ∞ (Предел) | 0.20 | 0.00 | 0.20 |
Рассмотрите последовательность из трех ассемблерных инструкций для классического 5-ступенчатого конвейера (IF, ID, EX, MEM, WB):
| Параметр конвейера | Режим А: Без аппаратного форвардинга (вставка NOP) | Режим Б: С аппаратным форвардингом (Bypassing) |
|---|---|---|
| Где возникают конфликты по данным? | ||
| Число тактов простоя (пузырей / stalls) | ||
| Суммарное число тактов на выполнение 3 команд | ||
| Аппаратный механизм решения проблемы |