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

Memcpy в OpenMP - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Быстрый способ сравнить содержимое двух файлов http://www.cyberforum.ru/cpp-beginners/thread1147057.html
Здравствуйте, подскажите наиболее быстрый способ сравнить содержимое двух текстовых файлов и вывести различия.
C++ Распечатать фамилии детей данного детского садика Распечатать фамилии детей данного детского сада, которые родились в определенном месяце; указать их возраст и группу. Помогите с программой на Turbo C++. Очень нужна на понедельник. http://www.cyberforum.ru/cpp-beginners/thread1147046.html
Cannot open include file: 'iostream.h': No such file or directory C++
Доброго времени суток всем! Требуется помощь. Задание звучит так:Предусмотреть возможность работы с произвольным числом книг, поиска книги по какому-либо признаку (например, по автору или по году издания), добавления книг в библиотеку, удаления книг из неё, сортировке книг по разным полям. #include "stdafx.h" #include <iostream.h> #include <conio.h> #include <string.h> #include <stdio.h> ...
C++ Для чего используется INTEGER заглавными буквами?
Меня на собеседовании спросили: для чего используется INTEGER заглавными буквами? Про обычный случай использования типа данных integer я в курсе например int i=3; А вот в каком случае используется именно "INTEGER"? Объясните пожалуйста, а еще лучше, приведите пример
C++ Не пойму что это за ошибки http://www.cyberforum.ru/cpp-beginners/thread1147021.html
Обьясните что это за ошибки и что с ними делать 1) invalid initialization of reference of type 'TPQueue* &' from expression of type 'TPQueue' 2) in passing argument 1 of 'void initTPQueue(TPQueue* &, TPQueue* &, TElQ)' 3) cannot convert 'TPQueue' to 'TPQueue*' for argument '1' to 'bool isEmpty(TPQueue*)'
C++ Ошибка компиляции на другом компьютере Снова проблема такого радо что скопировал код с одного компьютера и при запуске на своем компиляция выходит с ошибками. #include "iostream" #include <string.h> /* * teper' vo vseh classah vydelyaem obschie polya * i obschiye methody, perenosim ih v basoviy class * * stariye classy stanovyatsya yego potomkami подробнее

Показать сообщение отдельно
mat_for_c
141 / 136 / 29
Регистрация: 26.04.2013
Сообщений: 663
Завершенные тесты: 2

Memcpy в OpenMP - C++

13.04.2014, 16:29. Просмотров 206. Ответов 0
Метки (Все метки)

Почему при копировании вектора в цикле через
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
vector<int> Mass(value);
value *= sizeof(int); //размер копируемой памяти
 
vector<vector<int>> t_Mass;
...
while (true) {
...
#pragma omp parallel for private(Mass, ...)
   for (...) {
      ...
      // Mass = Sets[level].Mass[i];
      memcpy(&Mass[0], &Sets[level].Mass[i][0], value);
      
      for (...) {
         ...  // обнуление некоторых элементов Mass
      }
      ...
      t_Mass.push_back(Mass);
      ...
   }
   ++level;
   Sets[level].Mass = move(t_Mass);
   ...
}
прога сыпется на memcpy?

Конечно можно через Mass = Sets[level].Mass[i], но у меня есть в критической секции временный вектор t_Mass, которые заполняются постепенно, по окончании цикла я их отправляю в Set через move. Но такой подход почему-то сильно тормозит обнуление элементов Mass (смотрел через профилировщика).

Что скажете?

Добавлено через 29 минут
аналогично, если использовать std::copy(...)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru