30 lines
932 B
C#
30 lines
932 B
C#
using System.Runtime.CompilerServices;
|
|
using ILGPU.Runtime;
|
|
|
|
namespace PerfectNumbers.Core.Gpu;
|
|
|
|
internal static class GpuStaticTableInitializer
|
|
{
|
|
internal static void EnsureStaticTables(Accelerator accelerator, KernelContainer kernels, AcceleratorStream stream)
|
|
{
|
|
// PrimeTester.PrimeTesterGpuContextPool.EnsureStaticTables(accelerator);
|
|
GpuKernelPool.PreloadStaticTables(accelerator, kernels, stream, KernelType.None);
|
|
// PrimeOrderGpuHeuristics.PreloadStaticTables(accelerator, stream);
|
|
}
|
|
|
|
private sealed class AcceleratorReferenceComparer : IEqualityComparer<Accelerator>
|
|
{
|
|
internal static AcceleratorReferenceComparer Instance { get; } = new();
|
|
|
|
public bool Equals(Accelerator? x, Accelerator? y)
|
|
{
|
|
return ReferenceEquals(x, y);
|
|
}
|
|
|
|
public int GetHashCode(Accelerator obj)
|
|
{
|
|
return RuntimeHelpers.GetHashCode(obj);
|
|
}
|
|
}
|
|
}
|