我最近开始使用dask,并试图将每月的天气数据重新采样为每日格式。我正在使用的数据集约为6GB。当我将PBS脚本提交到我们的HPC环境时,它将花费更长的时间并保持运行。 PBS脚本如下:
#PBS -q workq
#PBS -N Parallel_python
###PBS -l select=8:ncpus=1:naccelerators=4:accelerator_model="Tesla_P100-PCIE-12GB"
#PBS -l nodes=2:ppn=36
###PBS -l select=10:ncpus=36:vntype=cray_compute
#PBS -l walltime=100:00:00
##PBS -l place=scatter
#PBS -j oe
#PBS -V
#PBS -o /lus/dal/hpcs_rnd/Python_Data_Analysis/Jatin/Parallel_Function_Testing/PBS/output
cd /lus/dal/hpcs_rnd/Python_Data_Analysis/Jatin/Parallel_Function_Testing
time aprun -n 8 python ./test.py
以下是python代码:
import xarray as xr
import dask
from dask.distributed import Client
from dask_mpi import initialize
initialize(memory_limit=0.3)
client = Client()
ds = xr.open_dataset(b.e11.B1850C5CN.f09_g16.005.cam.h1.FLNS.05000101-05991231.nc,chunks = ({'lat': 40,'lon': 40}))
var = ds["FLNS"]
result = var.resample(time = '1M').mean('time').compute()
client.close()
我的问题是,如果串行代码花费了大约650秒的时间,为什么要花费如此大量的时间来计算结果。我想问的另一件事是,是否可以使用mpi和dask-scheduler运行程序。