Starting in the next version of the BOINC client we’ll be able to detect CPU capabilities.
It is important to note that the capability detection is actually done by the operating system and BOINC just queries the operating system for the supported instruction sets. I bring this up because not all operating systems fully support all additional instruction sets supported by the processor. We are being conservative here to avoid illegal instruction exceptions or privileged instruction exceptions.
For Windows the following instruction sets or capabilities can be detected:
- fpu
- tsc
- pae
- nx
- sse
- sse2
- sse3
- 3dnow
- mmx
On Linux we read the data out of /proc/cpuinfo.
I still need to write the code for the Mac OS.
The processor information will be passed to both the science applications and the scheduling server.