summaryrefslogtreecommitdiffhomepage
path: root/examples
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2020-08-07 22:18:53 +0200
committerTyge Løvset <[email protected]>2020-08-07 22:18:53 +0200
commitdba8a3ba10c93ff030c948ef3fa896693fa36f17 (patch)
treed32b8eda39aec49fbbb7e1dc791b3bb1585af303 /examples
parentca44e2a92fe670e09d6808cd5933f66be0980f50 (diff)
downloadSTC-modified-dba8a3ba10c93ff030c948ef3fa896693fa36f17.tar.gz
STC-modified-dba8a3ba10c93ff030c948ef3fa896693fa36f17.zip
Rngtest
Diffstat (limited to 'examples')
-rw-r--r--examples/rngtest.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/examples/rngtest.c b/examples/rngtest.c
index 66e5f0c8..657e002d 100644
--- a/examples/rngtest.c
+++ b/examples/rngtest.c
@@ -6,7 +6,7 @@
#endif
-#define NN 1000000000
+#define NN 3000000000
int main(void)
{
@@ -14,16 +14,21 @@ int main(void)
uint64_t v;
crandom_eng64_t sfc = crandom_eng64_init(time(NULL));
- crandom_distrib_i64_t d10 = crandom_uniform_i64_init(10, 20);
-
- for (int i=0; i<30; ++i) printf("%02zd ", crandom_uniform_i64(&sfc, d10));
+ crandom_distrib_i32_t i32dist = crandom_uniform_i32_init(10, 20);
+ crandom_distrib_f32_t f32dist = crandom_uniform_f32_init(10, 20);
+
+ crandom_distrib_i64_t idist = crandom_uniform_i64_init(10, 20);
+ crandom_distrib_f64_t fdist = crandom_uniform_f64_init(10, 20);
+
+ for (int i=0; i<30; ++i) printf("%02zd ", crandom_uniform_i64(&sfc, idist));
puts("");
crandom_eng32_t pcg = crandom_eng32_init(time(NULL));
before = clock(); \
v = 0;
for (size_t i=0; i<NN; i++) {
- v += crandom_i32(&pcg);
+ //v += crandom_i32(&pcg);
+ v += crandom_uniform_i32(&pcg, i32dist);
}
difference = clock() - before;
printf("pcg32: %.02f, %zu\n", (float) difference / CLOCKS_PER_SEC, v);
@@ -31,20 +36,20 @@ int main(void)
before = clock(); \
v = 0;
for (size_t i=0; i<NN; i++) {
- v += crandom_i64(&sfc) & 0xffffffff;
+ //v += crandom_i64(&sfc) & 0xffffffff;
+ v += crandom_uniform_i64(&sfc, idist);
}
difference = clock() - before;
printf("sfc64: %.02f, %zu\n", (float) difference / CLOCKS_PER_SEC, v);
- crandom_distrib_i32_t i32dist = crandom_uniform_i32_init(10, 20);
+
for (int i=0; i<8; ++i) printf("%d ", crandom_uniform_i32(&pcg, i32dist));
puts("");
- crandom_distrib_f32_t f32dist = crandom_uniform_f32_init(10, 20);
+
for (int i=0; i<8; ++i) printf("%f ", crandom_uniform_f32(&pcg, f32dist));
puts("");
-
- crandom_distrib_f64_t fdist = crandom_uniform_f64_init(10, 20);
+
for (int i=0; i<8; ++i) printf("%f ", crandom_uniform_f64(&sfc, fdist));
puts("");
} \ No newline at end of file