The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Опубликован стандарт параллельного программирования OpenMP 6.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Опубликован стандарт параллельного программирования OpenMP 6.0"  +/
Сообщение от opennews (??), 15-Ноя-24, 10:44 
После трёх лет разработки опубликован набор спецификаций OpenMP 6.0 (Open Multi-Processing), определяющих API и способы применения методов параллельного программирования для языков Си, Си++ и Фортран на многоядерных и гибридных (CPU+GPU/DSP) системах с общей памятью и блоками векторизации (SIMD).  Предполагается, что начальная поддержка отдельных возможностей OpenMP 6.0 будет включена в состав выпусков LLVM/Clang 20 и GCC 15...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=62236

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Опубликован стандарт параллельного программирования OpenMP 6..."  +2 +/
Сообщение от Аноним (1), 15-Ноя-24, 10:44 
Существуют ли какие-то применения openmp на практике?
Ответить | Правка | Наверх | Cообщить модератору

4. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (4), 15-Ноя-24, 11:12 
В Gentoo добавил, кроме всего прочего, в CFLAGS="... -fopenacc -fopenmp ..." Все собирается и работает без проблем.

Увеличение производительности не тестировал.

Ответить | Правка | Наверх | Cообщить модератору

6. "Опубликован стандарт параллельного программирования OpenMP 6..."  +1 +/
Сообщение от Аноним (1), 15-Ноя-24, 11:19 
> Увеличение производительности не тестировал.

Было ли это увеличение, скорее там уменьшение.

У меня  для фортрана так с надеждой на лучшее (а гфортран очень тормозной код генерирует в целом) FCFLAGS="${COMMON_FLAGS} -fopenmp -fprefetch-loop-arrays -fexternal-blas -fblas-matmul-limit=15"

Наверно какие-то применения на суперкомпах можно найти, но вот есть ли преимущества обычного софта?

Ответить | Правка | Наверх | Cообщить модератору

8. "Опубликован стандарт параллельного программирования OpenMP 6..."  +8 +/
Сообщение от Аноним (8), 15-Ноя-24, 11:43 
Если в софте возможности OpenMP никак не использованы, то и пользы от добавления этих флагов никакой.
Ответить | Правка | Наверх | Cообщить модератору

37. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от anonymous (??), 15-Ноя-24, 20:56 
Если в софте OpenMP не задействован, то к нему и use flag не применится.
Ответить | Правка | Наверх | Cообщить модератору

43. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Вымя (?), 16-Ноя-24, 00:42 
Я так понял что анон глобально добавил флаг при сборке всех пакетов.
Ответить | Правка | Наверх | Cообщить модератору

18. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (18), 15-Ноя-24, 15:56 
Если софт использует OpenMP, то он без этих флагов не скомпилируется, как я понимаю. Нужные пакеты сами добавляли, а для остальных бесполезно.
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

20. "Опубликован стандарт параллельного программирования OpenMP 6..."  +1 +/
Сообщение от Аноним (20), 15-Ноя-24, 16:09 
"... -fopenacc...

гусары молчать!

Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

33. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (33), 15-Ноя-24, 18:24 
У меня две дискретки AMD стоят, раньше и opencl включал, вдруг поможет производительности для пары пакетов.

Или есть какие нюансы?

Ответить | Правка | Наверх | Cообщить модератору

9. "Опубликован стандарт параллельного программирования OpenMP 6..."  +3 +/
Сообщение от Аноним (9), 15-Ноя-24, 11:47 
Для консьюмерских приложений, вроде нет ничего современного...

Проблема в архитектуре современных серверов. Сейчас нельзя просто так купить привычные для OpenMP SMP-систему, везде ccNUMA и всякие гетерогенные SoC.

В этой ситуации сама концепция shared memory и модель fork-join летит псу под хвост.
Да, безусловно OpenMP поддерживает NUMA в какой-то степени в какой-то из свежих спецификаций, что даёт понять приложению о топологии памяти (она же неравномерная).

Вот только дальше начинается проблема с фиктивными ядрами на всяких современных amd64-процессорах. Ну знаете, когда в процессоре 48 "физических" ядер, а с DRAM-контроллером могут взаимодействовать только 12. При этом из них только 4 могут иметь один мультиплаер по частотам, а все остальные другой.

То есть по идее можно все переписать на новые версии OpenMP, но кто бы это делал...
Ну то есть масштабирование многопоточного приложения на системах с неравномерным доступом к памяти обычно требует реализации внутренненго планировщика, выполненного как супер-сервер. Таких реализаций на OpenMP я не знаю, возможно они есть, скиньте. Альтернатива - платформозависимые API для работы с потоками и процессами, которые умеют лучше и больше, но уже под конкретную ОС/планировщик.

По-факту, никто не парится. Все эти высокопросизводительные многопоточные вычисления просто пихают в виртуалки, чтобы вышестоящая инфра разобралась со всем этим и выдала равномерную память UMA, где shared memory не деградирует за счёт того что часть тредов/физических устройств сидят за интерконнект-шинами.

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

29. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от 123 (??), 15-Ноя-24, 17:48 
> По-факту, никто не парится. Все эти высокопросизводительные многопоточные вычисления просто пихают в виртуалки, чтобы вышестоящая инфра разобралась со всем этим и выдала равномерную память UMA

ха ха, она взяла и разобралась (нет), запихивание в виртуалки лишь иллюзия того, что в вышестоящем слое нет тех же самых проблем, и если тебя лично это беспокоит, то всех кто отвечают за верхний слой - не особо, бизнес крутится лавешка мутится, не мамонты не вымрут

Ответить | Правка | Наверх | Cообщить модератору

12. "Опубликован стандарт параллельного программирования OpenMP 6..."  +2 +/
Сообщение от Анонимов (?), 15-Ноя-24, 12:09 
Не особо.
Раньше можно было выйграть пару циклов в расчетном по для суперкластеров в связке OpenMP+MPI (HybridPP), но в последние лет 10 особо голову сношать себе не хочет и используют чистый MPI.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

13. "Опубликован стандарт параллельного программирования OpenMP 6..."  +1 +/
Сообщение от Neon (??), 15-Ноя-24, 14:08 
Для некоторых задач, типа решения систем диф.уравнений, работа с матрицами и т.д. дает значительное ускорение. Обычно такие задачи специализированные и самописные. Обычному софту openmp мало помогает, плохо автоматически он параллелиться.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

26. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Бывалый Смузихлёб (ok), 15-Ноя-24, 17:33 
как задача на лабораторной
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

5. "Опубликован стандарт параллельного программирования OpenMP 6..."  +3 +/
Сообщение от Аноним (5), 15-Ноя-24, 11:15 
Извините, ничего производительнее, чем просто std::thread, мои эксперименты не нашли. Ни TBB, ни OpenMP.
Ответить | Правка | Наверх | Cообщить модератору

7. "Опубликован стандарт параллельного программирования OpenMP 6..."  +4 +/
Сообщение от Анониматор (?), 15-Ноя-24, 11:26 
Вряд ли оно имеет целью увеличение производительности. Скорее просто стандарт, чтоб программисту было легче пересаживаться с одного языка на другой
Ответить | Правка | Наверх | Cообщить модератору

10. "Опубликован стандарт параллельного программирования OpenMP 6..."  +1 +/
Сообщение от Аноним (8), 15-Ноя-24, 11:47 
std::thread, само по себе, никак не задействует DSP, если он емеется, и/или GPU.
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

17. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (17), 15-Ноя-24, 14:52 
Для оных - OpenCL/Sycl.
Ответить | Правка | Наверх | Cообщить модератору

11. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (11), 15-Ноя-24, 12:07 
У него под капотом обычный pthread
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

15. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (17), 15-Ноя-24, 14:51 
Во-первых, необязательно.
Во-вторых, именно поэтому я pthread не упомянул. Это платформозависмое API, которое бесполезно почти. Обёртки вокруг него и winapi - zero cost, нет особых причин юзать платформозависимое API.
Ответить | Правка | Наверх | Cообщить модератору

14. "Опубликован стандарт параллельного программирования OpenMP 6..."  –1 +/
Сообщение от Neon (??), 15-Ноя-24, 14:10 
Ну так openmp делает тоже самое, только автоматически для некоторых задач. Выше физических ограничений платформы не прыгнешь
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

16. "Опубликован стандарт параллельного программирования OpenMP 6..."  –2 +/
Сообщение от Аноним (17), 15-Ноя-24, 14:52 
>только автоматически

С OpenAI o1 не путайте. Кодить всё равно приходится. Причём то же самое, просто в другом виде.

Ответить | Правка | Наверх | Cообщить модератору

19. "Опубликован стандарт параллельного программирования OpenMP 6..."  +6 +/
Сообщение от Аноним (19), 15-Ноя-24, 16:07 
Все эти потоки и многопроцессорность не что иное как путь в никуда. Инженерам нужно увеличивать производительность в однопотоке, а не костылить. А то вон уже есть процы со 192 потоками, а скроллинг в хроме всё равно со статтерами и микрофризами.
Ответить | Правка | Наверх | Cообщить модератору

21. "Опубликован стандарт параллельного программирования OpenMP 6..."  –2 +/
Сообщение от anonymous (??), 15-Ноя-24, 16:33 
Скроллинг со статтерами (кандидат на новый мем? вместо "как конпелять кде под фрибзд")? Из за натыканых везде особенно в ядре "сохранялок энергии". Как нубуки стали пиарить, с тех пор всё в этой коричневой "энергосохраняющей" субстанции.
Ответить | Правка | Наверх | Cообщить модератору

23. "Опубликован стандарт параллельного программирования OpenMP 6..."  +1 +/
Сообщение от Аноним (19), 15-Ноя-24, 16:52 
Да ты повідключай все энергосберегайки, так комп будет жрать как 4 пни во времена прескотов. И не факт что избавишься от статтеров, потому что они завязаны на 1 поток, на который разрабы куй ложили в угоду многопоточности. Даже в эппл не смогли побороть эту бяку, хотя вообще в отдельный поток вынесли отрисовку.
Ответить | Правка | Наверх | Cообщить модератору

27. "Опубликован стандарт параллельного программирования OpenMP 6..."  –2 +/
Сообщение от Аноним (27), 15-Ноя-24, 17:43 
> Все эти потоки и многопроцессорность не что иное как путь в никуда. Инженерам нужно увеличивать производительность в однопотоке, а не костылить.

Удивительно, как такие комментарии набирают кучу плюсиков. 🤦 Это многое говорит об уровне компетенции большей части здешних комментаторов.

Да, уважаемый эксперт, нужно в один поток. А заодно вырубить
оптимизации на уровне компилятора, а на уровне CPU - предсказание ветвей, спекулятивное выполнение и остальной прогресс за последние 40 лет. Ну, чтобы инженеры булки не расслабляли, а оптимизациями занимались. Вот тогда в хроме скроллинг будет ого-го!

Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

35. Скрыто модератором  +/
Сообщение от Аноним (-), 15-Ноя-24, 19:16 
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

41. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (41), 15-Ноя-24, 22:34 
— Обязательно 10 ГГц! И 20 ГГц! Весь мир в труху!.. Но потом.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

42. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (42), 16-Ноя-24, 00:41 
Простейший пример:
Открытие/Закрытие файла, работа с медленным устройством, многозадачность.
В один поток как-то "ухабисто".
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

25. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (25), 15-Ноя-24, 17:30 
Параллельное программирование это когда два программиста работают над одной задачей. Multy Processing - множественная обработка.
Ответить | Правка | Наверх | Cообщить модератору

31. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от 123 (??), 15-Ноя-24, 17:53 
Parallel Processing, Parallel Execution то же может применяться
Ответить | Правка | Наверх | Cообщить модератору

36. "Опубликован стандарт параллельного программирования OpenMP 6..."  +1 +/
Сообщение от Аноним (36), 15-Ноя-24, 19:21 
Вы не поняли, это когда параллельно на программирование, но кипишь идёт.
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

34. "Опубликован стандарт параллельного программирования OpenMP 6..."  +/
Сообщение от Аноним (-), 15-Ноя-24, 19:09 
А - зачем это "массовому среднему" программисту и пользователю ПК?
Сколько решают Невье-Стокса и пишут грамотно софт, который хорошо параллелится? Ну - просто - фиг с ним с этим OpenMP! - какой процент программеров нормально и ОСОЗНАННО с потоками в POSIX-thread может работать?
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру