blob: f98ad8182883142e5232000388126534ef3fefe6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#ifndef FIO_ZIPF_H
#define FIO_ZIPF_H
#include <inttypes.h>
#include "rand.h"
struct zipf_state {
uint64_t nranges;
double theta;
double zeta2;
double zetan;
double pareto_pow;
struct frand_state rand;
uint64_t rand_off;
};
void zipf_init(struct zipf_state *zs, unsigned long nranges, double theta, unsigned int seed);
unsigned long long zipf_next(struct zipf_state *zs);
void pareto_init(struct zipf_state *zs, unsigned long nranges, double h, unsigned int seed);
unsigned long long pareto_next(struct zipf_state *zs);
#endif
|