Jump to content

Relativistic programming

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by The Elves Of Dunsimore (talk | contribs) at 01:41, 24 May 2011 (added Category:Concurrent computing using HotCat). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Relativistic programming (also called RP) is a style of concurrent programming where instead of trying to avoid conflicts between readers and writers (or writers and writers in some cases) the algorithm is designed to tolerate them and get a correct result regardless of the order of events. Also relativistic programming algorithms are designed to work without the presences of a global order of events. That is in some there maybe cases where one thread sees a two events in a different order then another thread (hence the term relativistic because in Einstein's relativity order of events is not always the same to different viewers).

Relativistic programming provides advantages in performance compared to other concurrecy paradigms because it does not require one thread to wait for another nearly as often. Because of this forms of it (Read-Copy-Update for instance) are now used extensively in the Linux kernel [1]

Notes

  1. ^ RCU is used more than 5000 times in the Linux kernel as of 2011. [1]