Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
Посмотрел текущее положение дел с векторизацией: 1. Автовекторизация накладывает большое количество ограничений на циклы (заранее известное количество итераций + запрет на break и вызов функций). 2. Интринсики- слишком сложно и очень много кода. А по середине между ними есть написанные компанией Intel классы, которые позволяют легко работать с векторами (есть перегруженные арифметические / логические операции вместо вызовов процедур со странными названиями). К сожалению, работает эта библиотека только с платным компилятором Intel. Есть что-то подобное в мультиплатформенном исполнении? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2018, 11:17 |
|
||
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
AlekseySQL...К сожалению, работает эта библиотека только с платным компилятором Intel... Точно? Мне всегда казалось, что Intel'овские библиотеки обычные .DLL. Собственно мат. библиотеками не пользовался, но ряд оптимизированных библиотек (jpeg, zip) из этого комплекта раньше использовал с MS VC, проблем не было. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2018, 10:48 |
|
||
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
Похоже наврал. Сейчас поискал по Инету, вроде C++ Library это действительно часть компилятора Но только зачем этот C++ нужен ))) ? А С-ные библиотеки вроде под любые компиляторы (сейчас не проверял, последний раз пользовался несколько лет назад) https://software.intel.com/en-us/performance-libraries ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2018, 11:18 |
|
||
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
OpenMP ? Microsoft parallel STL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2018, 11:20 |
|
||
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
MasterZivOpenMP ? Microsoft parallel STL? Насколько я понимаю у OpenMP такие же ограничения, что у автовекторизатора. STL нужен как вместилище чего-то ,а если перемалывание цифр, то как бы не в тему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2018, 14:39 |
|
||
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
Перемалывание цифр чаще всего гораздо эффективнее ускоряется изменением алгоритма. Например, используя интринсики и/или ассемблер, я ускорил деление по модулю процентов на 20. Но на этом форуме мне подсказали посмотреть на деление умножением и оно ускорило процесс на порядок, а местами и на два (да, в 10-100 раз). Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2018, 15:13 |
|
||
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLПосмотрел текущее положение дел с векторизацией: 1. Автовекторизация накладывает большое количество ограничений на циклы (заранее известное количество итераций + запрет на break и вызов функций). Ну насчет "заранее известное количество итераций" это вроде не обязательно. Компилятор с -O3 или с -fopenmp -lgomp и #pragma omp parallel for simd по идее сам выполнит итерации кратные 8 используя 128-битный paddd, а все оставшиеся (менее 8 итераций) через обычный add. https://godbolt.org/g/19QRy8 movdqu xmm0, XMMWORD PTR [rbx+rdx] add esi, 1 paddd xmm0, XMMWORD PTR [r12+rdx] movups XMMWORD PTR [rcx+rdx], xmm0 А вот с запретом на вызов break, так это и с Intel C++ Class Libraries проблема, как вы вызовете break посредине SIMD-операции? Ну а так по изгаляться можно и с -O3 или openmp: https://godbolt.org/g/EHHHQJ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2018, 15:48 |
|
||
|
Есть аналоги классов для векторизации типа Intel C++ Class Libraries?
|
|||
|---|---|---|---|
|
#18+
Вася УткинAlekseySQLПосмотрел текущее положение дел с векторизацией: 1. Автовекторизация накладывает большое количество ограничений на циклы (заранее известное количество итераций + запрет на break и вызов функций). Ну насчет "заранее известное количество итераций" это вроде не обязательно. К сожалению, обязательно: https://habrahabr.ru/company/intel/blog/162831/ Вася УткинА вот с запретом на вызов break, так это и с Intel C++ Class Libraries проблема, как вы вызовете break посредине SIMD-операции? Например, можно хранить промежуточные значения цикла и иметь возможность откатиться или выполнить цикл дважды, первый раз узнав итерацию выхода. Конечно, это накладные расходы, но статический анализатор может принять решение о том, что эти накладные расходы меньше потенциальной выгоды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2018, 12:25 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=21&tid=2017948]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 149ms |

| 0 / 0 |
