This project is about number crunching. I wonder if the programmers optimized the calculating part of Einstein client. A good optimization may make any calculation 10 times faster. Any information about it?
I hope they wrote it in C (or better Assembly) and used the fastest compiler available (they say Intel's C compiler makes 25% faster code for example then gcc or microsoft C++).
Kind Regards:
azazil
Copyright © 2024 Einstein@Home. All rights reserved.
Is EINSTEIN client OPTIMIZED for speed?
)
I rewieved the clients binary code, and I see it is not optimized.
Well, it was a long time ago since I last optimized a code and i forgot nearly all thing I knew about, but here is lot to do I think.
First of all, most computers today doing nothing else in 75% of the time then waiting for the main memory. If the code is 3 megabytes long and full of remarks, debug info, ascii text, not needed (but linked) parts like joystick handling, various character sets (eg.:C:\cygwin\cfswin\4_79\freeglut\freeglut\o\freeglut_font_data.obj), it cannot be fitted into any processors cache area. You know the smaller the code, the faster it runs.
I could continue for long, but I hope there is somebody who knows this thing better then me and able to help.
Kind Regards:
azazil
Comments are only in the
)
Comments are only in the source code they do not get compiled or linked. The debug code is normally removed before the client is released to the public, it is always in the source though it is removed with comipler switches. You may be correct about things like joystick handling still being included but even so the CPU will only load the relevent parts of the code into cache at runtime.
BOINC WIKI
BOINCing since 2002/12/8