我正在尝试执行代码自动编译和自动评估程序。我想比较一个程序在多线程模式和单线程模式下的效率差异。所以我很奇怪,如果有一个编译选项允许我使用psudo-multithread库(使用实际的单线程实现)编译多线程程序,从多线程程序派生单线程程序。 / p>
答案 0 :(得分:0)
我不知道你用于多线程的是什么 您可以使用OpenMP共享内存多处理API。
您可以通过两种方式在多线程模式和单线程模式之间切换:
-fopenmp
标志禁用/启用OpenMP。OMP_NUM_THREADS=X
环境变量或直接使用例程set_omp_num_threads(X)
,其中X
是您的主题号码。请注意,它们不等同的两种方式之间存在差异。如果需要,我可以详细说明这一点。