This computer HATES the new work units

Anonymous
Topic 13369

It looks like the CPU detection isn't properly working on this machine. Try to create a file named "CPU_TYPE_0" in your BOINC directory.

BM

Bernd Machenschalk
Bernd Machenschalk
Joined: 15 Oct 04
Posts: 2,684
Credit: 25,950,161
RAC: 34,820

This computer HATES the new work units

Quote:
Would getting the latest Boinc client help with this? or forceing it to redownload the app?


I don't see how it should.

I don't see a sign for an incorrectly downloaded App. The signature must have been successfully verified once, so the App has been downloaded correctly. There might be the small possibility for a HD failure that occured lately, but it would much more likely lead to a hang or immediate crash or sth. than to an "illegal instruction" after successfully starting the App, reading the data files and detecting the CPU.

The CPU detection is built into the App, I don't see what the Client has to do with it.

The App detects this CPU as being capable of SSE ("Detected CPU type 1"), but gets an "illegal instruction" exception when executing the SSE code.

I have only seen very few machines where this went wrong. Some old, typically Distro-specific Linux kernels failed to enable SSE though the CPU was capable of it, and I got a PIII that refuses to execute SSE instructions after it had gotten too hot once, but you can count those cases on the fingers of one hand compared to the hundrets of thousands of machines where it works.

BM

BM

Bernd Machenschalk
Bernd Machenschalk
Joined: 15 Oct 04
Posts: 2,684
Credit: 25,950,161
RAC: 34,820

The CPU detection has been in

The CPU detection has been in the Linux Apps for quite a while now, with S5R1 we're using it in the Windows Apps, too. So I'd consider this to be well tested.

There are ways to improve it a bit further, but I doubt that it will work without problems on all CPUs that have been overheated, re-labled or whatever. Modern CPUs shouldn't be a problem, as the mechanisms and instructions for detecting and reporting CPU capabilities are still the same.

I'll have another look at the detection code when I make the next generation of x86-Apps, but for now we have implemented this manual override capability in case of any problems.

BM

BM

Bernd Machenschalk
Bernd Machenschalk
Joined: 15 Oct 04
Posts: 2,684
Credit: 25,950,161
RAC: 34,820

The "CPU type" is defined

The "CPU type" is defined w.r.t. the build, i.e. what features of the CPU the one who builds the App finds useful to distinguish in that build. The "CPU type 0" will always mean "generic code", i.e. code that runs on all CPUs without requiring special features. Apart from that, the meaning of the CPU types may vary between versions.

In the current x86 Apps there is only "CPU type 1" (other than 0), which corresponds to SSE.

In previous PPC Mac Apps "CPU type 1" meant "has AltiVec". However, in the latest version, "CPU type 1" means a G4 CPU, and for the first time there is a new "CPU type 2" which means a G5 CPU.

I don't see a reason why messages from the Apps should appear between the messages of the BOINC Client e.g. in what you see in the "Messages" Tab of the BOINC Manager, and from the top of my head I don't see a way of coding this in the App. You may write or modify a BOINC Client to also log the stderr messages from the Apps it is running, but no Client I'm aware of at the moment does this.

BM

BM

Comment viewing options

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