我正试图使用START
调用一个批处理文件,以便控制其中单个编译命令的处理器相关性。
尝试#1
START "" /NODE 1 /AFFINITY 0x1 build_one_qcc.bat
但我收到错误信息
系统无法接受START命令参数1
尝试#2
START "" build_one_qcc.bat
这启动了一个新的cmd窗口,但在该窗口中我收到了相同的错误消息。
尝试#3
我将批处理文件的内容加上START
命令复制粘贴到我的命令窗口:
start "" /node 1 /affinity 0x1 "qcc -Vgcc_ntoarmv7le ... "
仍然得到相同的错误
我做错了什么?
start /node 0 notepad.exe
工作正常start /node 1 notepad.exe
在具有两个物理处理器的系统上运行良好。
所以你"做错了"的是在单处理器计算机上运行它;)
每个(物理)处理器都有自己的DIMM插槽(这并不意味着它无法访问"其他"内存——这只是性能问题)。你就是无法分配不存在的内存。
显然无法处理/node 1
的1
。
start
命令的文档对[/NODE <NUMA-Node>]
来说似乎是错误的,或者至少NUMA-Node
的格式不是数字。
为什么不用它呢?
START "" /AFFINITY 0x1 build_one_qcc.bat