Skip to content

Stability Measurement

Abdellah El Morabit edited this page Nov 20, 2025 · 1 revision

What I am looking to get out of this application is the ability to test if the current system is stable. Stability isn't something that's always easy to spot. Blue screens and shut downs are a consequence of a unstable system. The reason for stress testing is to spot these instabilities before they cause any damage.

How do we measure this?

A good approach I think is looking if the performance is degrading or improving. https://www.javaadvent.com/2019/12/measuring-time-from-java-to-kernel-and-back.html

Using java System.nanoTime() I managed to get the time it takes to calculate the time of a prime number check. ' image

Now time is still time and time isn't a very good measurement. If you increase your CPU frequency to double the frequency and it somehow runs for a couple of minutes and in those minutes you manage to run a 10 second long stress test. You are going to have a really good time on that stress test, but did you measure if your CPU was stable? No. Doing this is like saying the environment is always the same and that the cpu will execute a set of instructions with the same speed every single time. -> not the case

Instead we should do more tests that check stability over performance.

  • correctness of the execution
  • errors
  • cache corruption and besides those, general CPU behavior like thermal, voltage and clock stability

Clone this wiki locally