Parallel HAVEGE

  • Authors:
  • Alin Suciu;Tudor Carean;Andre Seznec;Kinga Marton

  • Affiliations:
  • Technical University of Cluj-Napoca, Cluj-Napoca, Romania;Technical University of Cluj-Napoca, Cluj-Napoca, Romania;IRISA, INRIA, Rennes, France;Technical University of Cluj-Napoca, Cluj-Napoca, Romania

  • Venue:
  • PPAM'09 Proceedings of the 8th international conference on Parallel processing and applied mathematics: Part II
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The HAVEGE algorithm [1] [2] generates unpredictable random numbers by gathering entropy from internal processor states that are inheritably volatile and impossible to tamper with in a controlled fashion by any application running on the target system. The method used to gather the entropy implies that its main loop will almost monopolize the CPU; the output depends on the operating system and other running applications, as well as some internal mechanisms that stir the processor states to generate an enormous amount of entropy. The algorithm was designed with the idea of single-core CPUs in mind, and no parallelization; however the recent market explosion of multi-core CPUs and the lack of results in increasing the CPU frequency justifies the need to research a multithreaded parallel version of HAVEGE, capable of running the same algorithm loop on each core independently and transparently combine the results in one single output bitstream. This paper will demonstrate how such a parallelization is possible and benchmark the output speed of its implementation.