我正在尝试在Mac OSX计算机上使用gdb调试OpenMP C ++程序。 (好的,技术上使用“ggdb”。)无论我将OMP_NUM_THREADS设置为什么,gdb都会尝试在8个线程上运行代码。为什么是这样?有没有办法让我自己告诉代码运行的线程数?
答案 0 :(得分:1)
嗯,我想我是在表达自己的无知,但是我在我之前设定了它 启动调试器。我应该在调试器中做到吗?
您应该在gdb:
中设置环境变量OMP_NUM_THREADS
(gdb) set environment OMP_NUM_THREADS 2
另见内置帮助:
(gdb) help set environment
Set environment variable value to give the program.
Arguments are VAR VALUE where VAR is variable name and VALUE is value.
VALUES of environment variables are uninterpreted strings.
This does not affect the program until the next "run" command.