KDB Q和jupyterlab不在peach上使用从属服务器

KDB Q和jupyterlab不在peach上使用从属服务器,kdb,jupyter-lab,Kdb,Jupyter Lab,我正在运行一个jupyter笔记本(3.6),在启动时使用 "env":{"JUPYTERQ_SERVERARGS":"s-20"} 如果我在笔记本上查一下,看起来都不错 \s 20i 但是,当我运行并行进程时,例如 \t:100 {sqrt (200000?x) xexp 1.7} peach 10?1.0 我可以看到所有从机都使用相同的cpu 如果我在从命令行开始的q会话中运行相同的命令,并使用我在runkernel.py中指定的相同q二进制文件,那么它会在所有可用的CPU上分发从属文

我正在运行一个jupyter笔记本(3.6),在启动时使用

"env":{"JUPYTERQ_SERVERARGS":"s-20"}
如果我在笔记本上查一下,看起来都不错

\s
20i
但是,当我运行并行进程时,例如

\t:100 {sqrt (200000?x) xexp 1.7} peach 10?1.0
我可以看到所有从机都使用相同的cpu

如果我在从命令行开始的q会话中运行相同的命令,并使用我在runkernel.py中指定的相同q二进制文件,那么它会在所有可用的CPU上分发从属文件

有人知道为什么jupyterlab q会话只使用1个cpu吗

编辑: 谢谢Callum和Terry给我指任务集。因此,任务集最初设置为掩码8000000。我改了

system "taskset -cp 30-40 ",(string .z.i)
"pid 193048's current affinity list: 27"
"pid 193048's new affinity list: 30-40"

然后重新运行上面的过程。现在所有任务仍然在cpu 28上运行(这是以前使用的cpu,尽管掩码将其设置为27)。我还尝试为jupyter实验室本身设置关联,但这也没有任何影响。

尝试以不同的方式指定服务器参数,它们被解析为

SERVERARGS:getenv`JUPYTERQ_SERVERARGS
因此,请尝试按如下方式指定它们

"env":{"JUPYTERQ_SERVERARGS":"-s 20"}

启动kdb jupyterlab进程时是否使用任务集?使用
taskset
通常是确保kdb进程在多个/特定CPU上工作的方式如果您在linux上运行,那么您可以在jupyter笔记本中使用以下内容轻松检查任务集q)系统“taskset-p”,string.z.i。如果您在windows上运行,您可以使用进程监视器之类的工具手动查找jupyter labchrise,您最终解决了这个问题吗?