Esempio n. 1
0
        public void CheckChangeTensorLayout2D()
        {
            var strg2DCpy = (UnmanagedStorage)strg2D.Clone();

            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.Shape.Dimensions, new int[] { 3, 3 }));
            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.GetData <long>(), new long[] { 0, 3, 6, 1, 4, 7, 2, 5, 8 }));

            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.Shape.Dimensions, new int[] { 3, 3 }));
            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.GetData <long>(), strg2D.GetData <long>()));

            strg2DCpy = (UnmanagedStorage)strg2DNonFull.Clone();

            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.Shape.Dimensions, new int[] { 5, 2 }));
            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.GetData <long>(), new long[] { 0, 5, 1, 6, 2, 7, 3, 8, 4, 9 }));

            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.Shape.Dimensions, new int[] { 5, 2 }));
            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.GetData <long>(), strg2DNonFull.GetData <long>()));

            strg2DCpy = new UnmanagedStorage(typeof(long));
            strg2DCpy.Allocate(new Shape(5, 2));

            strg2DCpy.ReplaceData(strg2DNonFull.GetData());

            Assert.IsTrue(Enumerable.SequenceEqual(strg2DCpy.GetData <long>(), new long[] { 0, 2, 4, 6, 8, 1, 3, 5, 7, 9 }));
        }
Esempio n. 2
0
        public StorageTester()
        {
            strg1D = new UnmanagedStorage(np.float64)
            {
                Engine = BackendFactory.GetEngine()
            };
            strg1D.Allocate(new Shape(10));
            strg1D.ReplaceData(new double[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 });

            strg2D = new UnmanagedStorage(np.int64)
            {
                Engine = BackendFactory.GetEngine()
            };
            strg2D.Allocate(new Shape(3, 3));
            strg2D.ReplaceData(new long[] { 0, 1, 2, 3, 4, 5, 6, 7, 8 });

            strg2DNonFull = new UnmanagedStorage(np.float32)
            {
                Engine = BackendFactory.GetEngine()
            };
            strg2DNonFull.Allocate(new Shape(5, 2));
            strg2DNonFull.ReplaceData(new float[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 });
        }