Releases: Nomi/PiCalc
PiCalc v1.0.5 (x64)
Changes: streamlined entry/main function.
Note: Due to GMP compatibility issues with Windows, 10^8 digits is the most it can calculate.
Now allows inputting the number of digits to calculate.
Benchmarks:
(Run on Intel Core i5 8300H)
Also, on an Intel Core i7-1185G7, the time for calculating 100 million (10^8) digits was 66.9916 seconds.
PiCalc wmpir1.0.5 (x64) - Windows MPIR
Changes:
Streamlined entry/main function.
Also, removed supporting code in ChudnovskyPiBS class for what I had earlier thought could have be an efficient way to handle 10^9 decimal places at the time.
Alternative version for Windows with switch from GMP to MPIR for supporting larger decimal expansion on Windows. Should support 10^9 and above.
PiCalc lnx1.0.5 (x64) - Linux GMP
PiCalc Linux (x64)
Changes: Cleaned up the "main" file, namely PiCalc.cpp. Also, optimized writing to file using the GMP function mpz_out_str and removed the Windows specific System("PAUSE") command.
Uses 64-bit Linux GMP to compute the decimal Pi expansion. Since this isn't for Windows, it will work as expected. As such, it should allow for calculation of more than 10^8 digits.
Update:
Calculated a billion digits in 985.769 seconds on an Intel Core i5 8400H (4 cores 8 threads).
[If you need GMP, at least on ArchLinux just use sudo pacman -S gmp
]
PiCalc lnx1.0.4 (x64) - Linux GMP
Uses 64-bit Linux GMP to compute the decimal Pi expansion. Since this isn't for Windows, it will work as expected. As such, it should allow for calculation of more than 10^8 digits.
Update:
Calculated a billion digits in 985.769 seconds on an Intel Core i5 8400H (4 cores 8 threads).
[If you need GMP, at least on ArchLinux just use sudo pacman -S gmp
]
PiCalc wmpir1.0.4 (x64) - Windows MPIR
Alternative version for Windows with switch from GMP to MPIR for supporting larger decimal expansion on Windows.
Also, added supporting code in ChudnovskyPiBS class for what I thought could be an efficient way to handle 10^9 decimal places at the time.
PiCalc v1.0.4
PiCalc v1.0.3 (x64)
Switched back to the implementation of binary splitting without barriers on main-worker-threads. As such, the benchmarks from v1.0.1 should still hold up.
Benchmarks:
(Run on Intel Core i5 8300H)
Also, on an Intel Core i7-1185G7, the time for calculating 100 million (10^8) digits was 66.9916 seconds.
PiCalc v1.0.2 (x64)
Added barrier-based wait for spawned high-priority threads to wait for creation of all other spawned threads. Also, switched to ISO C++20 language standard (to be able to use barriers).
PiCalc v1.0.1 (x64)
PiCalc v1.0.0 (x86)
Add project files.