Skip to content

Use your computer as a cosmic ray detector! One of the memory errors rust does not protect against.

License

Notifications You must be signed in to change notification settings

annihilatorrrr/cosmic_ray_detection

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Your computer can double up as a cosmic ray detector. Yes, really!

Cosmic rays hit your computer all the time. If they hit the RAM, this can sometimes cause disturbances, like flipping a random bit in memory. To use your computer as a cosmic ray detector, simply run this program!
The detection works by allocating a vector of zeroed bytes and then checking regularly to see if they are all still zero. Ta-da!

  • Do not run this on a computer with ECC memory, as that will prevent the data corruption we are trying to detect!
  • The chance of detection increases with the physical size of your DRAM modules and the percentage of them you allocate to this program.
  • Beware of operating systems being clever, and e.g. compressing unused memory pages or swapping them to disk. A vector of nothing but zeros that hasn't been used in a while is an excellent target for this. This will shrink your detector!
  • Expect detections to be very rare.

Special thanks to

  • /u/csdt0 and /u/HeroicKatora on reddit for ideas about how to improve the correctness of the program and avoid the pitfalls of virtual memory.

About

Use your computer as a cosmic ray detector! One of the memory errors rust does not protect against.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 100.0%