【发布时间】:2020-09-17 02:26:29
【问题描述】:
使用小程序工作(就运行时间而言),例如,即使我的计算机上有几个内核,c++ 程序也很容易。
#include <bits/stdc++.h>
using namespace std;
int main()
{
vector<int> g1;
for (int i = 1; i <= 10; i++)
g1.push_back(i * 10);
for (int i = 1; i <= 10; i++){
std::cout << g1[i] <<endl;
}
return 0;
}
但是,我将使用一个向量大小非常大 [超过一百万] 的程序。还有很多其他进程,这使得在我的计算机(MacBook)上以较短的运行时间完成程序变得更加困难。有什么方法可以并行执行(我的意思是使用多个线程)?这意味着我运行相同的程序,但由于在多个线程中进行处理,时间会减少。我对并行计算很陌生,所以如果问题不够清楚,请告诉我。
我的电脑内存(macbook):[8GB 1600 MHz DDR3]
处理器:1.6 GHz 双核 Intel Core i5
【问题讨论】:
-
速度,速度,速度,但您允许
#include <bits/stdc++.h>将您的构建时间减慢一个数量级。
标签: c++ multithreading process