ВУЗ:
Составители:
3 Векторно-ориентированные алгоритмы LU-разложения
таки в векторных регистрах. Для операции сложения векторов это показано
на рис. 3.5.
Память
+
Конвейер
c = a + b
b
a
Векторные регистры
Рис. 3.5. Операция сложения в компьютере типа «регистр–регистр» [8]
Предполагается, что каждый векторный регистр состоит из некоторого
числа слов. Например, в машинах CRAY имеется восемь векторных реги-
стров, каждый емкостью в 64 числа с плавающей точкой. До начала сло-
жения операнды загружаются из оперативной памяти в регистры. После
завершения сложения векторный результа т переписывается из регистровой
памяти в оперативную память. Для таких машин желателен иной подход к
организации LU-разложения.
Исследуем вначале ха ракте р обм енов во внутреннем цикле столбцовог о
алгоритма LU-разложения на рис. 3.2. Для простоты предположим, что
столбец матрицы A полностью вкладывается в векторный рег истр, и нач-
нем с рассмотрения случая, когда на фоне вычислений может выполняться
только загрузка или только запись в память . Несколько первых операций
указаны в следующем списке:
Сформировать первый столбец матрицы L.
Загрузить второй столбец матрицы A.
(
Модифицировать второй столбец матрицы A;
загрузить третий столбец матрицы A.
(3.6)
Записать в память модифицированный второй столбец. (3.7)
(
Модифицировать третий столбец матрицы A;
загрузить четвертый столбец матрицы A.
(3.8)
. . . . . . . . . . . . . . . . . .
Согласно (3.6), за грузка следующего столбца матрицы A совмещается
с модификацией текущего ст о лбца. Но затем возникает задержка при за-
писи модифицированного в т о рого столбца из регистра в память. Можно так
60
Страницы
- « первая
- ‹ предыдущая
- …
- 58
- 59
- 60
- 61
- 62
- …
- следующая ›
- последняя »