AOCL-RNG
The AOCL-RNG is a Pseudo Random Number Generator (PRNG) library. A PRNG produces a stream of variates that are independent and statistically indistinguishable from a random sequence. The AOCL-RNG provides a comprehensive set of statistical distribution functions which are founded on various underlying uniform distribution generators (base generators) including Wichmann-Hill and Mersenne Twister. The library contains six base generators and twenty-three distribution generators. In addition, users can supply a custom-built generator as the base generator for all the distribution generators. The AOCL-RNG API guide can be referenced here.
Highlights of AOCL-RNG 4.2
- AVX512 support for single precision SFMT Generator and Gaussian Distribution Generator
- AVX2 support for single precision Gaussian Distribution Generator
- Improved performance of double precision SFMT Generator and Gaussian Distribution Generator
- Sphinx- based documentation support
The package containing AOCL-RNG binaries, examples and documentation are available in the Download section below.
AOCL-SecureRNG
The AOCL-SecureRNG is a library that provides APIs to access the cryptographically secure random numbers generated by AMD’s hardware-based random number generator implementation. These are high quality robust random numbers designed to be suitable for cryptographic applications. The library makes use of RDRAND and RDSEED x86 instructions exposed by the AMD hardware. Applications can link to the library and invoke either a single or a stream of random numbers. The random numbers can be of 16-bit, 32-bit, 64-bit or arbitrary size bytes.
AOCL-SecureRNG includes:
- APIs to verify support for RDRAND and RDSEED instructions on the target machine
- Retrieve 16-bit, 32-bit, 64-bit or arbitrary size bytes using RDRAND and RDSEED instructions
- APIs support retrial in case of any failure in RNG hardware
The package containing AOCL-SecureRNG Library source, binaries, examples, and documentation are available in the Download section below.
AMD Secure Random Number Generator Library
For prior versions of AOCL-RNG and AOCL-SecureRNG, refer to Random Number Generator Libraries Archive.
Download:
File Name | Version | Size | Launch Date | OS | Bitness | Description |
Binary Packages Compiled with AOCC 4.2 | ||||||
aocl-rng-linux-aocc-4.2.0.tar.gz | 4.2 | 1.8 MB | RHEL, Ubuntu, SLES | 64-bit | AOCC compiled AOCL-RNG library binary package sha256 Checksum: 835ee56eaf4143125004be92313d6ddaef454bba505d6f1504990ee290384d53 | |
aocl-securerng-linux-aocc-4.2.0.tar.gz | 4.2 | 188 KB | RHEL, Ubuntu, SLES | 64-bit | AOCC compiled AOCL-SecureRNG library binary package sha256 Checksum: 7d9176a52bbfca50baf20bda173e1ceef4ddca3fa4f271e9b7a2f0f7f84a552c | |
Binary Packages Compiled with GCC 13.1 | ||||||
aocl-rng-linux-gcc-4.2.0.tar.gz | 4.2 | 1.7 MB | RHEL, Ubuntu, SLES | 64-bit | GCC compiled AOCL-RNG library binary package sha256 Checksum: 3bd2b1dd2e7b0838d5d5b3540e7e09a9e4ab06bc56dbae1b382954e2a53839d8 | |
aocl-securerng-linux-gcc-4.2.0.tar.gz | 4.2 | 188 KB | RHEL, Ubuntu, SLES | 64-bit | GCC compiled AOCL-SecureRNG library binary package sha256 Checksum: 34c5ee6f5404062eacaf135679a5876765ffcecb2d568b2ff5daada88ce3efa0 |