A parallel computer system adds entropy to improve the quality of random number generation by using parity errors as a source of entropy because parity errors are influenced by external forces such as cosmic ray bombardment, alpha particle emission, and other random or near-random events. By using parity errors and associated information to generate entropy, the quality of random number generation in a parallel computer system is increased.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer implemented method for a software agent to receive a random number, the method comprising the steps of: providing a parallel computer system comprising a plurality of nodes, each node comprising a memory; detecting at least one parity error in at least one of the memories in the plurality of nodes; using time and location of the at least one parity error to add entropy to an entropy pool, wherein the location comprises a chip serial number corresponding to a memory chip where a current parity error occurred; using the entropy pool to generate a random number; and the software agent receiving the generated random number and transforming the generated random number to a form usable by the software agent.
2. The method of claim 1 wherein the time comprises clock time for a current parity error.
3. The method of claim 1 wherein the time comprises a mathematical operation between time of a current parity error and time of a past parity error.
4. The method of claim 1 wherein the location comprises a mathematical operation between a first chip serial number corresponding to a first memory chip where a current parity error occurred and a second chip identifier serial number corresponding to a second memory chip where a past parity error occurred.
5. The method of claim 1 further comprising the step of distributing the entropy added to the entropy pool to at least one other node.
6. A computer implemented method for a software agent to receive a random number, the method comprising the steps of: providing a parallel computer system comprising a plurality of nodes, each node comprising a memory; detecting at least one parity error in at least one of the memories in the plurality of nodes; using time and location of the at least one parity error in the at least one of the memories in the plurality of nodes to add entropy to a first entropy pool in a first node by performing a first mathematical operation between time of a current parity error and time of a past parity error and by performing a second mathematical operation between a first chip identifier corresponding to a first memory chip where a current parity error occurred and a second chip identifier corresponding to a second memory chip in the first node; distributing the entropy added to the first entropy pool in the first node to at least one other of the plurality of nodes; using time and location of the at least one parity error in the at least one of the memories in the plurality of nodes to add entropy to a second entropy pool in a second node by performing a third mathematical operation between time of a current parity error and time of a past parity error and by performing a fourth mathematical operation between a first chip identifier corresponding to a first memory chip where a current parity error occurred and a third chip identifier corresponding to a third memory chip in the second node; distributing the entropy added to the second entropy pool in the second node to at least one other of the plurality of nodes; using at least one of the first and second entropy pools to generate a random number; and the software agent receiving the generated random number and transforming the generated random number to a form usable by the software agent.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
November 21, 2012
June 3, 2014
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.