Concurrency software testing with probabilistic bounds on finding bugs
US8930907B2 · kind B2 · utility
Assignee
Inventors
Key dates
| Filing date | Dec 1, 2009 |
| Grant date | Jan 6, 2015 |
| Priority date | — |
| Expiry date | Jun 11, 2032 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F11/3688
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
Described is a probabilistic concurrency testing mechanism for testing a concurrent software program that provides a probabilistic guarantee of finding any concurrent software bug at or below a bug depth (that corresponds to a complexity level for finding the bug). A scheduler/algorithm inserts priority lowering points into the code and runs the highest priority thread based upon initially randomly distributed priorities. When that thread reaches a priority lowering point, its priority is lowered to a value associated (e.g., by random distribution) with that priority lowering point, whereby a different thread now has the currently highest priority. That thread is run until its priority is similarly lowered, and so on, whereby all schedules needed to find a concurrency bug are run.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.