Is EINSTEIN client OPTIMIZED for speed?

azazil
azazil
Joined: 25 Feb 05
Posts: 4
Credit: 240475
RAC: 0
Topic 188111

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

azazil
azazil
Joined: 25 Feb 05
Posts: 4
Credit: 240475
RAC: 0

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

Keck_Komputers
Keck_Komputers
Joined: 18 Jan 05
Posts: 376
Credit: 5744955
RAC: 0

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

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.