Scroll to navigation

rte_random.h(3) DPDK rte_random.h(3)

NAME

rte_random.h

SYNOPSIS

#include <stdint.h>

Functions


void rte_srand (uint64_t seedval)
uint64_t rte_rand (void)
uint64_t rte_rand_max (uint64_t upper_bound)
double rte_drand (void)

Detailed Description

Pseudo-random Generators in RTE

Definition in file rte_random.h.

Function Documentation

void rte_srand (uint64_t seedval)

Seed the pseudo-random generator.

The generator is automatically seeded by the EAL init with a timer value. It may need to be re-seeded by the user with a real random value.

This function is not multi-thread safe in regards to other rte_srand() calls, nor is it in relation to concurrent rte_rand(), rte_rand_max() or rte_drand() calls.

Parameters:

seedval The value of the seed.

uint64_t rte_rand (void)

Get a pseudo-random value.

The generator is not cryptographically secure.

rte_rand(), rte_rand_max() and rte_drand() are multi-thread safe, with the exception that they may not be called by multiple unregistered non-EAL threads in parallel.

Returns:

A pseudo-random value between 0 and (1<<64)-1.

uint64_t rte_rand_max (uint64_t upper_bound)

Generates a pseudo-random number with an upper bound.

This function returns an uniformly distributed (unbiased) random number less than a user-specified maximum value.

rte_rand(), rte_rand_max() and rte_drand() are multi-thread safe, with the exception that they may not be called by multiple unregistered non-EAL threads in parallel.

Parameters:

upper_bound The upper bound of the generated number.

Returns:

A pseudo-random value between 0 and (upper_bound-1).

double rte_drand (void)

Generates a pseudo-random floating point number.

This function returns a non-negative double-precision floating random number uniformly distributed over the interval [0.0, 1.0).

The generator is not cryptographically secure.

rte_rand(), rte_rand_max() and rte_drand() are multi-thread safe, with the exception that they may not be called by multiple unregistered non-EAL threads in parallel.

Returns:

A pseudo-random value between 0 and 1.0.

Author

Generated automatically by Doxygen for DPDK from the source code.

Thu May 23 2024 Version 23.11.0