mlemanczyk
|
6a924f4041
|
DivisorSet.Percentile, Additive and TopDown modes implemented. State files ported to LMDB => FASTER to avoid millions of files in folders.
|
2026-01-04 12:17:27 +01:00 |
|
mlemanczyk
|
f3ed5b04a1
|
Improvements to recognize cases when we only find trivial divisors for p. Not fully fixed, yet.
|
2026-01-02 23:39:32 +01:00 |
|
mlemanczyk
|
2bf9ff233c
|
PrimeOrderCalculator converted to a template.
|
2025-12-21 18:02:59 +01:00 |
|
mlemanczyk
|
2abc6aae49
|
--mersenne=bydivisor testers and sessions integrated and converted to structs.
|
2025-12-18 05:07:31 +01:00 |
|
mlemanczyk
|
45c477de5a
|
DefaultThreadPoolCapacity updated to avoid too big arrays without reason.
|
2025-12-12 00:57:51 +01:00 |
|
mlemanczyk
|
260aa19e44
|
Pools renamed to FixedCapacityPools. Other fixed capacity collections added. Queues, concurrent queues and standard stacks replaced with fixed capacity stacks. MethodImplOptions.AggressiveInlining and .AggressiveOptimization added to simple methods and getters / setters. Variables optimized in few places.
|
2025-12-11 21:10:19 +01:00 |
|
mlemanczyk
|
5c91d79927
|
State saving frequency increased to prevent too many re-calculations during frequent restarts.
|
2025-12-08 16:35:24 +01:00 |
|
mlemanczyk
|
f1109330df
|
Default no. of accelerators increased back to 298 (max without exceptions). State saving interval decreased to limit unnecessary overhead.
|
2025-12-08 02:51:04 +01:00 |
|
mlemanczyk
|
d69ad9c64a
|
State saving interval decreased.
|
2025-12-07 19:17:09 +01:00 |
|
mlemanczyk
|
85a90c70bf
|
--gpu-ration command-line argument added. AscendingDivisorRemainderStepper implemented in PrimeTester.IsPrimeCpu. PrimeOrderCalculator.RunOnCpu adjusted for low GPU ratios to prevent infinite increase of the counter.
|
2025-12-02 23:36:18 +01:00 |
|
mlemanczyk
|
f43c67c86f
|
Tasks will now save calculations progress and resume calculation upon restart.
|
2025-12-02 00:42:38 +01:00 |
|
mlemanczyk
|
c3254e3fda
|
Temporary restored delegating all work to CPU in CPU mode in preparation for a branch-less split.
|
2025-11-30 15:40:03 +01:00 |
|
mlemanczyk
|
6a1198c417
|
CPU vs GPU work delegation adjusted to better utilize CPU.
|
2025-11-29 12:09:33 +01:00 |
|
mlemanczyk
|
c311b27dcc
|
Prime testing using divisor tables depending on the last digit separated to its own class. PrimeTester switched back to standard endings.
|
2025-11-27 16:45:02 +01:00 |
|
mlemanczyk
|
a296e62d4d
|
--min-k command-line argument added. Partial factoring switched back to CPU.
|
2025-11-26 22:03:52 +01:00 |
|
mlemanczyk
|
57a50e2a37
|
Pow2Mod kernel specific methods moved to Pow2MontgomeryKernels.
|
2025-11-24 18:04:07 +01:00 |
|
mlemanczyk
|
070e2a14fd
|
MontgomeryDivisorData converted to a pooled class to limit GC pressure. MontgomeryDivisorDataGpu added for GPU operations. PrimeOrderCalculator kernels precompiled during warmup.
|
2025-11-24 15:14:31 +01:00 |
|
mlemanczyk
|
6d1ff1372e
|
Factoring switched to PrimeTester.IsPrime for the best performance. PrimeOrderCalculator.PartialFactor switched to GPU factorization. Every so often it will send work to GPU instead of CPU. BatchedResources renamed to MersenneNumberDivisorByDivisorAccelerator for consistency and moved to its own file. It now uses array instead of dictionary for lookup free performance.
|
2025-11-23 00:07:03 +01:00 |
|
mlemanczyk
|
54fdff0a4e
|
GPU calculations frequency adjusted
|
2025-11-19 21:38:07 +01:00 |
|
mlemanczyk
|
5cac51479e
|
GPU memory allocations protected with lock to prevent shared memory access issues. GPU usage limited for the best performance.
|
2025-11-19 16:49:01 +01:00 |
|
mlemanczyk
|
801b1be3e3
|
Cleanup
|
2025-11-18 04:22:39 +01:00 |
|
mlemanczyk
|
183b147135
|
Heuristic tables split into 2 groups
|
2025-11-17 16:04:27 +01:00 |
|
mlemanczyk
|
c413ee1162
|
Revert "Stream handling simplified to avoid dictionary lookups in favor of array lookups with known indexes."
This reverts commit a84445ef2a.
|
2025-11-16 17:14:48 +01:00 |
|
mlemanczyk
|
a84445ef2a
|
Stream handling simplified to avoid dictionary lookups in favor of array lookups with known indexes.
|
2025-11-16 15:01:51 +01:00 |
|
mlemanczyk
|
0540411cad
|
Accelerator index added for dictionary-less use-cases
|
2025-11-15 02:21:45 +01:00 |
|
mlemanczyk
|
c53aa517f7
|
GpuScratchBuffer / -Pool naively integrated with PriemOrderCalculatorAccelerator (formerly Pow2MontgomeryAccelerator). FactorEntry replaced with 2 arrays - unused field removed. Small cleanup.
|
2025-11-13 14:41:27 +01:00 |
|
mlemanczyk
|
5bc65464d0
|
Initial PollardRho implementation for GPU. Added pool for accelerator streams shared across the threads. GPU processing performance and stabilization improvements. GpuUInt128.BinaryGcd switched to the version which outperformed other in benchmarks.
|
2025-11-12 21:18:30 +01:00 |
|
mlemanczyk
|
fa89958736
|
Stabilization improvements. Stream will be released when releasing GPU lease to prevent application crashes.
|
2025-11-10 14:30:30 +01:00 |
|
mlemanczyk
|
d0b1639a5d
|
GPU stabilization improvements to prevent calculation crashes
|
2025-11-09 21:52:16 +01: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
|
b8aa845c5c
|
Clarify cycle stepper reset inlining
|
2025-10-02 13:30:56 +02:00 |
|
Marek Lemańczyk
|
458cb77227
|
We'll output to console not only primes, but also composites. Output to console standardized on ConsoleInterval
|
2025-09-21 12:56:30 +02:00 |
|
Marek Lemańczyk
|
9a7382fd80
|
Tiny cleanup
|
2025-09-17 19:08:43 +02:00 |
|
Marek Lemańczyk
|
13e048c23d
|
Allow exhaustive divisor scans with 128-bit limits
|
2025-09-15 14:15:35 +02:00 |
|
Marek Lemańczyk
|
f17f83e326
|
No. of divisor cycle iterations made configurable
|
2025-09-11 01:20:15 +02:00 |
|
Marek Lemańczyk
|
d66c70e530
|
Primes limit restored
|
2025-09-11 00:57:24 +02:00 |
|
Marek Lemańczyk
|
fda058cde0
|
Tiny cleanup
|
2025-09-10 21:13:10 +02:00 |
|
Marek Lemańczyk
|
2be49020a9
|
Small primes array type changed to uint[] to avoid excessive memory use, especially on GPU
|
2025-09-09 23:58:09 +02:00 |
|
Marek Lemańczyk
|
9f35f6c558
|
Initial commit.
|
2025-09-09 21:15:57 +02:00 |
|