【问题标题】:Is is possible to separate CPU resources between subprocess and main process in Python?是否可以在 Python 中分离子进程和主进程之间的 CPU 资源?
【发布时间】:2023-02-03 15:26:49
【问题描述】:

假设我有一个带有主进程 A 的 Python 程序,它将有一个主线程 a,并调用一些线程 a1、a2。我从 A 派生一个子进程,假设它是 B,并有主线程 b。

是否可以将 b 和 (a, a1, a2) 之间的 CPU 资源(CPU 内核)分开,使它们的 CPU 使用率不会相互竞争?

【问题讨论】:

  • 您将能够通过多处理而不是多线程更好地共享您的 CPU 资源

标签: python cpu


【解决方案1】:

您可以使用实现 taskset 命令的 psutil 库。该命令允许您设置进程对某些 CPU 的亲和力。例如:

p = psutil.Process(pid)
p.cpu_affinity(cpus)

其中 cpus 是指定新 CPU 关联的整数列表。完整的文档是here

【讨论】:

    猜你喜欢
    • 2015-04-12
    • 2019-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 2017-12-12
    • 2021-02-16
    相关资源
    最近更新 更多