码迷,mamicode.com
首页 > 其他好文 > 详细

并行计算__简单并行计算实例

时间:2014-09-18 18:55:34      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:blog   http   io   ar   for   2014   log   on   c   

本文出自:点击打开链接


计算从1~1E10的和

// paralle.cpp : 定义控制台应用程序的入口点。
//


#include "stdafx.h"
#include <omp.h>
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <time.h>

#define NUM_THREADS 4

int _tmain(int argc, _TCHAR* argv[])
{
	omp_set_num_threads(NUM_THREADS);

	long long sum = 0;
	long long sumtmp[NUM_THREADS];
	clock_t t1 = clock();

#pragma omp parallel 
	{
		long i;
		long id = omp_get_thread_num();
		long long temp = 0L;
#pragma omp for
		for(i = 1; i <= 1000000000; i++)
		{
			temp+=i;
		}
		sumtmp[id] = temp;
	}

	for(long i = 0; i < NUM_THREADS; i++)
	{
		sum += sumtmp[i];
	}

	clock_t t2 = clock();
	printf("sum=%lld\n", sum);
	printf("parallel time = %d\n", (t2-t1));

	sum = 0;
	t1 = clock();
	for(long i = 1; i <= 1000000000; i++)
		sum += i;

	t2 = clock();
	printf("sum=%lld\n", sum);
	printf("serial time = %d\n", (t2-t1));

	system("pause");
	return 0;
}


并行计算__简单并行计算实例

标签:blog   http   io   ar   for   2014   log   on   c   

原文地址:http://blog.csdn.net/svitter/article/details/39376099

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!