diff --git a/pySDC/helpers/spectral_helper.py b/pySDC/helpers/spectral_helper.py index 0fc885a3574b4ec23822f3d25563f57d145cb492..7381b33e6e0e9c47aa934d0b6b5f2e8810c51a0b 100644 --- a/pySDC/helpers/spectral_helper.py +++ b/pySDC/helpers/spectral_helper.py @@ -1471,7 +1471,10 @@ class SpectralHelper: if padding is not None: shape = list(v.shape) if self.comm: - shape[0] = self.comm.allreduce(v.shape[0]) + send_buf = np.array(v.shape[0]) + recv_buf = np.array(v.shape[0]) + self.comm.Allreduce(send_buf, recv_buf) + shape[0] = int(recv_buf) fft = self.get_fft(axes, 'forward', shape=shape) else: fft = self.get_fft(axes, 'forward', **kwargs) @@ -1643,7 +1646,10 @@ class SpectralHelper: if padding[axis] != 1: shape = list(v.shape) if self.comm: - shape[0] = self.comm.allreduce(v.shape[0]) + send_buf = np.array(v.shape[0]) + recv_buf = np.array(v.shape[0]) + self.comm.Allreduce(send_buf, recv_buf) + shape[0] = int(recv_buf) ifft = self.get_fft(axes, 'backward', shape=shape) else: ifft = self.get_fft(axes, 'backward', padding=padding, **kwargs)