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

Распараллелить скалярное произведение векторов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Почему strtok неправильно делит строку http://www.cyberforum.ru/cpp-beginners/thread692631.html
Он должен делить по словах("делитель" - пробел) а он делит по-символьно. #include <iostream> #include <string.h> #include <conio.h> #include <stdio.h> using namespace std; void inp(char); void...
C++ Разворот матрицы на 90 градусов Заполнить матрицу случайными числами. Развернуть матрицу на 90o по часовой стрелке. Добавлено через 46 секунд ПОМОГИТЕ СДЕЛАТЬ НЕ ВЫХОДИТ...СРОЧНО НАДО БЫ...ДО ЗАВТРА http://www.cyberforum.ru/cpp-beginners/thread692622.html
C++ _FindFirst _findnext
Прошу помочь разобраться с функциями _FindFirst и _findnext. не могу понять как с ними работать. если можно в виде примера простой программы с пояснениями. Пытался написать код который ищет все...
C++ Структуры и ввод данных
const int len_name=20; //длинна ФИО const int b=8; struct NOTE{ char name; //ФИО int phone; //номер телефона char birth; //дата рождения }; /*Запись в файл*/
C++ Сколько различных символов встречаются в строке http://www.cyberforum.ru/cpp-beginners/thread692616.html
Дана строка.Посчитать и вывести сколько различных символов встречаются в ней
C++ Как исправить эти ошибки как исправить ети ошибки Код: #include<iostream.h> #include<conio.h> #include<string.h> #define n 10 struct Krainy { string N_Krainy; подробнее

Показать сообщение отдельно
grizlik78
Эксперт С++
1956 / 1449 / 115
Регистрация: 29.05.2011
Сообщений: 3,007
18.11.2012, 00:59
Строго говоря, даже если убрать задержку в исходном варианте, то и тогда программа может выдавать неправильный результат. И в моём случае она выдаёт то 40, то 38, то 36... Это происходит из-за конкурирующего изменения одной переменной. Один из потоков может при вычислении tmp прочитать значение res раньше другого потока, а изменить значение res позже, затирая тем самым результат второго потока. А при наличии задержки это происходит практически гарантировано. Редукция — стандартный механизм для таких случаев, когда каждый поток вычисляет независимо свою частичную сумму, а объединением частичных сумм в полную занимается уже код OpenMP.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru