Exemplo n.º 1
0
        public void Add()
        {
            int[]  indices    = new int[] { 0, 5, 10, 50, 75 };
            Vector gpuIndices = new Vector(indices);

            SparseVector v1 = new SparseVector(100, gpuIndices, 1.2345, MathDomain.Float);

            DeviceManager.CheckDeviceSanity();
            var _v1 = v1.Get <float>();

            Vector v2 = Vector.RandomUniform(v1.denseSize, 1234, MemorySpace.Device, MathDomain.Float);

            DeviceManager.CheckDeviceSanity();
            var _v2 = v2.Get <float>();

            var v3 = v1 + v2;

            DeviceManager.CheckDeviceSanity();
            var _v3 = v3.Get <float>();

            for (int i = 0; i < v1.Size; ++i)
            {
                Assert.IsTrue(Math.Abs(_v3[i] - _v1[i] - _v2[i]) <= 1e-7);
            }
        }