Remove IDisposable usage and using declarations
This commit is contained in:
1 parent
305a489d6c
commit
0b43880959
26 files changed
+136
-113
No files matched your search
@@ -18,13 +18,14 @@ public class GpuPrimeLimiterTests
|
||||
var startedSecond = new TaskCompletionSource<bool>();
|
||||
var sw = new Stopwatch();
|
||||
|
||||
using var first = GpuPrimeWorkLimiter.Acquire();
|
||||
var first = GpuPrimeWorkLimiter.Acquire();
|
||||
sw.Start();
|
||||
|
||||
var secondTask = Task.Run(() =>
|
||||
{
|
||||
using var second = GpuPrimeWorkLimiter.Acquire();
|
||||
var second = GpuPrimeWorkLimiter.Acquire();
|
||||
startedSecond.TrySetResult(true);
|
||||
second.Dispose();
|
||||
});
|
||||
|
||||
// Give secondTask a moment to attempt acquire (it should block).
|
||||
|
||||
@@ -34,23 +34,19 @@ public class NttMontgomeryTests
|
||||
|
||||
// Device execution
|
||||
GpuContextPool.GpuContextLease context = GpuContextPool.Rent();
|
||||
try
|
||||
{
|
||||
var accelerator = context.Accelerator;
|
||||
using var buffer = accelerator.Allocate1D<GpuUInt128>(gpu.Length);
|
||||
buffer.View.CopyFromCPU(ref gpu[0], gpu.Length);
|
||||
NttGpuMath.SquareDevice(accelerator, buffer.View, modulus, primitiveRoot);
|
||||
buffer.View.CopyToCPU(ref gpu[0], gpu.Length);
|
||||
var accelerator = context.Accelerator;
|
||||
var buffer = accelerator.Allocate1D<GpuUInt128>(gpu.Length);
|
||||
buffer.View.CopyFromCPU(ref gpu[0], gpu.Length);
|
||||
NttGpuMath.SquareDevice(accelerator, buffer.View, modulus, primitiveRoot);
|
||||
buffer.View.CopyToCPU(ref gpu[0], gpu.Length);
|
||||
|
||||
for (int i = 0; i < cpu.Length; i++)
|
||||
{
|
||||
gpu[i].Should().Be(cpu[i]);
|
||||
}
|
||||
}
|
||||
finally
|
||||
for (int i = 0; i < cpu.Length; i++)
|
||||
{
|
||||
context.Dispose();
|
||||
gpu[i].Should().Be(cpu[i]);
|
||||
}
|
||||
|
||||
buffer.Dispose();
|
||||
context.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
|
||||
@@ -17,13 +17,14 @@ public class GpuWorkLimiterTests
|
||||
var startedSecond = new TaskCompletionSource<bool>();
|
||||
var sw = new Stopwatch();
|
||||
|
||||
using var first = GpuWorkLimiter.Acquire();
|
||||
var first = GpuWorkLimiter.Acquire();
|
||||
sw.Start();
|
||||
|
||||
var secondTask = Task.Run(() =>
|
||||
{
|
||||
using var second = GpuWorkLimiter.Acquire();
|
||||
var second = GpuWorkLimiter.Acquire();
|
||||
startedSecond.TrySetResult(true);
|
||||
second.Dispose();
|
||||
});
|
||||
|
||||
await Task.Delay(50);
|
||||
|
||||
@@ -14,8 +14,8 @@ public class MersenneDivisorCyclesGenerateGpuTests
|
||||
{
|
||||
MersenneDivisorCycles.GenerateGpu(path, maxDivisor: 50UL, batchSize: 16, skipCount: 0, nextPosition: 0);
|
||||
var pairs = new List<(ulong divisor, ulong cycle)>();
|
||||
using var stream = new FileStream(path, FileMode.Open, FileAccess.Read);
|
||||
using var reader = new BinaryReader(stream);
|
||||
var stream = new FileStream(path, FileMode.Open, FileAccess.Read);
|
||||
var reader = new BinaryReader(stream);
|
||||
while (stream.Position < stream.Length)
|
||||
{
|
||||
ulong d = reader.ReadUInt64();
|
||||
@@ -41,6 +41,9 @@ public class MersenneDivisorCyclesGenerateGpuTests
|
||||
MontgomeryDivisorData divisorData = MontgomeryDivisorData.FromModulus(pair.divisor);
|
||||
pair.cycle.Should().Be(MersenneDivisorCycles.CalculateCycleLength(pair.divisor, divisorData));
|
||||
}
|
||||
|
||||
reader.Dispose();
|
||||
stream.Dispose();
|
||||
}
|
||||
finally
|
||||
{
|
||||
@@ -61,8 +64,8 @@ public class MersenneDivisorCyclesGenerateGpuTests
|
||||
MersenneDivisorCycles.Generate(path, maxDivisor: 50UL, threads: 4);
|
||||
|
||||
var pairs = new List<(ulong divisor, ulong cycle)>();
|
||||
using var stream = new FileStream(path, FileMode.Open, FileAccess.Read);
|
||||
using var reader = new BinaryReader(stream);
|
||||
var stream = new FileStream(path, FileMode.Open, FileAccess.Read);
|
||||
var reader = new BinaryReader(stream);
|
||||
while (stream.Position < stream.Length)
|
||||
{
|
||||
ulong divisor = reader.ReadUInt64();
|
||||
@@ -95,6 +98,9 @@ public class MersenneDivisorCyclesGenerateGpuTests
|
||||
|
||||
var (_, completeCount) = MersenneDivisorCycles.FindLast(path);
|
||||
completeCount.Should().Be(expected.Count);
|
||||
|
||||
reader.Dispose();
|
||||
stream.Dispose();
|
||||
}
|
||||
finally
|
||||
{
|
||||
|
||||
@@ -46,7 +46,7 @@ public class MersenneNumberDivisorCpuTesterTests
|
||||
var tester = new MersenneNumberDivisorByDivisorCpuTester();
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
ulong[] exponents = { 59UL, 61UL, 67UL, 71UL, 73UL, 79UL, 117_652UL, 333_380UL };
|
||||
byte[] hits = new byte[exponents.Length];
|
||||
|
||||
@@ -74,6 +74,8 @@ public class MersenneNumberDivisorCpuTesterTests
|
||||
}
|
||||
|
||||
hits.Should().Equal(expected2);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -83,7 +85,7 @@ public class MersenneNumberDivisorCpuTesterTests
|
||||
var tester = new MersenneNumberDivisorByDivisorCpuTester();
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
MontgomeryDivisorData divisorData = MontgomeryDivisorData.FromModulus(LargeDivisor1);
|
||||
ulong cycle = MersenneDivisorCycles.CalculateCycleLength(LargeDivisor1, divisorData);
|
||||
|
||||
@@ -98,6 +100,8 @@ public class MersenneNumberDivisorCpuTesterTests
|
||||
}
|
||||
|
||||
hits.Should().Equal(expected);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -107,7 +111,7 @@ public class MersenneNumberDivisorCpuTesterTests
|
||||
var tester = new MersenneNumberDivisorByDivisorCpuTester();
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
MontgomeryDivisorData divisorData = MontgomeryDivisorData.FromModulus(LargeDivisor2);
|
||||
ulong cycle = MersenneDivisorCycles.CalculateCycleLength(LargeDivisor2, divisorData);
|
||||
|
||||
@@ -122,5 +126,7 @@ public class MersenneNumberDivisorCpuTesterTests
|
||||
}
|
||||
|
||||
hits.Should().Equal(expected);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
}
|
||||
@@ -157,7 +157,7 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
var tester = new MersenneNumberDivisorByDivisorGpuTester();
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
ulong[] exponents = { 59UL, 61UL, 67UL, 71UL, 73UL, 79UL, 117_652UL, 333_380UL };
|
||||
byte[] hits = new byte[exponents.Length];
|
||||
|
||||
@@ -185,6 +185,8 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
}
|
||||
|
||||
hits.Should().Equal(expected2);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -198,7 +200,7 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
ulong[] exponents = { 59UL, 61UL, 67UL, 71UL, 73UL, 79UL, 117_652UL };
|
||||
byte[] hits = new byte[exponents.Length];
|
||||
|
||||
@@ -213,6 +215,8 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
}
|
||||
|
||||
hits.Should().Equal(expected);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -225,7 +229,7 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
};
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
MontgomeryDivisorData divisorData = MontgomeryDivisorData.FromModulus(4_000_169UL);
|
||||
ulong cycle = MersenneDivisorCycles.CalculateCycleLength(4_000_169UL, divisorData);
|
||||
|
||||
@@ -252,6 +256,8 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
|
||||
expected.Should().Equal(direct);
|
||||
hits.Should().Equal(direct);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -264,7 +270,7 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
};
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
MontgomeryDivisorData divisorData = MontgomeryDivisorData.FromModulus(4_000_561UL);
|
||||
ulong cycle = MersenneDivisorCycles.CalculateCycleLength(4_000_561UL, divisorData);
|
||||
|
||||
@@ -291,6 +297,8 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
|
||||
expected.Should().Equal(direct);
|
||||
hits.Should().Equal(direct);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -300,7 +308,7 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
var tester = new MersenneNumberDivisorByDivisorGpuTester();
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
ulong[] exponents = { 59UL, 67UL, 117_652UL };
|
||||
byte[] hits = new byte[exponents.Length];
|
||||
|
||||
@@ -316,6 +324,8 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
}
|
||||
|
||||
hits.Should().Equal(expected);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
@@ -329,7 +339,7 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
|
||||
tester.ConfigureFromMaxPrime(197UL);
|
||||
|
||||
using var session = tester.CreateDivisorSession();
|
||||
var session = tester.CreateDivisorSession();
|
||||
ulong[] exponents = { 59UL, 61UL, 67UL, 71UL, 73UL, 79UL, 117_652UL };
|
||||
byte[] hits = new byte[exponents.Length];
|
||||
|
||||
@@ -344,6 +354,8 @@ public class MersenneNumberDivisorGpuTesterTests
|
||||
}
|
||||
|
||||
hits.Should().Equal(expected);
|
||||
|
||||
session.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user