Есть ли способ, которым OpenMP может работать с потоками Qt? - PullRequest
3 голосов
/ 24 июня 2010

Я пытаюсь распараллелить вычислительную часть приложения, чтобы использовать четырехъядерную архитектуру с использованием OpenMP и GCC 4.2 в Mac OS 10.5.Но я думаю, что проблема в том, что это приложение использует Qt для графического интерфейса, и я пытаюсь разветвить рабочие потоки во вторичном потоке, созданном Qt, что приводит к сбою программы - но в этом я не уверен.

Я серьезно не в курсе, так как я впервые работаю с Qt или OpenMP (или C ++).Любое руководство очень ценится.

Ответы [ 2 ]

0 голосов
/ 12 июля 2010

На данный момент это не работает. Я думаю, что это даже было сообщено как ошибка в Qt и gcc - если я правильно помню. Об этом сообщалось несколько раз (например, здесь ). Он работает с некоторыми комбинациями gcc / Qt, по крайней мере, в Linux.

0 голосов
/ 24 июня 2010
  1. Работает ли деталь, использующая OpenMP, автономно, т.е. когда она не работает в потоке Qt?
  2. Можете ли вы решить вашу проблему, используя QtConcurrent или другое решение из *Поддержка потоков 1006 * в Qt ?
  3. В любом случае, можете ли вы предоставить часть своего кода для иллюстрации?Обычно это облегчает дело.
...