Russian Qt Forum
Ноябрь 22, 2024, 05:10 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QThreadPool на OpenMP  (Прочитано 2891 раз)
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« : Сентябрь 18, 2020, 10:20 »

Добрый день

В одном из проектов Xcode 10 + clang, к сожалению, "ис каропки" OpenMP там не идет. Долго отклдывал и обходился QThreadPool, но вот прижало. Ну ладно, нашел инструкцию и заменил компилятор, OpenMP пошло (правда браузер стал работать совсем хреново).

Да, но 2 бригады ниток не будут хорошо работать вместе. Как реализовать ф-ционал QThreadPool ("закинул и пошел дальше") на OpenMP? Хотя OpenMP я юзаю часто, но обхожусь простейшими директивами, остальное забыл (или вообще не знал), просто не было нужно.

Спасибо
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #1 : Сентябрь 20, 2020, 11:53 »

Быстро нашел тему где человеку надо именно это (даже 2). Но вот внятных ответов не увидел Улыбающийся

Конечно напрашивается
Цитировать
#pragma omp task
По смыслу вроде "оно". Ладно, прильнем к доке, вот русская перепечвтка

Цитировать
Текущая нить выделяет в качестве задачи ассоциированный с директивой
блок операторов. Задача может выполняться немедленно после создания или
быть отложенной на неопределённое время и выполняться по частям. Размер
таких частей, а также порядок выполнения частей разных отложенных задач
определяется реализацией.
Так, ну а с main thread (где писали omp task) как же? Разве она остается свободной? Не вижу где это написано Непонимающий
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.048 секунд. Запросов: 23.