Я хочу, чтобы фрагмент кода был критичным для текущей команды потоков, а не глобальной критической. Как я могу это достичь ??Критическая область для потоков текущей команды
quick-sort(args)
{
spawn threads #x
{
critical-region
{
// code
}
}
quick-sort(args)
quick-sort(args)
}
Здесь критическая область с открытым mp будет блокировать все потоки перед доступом к критическому региону. Но у меня нет проблем с двумя потоками, входящими в критическую область, если они не порождаются одновременно. Я хочу решение для openMP.
спасибо .. специально для последней строки. Думаю, я выяснил причину замедления. –