Добро пожаловать в сеть Intel® Software Network вход | зарегистрироваться | помощь |
Поиск в форумах и блогах Intel® Software Network
в Вперед

о распараллеливании на 45 нм. процессорах

Последнее сообщение 09-25-2008, 4:18 размещено YuriiSig. Ответов - 6.
Сортировать сообщения: Назад Вперед
 05-31-2008, 13:37 30221253  

о распараллеливании на 45 нм. процессорах

Только что появилась новая версия Intel MKL 10.1. Тесты для dgemm (процессор q9450) говорят о том, что эта версия адаптирована под новые процессоры (максимальная скорость для IA32 на одном ядре возросла до 91.3%, соответственно возросла скорость и при полном распараллеливании - 88.2% в пересчете на одно ядро). Скорость под EM64T практически не изменилась, так что трудно что-либо сказать про адаптацию кода под новые процессоры (необходимо смотреть код). На моем dgemm максимальные скорости на одном ядре возросли соотвественно до 96.2% (IA32) и 97.7% (EM64T). Интересно отметить, что максимальная скорость моего dgemm для IA32 превышает максимальную скорость dgemm Intel MKL для EM64T для 45 нм. процессоров. Невероятно, но факт. В любом случае обладателям 45 нм. процессоров рекомендую переходить на новую версию Intel MKL.
 
 06-02-2008, 15:24 30221256 в ответ на30221253  

На: о распараллеливании на 45 нм. процессорах

Приветствую!
А нельзя ли указать точно, какая именно версия MKL использовалась для сравнения? (Обычно полный номер версии можно посмотреть в файле support.txt).

Быть может, вы могли бы предоставить детальное описание сравнительных тестов (на любом языке)?  Каким компялятором собиралось приложение? Ключи компиляции? Какие данные использовались в тестах?


Результаты, конечно, впечатляют, но я все равно слабо себе представляю, как без соблюдения соответствующих юридических моментов можно передавать алгоритмы. На данный момент ситуация такова: разработчики MKL вас помнят, знают о ваших работах, и в общем-то хотели бы на них посмотреть. Я так и не понял, чем закончилась предыдущая попытка "контакта", но это не важно - кто старое помянет....


В основном разработчики MKL находятся в Нижнем Новгороде (а точнее в Сарове), часть - в Москве. Я держу их в курсе ваших постов, но, чтобы сдвинуть ситуацию с мертвой точки, обоим сторонам нужно пойти друг другу навстречу. Как это сделать? Я не знаю, честно. Вам, Юрий, я уже посоветовал в соседней ветке проконсультироваться с юристами.


Наши, я полагаю, хотели бы не только провести сравнительные тесты, но и (в случае успешного сравнения), представлять порядок передачи Вашей интеллектуальной собственности, а так же цену. Т.к. продавцом, в данном случае являетесь вы, с вас и "алгоритм сделки". Естественно, все это сложный и длительный процесс... И разумной альтернативой, мне кажется, может быть только патент.


Вобщем, я чем смогу помогу, но без взаимного желания идти друг другу навстречу тут каши не сваришь, мне так кажется.

Удачи!


Дмитрий Оганезов
Intel® Software Network
 
 06-02-2008, 17:57 30221258 в ответ на30221256  

На: о распараллеливании на 45 нм. процессорах

MAD\doganezo:

А нельзя ли указать точно, какая именно версия MKL использовалась для сравнения? (Обычно полный номер версии можно посмотреть в файле support.txt).

Быть может, вы могли бы предоставить детальное описание сравнительных тестов (на любом языке)?  Каким компялятором собиралось приложение? Ключи компиляции? Какие данные использовались в тестах?

Привожу содержание файла mklsupport.txt:

"Package ID: w_mkl_b_10.1.0.006
Package Contents: Intel(R) Math Kernel Library 10.1 Beta"

Какие сравнительные тесты Вас интересуют?  

Весь кубичный код реализован на ассемблере, так что от компилятора мало что зависит. Правда, для матриц относительно небольшого порядка это не так: начинают играть роль квадратичные операции, которые у меня реализованы на C (их скорость еще сильно зависит и от частоты оперативной памяти). Последние версии компиляторов Intel C++ и Visual Studio 2008 на моих задачах равномощны. У компилятора Intel C++ очень много ключей, я в них особо не разбирался и использовал стандартный ключ -O2. Хочу отметить, что на 65 нм. процессорах для IA32 мой dgemm также быстрей (максимальная скорость 90.3% на одном ядре для процессора E6700). Думаю, что в пакет Intel MKL можно было бы включить и мой алгоритм быстрого умножения матриц, не требующий выделения дополнительной оперативной памяти.

MAD\doganezo:

Результаты, конечно, впечатляют, но я все равно слабо себе представляю, как без соблюдения соответствующих юридических моментов можно передавать алгоритмы. На данный момент ситуация такова: разработчики MKL вас помнят, знают о ваших работах, и в общем-то хотели бы на них посмотреть. Я так и не понял, чем закончилась предыдущая попытка "контакта", но это не важно - кто старое помянет....

Может быть возможен следующий выход: взять меня на работу под мои разработки?

MAD\doganezo:

Вобщем, я чем смогу помогу...

Спасибо.

 
 06-02-2008, 20:47 30221259 в ответ на30221258  

На: о распараллеливании на 45 нм. процессорах

YuriiSig:

Package ID: w_mkl_b_10.1.0.006

Совершенно верно, это последний официально доступный релиз.

YuriiSig:
Какие сравнительные тесты Вас интересуют?  

Любые, которые могут пробудить интерес парней из MKL.

YuriiSig:
...У компилятора Intel C++ очень много ключей, я в них особо не разбирался и использовал стандартный ключ -O2.

Эти ключи там "неспроста". Вполне допускаю, что включив парочку можно подразогнать MKL на несколько процентов. Хотя я и сам не эксперт в нашем компиляторе :)

YuriiSig:
Думаю, что в пакет Intel MKL можно было бы включить и мой алгоритм быстрого умножения матриц, не требующий выделения дополнительной оперативной памяти.

Именно об этом мы и пытаемся договориться :)

YuriiSig:
Может быть возможен следующий выход: взять меня на работу под мои разработки?

Что может быть проще? Переодически у нас появляются вакансии, если набраться терпения и подождать некоторое время, можно дождаться и позиции в MKL  (а может и сейчас такая позиция открыта, - это легко проверить на www.intel.com/jobs ). Хотя, вы знаете, вопрос трудоустройства не так прост как кажется. Я отнюдь не хочу поставить под сомнение ваши технические навыки, но есть масса деталей, о  которых нанимающий менеджер и потенциальный работник должны полюбовно договориться. Это и зарплата, и город, и круг должностных обязанностей, и т.д. и т.п..

Но я могу гарантировать две вещи: 1) Если вы оставите свое резюме на www.intel.com/jobs, вас неприменно пригласят на собеседование как только релевантная позиция откроется. И не обязательно в команде MKL, кстати. 2) Несмотря на то, что коллеги из MKL хранят молчание в этом треде, они его читают и про вас помнят.

Удачи!


Дмитрий Оганезов
Intel® Software Network
 
 06-03-2008, 12:18 30221260 в ответ на30221259  

На: о распараллеливании на 45 нм. процессорах

MAD\doganezo:

YuriiSig:
...У компилятора Intel C++ очень много ключей, я в них особо не разбирался и использовал стандартный ключ -O2.

Эти ключи там "неспроста". Вполне допускаю, что включив парочку можно подразогнать MKL на несколько процентов. Хотя я и сам не эксперт в нашем компиляторе :)

Я не понял, как можно разогнать скомпилированную библиотеку.

MAD\doganezo:

[

YuriiSig:
Думаю, что в пакет Intel MKL можно было бы включить и мой алгоритм быстрого умножения матриц, не требующий выделения дополнительной оперативной памяти.

Именно об этом мы и пытаемся договориться :)

Я полагаю, что Вы меня не совсем правильно поняли. Я имел в виду не те результаты, которые я сообщил в начале этой темы, а алгоритм быстрого умножения, о котором идет речь на моей странице для Core 2 Duo под IA32, который преодолеает 100% рубеж скорости и при этом не требует выделения дополнительной оперативной памяти! (эти данные на моей странице устарели - сейчас результаты более впечатляющи). Этот алгоритм применим и под EM64T и под Itanium.

MAD\doganezo:

YuriiSig:
Может быть возможен следующий выход: взять меня на работу под мои разработки?

Что может быть проще? ...

Я имел в виду это как выход из сложившегося тупика: не покупать у меня мои разработки, а пойти предложенным мною путем.

 
 09-02-2008, 19:56 30221319 в ответ на30221253  

На: о распараллеливании на 45 нм. процессорах

В последней версии Intel MKL (MKL 10.1 beta 2, EM64T) скорость перемножения квадратных матриц на 45 нм. процессорах вполне прилична и на больших квадратных матрицах совсем немного уступает скорости моего алгоритма. Хотя для общего случая ещё "конь не валялся": в некоторых случаях разрыв в скоростях превышает 10-кратный барьер.
 
 09-25-2008, 4:18 30221346 в ответ на30221319  

На: о распараллеливании на 45 нм. процессорах

YuriiSig:
В последней версии Intel MKL (MKL 10.1 beta 2, EM64T) скорость перемножения квадратных матриц на 45 нм. процессорах вполне прилична и на больших квадратных матрицах совсем немного уступает скорости моего алгоритма. Хотя для общего случая ещё "конь не валялся": в некоторых случаях разрыв в скоростях превышает 10-кратный барьер.

Выдалась свободная минута: ознакомился с кодом функции dgemm Intel MKL (MKL 10.1 beta 2, EM64T) для 45 нм. процессоров Harpertown и Yorkfield, к коим принадлежит и мой q9450. Код качественный для перемножения квадратных матриц и, как я и предполагал, использует команду pshufd.

 
Просмотреть как поток новостей RSS в XML

Ярлыки


Тег для данного сообщения

...

Теги сообщества

...