From b9f64ec37b73ca4e7a403235922662ee7867c2da Mon Sep 17 00:00:00 2001 From: NunoSempere Date: Sun, 15 Oct 2023 12:23:26 +0100 Subject: [PATCH] savepoint: C perf + readme tweaks --- C/perf.txt | 26 -------------------------- C/perf/perf.data | Bin 0 -> 76216 bytes C/perf/perf.txt | 25 +++++++++++++++++++++++++ README.md | 2 ++ 4 files changed, 27 insertions(+), 26 deletions(-) delete mode 100644 C/perf.txt create mode 100644 C/perf/perf.data create mode 100644 C/perf/perf.txt diff --git a/C/perf.txt b/C/perf.txt deleted file mode 100644 index 5e7c95bf..00000000 --- a/C/perf.txt +++ /dev/null @@ -1,26 +0,0 @@ -Samples: 884 of event 'cycles', Event count (approx.): 551167949 -Overhead Command Shared Object Symbol - 35.32% samples samples [.] xorshift32 - 14.09% samples libgomp.so.1.0.0 [.] 0x000000000001d2ea - 12.04% samples libgomp.so.1.0.0 [.] 0x000000000001d132 - 11.53% samples samples [.] mixture._omp_fn.0 - 4.55% samples libm-2.31.so [.] __sin_fma - 4.24% samples samples [.] rand_0_to_1 - 3.77% samples samples [.] random_to - 3.03% samples libm-2.31.so [.] __logf_fma - 1.61% samples libm-2.31.so [.] __expf_fma - 1.54% samples samples [.] split_array_sum._omp_fn.0 - 1.38% samples samples [.] random_uniform - 0.94% samples samples [.] ur_normal - 0.91% samples libm-2.31.so [.] __ieee754_log_fma - 0.74% samples libgomp.so.1.0.0 [.] 0x000000000001d13d - 0.52% samples samples [.] sample_0 - 0.41% samples libm-2.31.so [.] __sqrtf_finite@GLIBC_2.15 - 0.38% samples samples [.] sample_1 - 0.36% samples libgomp.so.1.0.0 [.] 0x000000000001d139 - 0.36% samples libgomp.so.1.0.0 [.] 0x000000000001d2f5 - 0.22% samples [kernel.kallsyms] [k] native_queued_spin_lock_slowpath - 0.18% samples [kernel.kallsyms] [k] _raw_spin_lock_irq - 0.18% samples samples [.] random_lognormal - 0.17% samples libgomp.so.1.0.0 [.] 0x000000000001d2f1 - diff --git a/C/perf/perf.data b/C/perf/perf.data new file mode 100644 index 0000000000000000000000000000000000000000..3493fe832984568d4e43823edabfc0fe5c475fff GIT binary patch literal 76216 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 z z@_Yj1mH7&J(W;8R`3~S_%GUu8{fy#7dDgQ=)(*xF@XdEXp7T-UMR{MS<7ya@7hP*i zd5oy{P#*H4ARfy{r|#!FCs4zak@kP;dY+% z57+BF;;@&vd6B61ldFhRTOR{EKKToARXAP*{f=Lc1l+uOc%9W-I?9Vg+}KYr4;0mb z@*+O2g1l3yxF2YFC)z*xI1RWm)o?%1v2wIO@$naMOCoT;^1FK4kNNvz0Pcg|PBNZw z#zgrOKVAdQ7LNBHdFpE#XLvpVxN(hsX7Ud8p*YdrmAijqxcqZ8zKOW*t*$ZLia8X= z&vQX<;mDf|=WI`L9`c6WVYpQ{>G;L-ERbhuu3`P|k?j;G`Z;bp=8GoJrMUClekG9i z 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 literal 0 HcmV?d00001 diff --git a/C/perf/perf.txt b/C/perf/perf.txt new file mode 100644 index 00000000..f446b5dd --- /dev/null +++ b/C/perf/perf.txt @@ -0,0 +1,25 @@ +Samples: 806 of event 'cycles', Event count (approx.): 576095767 +Overhead Command Shared Object Symbol + 36.75% samples samples [.] xorshift32 + 13.69% samples libgomp.so.1.0.0 [.] 0x000000000001d3ca + 12.84% samples samples [.] mixture._omp_fn.0 + 10.70% samples libgomp.so.1.0.0 [.] 0x000000000001d212 + 5.02% samples samples [.] rand_0_to_1 + 4.05% samples libm-2.31.so [.] __sin_fma + 3.11% samples libm-2.31.so [.] __logf_fma + 2.79% samples samples [.] split_array_sum._omp_fn.0 + 1.91% samples samples [.] random_to + 1.74% samples samples [.] random_uniform + 0.87% samples libm-2.31.so [.] __ieee754_log_fma + 0.81% samples samples [.] ur_normal + 0.74% samples libm-2.31.so [.] __expf_fma + 0.55% samples libgomp.so.1.0.0 [.] 0x000000000001d3d1 + 0.53% samples libgomp.so.1.0.0 [.] 0x000000000001d21d + 0.35% samples samples [.] random_normal + 0.30% samples libm-2.31.so [.] __sqrtf + 0.28% samples samples [.] random_lognormal + 0.25% samples samples [.] sample_0 + 0.24% samples [kernel.kallsyms] [k] 0xffffffffae72e205 + 0.22% samples libgomp.so.1.0.0 [.] 0x000000000001d219 + 0.18% samples [kernel.kallsyms] [k] 0xffffffffae2c2b83 + 0.18% samples [kernel.kallsyms] [k] 0xffffffffae4f4da7 diff --git a/README.md b/README.md index 5ef758f2..9e669f34 100644 --- a/README.md +++ b/README.md @@ -123,6 +123,8 @@ Overall I'm thinking that a combination of lua at least for scripting and ¿nim/ OCaml was like meeting an old and forgotten friend. I found its syntax a bit clunky, but could get accustomed to it. Its list matching is nice, O(n) list element accessing, not so much. Honestly, I wanted to really like it, but I'm not sure yet. And it's *slow* compared to C. +I restricted myself to using the standard library, but it's likely that using Jane Street's Base or Core would have produced less clunky code. + ### Overall thoughts Overall I don't think that this is a fair comparison of the languages intrinsically, because I'm just differentially good at them, because I've chosen to put more effort in ones than in others. But it is still useful to me personally, and perhaps mildly informative to others.