小编RIc*_*ams的帖子

并行化for循环

我有一个for循环,其中迭代计算i不依赖于前一次迭代中完成的计算.

我想并行化for循环(我的代码在java中),以便多个迭代的计算可以在多个处理器上同时运行.我应该为每次迭代的计算创建一个线程,即要创建的线程数等于迭代次数(for循环中的迭代次数是多少)?这该怎么做?

java multithreading for-loop

25
推荐指数
2
解决办法
2万
查看次数

并行化C中的for循环

我的C代码中有一个for循环,如下所示:

for(i=0; i<100000; i++){

    a[i] = simulate(); //  simulate() function simulates some system

}
Run Code Online (Sandbox Code Playgroud)

我们看到每次迭代的计算都与其他迭代无关(元素的顺序a[]对我来说并不重要).我想使用多线程并行化这个for循环的计算.我不完全清楚如何在C中这样做?我有一台8处理器的机器,所以我可以并行运行8个线程.

c parallel-processing

9
推荐指数
1
解决办法
1万
查看次数

使用Mersenne twister在C中生成随机数

我想使用Mersenne twister在c中生成随机数(0到1之间).我的代码如下:

for (i=1; i<=10;i++){
  srand(time(NULL));
  a=rand();
  b=rand();
  c=rand();  
}
Run Code Online (Sandbox Code Playgroud)

即在for循环的每次迭代中,随机数将以当前时间播种,并且使用此种子我将在0和1之间生成3个随机数.如何使用mersenne twister?

c random

0
推荐指数
1
解决办法
8571
查看次数

标签 统计

c ×2

for-loop ×1

java ×1

multithreading ×1

parallel-processing ×1

random ×1