Форум программистов, компьютерный форум CyberForum.ru

Распаралеливание методов - C++

Восстановить пароль Регистрация
 
zuxa-zuxa
Мишка Косолапый :)
 Аватар для zuxa-zuxa
281 / 251 / 3
Регистрация: 15.02.2012
Сообщений: 1,384
Завершенные тесты: 1
03.06.2016, 21:19     Распаралеливание методов #1
У меня есть матрица, размеры вплоть до 4000 на 4000, она заполняется, потом у меня есть файл в котором около 50 строк, в каждой строке по 2 цифры. Есть метод, который принимает эти 2 числа, ведёт расчёты некие, используя матрицу и записывает результат в массив строк. То есть всего метод 3 аргумента принимает(2 как данные и 1 как индекс массива, в которую ячейку записать результат)
Так выглядит метод:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void find(int start_pos, int end_pos, int position)
{
    int i, j, num;
    int visit[N];
    int lenght[N];
    char s[NN];
    char path[NN][N];
 
    do
    {
////////........
    } while (num != end_pos);
 
    if (lenght[num] != infinity)
    {
        str[position] = path[num + 1];
    }
    else
    {
        str[position] = "Такого пути не существует";
    }
}
Тут я вызываю методы:
C++
1
2
3
4
5
6
7
do
    {
        fp >> Start;
        fp >> End;
        
        find(Start, End, k++);
    } while (!fp.eof());
Но при таком программа сначала обрабатывает 1 метод, затем вызывается 2 и так далее. Как делать всё разом? Чтобы быстро прочитать файл fp вызвать с десяток методов и они разом всё это дело обсчитывают.
Подскажите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2016, 21:19     Распаралеливание методов
Посмотрите здесь:

Распаралеливание процесса. C++
C++ Перегрузка методов
C++ Распаралеливание на графическом ядре
C++ Создание методов в С++
Openmp Распаралеливание цикла C++
Переопределение методов C++
C++ Наследование методов
C++ Массив методов

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
avgoor
562 / 352 / 83
Регистрация: 05.12.2015
Сообщений: 1,137
03.06.2016, 21:47     Распаралеливание методов #2
Цитата Сообщение от zuxa-zuxa Посмотреть сообщение
Подскажите пожалуйста
OpenMP легче всего сюда вкорячить.
DUMP
54 / 28 / 7
Регистрация: 22.02.2015
Сообщений: 240
04.06.2016, 10:22     Распаралеливание методов #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <thread>
 
void threadFunction()
{
     // do smth
}
 
int main()
{
     std::thread thr(threadFunction);
     thr.join();
     //thr.detach();
     return 0;
}
Yandex
Объявления
04.06.2016, 10:22     Распаралеливание методов
Ответ Создать тему
Опции темы

Текущее время: 03:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru