def testDoubleTranspose(self): for shape, dtype, batch in self.testcases: data = getTestArray(shape, dtype, batch) tr = createTranspose(self.env, dtype) d_data = self.env.toDevice(data) d_temp = self.env.allocate(data.shape, dtype) tr(d_data, d_temp, shape[1], shape[0], batch=batch) tr(d_temp, d_data, shape[0], shape[1], batch=batch) result = self.env.fromDevice(d_data) self.assert_(diff(data, result) < 1e-6)
def testCompare(self): ref_env = CPUEnvironment() for shape, dtype, batch in self.testcases: data = getTestArray(shape, dtype, batch) tr = createTranspose(self.env, dtype) ref_tr = createTranspose(ref_env, dtype) d_data = self.env.toDevice(data) d_temp = self.env.allocate(data.shape, dtype) ref_data = ref_env.toDevice(data) ref_temp = ref_env.allocate(data.shape, dtype) tr(d_data, d_temp, shape[1], shape[0], batch=batch) ref_tr(ref_data, ref_temp, shape[1], shape[0], batch=batch) result = self.env.fromDevice(d_temp) ref_result = ref_env.fromDevice(ref_temp) self.assert_(diff(result, ref_result) < 1e-6)