我从外部导入进去的三维数组如下
u=loadtxt("u_fla.dat", dtype=float, unpack=True)
v=loadtxt("v_fla.dat", dtype=float, unpack=True)
w=loadtxt("w_fla.dat", dtype=float, unpack=True)
u1=u.reshape(256,256,256)
v1=v.reshape(256,256,256)
w1=w.reshape(256,256,256)
2.程序内部的速度U,V,W已经按照x方向利用切片分快了,我需要将导入数组对应CPU分块
先要确认使用多少个核心(假如14核心,256节点)并行计算,并输出每个核心在x方向上的上下限
if (0<=comm_rank<=3):
i=comm_rank*19
j=(comm_rank+1)*19
U[0]=u1[i:j,:,:]
U[1]=v1[i:j,:,:]
U[2]=w1[i:j,:,:]
elif (4<=comm_rank<=13):
a=comm_rank*18+4
b=(comm_rank+1)*18+4
U[0]=u1[a:b,:,:]
U[1]=v1[a:b,:,:]
U[2]=w1[a:b,:,:]
网友评论