1
当处理2D数据时,我发现2D阵列上的速度略有提升,但即使在优势消失的大型1D阵列上也是如此。Can Dask可以提供一维数组的加速吗?
例如,在2D:
In [48]: x = np.random.random((3000, 2000))
In [49]: X = da.from_array(x, chunks=(500,500))
In [50]: %timeit (np.cumsum(x - x**2, axis=0))
10 loops, best of 3: 131 ms per loop
In [51]: %timeit (da.cumsum(X - X**2, axis=0)).compute()
10 loops, best of 3: 89.3 ms per loop
但在1D:
In [52]: x = np.random.random(10e5)
In [53]: X = da.from_array(x, chunks=(2000,))
In [54]: %timeit (np.cumsum(x - x**2, axis=0))
100 loops, best of 3: 8.28 ms per loop
In [55]: %timeit (da.cumsum(X - X**2, axis=0)).compute()
1 loop, best of 3: 304 ms per loop
能DASK,支持一维数组提供了一个加速,如果是的话,理想的数据块大小是什么呢?