Accelerator locks removed
This commit is contained in:
1 parent
79021108f5
commit
07efd5d2a1
8 files changed
+21
-21
No files matched your search
@@ -260,7 +260,7 @@ public sealed class DivisorCycleCache
|
||||
}
|
||||
|
||||
Accelerator accelerator = _accelerator;
|
||||
lock(accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
divisorBuffer = accelerator.Allocate1D<ulong>(requiredCapacity);
|
||||
powBuffer = accelerator.Allocate1D<ulong>(requiredCapacity);
|
||||
|
||||
@@ -19,7 +19,7 @@ public sealed class MersenneNumberDivisorByDivisorAccelerator
|
||||
Counts = intPool.Rent(capacity);
|
||||
Cycles = ulongPool.Rent(capacity);
|
||||
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
DivisorDataBuffer = accelerator.Allocate1D<GpuDivisorPartialData>(capacity);
|
||||
OffsetBuffer = accelerator.Allocate1D<int>(capacity);
|
||||
@@ -67,7 +67,7 @@ public sealed class MersenneNumberDivisorByDivisorAccelerator
|
||||
HitsBuffer.Dispose();
|
||||
HitIndexBuffer.Dispose();
|
||||
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
DivisorDataBuffer = accelerator.Allocate1D<GpuDivisorPartialData>(capacity);
|
||||
OffsetBuffer = accelerator.Allocate1D<int>(capacity);
|
||||
|
||||
@@ -135,7 +135,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<KeyValuePair<ulong, int>, Stride1D.Dense> pow2ModEntriesToTestOnDevice = Pow2ModEntriesToTestOnDevice;
|
||||
if (pow2ModEntriesToTestOnDevice.Length < factorsCount)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
pow2ModEntriesToTestOnDevice.Dispose();
|
||||
Pow2ModEntriesToTestOnDevice = accelerator.Allocate1D<KeyValuePair<ulong, int>>(factorsCount);
|
||||
@@ -145,7 +145,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense> input = Input;
|
||||
if (input.Length < primeTesterCapacity)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
input.Dispose();
|
||||
Input = accelerator.Allocate1D<ulong>(primeTesterCapacity);
|
||||
@@ -155,7 +155,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<byte, Stride1D.Dense> outputByte = OutputByte;
|
||||
if (outputByte.Length < primeTesterCapacity)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
outputByte.Dispose();
|
||||
OutputByte = accelerator.Allocate1D<byte>(primeTesterCapacity);
|
||||
@@ -165,7 +165,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<int, Stride1D.Dense> outputInt = OutputInt;
|
||||
if (outputInt.Length < primeTesterCapacity)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
outputInt.Dispose();
|
||||
OutputInt = accelerator.Allocate1D<int>(primeTesterCapacity);
|
||||
@@ -180,7 +180,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense> outputUlong = OutputUlong;
|
||||
if (outputUlong.Length < newSize)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
outputUlong.Dispose();
|
||||
OutputUlong = accelerator.Allocate1D<ulong>(newSize);
|
||||
@@ -190,7 +190,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<int, Stride1D.Dense> outputInt = OutputInt;
|
||||
if (outputInt.Length < newSize)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
outputInt.Dispose();
|
||||
OutputInt = accelerator.Allocate1D<int>(newSize);
|
||||
@@ -204,7 +204,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense> input = Input;
|
||||
if (input.Length < newSize)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
input.Dispose();
|
||||
Input = accelerator.Allocate1D<ulong>(newSize);
|
||||
@@ -214,7 +214,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense> outputUlong = OutputUlong;
|
||||
if (outputUlong.Length < newSize)
|
||||
{
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
outputUlong.Dispose();
|
||||
OutputUlong = accelerator.Allocate1D<ulong>(newSize);
|
||||
@@ -227,7 +227,7 @@ public sealed class PrimeOrderCalculatorAccelerator
|
||||
var accelerator = _accelerators[acceleratorIndex];
|
||||
Accelerator = accelerator;
|
||||
AcceleratorIndex = acceleratorIndex;
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
Input = accelerator.Allocate1D<ulong>(Math.Max(specialMaxFactorCapacity, primeTesterCapacity));
|
||||
OutputByte = Accelerator.Allocate1D<byte>(primeTesterCapacity);
|
||||
|
||||
@@ -151,7 +151,7 @@ public class GpuKernelPool
|
||||
var host = MersenneDivisorCycles.Shared.ExportSmallCyclesSnapshot();
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? device;
|
||||
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
device = accelerator.Allocate1D<ulong>(host.Length);
|
||||
}
|
||||
@@ -195,7 +195,7 @@ public class GpuKernelPool
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? deviceLastOnePow2;
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? deviceLastSevenPow2;
|
||||
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
deviceLastOne = accelerator.Allocate1D<uint>(hostLastOne.Length);
|
||||
deviceLastSeven = accelerator.Allocate1D<uint>(hostLastSeven.Length);
|
||||
|
||||
@@ -521,7 +521,7 @@ public sealed partial class MersenneNumberDivisorByDivisorGpuTester : IMersenneN
|
||||
|
||||
if (_divisorBuffer == null)
|
||||
{
|
||||
lock(accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
_divisorBuffer = accelerator.Allocate1D<GpuDivisorPartialData>(1);
|
||||
_offsetBuffer = accelerator.Allocate1D<int>(1);
|
||||
@@ -551,7 +551,7 @@ public sealed partial class MersenneNumberDivisorByDivisorGpuTester : IMersenneN
|
||||
{
|
||||
int desiredCapacity = requiredCapacity > _capacity ? requiredCapacity : _capacity;
|
||||
_capacity = desiredCapacity;
|
||||
lock (accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
_exponentsBuffer = accelerator.Allocate1D<ulong>(desiredCapacity);
|
||||
_hitBuffer = accelerator.Allocate1D<byte>(desiredCapacity);
|
||||
|
||||
@@ -63,7 +63,7 @@ public sealed class MersenneNumberDivisorGpuTester
|
||||
Queue<MemoryBuffer1D<byte, Stride1D.Dense>> resultBuffers = GetQueue(accelerator);
|
||||
if (!resultBuffers.TryDequeue(out var resultBuffer))
|
||||
{
|
||||
// lock(accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
resultBuffer = accelerator.Allocate1D<byte>(1);
|
||||
}
|
||||
|
||||
@@ -354,7 +354,7 @@ internal static partial class PrimeOrderGpuHeuristics
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? resultBuffer;
|
||||
MemoryBuffer1D<byte, Stride1D.Dense>? statusBuffer;
|
||||
|
||||
lock(accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
phiFactorBuffer = accelerator.Allocate1D<ulong>(GpuSmallPrimeFactorSlots);
|
||||
phiExponentBuffer = accelerator.Allocate1D<int>(GpuSmallPrimeFactorSlots);
|
||||
@@ -518,7 +518,7 @@ internal static partial class PrimeOrderGpuHeuristics
|
||||
// with out preallocated buffers. Share the pool with Pow2ModWide kernel.
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? exponentBuffer;
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? remainderBuffer;
|
||||
lock(accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
exponentBuffer = accelerator.Allocate1D<ulong>(exponents.Length);
|
||||
remainderBuffer = accelerator.Allocate1D<ulong>(exponents.Length);
|
||||
@@ -597,7 +597,7 @@ internal static partial class PrimeOrderGpuHeuristics
|
||||
MemoryBuffer1D<GpuUInt128, Stride1D.Dense> exponentBuffer;
|
||||
MemoryBuffer1D<GpuUInt128, Stride1D.Dense> remainderBuffer;
|
||||
|
||||
lock(accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
exponentBuffer = accelerator.Allocate1D<GpuUInt128>(length);
|
||||
remainderBuffer = accelerator.Allocate1D<GpuUInt128>(length);
|
||||
|
||||
@@ -862,7 +862,7 @@ public class MersenneDivisorCycles
|
||||
// GpuKernelPool.Run((accelerator, stream) =>
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? bufferDiv;
|
||||
MemoryBuffer1D<ulong, Stride1D.Dense>? bufferCycle;
|
||||
lock(accelerator)
|
||||
// lock (accelerator)
|
||||
{
|
||||
bufferDiv = accelerator.Allocate1D(validDivisors);
|
||||
bufferCycle = accelerator.Allocate1D<ulong>(idx);
|
||||
|
||||
Reference in new issue
Block a user