|
|
abc_qmost |
Роль EM64t, многоядер. и частоты RAM в баз. aлг-ах лин. алг. 01.09.2007, 12:11 |
|
05/08/07 ∞ 194
|
Последний раз редактировалось abc_qmost 01.09.2007, 21:11, всего редактировалось 2 раз(а).
Рассмотрим базовые алгоритмы линейной алгебры:
1. Умножение м-цы на вектор (BLAS Level 2).
Роль технологии EM64T и многоядерности ничтожна.
Н-р, самый быстрый на сегодняшний день алгоритм Хаусхолдера трехдиагонализации плотных вещественных симметричных м-ц, грубо говоря, состоит из BLAS Level 2 и BLAS Level 3 (перемножение м-ц). При этом львиную долю времени занимает BLAS Level 2. Использование доп. регистров в EM64T для модификации BLAS Level 2 позволяет увеличить скорость на ничтожно малую величину по сравнению с IA32. Также не имеет смысл использовать более одного ядра. Все это проявляется в известном пакете Intel MKL (на данный момент это мощный пакет, за которым стоят многие известные математики и алгоритмисты - н-р автор книги "Вычислительная линейная алгебра" Дж. Деммель). Скорость части трехдиагонализации, которая связана с BLAS Level 2, при переходе от IA32 к EM64T практически не меняется. При этом данную часть они выполняют на одном ядре.
Остаются два пути повышения скорости BLAS LEVEL 2:
Во-первых увеличить частоту оперативной памяти. Увеличение частоты в 2 раза влечет увеличение скорости примерно на 50%.
Во-вторых модификация алгоритма BLAS Level 2. Но это очень сложная задача. Н-р, Intel так и не сумел ее решить. Есть сведения об алгоритме, который более чем на 35% опережает скорость Intel'овского алгоритма (см. страницу, посвященную процессору Core 2 Duo: ‹…› (ссылка удалена — нг) . Но этот алгоритм пока не доступен.
2. Перемножение м-ц (BLAS Level 3).
Здесь важны как технология EM64T, так и многоядерность. Частота RAM отходит на второй план. При переходе от IA32 к EM64T скорость Intel'овского алгоритма возрастает почти на 50% (за счет модификации алгоритма). Переход с одного ядра на 2 ядра увеличивает скорость примерно на 90%.
Хочется отметить довольно низкую скорость Intel'овского алгоритма перемножения для IA32. Есть сведения об алгоритме, который более чем на 25%-28% опережает его по скорости (см. страницу, посвященную процессору Core 2 Duo: ‹…› (ссылка удалена — нг) . Но этот алгоритм пока не доступен.
Грамотно реализованный алгоритм перемножения м-ц на SSE2 или SSE3 имеет очень высокую скорость. Н-р, на Core 2 Duo c частотой 3 GHz перемножение м-ц 8000*8000 под EM64T на двух ядрах занимает всего 46 с.
И последнее. Технология EM64T снимает ограничения на объемы оперативной памяти, что очень важно в условиях значительно возросшей за последнее время скорсти процессоров.
|
|
|
|
|
Yuri Gendelman |
Re: Роль EM64t, многоядер. и частоты RAM в баз. aлг-ах лин. 01.09.2007, 17:08 |
|
Заслуженный участник |
|
15/05/05 3445 USA
|
Пожалуйста скорректируйте URLs (нужно убрать ")." в конце)
|
|
|
|
|
abc_qmost |
Re: Роль EM64t, многоядер. и частоты RAM в баз. aлг-ах лин. 01.09.2007, 20:12 |
|
05/08/07 ∞ 194
|
Yuri Gendelman писал(а): Пожалуйста скорректируйте URLs (нужно убрать ")." в конце)
Спасибо.
|
|
|
|
|
нг |
23.10.2007, 18:44 |
|
Экс-модератор |
|
30/11/06 1265
|
|
|
|
|
нг |
24.10.2007, 21:20 |
|
Экс-модератор |
|
30/11/06 1265
|
|
|
|
|
|
Страница 1 из 1
|
[ Сообщений: 5 ] |
|
Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы