Probe effect
Probe effect is unintended alteration in system behavior caused by measuring that system. In code profiling and performance measurements, the delays introduced by insertion/removal of code instrumentation may result in a non-functioning application, or unpredictable behavior.
Examples
In electronics, by attaching a multimeter, oscilloscope, or other testing device via a test probe, small amounts of capacitance, resistance, or inductance may be introduced. Though good scopes have very slight effects, in sensitive circuitry these can lead to unexpected failures, or conversely, unexpected fixes to failures.
In debugging of parallel computer programs, sometimes failures (such as deadlocks) are not present when debugger's code (which was meant to help finding a reason for deadlocks by visualising points of interest in the program code) is attached to the program. This is because additional code changed timing of the execution of parallel processes, and because of that deadlocks were avoided.[1] This type of bug is known colloquially as a Heisenbug, by analogy with the observer effect in quantum mechanics.
Sources
- ↑ Event manipulation for Nondeterministic Shared-Memory Programs / High-Performance Computing and Networking. 9th International Conference, HPCN Europe 2001, Amsterdam, The Netherlands, June 25–27, 2001,