def test_low_workcount(self): # build parallel native code ufunc pv = Vectorize(vector_add, target='parallel') for ty in (int32, uint32, float32, float64): pv.add(ty(ty, ty)) para_ufunc = pv.build_ufunc() # build python ufunc np_ufunc = np.vectorize(vector_add) # test it out def test(ty): data = np.arange(1).astype(ty) # just one item result = para_ufunc(data, data) gold = np_ufunc(data, data) np.testing.assert_allclose(gold, result) test(np.double) test(np.float32) test(np.int32) test(np.uint32)
def test_low_workcount(self): # build parallel native code ufunc pv = Vectorize(vector_add, target='parallel') pv.add(restype=int32, argtypes=[int32, int32]) pv.add(restype=uint32, argtypes=[uint32, uint32]) pv.add(restype=float32, argtypes=[float32, float32]) pv.add(restype=float64, argtypes=[float64, float64]) para_ufunc = pv.build_ufunc() # build python ufunc np_ufunc = np.vectorize(vector_add) # test it out def test(ty): data = np.arange(1).astype(ty) # just one item result = para_ufunc(data, data) gold = np_ufunc(data, data) self.assertTrue(np.allclose(gold, result)) test(np.double) test(np.float32) test(np.int32) test(np.uint32)