openmp 相关问题

OpenMP是一种跨平台的多线程API,它允许使用特殊的编译器指令进行细粒度的任务并行化和同步。

调用外部线程库在 omp 并行区域内是单线程的

我正在 C++ 代码中进行嵌套并行处理。 我正在使用 #omp parallel for 并行化一个 for 循环,并且在 for 循环内我调用了一个外部库。也就是说,每次迭代...

回答 0 投票 0

使用 openmp 并行化 python 中的“for 循环”迭代

我想使用 OpenMP 线程或 python 中的类似技术并行化“for 循环”迭代。 代码如下所示。 “idexs”迭代了 1024 次,它所做的只是......

回答 2 投票 0

使用 openmp 在 python 中并行化“for 循环”迭代

我想使用 OpenMP 线程或 python 中的类似技术并行化“for 循环”迭代。 代码如下所示。 “idexs”迭代了 1024 次,它所做的只是......

回答 0 投票 0

使用 OPENMP 在嵌套循环中进行并行化

我正在尝试使用 openmp 在 C 中并行化此函数,但似乎没有任何效果,我知道迭代和两条线中存在依赖关系,但我被卡住了,有人可以帮助...

回答 0 投票 0

为什么 printf 调用有助于缩短执行时间?

我正在 OpenMP 中实现一个稀疏矩阵多向量乘法,我注意到在预处理函数中包含一些 printf 调用,而不是并行化,增加了很多 GFLOPS

回答 1 投票 0

在 Windows R 中使用 openmp,rtools 是否支持 openmp?

尝试在 c++ 代码中使用 openmp 在 Windows 7 上构建我的 R 包时收到很多错误消息: c:/rtools/mingw/bin/../lib/gcc/mingw32/4.5.0/libgomp.a(parallel.o):(.text+0x19): undefi...

回答 3 投票 0

Slurm 作业导致执行时间异常

我有这样的工作脚本, #!/bin/庆典 #SBATCH -p cs #SBATCH -e %j.err #SBATCH --时间=40:00 #SBATCH --output=slurm-%j.out #SBATCH --cpus-per-task=2 #SBATCH --nodes=1 #SBATCH --ntasks=1 # 执行...

回答 2 投票 0

迭代循环的 slurm 作业脚本

我使用这样的 bash 脚本, 因为我在 0 1 2 3 4 5 做 导出 OMP_NUM_THREADS=$((2 **i)) && ./debug > ./logs/112500/exp$1/log-$((2 **i)).txt 完毕 现在我需要运行这个脚本......

回答 1 投票 0

OpenMP斐波那契函数和firstprivate的使用

为什么在下面的代码片段中使用 firstprivate?删除 firstprivate 似乎对最终结果没有任何影响。我对 firstprivate 的理解是

回答 1 投票 0

用C语言在omp中并行运行组合(字典顺序)?

我需要帮助。我无法让这个组合生成算法(按字典顺序)并行工作。算法取自Rosettacode网站,链接为:https://rosettacode.or...

回答 0 投票 0

使用 Fortran 90 的 Open MP 的效率?

大家好,感谢那些会看我的问题的人。 我有一个子程序,我尝试使用 open MP 来做我想做的事情,但似乎没有它我的代码更快。 问题我有一个很大的清单......

回答 0 投票 0

在 Visual Studio 中对多线程 OMP C++ 进行性能分析

我目前正在分析当前在 Visual Studio 2017 下运行的大量多线程 C++。查看任务管理器下的结果,我的程序正在保持所有 CPU 内核和线程运行...

回答 0 投票 0

OMP循环依赖-

我尝试并行化以下代码 双 a = 1.5; 双 b = 2.5; 双 *arr = ...; 对于(我= 0;我< N; ++i) { arr[i] = b; b *= a; } I have tried different constellations of pr...

回答 1 投票 0

Odeint 与 openmp 的集成和并行计算

我正在尝试使用 odeint 在 C++ 中实现三体问题集成,但是要进化,系统需要很多时间(系统集成仅 50 年大约需要 10 小时),所以我想...

回答 0 投票 0

我可以使用临时二维数组来避免 OpenMP 中的数据依赖吗?

我有一段代码是这样的: 整数n=5; 本征::VectorXd vec(n); vec.setZero(); 对于(int i=0;i<100;i++) { int idx = i%n; vec(idx)+=(i/n); } std::cout< 我有一段代码是这样的: int n=5; Eigen::VectorXd vec(n); vec.setZero(); for(int i=0;i<100;i++) { int idx = i%n; vec(idx)+=(i/n); } std::cout<<vec<<endl; 我想并行化它。 我想出了一个避免数据依赖的方法。 int n=5; int num_thread = 6; omp_set_num_threads(num_thread); Eigen::MatrixXd mat(num_thread,n); mat.setZero(); #pragma omp parallel for for(int i=0;i<100;i++) { int idx_pool = omp_get_thread_num(); int idx_col = i%n; mat(idx_pool,idx_col)+=(i/n); } Eigen::VectorXd vec(n); vec = mat.rowwise().sum(); std::cout<<vec<<endl; 请问这个方法对吗?

回答 0 投票 0

为什么我的数独解算器使用 openMP 串行工作而不是并行工作?

我正在编写一个代码,使用 openMP 并行解决 NxN 数独难题。当我在没有 -fopenmp 选项的情况下进行编译时,代码工作正常,但是当我使用 -fopenmp 进行编译时,我得到了奇怪的结果。 这里...

回答 0 投票 0

包含 openMP 时为什么我的代码不起作用?

我正在编写一个代码,使用 openMP 并行解决 NxN 数独难题。当我在没有 -fopenmp 选项的情况下进行编译时,代码工作正常,但是当我使用 -fopenmp 进行编译时,我得到了奇怪的结果。 这里...

回答 0 投票 0

OpenMP - 部分内的嵌套并行循环

我有一个循环的时间积分,在其中(在下一个时间步找到数组的值)我基本上计算三个方程并且三个方程中的每一个都是独立的......

回答 1 投票 0

使用 OpenMP 的性能不会增加超过 2 个线程

我已经使用 C++ 创建了 N^2 时间复杂度的朴素 N 体问题的实现,并尝试使用 OpenMP 对其进行并行化。例如,用 1000 bodie 运行程序 5 次...

回答 0 投票 0

CMake - 允许 mingw 与 OpenMP 和 opencv

我尝试设置一个 C++ 环境来处理图像(使用 opencv)和并行计算。主要问题是我无法成功地将所有部分链接在一起。作为提及,我使用 mingw ...

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.