Ответ: Великая битва 4х языков программирования на простейшей задачке
Вот мой вариант:
Чем больше ядер, тем быстрее.
#include <iostream>
#include <time.h>
#include <omp.h>
using namespace std;
int main()
{
cout << "Start!" << endl;
int x_sz=512;
int y_sz=128;
int z_sz=512;
//=================================================
int timer0=clock();
int * array=new int[x_sz*y_sz*z_sz];
float timer3=(clock()-timer0);
//==Содержание 1D массива аналогично 3D, но так проще=====
int timer4=clock();
for (int a = 0; a < 100; a++)
{
#pragma omp parallel for
for(int n = 0; n < x_sz*y_sz*z_sz; n++)
{
array[n]=n;
}
}
float timer5=(clock()-timer4);
//==================================================
cout << "Create arr: " <<timer3<<" ms"<<endl;
cout << "1D arr: " <<timer5*0.01<<" ms"<<endl;
return 0;
}
Последний раз редактировалось BlackDragon, 26.11.2011 в 17:14.
|