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

tbb parallel_for чтение одного участка памяти разными потоками - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить точки пересечения круга и прямоугольника http://www.cyberforum.ru/cpp-beginners/thread918051.html
Помогите, пожалуйста!( Даны вещественные числа x1, y1, r, x2, y2, x3, y3. Определите, существуют ли общие точки у круга с центром в точке (x1, y1) и радиусом r и у области, ограниченной...
C++ Демонстрационная программа сортировки методом «пузырек» Демонстрационная программа сортировки методом «пузырек» Размер массива не превышает 40 и задается с клавиатуры. Заполнение массива с помощью датчика случайных чисел, из файла или с клавиатуры по... http://www.cyberforum.ru/cpp-beginners/thread918036.html
fatal error LNK1169: one or more multiply defined symbols found C++
Доброго всем времени суток! Никак не могу разобраться в чём дело... Помогите пожалуйста! stdafx.h #pragma once #include "targetver.h" #include <stdio.h> #include <tchar.h>
C++ Сформулируйте, что такое разделитель операторов и где он ставится
Я интуитивно понимаю, в своих программах всегда ставлю, где надо, но словами написать не могу. А нужен полностью формализованный абзац, где и зачем ставится точка с запятой.
C++ Порядок вызова конструкторов/деструкторов http://www.cyberforum.ru/cpp-beginners/thread918008.html
Вопрос чисто теоретический. Попробую сформулировать, не ругайте если получится коряво. Например, есть некий класс для писанины в лог, который в конструкторе открывает файл, а в деструкторе его...
C++ Как сохранить\прочитать контейнер в бинарный файл ostream_iterator<string, char> out(cout, "\n"); set<string> mat; set<string> pat; string temp; cout << "Input Mat's friends:\n"; while (getline(cin, temp) && temp != "quit")... подробнее

Показать сообщение отдельно
Gorillych
14 / 14 / 1
Регистрация: 04.07.2013
Сообщений: 76

tbb parallel_for чтение одного участка памяти разными потоками - C++

05.07.2013, 11:18. Просмотров 432. Ответов 1
Метки (Все метки)

Добрый день.
Предположим, нужно распараллелить свертку одного и того же изображения разными фильтрами (использую tbb:: parallel_for)- в каждом потоке выполняется свертка своим фильтром. Проблема в том, что разные потоки обращаются на чтение к одному и тому же участку памяти - массиву с исходным изображением. Повлияет ли это на производительность?
В CUDA bank conflicts можно разрешить, например, правильно раскидав исходный массив по shared memory. А как быть с CPU? Не создавать же отдельную копию исходного массива для каждого потока? Это хардкод и вряд ли эффективно в плане производительности.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru