Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Заблокирован
1

OPENmp параллельные потоки QT

25.06.2015, 08:35. Просмотров 959. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <iostream>
#include "omp.h"
 
using namespace std;
 
int main()
{
#pragma omp parallel
    {
        printf("Hello!\n");
    }
 
#pragma omp for
    {
        for(int n=0; n<10; ++n)
 
        {
 
            printf(" %d", n);
 
        }
 
        printf("\n");
 
    }
#pragma omp kl
    {
        int this_thread = omp_get_thread_num(), num_threads = omp_get_num_threads();
 
        int my_start = (this_thread  ) * 10 / num_threads;
        int my_end   = (this_thread+1) * 10 / num_threads;
        for(int n=my_start; n<my_end; ++n)
            printf(" %d", n);
 
    }
#pragma omp for schedule(static)
    {
        for(int n=0; n<10; ++n) printf(" %d", n);
        printf("\n");
    }
 
#pragma omp for schedule(dynamic)
    {
        for(int n=0; n<10; ++n) printf(" %d", n);
        printf("\n");
 
    }
 
    return 0;
}
подскажите, как можно написать тут же. Решение 10 квадратных уравнений параллельными потоками.
Не могу реализовать

Добавлено через 4 минуты
10 чисел выводит, с квадратными уравнениями нет
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.06.2015, 08:35
Ответы с готовыми решениями:

Параллельные сортировки с OpenMP
Привет, читателю . Надеюсь не поленитесь прочесь до конца, кто понимает =) Вообщем суть такова, у...

Параллельные вычисления: произведение двух векторов (OpenMP)
Помогите с написанием программы вычисления произведения двух векторов с использованием...

Параллельные вычисления с использованием параллельных секций в OpenMP
Доброго времени суток, ребята! Ребят, нужно вычислить интеграл на отрезке для функции. Нужно...

Параллельные потоки
Может кто-нибудь подсказать, как написать программу, в которой с какой-то определенной точки...

2
...
1793 / 1260 / 932
Регистрация: 12.02.2013
Сообщений: 2,058
25.06.2015, 14:06 2
Диппер, а причём тут Qt? Вот пример. Правда вывод лучше сделать отдельно исключив синхронизацию critical
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <cmath>
#include <omp.h>
 
int main() {
    const unsigned int N = 10;
 
    struct Data {
        double a, b, c;
    } value[N] = {{-10, 20,  30}, { 12, 33, -24}, {-42, 23, 14},
                  { 45, 53, -13}, {-41, 34,  57}, {-58, 44, 35},
                  {-92, 36,  41}, {-29, 35,  16}, { 44, 76, 22},
                  { 84, 74,  93}};
    double d, x1, x2;
 
    #pragma omp parallel for private(d, x1, x2)
    for (unsigned i = 0; i < N; ++i) {
        d = value[i].b * value[i].b - 4 * value[i].a * value[i].c;
        if (d < 0) {
            #pragma omp critical
            {
                std::cout << '[' << omp_get_thread_num() << "] "
                          << "(d < 0)" << std::endl;
            }
        }
        else {
            x1 = (-value[i].b + sqrt(d)) / (2 * value[i].a);
            x2 = (-value[i].b - sqrt(d)) / (2 * value[i].a);
            #pragma omp critical
            {
                std::cout << '[' << omp_get_thread_num() << "] "
                          << "x1=" << x1 << ", x2=" << x2 << std::endl;
            }
        }
    }
 
    return 0;
}
0
Заблокирован
26.06.2015, 06:36  [ТС] 3
Спасибо) теперь понял где ошибка бы у меня
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.06.2015, 06:36

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Параллельные потоки, вектора, переменные
Если у меня работают 2-3 параллельных потока и у всех есть доступ к одному классу. 1) нужно ли...

OpenMP, не создаются потоки
Привет всем. Подскажите пожалуйста по такой штуке: делаю задачу &quot;Производители-потребители&quot;,...

Заменить в коде параллельные главной, на параллельные побочной диагонали
Вот код,нужно сделать чтобы сортировались диагонали параллельные побочной, а не главной. помогите...

OpenMP. Время выполнения программы больше чем без OpenMP
Сегодня первый раз сел за OpenMP. Читаю на сайте майкрософта как работает этот API. Так вот там...

Параллельные потоки
Доброй ночи! необходимо написать пример, показывающий параллельную активность потоков. вот если я...

Параллельные потоки в QT
Здравствуйте! Я новичок в QT,ранее почти не работал с потоками, хотелось бы навести справки как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.