Questions and Answers :
Unix/Linux :
Compiling SETI 4.13 For a T-Bird on Linux
Message board moderation
Author | Message |
---|---|
![]() ![]() Send message Joined: 26 Mar 04 Posts: 7 Credit: 257,320 RAC: 0 ![]() |
First off, I'm not that great with Linux. I can install the OS, tinker with it, configure scripts, install programs and screw around with loading/unloading services. However, one thing I've never done is utilize GCC on the Linux platform to compile my own applications. After reading that the Linux BOINC client isn't optimized for a specific platform, I endeavoured to speed things up on a spare SETI@Boinc cruncher I've got: AMD Athlon 1000 T-Bird Slot A EPoX 7KXA+ KX133 256 MB PC133 SDRAM 100 GB WD Caviar NVidia GeForce 2 GTS Now, I've installed Red Hat Linux 9.0 on this system (Fedora Core 1 won't install correctly on this system... maybe bad disks... and Fedora Core 2 can't boot from floppy as the kernel is too large and this system can't boot from a CD-ROM). The OS is installed with NVidia's accelerated drivers and ready to accept BOINC. Now, I've used a guide to compile the BOINC client with the most appropriate flags that I could find. http://www.pperry.f2s.com/boinc/boinc-compile.html - Thanks Ned! <B>Flags:</B> CFLAGS="-march=athlon-tbird -O3 -pipe -fforce-addr -fomit-frame-pointer -funroll-loops -falign-functions=4 -maccumulate-outgoing-args" CXXFLAGS="${CFLAGS}" I'm just wondering... are these the most efficient flags to utilize on a T-Bird based system? Is there anything else I can add in there to make the Linux client crunch faster? So far my BOINC bench scores (with my compiled 4.13 CVS client) on this system are: FP Speed (Whetstone): 744.42 MIPS Integer Speed (Dhrystone): 2095.57 MIPS <BR><B>SimGuy - #23 on Overclockers.com SETI@Home BOINC Team</B> Active Crunchers: Athlon 64 FX-55, P4 3400E @ 3600, P4 3200E @ 3600, AXP 2500+ @ 3200+<BR><BR><IMG SRC="http://sigs.axpr.net/?sah=192461"> |
Ned Slider Send message Joined: 12 Oct 01 Posts: 668 Credit: 4,375,315 RAC: 0 ![]() |
Hi SimGuy, There is a discussion thread on optimisation I used here: http://forums.pcper.com/showthread.php?t=354308 I tried about 20 different combinations of compiler optimisations and the ones in my guide were the best for my hardware. Your milage may vary so feel free to try them for yourself. The flags I used were: export CFLAGS="-march=athlon-xp -O3 -fomit-frame-pointer -funroll-loops -fforce-addr -ffast-math -ftracer" It's definately worth adding -ffast-math as this gives a good increase for the Whetstone score. Also, -ftracer helps speed up other optimisations giving a small increase in Dhrystone score (if it's available on your version of gcc). But you really do need to test each and every flag as some also make it slower. For me, -falign-functions=4 actually caused a decrease in the Dhrystone score. Also, I found strange results for the -march flag. Using the obvious choice for your processor doesn't always produce the best results. Just out of interest, you should also try -march=i686 and -march=athlon just to see what you get! Also, presumably -march=athlon-xp won't run on your thunderbird chip (Seg Fault??) I never tested -maccumulate-outgoing-args. Did it make much of a difference for you (or didn't you test individual flags?) Please come visit and post your findings for any additional flags in the discussion thread above :) Good luck, Ned *** My Guide to Compiling Optimised BOINC and SETI Clients *** *** Download Optimised BOINC and SETI Clients for Linux Here *** |
![]() Send message Joined: 14 Jan 04 Posts: 1 Credit: 32,733 RAC: 0 ![]() |
-ffast-math returns workunit results that are unusable. While it speeds you up, it makes the number crunching unreliable and gives garbage results every time I have used it. |
©2025 University of California
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.