256 references to Rank
System.Numerics.Tensors (256)
System\Numerics\Tensors\netcore\ReadOnlyTensorSpan.cs (37)
328if (indexes.Length != Rank) 351if (indexes.Length != Rank) 374if (ranges.Length != Rank) 421left.Rank == right.Rank && 486_curIndexes = new nint[_span.Rank]; 487_curIndexes[_span.Rank - 1] = -1; 494TensorSpanHelpers.AdjustIndexes(_span.Rank - 1, 1, _curIndexes, _span.Lengths); 545if (Rank > TensorShape.MaxInlineRank) 564int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1; 601if (Rank > TensorShape.MaxInlineRank) 620int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1; 696if (Rank > TensorShape.MaxInlineRank) 698lengthsArray = ArrayPool<nint>.Shared.Rent(Rank); 699lengths = lengthsArray.AsSpan(0, Rank); 701offsetsArray = ArrayPool<nint>.Shared.Rent(Rank); 702offsets = offsetsArray.AsSpan(0, Rank); 706lengths = stackalloc nint[Rank]; 707offsets = stackalloc nint[Rank]; 756if (Rank > TensorShape.MaxInlineRank) 758curIndexesArray = ArrayPool<nint>.Shared.Rent(Rank); 759curIndexes = curIndexesArray.AsSpan(0, Rank); 764curIndexes = stackalloc nint[Rank]; 771TensorSpanHelpers.Memmove(destination.Slice(checked((int)copiedValues)), ref Unsafe.Add(ref _reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, Strides, Lengths)), Lengths[Rank - 1]); 772TensorSpanHelpers.AdjustIndexes(Rank - 2, 1, curIndexes, _shape.Lengths); 773copiedValues += Lengths[Rank - 1]; 797if (Rank > TensorShape.MaxInlineRank) 799curIndexesArray = ArrayPool<nint>.Shared.Rent(Rank); 800curIndexes = curIndexesArray.AsSpan(0, Rank); 805curIndexes = stackalloc nint[Rank]; 812if (Strides[Rank - 1] == 0) 814destination.Slice(checked((int)copiedValues), (int)Lengths[Rank - 1]).Fill(Unsafe.Add(ref _reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, Strides, Lengths))); 818TensorSpanHelpers.Memmove(destination.Slice(checked((int)copiedValues)), ref Unsafe.Add(ref _reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, Strides, Lengths)), Lengths[Rank - 1]); 820TensorSpanHelpers.AdjustIndexes(Rank - 2, 1, curIndexes, _shape.Lengths); 821copiedValues += Lengths[Rank - 1];
System\Numerics\Tensors\netcore\TensorExtensions.cs (215)
545if (x.Rank > TensorShape.MaxInlineRank) 547curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 548curIndex = curIndexArray.AsSpan(0, x.Rank); 553curIndex = stackalloc nint[x.Rank]; 560TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 590if (broadcastedLeft.Rank > TensorShape.MaxInlineRank) 592curIndexArray = ArrayPool<nint>.Shared.Rent(broadcastedRight.Rank); 593curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 598curIndex = stackalloc nint[broadcastedRight.Rank]; 606TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 629if (x.Rank > TensorShape.MaxInlineRank) 631curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 632curIndex = curIndexArray.AsSpan(0, x.Rank); 637curIndex = stackalloc nint[x.Rank]; 645TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 674if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 677curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 690TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 713if (x.Rank > TensorShape.MaxInlineRank) 715curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 716curIndex = curIndexArray.AsSpan(0, x.Rank); 721curIndex = stackalloc nint[x.Rank]; 729TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 776if (values.Rank != 1) 920if (x.Rank > TensorShape.MaxInlineRank) 922curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 923curIndex = curIndexArray.AsSpan(0, x.Rank); 928curIndex = stackalloc nint[x.Rank]; 935TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 980if (y.Rank > TensorShape.MaxInlineRank) 982curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 983curIndex = curIndexArray.AsSpan(0, y.Rank); 988curIndex = stackalloc nint[y.Rank]; 995TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1129if (x.Rank > TensorShape.MaxInlineRank) 1131curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1132curIndex = curIndexArray.AsSpan(0, x.Rank); 1137curIndex = stackalloc nint[x.Rank]; 1144TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1189if (y.Rank > TensorShape.MaxInlineRank) 1191curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1192curIndex = curIndexArray.AsSpan(0, y.Rank); 1197curIndex = stackalloc nint[y.Rank]; 1204TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1233if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 1236curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1249TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1272if (x.Rank > TensorShape.MaxInlineRank) 1274curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1275curIndex = curIndexArray.AsSpan(0, x.Rank); 1280curIndex = stackalloc nint[x.Rank]; 1288TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1311if (y.Rank > TensorShape.MaxInlineRank) 1313curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1314curIndex = curIndexArray.AsSpan(0, y.Rank); 1319curIndex = stackalloc nint[y.Rank]; 1327TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1356if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 1359curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1372TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1395if (x.Rank > TensorShape.MaxInlineRank) 1397curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1398curIndex = curIndexArray.AsSpan(0, x.Rank); 1403curIndex = stackalloc nint[x.Rank]; 1411TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1434if (y.Rank > TensorShape.MaxInlineRank) 1436curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1437curIndex = curIndexArray.AsSpan(0, y.Rank); 1442curIndex = stackalloc nint[y.Rank]; 1450TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1480if (broadcastedLeft.Rank > TensorShape.MaxInlineRank) 1482curIndexArray = ArrayPool<nint>.Shared.Rent(broadcastedRight.Rank); 1483curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1488curIndex = stackalloc nint[broadcastedRight.Rank]; 1496TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1519if (x.Rank > TensorShape.MaxInlineRank) 1521curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1522curIndex = curIndexArray.AsSpan(0, x.Rank); 1527curIndex = stackalloc nint[x.Rank]; 1535TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1558if (y.Rank > TensorShape.MaxInlineRank) 1560curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1561curIndex = curIndexArray.AsSpan(0, y.Rank); 1566curIndex = stackalloc nint[y.Rank]; 1574TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1604if (broadcastedLeft.Rank > TensorShape.MaxInlineRank) 1606curIndexArray = ArrayPool<nint>.Shared.Rent(broadcastedRight.Rank); 1607curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1612curIndex = stackalloc nint[broadcastedRight.Rank]; 1620TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1643if (x.Rank > TensorShape.MaxInlineRank) 1645curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1646curIndex = curIndexArray.AsSpan(0, x.Rank); 1651curIndex = stackalloc nint[x.Rank]; 1659TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1682if (y.Rank > TensorShape.MaxInlineRank) 1684curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1685curIndex = curIndexArray.AsSpan(0, y.Rank); 1690curIndex = stackalloc nint[y.Rank]; 1698TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1832if (x.Rank > TensorShape.MaxInlineRank) 1834curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1835curIndex = curIndexArray.AsSpan(0, x.Rank); 1840curIndex = stackalloc nint[x.Rank]; 1847TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1892if (y.Rank > TensorShape.MaxInlineRank) 1894curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1895curIndex = curIndexArray.AsSpan(0, y.Rank); 1900curIndex = stackalloc nint[y.Rank]; 1907TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2041if (x.Rank > TensorShape.MaxInlineRank) 2043curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2044curIndex = curIndexArray.AsSpan(0, x.Rank); 2049curIndex = stackalloc nint[x.Rank]; 2056TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2101if (y.Rank > TensorShape.MaxInlineRank) 2103curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2104curIndex = curIndexArray.AsSpan(0, y.Rank); 2109curIndex = stackalloc nint[y.Rank]; 2116TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2146if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2149curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2162TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2185if (x.Rank > TensorShape.MaxInlineRank) 2187curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2188curIndex = curIndexArray.AsSpan(0, x.Rank); 2193curIndex = stackalloc nint[x.Rank]; 2201TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2224if (y.Rank > TensorShape.MaxInlineRank) 2226curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2227curIndex = curIndexArray.AsSpan(0, y.Rank); 2232curIndex = stackalloc nint[y.Rank]; 2240TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2270if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2273curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2286TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2309if (x.Rank > TensorShape.MaxInlineRank) 2311curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2312curIndex = curIndexArray.AsSpan(0, x.Rank); 2317curIndex = stackalloc nint[x.Rank]; 2325TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2348if (y.Rank > TensorShape.MaxInlineRank) 2350curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2351curIndex = curIndexArray.AsSpan(0, y.Rank); 2356curIndex = stackalloc nint[y.Rank]; 2364TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2393if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2396curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2409TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2432if (x.Rank > TensorShape.MaxInlineRank) 2434curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2435curIndex = curIndexArray.AsSpan(0, x.Rank); 2440curIndex = stackalloc nint[x.Rank]; 2448TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2471if (y.Rank > TensorShape.MaxInlineRank) 2473curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2474curIndex = curIndexArray.AsSpan(0, y.Rank); 2479curIndex = stackalloc nint[y.Rank]; 2487TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2516if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2519curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2532TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2555if (x.Rank > TensorShape.MaxInlineRank) 2557curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2558curIndex = curIndexArray.AsSpan(0, x.Rank); 2563curIndex = stackalloc nint[x.Rank]; 2571TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2594if (y.Rank > TensorShape.MaxInlineRank) 2596curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2597curIndex = curIndexArray.AsSpan(0, y.Rank); 2602curIndex = stackalloc nint[y.Rank]; 2610TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2896if (lengthOffset < tensor.Rank && arrLengths[i] == tensor.Lengths[lengthOffset]) 2900if (lengthOffset == tensor.Rank) 3059if (tensor.Rank > 6) 3061oIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3062oIndices = oIndicesArray.AsSpan(0, tensor.Rank); 3065iIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3066iIndices = iIndicesArray.AsSpan(0, tensor.Rank); 3072oIndices = stackalloc nint[tensor.Rank]; 3074iIndices = stackalloc nint[tensor.Rank]; 3199if (tensor.Rank > 6) 3201oIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3202oIndices = oIndicesArray.AsSpan(0, tensor.Rank); 3205iIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3206iIndices = iIndicesArray.AsSpan(0, tensor.Rank); 3212oIndices = stackalloc nint[tensor.Rank]; 3214iIndices = stackalloc nint[tensor.Rank]; 3378if (dimension >= tensor.Rank) 3519if (maximumLengths.Length != tensor.Rank) 3524if (tensor.Rank > 6) 3526curIndexesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3527curIndexes = curIndexesArray.AsSpan(0, tensor.Rank); 3533curIndexes = stackalloc nint[tensor.Rank]; 3538T[] values = new T[tensor.Lengths[tensor.Rank - 1]]; 3541var sp = new ReadOnlyTensorSpan<T>(ref Unsafe.Add(ref tensor._reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, tensor.Strides, tensor.Lengths)), [tensor.Lengths[tensor.Rank - 1]], [1], tensor.Lengths[tensor.Rank - 1]); 3547TensorSpanHelpers.AdjustIndexes(tensor.Rank - 2, 1, curIndexes, tensor.Lengths); 3548copiedValues += tensor.Lengths[tensor.Rank - 1]; 3714dimension = tensor.Rank - dimension; 3726if (dimension == tensor.Rank) 4629if (x.Rank != 2) 4632if (y.Rank != 2) 4659if (x.Rank != 2) 4662if (y.Rank != 2) 6939curIndex = curIndexArray.AsSpan(0, input.Rank); 6957TensorSpanHelpers.AdjustIndexes(input.Rank - 2, 1, curIndex, input.Lengths); 6991curIndex = curIndexArray.AsSpan(0, input.Rank); 7009TensorSpanHelpers.AdjustIndexes(input.Rank - 2, 1, curIndex, input.Lengths); 7043curIndex = curIndexArray.AsSpan(0, input.Rank); 7061TensorSpanHelpers.AdjustIndexes(input.Rank - 2, 1, curIndex, input.Lengths); 7129TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths); 7142TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths); 7155TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths); 7169TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths);
System\Numerics\Tensors\netcore\TensorSpan.cs (4)
593int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1; 647int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1;