Commit Graph
30 Commits
Author SHA1 Message Date
mlemanczyk 8e779c5c9e GpuKernelLease removed 2025-11-07 15:36:45 +01:00
mlemanczyk 0410fd2c91 PooledContext removal - continuation. GpuKernelLease prepared for removal. 2025-11-07 14:13:11 +01:00
mlemanczyk f4e365194d GpuContextPool removed, because we share context and accelerator between threads, using streams to separate. 2025-11-07 12:52:20 +01:00
mlemanczyk 119690086a ConcurrentDictionary removed. Kernel made dependent on the shared GPU context. 2025-11-07 10:16:33 +01:00
mlemanczyk 9537addf38 ArrayPool<T> replaced with ThreadStaticPools 2025-11-07 00:46:16 +01:00
mlemanczyk de2a78b27b Streams added to all kernels and GPU operations to separate threads from each other. 2025-11-06 18:53:55 +01:00
mlemanczyk 64d615c402 Various optimizations to separate non-static data between threads and resolve read/write access issue. 2025-11-04 20:45:56 +01:00
Marek Lemańczyk 4c4d4243fb Merge remote-tracking branch 'github/codex/optimize-evenperfectbitscanner-for-static-arrays-khd9w8' into work
# Conflicts:
#	PerfectNumbers.Core/Gpu/GpuContextPool.cs
#	PerfectNumbers.Core/Gpu/GpuKernelLease.cs
#	PerfectNumbers.Core/Gpu/GpuKernelPool.cs
#	PerfectNumbers.Core/Gpu/GpuStaticTableInitializer.cs
#	PerfectNumbers.Core/Gpu/Kernels/PrimeOrderSpecialMaxKernels.cs
#	PerfectNumbers.Core/PrimeOrderCalculator.Cpu.cs
#	PerfectNumbers.Core/PrimeOrderCalculator.Gpu.cs
#	PerfectNumbers.Core/PrimeTester.cs
2025-11-03 23:59:12 +01:00
Marek Lemańczyk de7ddd8db3 Remove GPU context creation lock 2025-10-28 13:26:20 +01:00
mlemanczyk 0d7df2e45b Unnecessary memory zeroing commented out. TODOs added for the remainders. 2025-10-23 19:42:03 +02:00
Marek Lemańczyk 24eaec7a21 Refine Montgomery GPU helpers to avoid kernel branching 2025-10-22 01:43:10 +02:00
Marek Lemańczyk 79e8706644 Restore original guard comments in pow2 helpers 2025-10-19 20:21:09 +02:00
Marek Lemańczyk 8adeb59acc Fix kernel integration compile errors 2025-10-18 18:01:52 +02:00
Marek Lemańczyk 6217ea7888 Document GPU kernel audit progress 2025-10-18 17:42:33 +02:00
Marek Lemańczyk 67ad36420a Add GPU kernel for small prime factoring 2025-10-17 05:31:07 +02:00
mlemanczyk 56e413064a Using cleanup 2025-10-17 02:40:51 +02:00
Marek Lemańczyk c9ae56a5ec Remove default prime order overloads 2025-10-10 21:51:41 +02:00
Marek Lemańczyk cd1debe9d6 Various micro- and medium- optimizations 2025-10-07 22:14:34 +02:00
Marek Lemańczyk 48127845b5 GPU errors won't go silently, so that we can analyze and fix them. 2025-10-07 21:57:27 +02:00
Marek Lemańczyk bd8686b86b Unused parameter removed 2025-10-05 19:14:42 +02:00
Marek Lemańczyk 20120f5bc0 Fix odd power table updates in GPU heuristics 2025-10-05 16:55:27 +02:00
Marek Lemańczyk 26cc574020 Treat Pollard Rho success as the GPU primality check 2025-10-05 06:26:09 +02:00
Marek Lemańczyk 0bc97937aa Restore GPU-backed UInt128 pow2 Montgomery helper 2025-10-05 02:13:31 +02:00
Marek Lemańczyk 72dd69bd53 Align GPU pow2 heuristics with Montgomery helper 2025-10-04 22:40:27 +02:00
Marek Lemańczyk b2a7190c14 Inline GPU capability checks for pow2 heuristics 2025-10-04 22:40:23 +02:00
Marek Lemańczyk 38df505f4f Implement GPU pow2 heuristics with safe fallbacks 2025-10-04 22:40:12 +02:00
Marek Lemańczyk ea08d3f71f Inline GPU overflow tracking helpers 2025-10-04 22:40:07 +02:00
Marek Lemańczyk 85c6eaece7 Persist GPU capability snapshot without volatile 2025-10-04 22:40:02 +02:00
Marek Lemańczyk 6adac6b7a7 Consolidate multiply helpers and guard GPU fallbacks 2025-10-04 21:20:29 +02:00
Marek Lemańczyk 84ebbed98b Add shift-first multiply helper and document benchmarks 2025-10-04 20:01:10 +02:00