import unittest import paddle.v2.framework.core as core from paddle.v2.framework.op import Operator import numpy class GaussianRandomTest(unittest.TestCase): def test_cpu(self): self.gaussian_random_test(place=core.CPUPlace()) def test_gpu(self): if core.is_compile_gpu(): self.gaussian_random_test(place=core.GPUPlace(0)) def gaussian_random_test(self, place): scope = core.Scope() scope.new_var("Out").get_tensor() op = Operator( "gaussian_random", Out="Out", dims=[1000, 784], mean=.0, std=1., seed=10) op.infer_shape(scope) context = core.DeviceContext.create(place) op.run(scope, context) tensor = numpy.array(scope.find_var("Out").get_tensor()) self.assertAlmostEqual(numpy.mean(tensor), .0, delta=0.1) self.assertAlmostEqual(numpy.std(tensor), 1., delta=0.1) if __name__ == '__main__': unittest.main()