using System.Runtime.CompilerServices; using ILGPU; using ILGPU.Runtime; namespace PerfectNumbers.Core.Gpu; public readonly struct SmallPrimeFactorViews( MemoryBuffer1D primes, MemoryBuffer1D squares) { public readonly MemoryBuffer1D Primes = primes; public readonly MemoryBuffer1D Squares = squares; public readonly int Count = (int)primes.Length; public ArrayView1D PrimesView { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return Primes.View; } } public ArrayView1D SquaresView { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return Squares.View; } } }