![]() |
![]() |
#1 |
Nov 2007
Halifax, Nova Scotia
23×7 Posts |
![]()
I'm trying to write a script that will take an empty directory on Ubuntu 14.04 and perform all the steps needed to get GGNFS + Msieve + factmsieve.py playing nicely together. Here is what I have:
Code:
#!/bin/bash # Compile msieve: sudo apt-get install libgmp-dev wget http://downloads.sourceforge.net/project/msieve/msieve/Msieve%20v1.52/msieve152.tar.gz tar xzvf msieve152.tar.gz pushd msieve-1.52 make all popd # Compile GGNFS: sudo apt-get install subversion svn checkout svn://svn.code.sf.net/p/ggnfs/code/trunk ggnfs-code pushd ggnfs-code make x86_64 popd # Configure factmsieve.py: # Download factmsieve.77.zip from http://www.mersenneforum.org/showthread.php?t=12981&page=65 wget "http://www.mersenneforum.org/attachment.php?attachmentid=10171&d=1377631047" -O factmsieve.77.zip unzip -o factmsieve.77.zip chmod +x factmsieve.py cp factmsieve.py factmsieve_original.py sed -i '1i #!/usr/bin/env python' factmsieve.py sed -i "s/GGNFS_REL_PATH = '..\/bin\/x64\/Release\/'/GGNFS_REL_PATH = '.\/'/g" factmsieve.py sed -i "s/MSIEVE_REL_PATH = '..\/..\/msieve\/bin\/x64\/Release\/'/MSIEVE_REL_PATH = '.\/'/g" factmsieve.py sed -i 's/NUM_CORES = 4/NUM_CORES = 6/g' factmsieve.py sed -i 's/USE_CUDA = True/USE_CUDA = False/g' factmsieve.py diff factmsieve_original.py factmsieve.py # Consolodate binaries: cp -pr ggnfs-code/bin/* . mv msieve-1.52/* . # Create example input file and run test calculation: echo "n: 2881039827457895971881627053137530734638790825166127496066674320241571446494762386620442953820735453" > example.n time ./factmsieve.py example Code:
Mon Dec 08 12:10:10 2014 -> Return value -11. Updating job file and terminating... |
![]() |
![]() |
![]() |
#2 |
Basketry That Evening!
"Bunslow the Bold"
Jun 2011
40<A<43 -89<O<-88
3·29·83 Posts |
![]()
Does installing libgmp-dev actually install the necessary GMP library files?
|
![]() |
![]() |
![]() |
#3 | |
Nov 2007
Halifax, Nova Scotia
23×7 Posts |
![]() Quote:
|
|
![]() |
![]() |
![]() |
#4 |
"Ed Hall"
Dec 2009
Adirondack Mtns
152B16 Posts |
![]()
This may be totally useless to you, but in case it's of interest, I have a manual install that includes GGNFS and msieve on its way to setting up Aliqueit, shown here:
Steps to Install and set up Aliqueit on an Ubuntu... Computer |
![]() |
![]() |
![]() |
#5 |
Nov 2007
Halifax, Nova Scotia
23×7 Posts |
![]()
That doesn't look useless at all. In fact, it looks very similar to what I've been doing. Can I ask which versions of GGNFS, Msieve, and factmseive.py you tested this with?
|
![]() |
![]() |
![]() |
#6 |
"Ed Hall"
Dec 2009
Adirondack Mtns
5,419 Posts |
![]()
The last time I was running this software was quite a while ago, but I just installed everything this morning on a Pentium 4, 64-bit Ubuntu 14.04 64-bit machine to test it and it seems to be functioning with msieve r975, gmp 6.0.0a, ecm 6.4.4, today's d/l of ggnfs-master.zip and factmsieve.py 0.76. My link for factmsieve.py is broken, so I need to change that to get version 0.77, but I have several copies of 0.76 handy. I had no glitches (other than the broken link) and am running a small portion of sequence 4788 to test the installation. Everything seems to be running as it should, but I'll update later, after it adds some lines. Also, I am using the sieves from ggnfs in this test, instead of the better ones referenced on my page.
|
![]() |
![]() |
![]() |
#7 |
"Ed Hall"
Dec 2009
Adirondack Mtns
5,419 Posts |
![]()
My machine ran several ggnfs factorizations without any hitches. Aliqueit ran several lines of an early section of 4788 with composites around 95 digits. Msieve QS was invoked to find some minor factors and it was used to perform poly selection, whereby factmsieve.py then ran the ggnfs steps to complete the larger jobs. All performed well.
|
![]() |
![]() |
![]() |
#8 |
Nov 2007
Halifax, Nova Scotia
3816 Posts |
![]()
Thank you very much. I am trying to reproduce your work now. I'll also try to isolate the issue with my original instructions. Two questions: Firstly, what version of Python are you using? Secondly, can you share your copy of version 0.76 factmsieve.py? I am suspicious that the issue might be related to factmsieve.py compatibility.
|
![]() |
![]() |
![]() |
#9 |
Nov 2007
Halifax, Nova Scotia
23×7 Posts |
![]()
OK, the issue was with GGNFS. The version that you pointed to on GitHub (https://github.com/radii/ggnfs) contains bug fixes and updates that are not in the trunk release on SourceForge (http://sourceforge.net/p/ggnfs/code/HEAD/tree/). I find this a bit strange, because the code on SourceForge (r440) shows modifications from 2013, while the code on GitHub has had no commits since 2011. However:
1) The code from GitHub works for me, while the SourceForge code does not. 2) As I said, there are bug fixes in the GitHub code that aren't in the SF code, for example, this commit fixes a bug that's still live in the SourceForge code. Does anyone know what's going on here? Was there a fork in GGNFS development? |
![]() |
![]() |
![]() |
#10 |
Nov 2007
Halifax, Nova Scotia
23·7 Posts |
![]()
For reference, here are build instructions. Starting from a fresh install of Ubuntu Server 14.04.1 LTS 64-bit, the following will get you up and running with GGNFS (GitHub commit 3490572ca8, Apr. 23, 2011), Msieve (SF SVN revision 975, Sep. 30, 2014), and factmsieve.py (version 0.77, MersenneForum.org, Aug 27, 2013).
Thank you EdH for your help working this out. Code:
#!/bin/bash # Install some dependencies sudo apt-get install g++ subversion m4 wget zlib1g-dev make libgmp-dev gmp-ecm libecm-dev unzip # Download & compile GGNFS wget https://github.com/radii/ggnfs/archive/master.zip unzip master.zip mv ggnfs-master ggnfs pushd ggnfs make x86_64 popd # Download & compile Msieve svn co https://svn.code.sf.net/p/msieve/code/trunk msieve pushd msieve make all NO_ZLIB=1 ECM=1 popd # Download & configure factmsieve.py # factmsieve.77.zip comes from http://www.mersenneforum.org/showthread.php?t=12981&page=65 wget "http://www.mersenneforum.org/attachment.php?attachmentid=10171&d=1377631047" -O factmsieve.77.zip unzip -o factmsieve.77.zip chmod +x factmsieve.py cp factmsieve.py factmsieve_original.py sed -i '1i #!/usr/bin/env python' factmsieve.py sed -i "s/GGNFS_REL_PATH = '..\/bin\/x64\/Release\/'/GGNFS_REL_PATH = '.\/ggnfs\/bin\/'/g" factmsieve.py sed -i "s/MSIEVE_REL_PATH = '..\/..\/msieve\/bin\/x64\/Release\/'/MSIEVE_REL_PATH = '.\/msieve\/'/g" factmsieve.py sed -i 's/NUM_CORES = 4/NUM_CORES = 6/g' factmsieve.py sed -i 's/USE_CUDA = True/USE_CUDA = False/g' factmsieve.py diff factmsieve_original.py factmsieve.py # Create example input file and run test calculation echo "n: 2881039827457895971881627053137530734638790825166127496066674320241571446494762386620442953820735453" > example.n time ./factmsieve.py example |
![]() |
![]() |
![]() |
#11 |
"Ed Hall"
Dec 2009
Adirondack Mtns
152B16 Posts |
![]()
Sorry I wasn't more readily available, but glad you got it worked out. I remember having the same issue with ggnfs, now that you bring it up. I had totally forgotten that until you mentioned it.
|
![]() |
![]() |
![]() |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Broadwell new instructions | tha | Hardware | 6 | 2014-07-18 00:08 |
Useless SSE instructions | __HRB__ | Programming | 41 | 2012-07-07 17:43 |
Project instructions | MooooMoo | Twin Prime Search | 9 | 2006-06-06 13:30 |
Instructions to manual LLR? | OmbooHankvald | PSearch | 3 | 2005-08-05 20:28 |
Instructions please? | jasong | Sierpinski/Riesel Base 5 | 10 | 2005-03-14 04:03 |