mersenneforum.org  

Go Back   mersenneforum.org > Great Internet Mersenne Prime Search > Software

Reply
 
Thread Tools
Old 2011-01-29, 07:28   #1
Jean Penné
 
Jean Penné's Avatar
 
May 2004
FRANCE

2×3×97 Posts
Default llrpi : a full portable version of LLR

Hi All,

I just released llrpi Version 3.8.0, a full portable version of LLR 3.8.4
It uses a full portable adaptation of George Woltman's gwnum library.

You may dowload the source and the x86 binaries from my development directory :

http://jpenne.free.fr/Development/llrpi380devsrc.zip is the compressed source directory.
http://jpenne.free.fr/Development/llrpi380devsrc.zip is the Windows (console) executable.
http://jpenne.free.fr/Development/llrpi380devlinux.zip is the Linux one.
http://jpenne.free.fr/Development/llrpi380devslinux.zip is the static Linux one.

Indeed, this program is much slower than LLR 3.8.4 when run on x86 platforms, but be not disappointed! George's assembler code is so optimized that I think it could hardly be surpassed on these machines...
But I think that this work can help for several other tasks :

- It allows to verify positive results on non-x86 machines.
- It is a first attempt that can be improved, for example by using other available FFT libraries.
- It would not be too difficult (I hope) to implement it on new hardwares such as GPU's, and I think it could help CUDA developpers.

Happy new year, and Best Regards,
Jean
Jean Penné is offline   Reply With Quote
Old 2011-01-29, 08:59   #2
Karl M Johnson
 
Karl M Johnson's Avatar
 
Mar 2010

3·137 Posts
Default

Couldnt find a windows binary in the link provided ?
A fix is needed, perhaps ?
Karl M Johnson is offline   Reply With Quote
Old 2011-01-29, 10:21   #3
nuggetprime
 
nuggetprime's Avatar
 
Mar 2007
Austria

30210 Posts
Default

wait a moment!
Let's benchmark this against phrot!
nuggetprime is offline   Reply With Quote
Old 2011-01-29, 11:39   #4
nuggetprime
 
nuggetprime's Avatar
 
Mar 2007
Austria

2·151 Posts
Default

compiled fine,but speed is not that impressive:
First results on a P4 3.2 GHZ:
phrot number,small k:
Phrot 0.7.2:
Code:
Input 31*2^93168+1 is prime.[0m. (e=0.02416 (0.0457397~3.21914e-16@0.000) t=75.98s)
LLRPI:
Code:
31*2^93168+1 is prime!  Time : 140.176 sec.
non-base-2 number:
Phrot 0.7.2:
Code:
Input 47*830^5354-1 is PRP.[0m. (e=0.00821 (0.0192892~3.3426e-16@0.000) t=22.12s)
LLRPI:
Code:
47*830^5354-1 is base 3-Strong Fermat PRP! (2 more test(s))  Time : 139.969 sec.
Altough it's much slower than the just-as-portable phrot,it has the possibility of doing deterministic tests on k*b^n+/-1 and Riesel numbers.

Last fiddled with by nuggetprime on 2011-01-29 at 11:39
nuggetprime is offline   Reply With Quote
Old 2011-01-29, 12:27   #5
Jean Penné
 
Jean Penné's Avatar
 
May 2004
FRANCE

10010001102 Posts
Default Portable llrpi

Quote:
Originally Posted by Jean Penné View Post
Hi All,

I just released llrpi Version 3.8.0, a full portable version of LLR 3.8.4
It uses a full portable adaptation of George Woltman's gwnum library.

You may dowload the source and the x86 binaries from my development directory :

http://jpenne.free.fr/Development/llrpi380devsrc.zip is the compressed source directory.
http://jpenne.free.fr/Development/llrpi380dev.zip is the Windows (console) executable.
http://jpenne.free.fr/Development/llrpi380devlinux.zip is the Linux one.
http://jpenne.free.fr/Development/llrpi380devslinux.zip is the static Linux one.

Indeed, this program is much slower than LLR 3.8.4 when run on x86 platforms, but be not disappointed! George's assembler code is so optimized that I think it could hardly be surpassed on these machines...
But I think that this work can help for several other tasks :

- It allows to verify positive results on non-x86 machines.
- It is a first attempt that can be improved, for example by using other available FFT libraries.
- It would not be too difficult (I hope) to implement it on new hardwares such as GPU's, and I think it could help CUDA developpers.

Happy new year, and Best Regards,
Jean
Here is the fixed link ; sorry for the copy/paste error...
Jean
Jean Penné is offline   Reply With Quote
Old 2011-01-29, 14:34   #6
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

2·7·467 Posts
Default

This is good news. Now non-X86 users can do primality tests on all k*b^n+/-1 numbers. I'll have to d/l and try it out on PPC in PRPNet.

BTW, which FFT library does it use? YEAFFT? DJFFT? FFTW? Something else?

Last fiddled with by rogue on 2011-01-29 at 14:36
rogue is offline   Reply With Quote
Old 2011-01-29, 17:26   #7
nuggetprime
 
nuggetprime's Avatar
 
Mar 2007
Austria

1001011102 Posts
Default

AFAIK Jean Penne wrote a GWNUM compatible fft/reduction library all by himself.
nuggetprime is offline   Reply With Quote
Old 2011-01-29, 17:47   #8
Jean Penné
 
Jean Penné's Avatar
 
May 2004
FRANCE

2×3×97 Posts
Default

Quote:
Originally Posted by nuggetprime View Post
AFAIK Jean Penne wrote a GWNUM compatible fft/reduction library all by himself.
Not exactly ; I never wrote any FFT code.
Here, I wrote squaring / multiplication, normalization and modular reduction codes.

In this first attempt, I am using Takuya OOURA's FFT code contained in the file "fftsg.c". The main drawback of this code is that it requires power of two FFT lengths... I will use FFTW for the next release, and also I wish to generalize my IBDWT and Zero padded codes to base != two numbers, so I will have still some work to do...
Jean Penné is offline   Reply With Quote
Old 2011-01-29, 21:44   #9
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

11001100010102 Posts
Default

I just built it. I have one concern and one area for improvement. The concern is with the macro for INFINITY. It is being redefined. I recommend renaming the macro to eliminate confusion.

The area for improvement would be in inormalize and rnormalize. It should be possible to unroll these loops and gain about 10% or more speed. I had done something similar in phrot and got a nice boost in speed. Note that unrolling is probably more beneficial on RISC architectures than non-RISC architectures as RISC architectures tend to have more FP registers to play with.
rogue is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
llrp, a portable version of LLR using FFTW Jean Penné Software 16 2012-04-08 13:43
idea: a portable version of Prime95 ixfd64 Software 3 2010-10-07 14:18
sieving on Playstation Portable jasong Sierpinski/Riesel Base 5 8 2007-03-13 00:31
Prime95 on Playstation Portable jasong Software 4 2007-03-12 07:15
Is GIMPS program portable? Chris Software 5 2005-04-17 18:25

All times are UTC. The time now is 03:32.


Thu Jan 27 03:32:14 UTC 2022 up 187 days, 22:01, 1 user, load averages: 1.79, 1.34, 1.29

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.

≠ ± ∓ ÷ × · − √ ‰ ⊗ ⊕ ⊖ ⊘ ⊙ ≤ ≥ ≦ ≧ ≨ ≩ ≺ ≻ ≼ ≽ ⊏ ⊐ ⊑ ⊒ ² ³ °
∠ ∟ ° ≅ ~ ‖ ⟂ ⫛
≡ ≜ ≈ ∝ ∞ ≪ ≫ ⌊⌋ ⌈⌉ ∘ ∏ ∐ ∑ ∧ ∨ ∩ ∪ ⨀ ⊕ ⊗ 𝖕 𝖖 𝖗 ⊲ ⊳
∅ ∖ ∁ ↦ ↣ ∩ ∪ ⊆ ⊂ ⊄ ⊊ ⊇ ⊃ ⊅ ⊋ ⊖ ∈ ∉ ∋ ∌ ℕ ℤ ℚ ℝ ℂ ℵ ℶ ℷ ℸ 𝓟
¬ ∨ ∧ ⊕ → ← ⇒ ⇐ ⇔ ∀ ∃ ∄ ∴ ∵ ⊤ ⊥ ⊢ ⊨ ⫤ ⊣ … ⋯ ⋮ ⋰ ⋱
∫ ∬ ∭ ∮ ∯ ∰ ∇ ∆ δ ∂ ℱ ℒ ℓ
𝛢𝛼 𝛣𝛽 𝛤𝛾 𝛥𝛿 𝛦𝜀𝜖 𝛧𝜁 𝛨𝜂 𝛩𝜃𝜗 𝛪𝜄 𝛫𝜅 𝛬𝜆 𝛭𝜇 𝛮𝜈 𝛯𝜉 𝛰𝜊 𝛱𝜋 𝛲𝜌 𝛴𝜎 𝛵𝜏 𝛶𝜐 𝛷𝜙𝜑 𝛸𝜒 𝛹𝜓 𝛺𝜔