2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Роль EM64t, многоядер. и частоты RAM в баз. aлг-ах лин. алг.
Сообщение01.09.2007, 12:11 
Рассмотрим базовые алгоритмы линейной алгебры:
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 снимает ограничения на объемы оперативной памяти, что очень важно в условиях значительно возросшей за последнее время скорсти процессоров.

 
 
 
 Re: Роль EM64t, многоядер. и частоты RAM в баз. aлг-ах лин.
Сообщение01.09.2007, 17:08 
Пожалуйста скорректируйте URLs (нужно убрать ")." в конце)

 
 
 
 Re: Роль EM64t, многоядер. и частоты RAM в баз. aлг-ах лин.
Сообщение01.09.2007, 20:12 
Yuri Gendelman писал(а):
Пожалуйста скорректируйте URLs (нужно убрать ")." в конце)

Спасибо.

 
 
 
 
Сообщение23.10.2007, 18:44 
Аватара пользователя
Вопросы — в ЛС

 
 
 
 
Сообщение24.10.2007, 21:20 
Аватара пользователя
Замечание — в теме

 
 
 [ Сообщений: 5 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group