Heuristic tables split into 2 groups
This commit is contained in:
1 parent
c413ee1162
commit
183b147135
26 files changed
+1172
-940
No files matched your search
@@ -0,0 +1,34 @@
|
||||
using ILGPU;
|
||||
using ILGPU.Runtime;
|
||||
|
||||
namespace PerfectNumbers.Core.Gpu.Accelerators;
|
||||
|
||||
public static class AcceleratorExtensions
|
||||
{
|
||||
public static MemoryBuffer1D<ulong, Stride1D.Dense> CopySpanToDevice(this Accelerator accelerator, AcceleratorStream stream, in ulong[] span)
|
||||
{
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? buffer;
|
||||
buffer = accelerator.Allocate1D(stream, span);
|
||||
|
||||
return buffer;
|
||||
}
|
||||
|
||||
public static MemoryBuffer1D<ulong, Stride1D.Dense> CopyUintSpanToDevice(this Accelerator accelerator, AcceleratorStream stream, ReadOnlySpan<uint> span)
|
||||
{
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? buffer;
|
||||
buffer = accelerator.Allocate1D<ulong>(span.Length);
|
||||
|
||||
if (!span.IsEmpty)
|
||||
{
|
||||
var converted = new ulong[span.Length];
|
||||
for (int i = 0; i < span.Length; i++)
|
||||
{
|
||||
converted[i] = span[i];
|
||||
}
|
||||
|
||||
buffer.View.CopyFromCPU(stream, converted);
|
||||
}
|
||||
|
||||
return buffer;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user