# 测试
计算10亿个整型数的和,开了OpenMP,花费时间是700毫秒。而Java计算1亿个整型数的和,用了300毫秒。
# 代码
代码贴在下面。
```C++
// cpp2.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <chrono>
#include <iostream>
#include <math.h>
int main()
{
using std::chrono::system_clock;
using namespace std::chrono;
short * data = new short[1000000000];
for (size_t i = 0; i < 1000000000; i++)
{
data[i] = (short)std::rand();
}
auto now = std::chrono::system_clock::now();
long sum = 0;
# ifdef _OPENMP
printf_s("Compiled by an OpenMP-compliant implementation.\n");
# endif
#pragma omp parallel for
for (long i = 0; i < 1000000000; i++)
{
int a = data[i];
sum += a;
}
auto now2 = system_clock::now();
std::cout << "Sum:" << sum << std::endl << "time: " << duration_cast<milliseconds>(now2 - now).count();
delete data;
}
```