Блочное умножение матриц. Достижение пиковой производительности алгоритма.
, Выбор схемы блокирования и оптимальных размеров блоков.
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.217.140] |
|
|
правила раздела Алгоритмы

| Страницы: (2) 1 [2] все ( Перейти к последнему сообщению ) |
Блочное умножение матриц. Достижение пиковой производительности алгоритма.
, Выбор схемы блокирования и оптимальных размеров блоков.
|
Сообщ.
#16
,
|
|
|
|
Цитата для маленьких packed-матриц Goto это весьма существенно - они обязательно должны быть непрерывными едиными массивами, а не независимыми наборами строк как в double** Да так и есть, каждый блок запаковывается (копируется в соответствии с выбранной схемой блокирования регистров) из 2-мерного массива double** (исходной матрицы) в непрерывный одномерный рабочий массив double*. Цитата Покажи полностью прогу Всё есть в ссылке которую я приводил выше. |
|
Сообщ.
#17
,
|
|
|
|
Я реализовал программу(Visual C++ 2008) которая каждую матрицу разбивает на четыре блока и перемножает их между собой,как ее оптимизировать чтобы каждая матрицы разбивалась на оптимальное количество блоков,и производилось умножение?
Прикреплённый файл ishodnik.rar (0.55 Кбайт, скачиваний: 343)
|