Is there any way to check if my CPU is working without errors? There are CPUburn and MPrime to stress-test the CPU and check for temperatures and throttling, but is there any program that will actually check for errors without necessarily stressing out the CPU? (E.g. compare multiple calculations and log silent errors, or similar?)

  • 1
    Errors? As in 4+4=5? What kind of errors? – terdon Nov 27 '17 at 18:15
  • If calculations would give wrong answers, your system would crash constantly and probably won't even boot. CPUs probably also do self-testing when turned on. – SurvivalMachine Nov 27 '17 at 18:22
  • @terdon, maybe? I'm not sure what for example MemTest calculates and writes into memory, but I believe these values are also checked-back to make sure that they have been written correctly. I'm concerned with errors that may result in program crashes that are usually attributed to bugs in the code or errors that result in corrupted data being written to disc. @ SurvivalMachine: Is that a solid indicator of correct operation? For thorough memory testing there is MemTest or VMT, but are there any programs that check the integrity of the CPU, as well? – Prototype700 Nov 27 '17 at 18:57
  • Please edit your question and clarify. Explain exactly what you need to test. You can't "test the integrity of the CPU". If it works, it works. If it has failed, you will know. You seem to think that the CPU will give different results if you try enough times and I really doubt that could be possible. – terdon Nov 27 '17 at 20:25

I suggest trying stress-ng with the cpu stressor and verify mode enabled:

sudo apt-get install stress-ng
stress-ng --cpu 0 --verify --verbose --timeout 5m

The above with run the CPU stress test with verification enabled on all CPUs for 5 minutes. If there is something broken, the verify mode may just detected it.

The CPU stressor will exercise the following CPU stress test methods: ackermann bitops callfunc cdouble cfloat clongdouble correlate crc16 decimal32 decimal64 decimal128 dither djb2a double euler explog fft factorial fibonacci float fnv1a gamma gcd gray hamming hanoi hyperbolic idct int128 int64 int32 int16 int8 int128float int128double int128longdouble int128decimal32 int128decimal64 int128decimal128 int64float int64double int64longdouble int32float int32double int32longdouble jenkin jmp ln2 longdouble loop matrixprod nsqrt omega parity phi pi pjw prime psi queens rand rand48 rgb sdbm sieve stats sqrt trig union zeta.

Consult the stress-ng manual using man stress-ng for the full details of these cpu stressors.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.