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

问题描述 投票:0回答:1

有没有办法使用Python通过API启动程序并在指定的核心上运行它?

我需要启动一个占用 CPU 资源的应用程序大约 5 次,并在不同的内核上运行它以节省时间。

我使用的是 Windows。

python windows multiprocessing cpu-cores
1个回答
5
投票

该进程可以设置自己的亲和力,这就是我所做的(您可以更改掩码,或将其设为参数,以识别要使用哪些核心。)

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)
© www.soinside.com 2019 - 2024. All rights reserved.