256 references to Rank
System.Numerics.Tensors (256)
System\Numerics\Tensors\netcore\ReadOnlyTensorSpan.cs (37)
311if (indexes.Length != Rank) 334if (indexes.Length != Rank) 357if (ranges.Length != Rank) 404left.Rank == right.Rank && 469_curIndexes = new nint[_span.Rank]; 470_curIndexes[_span.Rank - 1] = -1; 477TensorSpanHelpers.AdjustIndexes(_span.Rank - 1, 1, _curIndexes, _span.Lengths); 528if (Rank > TensorShape.MaxInlineRank) 547int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1; 584if (Rank > TensorShape.MaxInlineRank) 603int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1; 679if (Rank > TensorShape.MaxInlineRank) 681lengthsArray = ArrayPool<nint>.Shared.Rent(Rank); 682lengths = lengthsArray.AsSpan(0, Rank); 684offsetsArray = ArrayPool<nint>.Shared.Rent(Rank); 685offsets = offsetsArray.AsSpan(0, Rank); 689lengths = stackalloc nint[Rank]; 690offsets = stackalloc nint[Rank]; 739if (Rank > TensorShape.MaxInlineRank) 741curIndexesArray = ArrayPool<nint>.Shared.Rent(Rank); 742curIndexes = curIndexesArray.AsSpan(0, Rank); 747curIndexes = stackalloc nint[Rank]; 754TensorSpanHelpers.Memmove(destination.Slice(checked((int)copiedValues)), ref Unsafe.Add(ref _reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, Strides, Lengths)), Lengths[Rank - 1]); 755TensorSpanHelpers.AdjustIndexes(Rank - 2, 1, curIndexes, _shape.Lengths); 756copiedValues += Lengths[Rank - 1]; 780if (Rank > TensorShape.MaxInlineRank) 782curIndexesArray = ArrayPool<nint>.Shared.Rent(Rank); 783curIndexes = curIndexesArray.AsSpan(0, Rank); 788curIndexes = stackalloc nint[Rank]; 795if (Strides[Rank - 1] == 0) 797destination.Slice(checked((int)copiedValues), (int)Lengths[Rank - 1]).Fill(Unsafe.Add(ref _reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, Strides, Lengths))); 801TensorSpanHelpers.Memmove(destination.Slice(checked((int)copiedValues)), ref Unsafe.Add(ref _reference, TensorSpanHelpers.ComputeLinearIndex(curIndexes, Strides, Lengths)), Lengths[Rank - 1]); 803TensorSpanHelpers.AdjustIndexes(Rank - 2, 1, curIndexes, _shape.Lengths); 804copiedValues += Lengths[Rank - 1];
System\Numerics\Tensors\netcore\TensorExtensions.cs (215)
560if (x.Rank > TensorShape.MaxInlineRank) 562curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 563curIndex = curIndexArray.AsSpan(0, x.Rank); 568curIndex = stackalloc nint[x.Rank]; 575TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 605if (broadcastedLeft.Rank > TensorShape.MaxInlineRank) 607curIndexArray = ArrayPool<nint>.Shared.Rent(broadcastedRight.Rank); 608curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 613curIndex = stackalloc nint[broadcastedRight.Rank]; 621TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 644if (x.Rank > TensorShape.MaxInlineRank) 646curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 647curIndex = curIndexArray.AsSpan(0, x.Rank); 652curIndex = stackalloc nint[x.Rank]; 660TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 689if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 692curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 705TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 728if (x.Rank > TensorShape.MaxInlineRank) 730curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 731curIndex = curIndexArray.AsSpan(0, x.Rank); 736curIndex = stackalloc nint[x.Rank]; 744TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 791if (values.Rank != 1) 935if (x.Rank > TensorShape.MaxInlineRank) 937curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 938curIndex = curIndexArray.AsSpan(0, x.Rank); 943curIndex = stackalloc nint[x.Rank]; 950TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 995if (y.Rank > TensorShape.MaxInlineRank) 997curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 998curIndex = curIndexArray.AsSpan(0, y.Rank); 1003curIndex = stackalloc nint[y.Rank]; 1010TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1144if (x.Rank > TensorShape.MaxInlineRank) 1146curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1147curIndex = curIndexArray.AsSpan(0, x.Rank); 1152curIndex = stackalloc nint[x.Rank]; 1159TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1204if (y.Rank > TensorShape.MaxInlineRank) 1206curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1207curIndex = curIndexArray.AsSpan(0, y.Rank); 1212curIndex = stackalloc nint[y.Rank]; 1219TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1248if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 1251curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1264TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1287if (x.Rank > TensorShape.MaxInlineRank) 1289curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1290curIndex = curIndexArray.AsSpan(0, x.Rank); 1295curIndex = stackalloc nint[x.Rank]; 1303TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1326if (y.Rank > TensorShape.MaxInlineRank) 1328curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1329curIndex = curIndexArray.AsSpan(0, y.Rank); 1334curIndex = stackalloc nint[y.Rank]; 1342TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1371if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 1374curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1387TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1410if (x.Rank > TensorShape.MaxInlineRank) 1412curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1413curIndex = curIndexArray.AsSpan(0, x.Rank); 1418curIndex = stackalloc nint[x.Rank]; 1426TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1449if (y.Rank > TensorShape.MaxInlineRank) 1451curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1452curIndex = curIndexArray.AsSpan(0, y.Rank); 1457curIndex = stackalloc nint[y.Rank]; 1465TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1495if (broadcastedLeft.Rank > TensorShape.MaxInlineRank) 1497curIndexArray = ArrayPool<nint>.Shared.Rent(broadcastedRight.Rank); 1498curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1503curIndex = stackalloc nint[broadcastedRight.Rank]; 1511TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1534if (x.Rank > TensorShape.MaxInlineRank) 1536curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1537curIndex = curIndexArray.AsSpan(0, x.Rank); 1542curIndex = stackalloc nint[x.Rank]; 1550TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1573if (y.Rank > TensorShape.MaxInlineRank) 1575curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1576curIndex = curIndexArray.AsSpan(0, y.Rank); 1581curIndex = stackalloc nint[y.Rank]; 1589TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1619if (broadcastedLeft.Rank > TensorShape.MaxInlineRank) 1621curIndexArray = ArrayPool<nint>.Shared.Rent(broadcastedRight.Rank); 1622curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 1627curIndex = stackalloc nint[broadcastedRight.Rank]; 1635TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 1658if (x.Rank > TensorShape.MaxInlineRank) 1660curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1661curIndex = curIndexArray.AsSpan(0, x.Rank); 1666curIndex = stackalloc nint[x.Rank]; 1674TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1697if (y.Rank > TensorShape.MaxInlineRank) 1699curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1700curIndex = curIndexArray.AsSpan(0, y.Rank); 1705curIndex = stackalloc nint[y.Rank]; 1713TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 1847if (x.Rank > TensorShape.MaxInlineRank) 1849curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 1850curIndex = curIndexArray.AsSpan(0, x.Rank); 1855curIndex = stackalloc nint[x.Rank]; 1862TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 1907if (y.Rank > TensorShape.MaxInlineRank) 1909curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 1910curIndex = curIndexArray.AsSpan(0, y.Rank); 1915curIndex = stackalloc nint[y.Rank]; 1922TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2056if (x.Rank > TensorShape.MaxInlineRank) 2058curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2059curIndex = curIndexArray.AsSpan(0, x.Rank); 2064curIndex = stackalloc nint[x.Rank]; 2071TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2116if (y.Rank > TensorShape.MaxInlineRank) 2118curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2119curIndex = curIndexArray.AsSpan(0, y.Rank); 2124curIndex = stackalloc nint[y.Rank]; 2131TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2161if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2164curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2177TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2200if (x.Rank > TensorShape.MaxInlineRank) 2202curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2203curIndex = curIndexArray.AsSpan(0, x.Rank); 2208curIndex = stackalloc nint[x.Rank]; 2216TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2239if (y.Rank > TensorShape.MaxInlineRank) 2241curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2242curIndex = curIndexArray.AsSpan(0, y.Rank); 2247curIndex = stackalloc nint[y.Rank]; 2255TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2285if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2288curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2301TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2324if (x.Rank > TensorShape.MaxInlineRank) 2326curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2327curIndex = curIndexArray.AsSpan(0, x.Rank); 2332curIndex = stackalloc nint[x.Rank]; 2340TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2363if (y.Rank > TensorShape.MaxInlineRank) 2365curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2366curIndex = curIndexArray.AsSpan(0, y.Rank); 2371curIndex = stackalloc nint[y.Rank]; 2379TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2408if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2411curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2424TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2447if (x.Rank > TensorShape.MaxInlineRank) 2449curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2450curIndex = curIndexArray.AsSpan(0, x.Rank); 2455curIndex = stackalloc nint[x.Rank]; 2463TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2486if (y.Rank > TensorShape.MaxInlineRank) 2488curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2489curIndex = curIndexArray.AsSpan(0, y.Rank); 2494curIndex = stackalloc nint[y.Rank]; 2502TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2531if (broadcastedRight.Rank > TensorShape.MaxInlineRank) 2534curIndex = curIndexArray.AsSpan(0, broadcastedRight.Rank); 2547TensorSpanHelpers.AdjustIndexes(broadcastedRight.Rank - 1, 1, curIndex, broadcastedRight.Lengths); 2570if (x.Rank > TensorShape.MaxInlineRank) 2572curIndexArray = ArrayPool<nint>.Shared.Rent(x.Rank); 2573curIndex = curIndexArray.AsSpan(0, x.Rank); 2578curIndex = stackalloc nint[x.Rank]; 2586TensorSpanHelpers.AdjustIndexes(x.Rank - 1, 1, curIndex, x.Lengths); 2609if (y.Rank > TensorShape.MaxInlineRank) 2611curIndexArray = ArrayPool<nint>.Shared.Rent(y.Rank); 2612curIndex = curIndexArray.AsSpan(0, y.Rank); 2617curIndex = stackalloc nint[y.Rank]; 2625TensorSpanHelpers.AdjustIndexes(y.Rank - 1, 1, curIndex, y.Lengths); 2905if (lengthOffset < tensor.Rank && arrLengths[i] == tensor.Lengths[lengthOffset]) 2909if (lengthOffset == tensor.Rank) 3068if (tensor.Rank > 6) 3070oIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3071oIndices = oIndicesArray.AsSpan(0, tensor.Rank); 3074iIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3075iIndices = iIndicesArray.AsSpan(0, tensor.Rank); 3081oIndices = stackalloc nint[tensor.Rank]; 3083iIndices = stackalloc nint[tensor.Rank]; 3208if (tensor.Rank > 6) 3210oIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3211oIndices = oIndicesArray.AsSpan(0, tensor.Rank); 3214iIndicesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3215iIndices = iIndicesArray.AsSpan(0, tensor.Rank); 3221oIndices = stackalloc nint[tensor.Rank]; 3223iIndices = stackalloc nint[tensor.Rank]; 3387if (dimension >= tensor.Rank) 3541if (maximumLengths.Length != tensor.Rank) 3547if (tensor.Rank > 6) 3549curIndexesArray = ArrayPool<nint>.Shared.Rent(tensor.Rank); 3550curIndexes = curIndexesArray.AsSpan(0, tensor.Rank); 3556curIndexes = stackalloc nint[tensor.Rank]; 3561T[] values = new T[tensor.Lengths[tensor.Rank - 1]]; 3564var 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]); 3570TensorSpanHelpers.AdjustIndexes(tensor.Rank - 2, 1, curIndexes, tensor.Lengths); 3571copiedValues += tensor.Lengths[tensor.Rank - 1]; 3709dimension = tensor.Rank - dimension; 3715if (dimension == tensor.Rank) 4598if (x.Rank != 2) 4601if (y.Rank != 2) 4628if (x.Rank != 2) 4631if (y.Rank != 2) 6882curIndex = curIndexArray.AsSpan(0, input.Rank); 6900TensorSpanHelpers.AdjustIndexes(input.Rank - 2, 1, curIndex, input.Lengths); 6934curIndex = curIndexArray.AsSpan(0, input.Rank); 6952TensorSpanHelpers.AdjustIndexes(input.Rank - 2, 1, curIndex, input.Lengths); 6986curIndex = curIndexArray.AsSpan(0, input.Rank); 7004TensorSpanHelpers.AdjustIndexes(input.Rank - 2, 1, curIndex, input.Lengths); 7072TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths); 7085TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths); 7098TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths); 7112TensorSpanHelpers.AdjustIndexes(broadcastedLeft.Rank - 2, 1, curIndex, broadcastedLeft.Lengths);
System\Numerics\Tensors\netcore\TensorSpan.cs (4)
578int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1; 632int indexToAdjust = srcSlice.Strides[^1] == 1 && TensorHelpers.IsContiguousAndDense(srcSlice) ? srcSlice.Rank - 2 : srcSlice.Rank - 1;