【发布时间】:2015-04-21 08:49:00
【问题描述】:
我正在使用 griddata 来“挂载”具有大量形状和 我想知道我是否可以在每个 4 个内核上计算函数(在每个切片上)以加速该过程?
import numpy
size = 8.
Y=(arange(2000))
X=(arange(2000))
(xx,yy)=meshgrid(X,Y)
array=zeros((Y.shape[0],X.shape[0],size))
array[:,:,0] = 0
array[:,:,1] = X+Y
array[:,:,2] = X**2+Y**2+X+Y
array[:,:,3] = X**3+Y**3+X**2+Y**2+X+Y
array[:,:,4] = X**4+Y**4+X**3+Y**3+X**2+Y**2+X+Y
array[:,:,5] = X**5+Y**5+X**4+Y**4+X**3+Y**3+X**2+Y**2+X+Y
array[:,:,6] = X**6+Y**6+X**5+Y**5+X**4+Y**4+X**3+Y**3+X**2+Y**2+X+Y
array[:,:,6] = X**7+Y**7+X**6+Y**6+X**5+Y**5+X**4+Y**4+X**3+Y**3+X**2+Y**2+X+Y
所以在这里我想用第一个核心计算 array[:,:,0] & array[:,:,1],然后 array[:,:,2] & array[:,:,3]用第二个核心...?
----稍后编辑---
不同“切片”之间没有联系……我的不同功能是独立的
array[:,:,0] = 0
array[:,:,1] = X+Y
array[:,:,2] = X*np.cos(X)+Y*np.sin(Y)
array[:,:,3] = X**3+np.sin(X)+X**2+Y**2+np.sin(Y)
...
【问题讨论】:
标签: python arrays numpy multiprocessing