python中differ_控制python代码在differ上运行

是的,您可以在不同的进程中运行每个函数,以便利用多个核心。下面是一个例子:from multiprocessing import Process

def add(a,b):

return a+b

def sub(s, t):

return s-t

def mult(y,x):

return y*x

if __name__ == "__main__":

# construct a different process for each function

processes = [Process(target=add, args=(3,4)),

Process(target=sub, args=(3,4)),

Process(target=mult, args=(2,3))]

# kick them off

for process in processes:

process.start()

# now wait for them to finish

for process in processes:

process.join()

不需要强制操作系统在特定的内核上运行特定的进程。如果CPU上有多个内核,操作系统将在这些核心上调度进程。在这里不太可能需要使用任何类型的CPU pinning。在

上面的例子太简单了,看不到你的多个核心参与。相反,你可以尝试这个例子,这是一个简单的CPU限制问题的变化,也就是说,它只是一个需要更多计算的版本。在

^{pr2}$

如果您查看您的top输出(按1查看核心),您应该会看到这样的情况:三个核心以100%的速度使用(或接近它)。这不需要做任何CPU固定。更容易信任操作系统来实现并行性。在

A9jKc.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值