![]() |
![]() |
#1 |
Bamboozled!
"πΊππ·π·π"
May 2003
Down not across
244268 Posts |
![]()
After some fiddling around, I persuaded msieve and ggnfs to build on a MacBook Pro running Snow Leopard. The siever, though, is much slower than what I'm used to. The Mac has a Core-2 duo running at 2.53GHz; two threads sieving a C178 SNFS are taking around 0.06 seconds per relation. Another machine, a Phenom-II, runs at close to ten times that speed, albeit clocked at 1.5 times the Mac. Clock for clock, the Mac is at least five times slower and I'm wondering why.
The performance measurements summarized above were made running a build made on a 32-bit kernel and running on the same. Rebooting into 64-bit kernel may have improved the speed slightly (at most by 25%). Rebuilding ("make nocona") under a 64-bit kernel made no difference, not that I expected it to. The athlon64 siever in src/experimental needs some tweaking to get it to compile but the assembler chokes on the .asm files. Does anyone have any ideas how to build a decent siever under MacOS? Paul |
![]() |
![]() |
![]() |
#2 | |
"Mark"
Apr 2003
Between here and the
140538 Posts |
![]() Quote:
|
|
![]() |
![]() |
![]() |
#3 |
(loop (#_fork))
Feb 2006
Cambridge, England
143538 Posts |
![]()
I run msieve on Intel Mac a fair amount, and it runs at much the same speed on a Xeon 5520 Mac Pro and on an i5/750 iMac as it does on my Linux i7/920; so it's not some horrible sloth associated only with Mac.
Is the Mac performance of 32-bit no-assembler ggnfs notably worse than the Linux performance of the same? |
![]() |
![]() |
![]() |
#4 |
Tribal Bullet
Oct 2004
2·3·19·31 Posts |
![]()
Msieve should have no problems building on an x86 or PPC Mac; in fact I think there are only two code blocks that are Mac-specific, and compiling on an x86 Mac will re-use all the 64-bit x86 assembler in the code.
I never tried building GGNFS on this platform, though I remember a protracted effort years ago on the GGNFS mailing list to get it to work on a PPC Mac. It's possible nobody has ever tried compiling the stock GGNFS siever on an x86 Mac, though frmky has managed to build the siever code of the NFS@Home client on a Mac, and perhaps can weigh in. It's possible that the code is looking for a #define that turns on lots of goodies, which happens not to be present on MacOS... |
![]() |
![]() |
![]() |
#5 |
Jul 2003
So Cal
80816 Posts |
![]()
After much pulling of hair, I simply turned off all ASM stuff and built a 32-bit C-only version. I figured that was better than nothing. I don't think it was 1/10 the speed, though...
|
![]() |
![]() |
![]() |
#6 |
Aug 2005
Seattle, WA
23×5×41 Posts |
![]()
With some very minor editing of the makefiles, I built the sievers for MacOS x86_64 many months ago and have been using them to decent effect. I can't say if they are as fast as other people's seivers, since these are the only ones I use. But if someone gives me a .poly file and a range to sieve, I'll tell you exactly what speed I get on some specific processors/clock speeds and we can compare.
|
![]() |
![]() |
![]() |
#7 |
Sep 2008
Kansas
7·463 Posts |
![]()
Is there anymore discussion with this since I have a few Snow Leopard, Lion and Mountain Lion systems in the works? It could be useful.
|
![]() |
![]() |
![]() |
#8 | |
Aug 2005
Seattle, WA
23×5×41 Posts |
![]() Quote:
I can easily send people the binaries. The source presents more of a challenge; I lack the creds to put it in the ggnfs repository, and in any case I believe the repository should probably be restructured a bit. The src/experimental/lasieve4_64/athlon64 directory implicitly assumes that it's targeting Linux (or at least an OS which uses an ELF ABI). I could create a MacOSX directory and put my changes there, but then the athlon64 directory should probably be renamed Linux, since it's the OS more than the processor arch which is at issue. In any case, I can tar up and send people my source changes, and they'll be able to build themselves, but at some point somebody with the access may want to integrate this stuff for real. |
|
![]() |
![]() |
![]() |
#9 |
Mar 2017
22 Posts |
![]()
Where might one find (relatively) recent macOS builds of the lattice sievers for use with factmsieve.py? msieve itself builds fine straight from source, but the sievers in the experimental folder of ggnfs, as jyb above mentioned 5 years ago, don't build immediately on macOS. If anyone has the needed patches I'd be happy to give building it a shot.
|
![]() |
![]() |
![]() |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Factorizing with MSIEVE, GGNFS & Factmsieve.py | Romuald | Msieve | 24 | 2015-11-09 20:16 |
Python Driver for GGNFS and MSIEVE | Brian Gladman | Msieve | 740 | 2014-06-02 07:52 |
Infinite loop for ggnfs or msieve | Greebley | Aliquot Sequences | 4 | 2013-02-06 19:28 |
YAFU on MacOS X | cgy606 | YAFU | 2 | 2012-02-21 04:32 |
Error running GGNFS+msieve+factmsieve.py | D. B. Staple | Factoring | 6 | 2011-06-12 22:23 |