From e42111e4dfc2fac9f99b053fd3cd65cd6e11259f Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Sun, 13 Nov 2022 12:29:42 -0500 Subject: Typos --- docs/implementation/perf.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs/implementation/perf.html') diff --git a/docs/implementation/perf.html b/docs/implementation/perf.html index 31dac3ad..a949429f 100644 --- a/docs/implementation/perf.html +++ b/docs/implementation/perf.html @@ -15,7 +15,7 @@

Currently we aim for high performance on a single CPU core, and are focusing on 64-bit x86. CBQN won't use additional cores or a GPU for acceleration. It does make substantial use of x86 vector instructions up to AVX2 (2013) in the Singeli build, and will have more slow cases if built without Singeli. Comparisons are the hardest hit, as they rarely take too long with Singeli but can become a bottleneck without it.

Performance resources

The spotty optimization coverage means that it's more accurate to say CBQN can be fast, not that it will be fast. Have to learn how to use it. Definitely ask on the forum if you're having performance troubles so you can find some tricks to use or request improvements.

-

There are two measurement tools in the time system values. •MonoTime is a high-precision timer for performance measurements; you can take a time before and after some operation or section of a program and subtract them to get a time in seconds (a profiling tool to do this automatically would be nice, but we don't have one). More convenient for small snippets, •_timed returns the time to evaluate 𝔽𝕩, averaging over 𝕨 runs if given. For two argument functions you can write wF•_timed x or F´•_timed wx. CBQN also has a )time command that prints the time taken by an entire expression, not counting compilation time.

+

There are two measurement tools in the time system values. •MonoTime is a high-precision timer for performance measurements; you can take a time before and after some operation or section of a program and subtract them to get a time in seconds (a profiling tool to do this automatically would be nice, but we don't have one). More convenient for small snippets, •_timed returns the time to evaluate 𝔽𝕩, averaging over 𝕨 runs if given. For two-argument functions you can write wF•_timed x or F´•_timed wx. CBQN also has a )time command that prints the time taken by an entire expression, not counting compilation time.

100 +´•_timed 1e6  # Time +´ only
 )time:100 +´1e6    # Time entire expression
 
-- cgit v1.2.3