|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.12.2017, 00:37 | #1 |
Новичок
Джуниор
Регистрация: 22.12.2017
Сообщений: 1
|
Не правильно считает время выполнения программы
Задача заключалась в нахождении кротчайшего пути на графе методом Дейксты применяя параллельное программирование.
Результат нахождения путей верный, но время выдает не то. при 6 потоках - 0,000526427 при 4 потоках - 0,000342600 при 2 потоках - 0,000289347 Где может быть ошибка? Код:
Код программы нужно выделять (форматировать) тегами [CODE] (читать FAQ) Модератор Последний раз редактировалось Serge_Bliznykov; 22.12.2017 в 10:45. |
24.12.2017, 16:45 | #2 |
Форумчанин
Регистрация: 24.01.2011
Сообщений: 774
|
Во-первых, считаешь ты время неправильно.
Такие мелкие задания надо прогонять много раз за время измерения, а потом брать средний расчёт. Тут время выполнения намного меньше погрешности измерения. Почитай вот это, например, тебе будет полезно. https://habrahabr.ru/post/282301/ Во-вторых, на создание и синхронизацию потоков нужно время. И чем больше потоков, тем больше его нужно. У тебя настолько маленький объём обрабатываемых данных, что эти расходы намного больше, чем расходы на сам поиск пути. Собственно, из-за этого не надо пихать параллельные вычисления где ни попадя. Попробуй сгенерировать граф из тысяч узлов и связей, тогда будет нужный эффект. P.S. Это какой-то интересный синтаксис распараллелирования, я почти всегда пользуюсь std::thread. Как я понимаю, этого нет в стандарте?
a.k.a. Angelicos Phosphoros
Мой сайт |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Время выполнения программы! | BlackFishSQL | Паскаль, Turbo Pascal, PascalABC.NET | 10 | 28.11.2011 23:48 |
Создание объектов во время выполнения программы | Anubys | C++ Builder | 3 | 07.09.2011 21:07 |
Время выполнения программы. | Небесный | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 12.05.2011 09:39 |
Время выполнения программы | Zhamie | Общие вопросы Delphi | 8 | 15.09.2009 15:26 |
Как замерить время выполнения программы | Gracel | Общие вопросы Delphi | 5 | 12.06.2007 22:16 |