在特定核心上使用 python 启动程序

Launch program with python on a specific core

有什么方法可以在指定的内核上使用 python 和 运行 通过其 API 启动程序?

我需要启动一个 cpu 昂贵的应用程序大约 5 次,然后 运行 它在不同的核心上以节省时间。

我正在使用 windows

进程可以设置自己的affinity,我是这样做的(你可以改变掩码,或者把它作为一个参数,来确定你想使用哪个核。)

import win32api, win32con, win32process

def setaffinity():
    pid  = win32api.GetCurrentProcessId()
    mask = 128 # core 7
    handle = win32api.OpenProcess(win32con.PROCESS_ALL_ACCESS, True, pid)
    win32process.SetProcessAffinityMask(handle, mask)