Remove IDisposable usage and using declarations

This commit is contained in:
Marek Lemańczyk committed 2025-10-13 21:55:16 +02:00
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();
}
}