A new Beta Test App is available for Linux at our usual Beta Test Page. It features an assembler-coded "hot loop", and has been built with a somewhat unified build process that will probably work on other platforms, too. It's not surprisingly faster than the 4.55 App, but still a bit, and I'd like to have some feedback regarding certain properties (e.g. validity of results) to see in which direction to proceed.
Happy testing!
BM
BM

LINUX Beta Test App 4.58 available
)
I just checked on two machines that the one listed there (0f231bd3c057d3e2fff2ed95aa2cc696) is correct. Your browser might have cached an old version of the page, or you might have had a download error.
BM
BM
Thanks for the
)
Thanks for the reports.
Anyone tried the graphics yet? Any problems that needed to be solved by overriding the CPU detection or removing the .so file?
BM
BM
That sounds rather like a
)
That sounds rather like a problem with the BOINC client than related to this particular App. It might be that the user account BOINC is running on doesn't have access to the ports the client uses, or something else is running there, maybe even writing something the BOINC client can't deal with. Check ports 1043 and 31416.
I was rather asking whether some problems we had with the 4.55 Beta (and not occured with the official 4.40) still occur with the 4.58.
BM
BM
Yes, the main reason is
)
Yes, the main reason is compatibility to old Linux systems that use an old glibc. For that the program is linked with gcc-3.0.4, which, however, doesn't necessarily mean that it has been thoroughly compiled wit it.
The program spends most of its time in the code from a single module that can be compiled with a different compiler than the rest of the program. In the current official 4.40 App this module was compiled with gcc-3.4 which we found to give the fastest code, i.e. faster than of any gcc-4 that was available at that time. In the previous 4.55 Beta App, featuring source code that was written to make use of the auto-vectorizer, we used gcc-4.1.0 for that. In the 4.58 App the most important part is coded in Assembler anyway, so the compiler doesn't make much of a difference. However, this module is still compiled with a gcc-4, which is gcc-4.1.0 if I remember correctly.
Future builds will probably use the new Intel icc compiler (9.1), as it gives slightly faster code than anything I've seen so far from any gcc.
BM
BM
RE: Using icc myself on
)
Have you looked at the binary itself with a hex editor or similar? It might be that different code and/or data alignment causes that, or, if you let the icc build code for different CPUs (-ax switch) the 9.1 distinguishes more platforms or inserts CPU switches in more places than the 9.0 does. Do you link glibc or Intel libs? The libraries might make a difference, too.
Last time I tried the icc 9.0 for Einstein@Home it didn't work at all, i.e. the linking failed. It also didn't vectorize the loop that I meant to. The code, however, has changed a bit since then, it might be worth another try now. Thanks for the hint.
BM
BM
I see that the anonymous
)
I see that the anonymous platform scheme we use for public Beta Test is badly prepared for the transition to S5R1 we're doing now.
With that transition I'd consider the Beta Test to be over - and successful. The Apps we will use for S5R1 are almost the same than the ones we had in public Beta Test, the improved science code is actually identical, thus the new Apps will be precisely as fast as the Beta Test Apps.
Thank you for all your help, this was incredibly useful!
However the Beta Test Apps are lacking some features we found we need for the new run, and thus can't be used for the new Workunits. There is a bit of S4 work left, but no guarantee that the scheduler will try to give it to your machine. So
- if you want to keep your machines busy regardless of the type of work processed, just remove the app_info.xml file (and restart the client). You will download the new App for the new work, and the old official App for the old S4 work.
- if you prefer to do the old S4 work while it is available and risk your machine runs dry, keep the app_info.xml until there's no more S4 work left (we'll add an entry for that on the server status page).
- if you want to live risky and enjoy it, try the following: remove the app_info.xml, but keep a copy of the Beta App executables somewhre outside the project directory. Restart the client. After getting S4 work and having downloaded the old official App, stop the client again and replace the executables of the official App with the backups of the Beta Test App. Then start the client again. There's no guarantee that this will fool all clients on all machines, but it should work most of the time and finish the S4 work with the speed of the Beta Apps.
Have fun!
BM
BM