Ejemplo n.º 1
0
        public void TestReshapeLong2DPointToTheSameStorage()
        {
            var x = LongAtenTensor.Create(5, 10);

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                for (int j = 0; j < x.Dimensions[1]; j++)
                {
                    long tmp = (long)(i + j);
                    x[i, j] = tmp;
                }
            }

            Tensor <long> y = x.Reshape(new int[] { 10, 5 });

            x[4, 9] = 0;
            y[3, 4] = 0;

            for (int i = 0; i < 1; i++)
            {
                for (int j = 0; j < 10; j++)
                {
                    Assert.Equal(x[i, j], y[i * 2 + j / 5, j % 5]);
                }
            }
        }
Ejemplo n.º 2
0
        public void TestReshapeLong1DFail()
        {
            Tensor <long> x = LongAtenTensor.Create(10);

            x.Fill((long)1);

            Assert.Throws <ArgumentException>(() => x.Reshape(new int[] { 9 }));
        }
Ejemplo n.º 3
0
        public void TestShapeAndStridesLong4D()
        {
            var x = LongAtenTensor.Create(10, 10, 3, 10);

            for (int i = 0; i < 4; i++)
            {
                Assert.Equal(x.Dimensions[0], (int)x.AtenSharpTensor.GetTensorDimension(0));
                Assert.Equal(x.Strides[0], (int)x.AtenSharpTensor.GetTensorStride(0));
            }
        }
Ejemplo n.º 4
0
        public void TestFillLong1D()
        {
            Tensor <long> x = LongAtenTensor.Create(10);

            x.Fill((long)30);

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                Assert.Equal(30, x[i]);
            }
        }
Ejemplo n.º 5
0
        public void TestFillBySetLong1D()
        {
            Tensor <long> x = LongAtenTensor.Create(10);

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                x[i] = (long)30;
            }

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                Assert.Equal(x[i], (long)30);
            }
        }
Ejemplo n.º 6
0
        public void TestCloneEmptyLong1D()
        {
            Tensor <long> x = LongAtenTensor.Create(10);

            x.Fill((long)1);

            Tensor <long> y = x.CloneEmpty();

            Assert.Equal(y.Dimensions.ToArray(), x.Dimensions.ToArray());

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                Assert.Equal(y[i], (long)0);
            }
        }
Ejemplo n.º 7
0
        public void TestCloneLong1D()
        {
            Tensor <long> x = LongAtenTensor.Create(10);

            x.Fill((long)1);

            Tensor <long> y = x.Clone();

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                Assert.Equal(x[i], y[i]);
            }

            y[5] = (long)0;

            Assert.NotEqual(x[5], y[5]);
        }
Ejemplo n.º 8
0
        public void TestDanglingMemoryLong()
        {
            Memory <long> buffer;

            using (var x = LongAtenTensor.Create(10))
            {
                x.Fill(33);
                buffer = x.Buffer;
            }

            var arr = buffer.ToArray();

            for (int i = 0; i < 10; i++)
            {
                Assert.Equal(33, arr[i]);
            }
        }
Ejemplo n.º 9
0
        public void TestReshapeLong2D()
        {
            var x = LongAtenTensor.Create(5, 10);

            var y = x.Reshape(new int[] { 10, 5 });

            for (int i = 0; i < 2; i++)
            {
                Assert.Equal(x.Dimensions[0], (int)x.AtenSharpTensor.GetTensorDimension(0));
                Assert.Equal(x.Strides[0], (int)x.AtenSharpTensor.GetTensorStride(0));
            }

            Equals(x.Dimensions.ToArray(), new int[] { 5, 10 });
            Equals(x.Strides.ToArray(), new int[] { 1, 10 });
            Equals(y.Dimensions.ToArray(), new int[] { 10, 5 });
            Equals(y.Strides.ToArray(), new int[] { 1, 5 });
        }
Ejemplo n.º 10
0
        public void TestReshapeLong1D()
        {
            Tensor <long> x = LongAtenTensor.Create(10);

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                x[i] = (long)i;
            }

            Tensor <long> y = x.Reshape(new int[] { 10 });

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                Assert.Equal(y[i], (long)i);
                Assert.Equal(x[i], (long)i);
            }
        }
Ejemplo n.º 11
0
        public void TestReshapeLong1DPointToTheSameStorage()
        {
            Tensor <long> x = LongAtenTensor.Create(10);

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                x[i] = (long)i;
            }

            Tensor <long> y = x.Reshape(new int[] { 10 });

            y[5] = (long)0;

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                Assert.Equal(y[i], x[i]);
            }
        }
Ejemplo n.º 12
0
        public void TestCloneLong2D()
        {
            Tensor <long> x = LongAtenTensor.Create(10, 10);

            x.Fill((long)1);

            Tensor <long> y = x.Clone();

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                for (int j = 0; j < x.Dimensions[1]; j++)
                {
                    Assert.Equal(x[i, j], y[i, j]);
                }
            }

            y[5, 5] = (long)0;

            Assert.NotEqual(x[5, 5], y[5, 5]);
        }
Ejemplo n.º 13
0
        public void TestFillBySetLong2D()
        {
            Tensor <long> x = LongAtenTensor.Create(10, 10);

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                for (int j = 0; j < x.Dimensions[1]; j++)
                {
                    x[i, j] = (long)30;
                }
            }

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                for (int j = 0; j < x.Dimensions[1]; j++)
                {
                    Assert.Equal(x[i, j], (long)30);
                }
            }
        }
Ejemplo n.º 14
0
        public void TestFillEquivalanceLong2D()
        {
            var x = LongAtenTensor.Create(10, 10);

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                for (int j = 0; j < x.Dimensions[1]; j++)
                {
                    long tmp = (long)(i + j);
                    x[i, j] = tmp;
                }
            }

            for (int i = 0; i < x.Dimensions[0]; i++)
            {
                for (int j = 0; j < x.Dimensions[1]; j++)
                {
                    Assert.Equal(x[i, j], x.AtenSharpTensor[i, j]);
                }
            }
        }
Ejemplo n.º 15
0
        public void TestCreationLong4D()
        {
            Tensor <long> x = LongAtenTensor.Create(10, 10, 3, 10);

            Assert.NotNull(x);
        }
Ejemplo n.º 16
0
 public void TestCreationLong0D()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() => LongAtenTensor.Create());
 }