An evaluation of random number generators