@@ -270,121 +270,6 @@ taipei = DateTime.shift_zone!(utc, "Asia/Taipei")
270270Ch .query! (pid, " INSERT INTO ch_datetimes(datetime) FORMAT RowBinary" , [[naive], [utc], [taipei]], types: [" DateTime" ])
271271```
272272
273- ## Benchmarks
274-
275- <details >
276- <summary ><code >INSERT</code > 1 million rows <a href =" https://github.com/ClickHouse/clickhouse-go#benchmark " >(original)</a ></summary >
277-
278- <pre ><code >
279- $ MIX_ENV=bench mix run bench/insert.exs
280-
281- This benchmark is based on https://github.com/ClickHouse/clickhouse-go#benchmark
282-
283- Operating System: macOS
284- CPU Information: Apple M1
285- Number of Available Cores: 8
286- Available memory: 8 GB
287- Elixir 1.14.4
288- Erlang 25.3
289-
290- Benchmark suite executing with the following configuration:
291- warmup: 2 s
292- time: 5 s
293- memory time: 0 ns
294- reduction time: 0 ns
295- parallel: 1
296- inputs: 1_000_000 rows
297- Estimated total run time: 28 s
298-
299- Benchmarking encode with input 1_000_000 rows ...
300- Benchmarking encode stream with input 1_000_000 rows ...
301- Benchmarking insert with input 1_000_000 rows ...
302- Benchmarking insert stream with input 1_000_000 rows ...
303-
304- ##### With input 1_000_000 rows #####
305- Name ips average deviation median 99th %
306- encode stream 1.63 612.96 ms ±11.30% 583.03 ms 773.01 ms
307- insert stream 1.22 819.82 ms ±9.41% 798.94 ms 973.45 ms
308- encode 1.09 915.75 ms ±44.13% 750.98 ms 1637.02 ms
309- insert 0.73 1373.84 ms ±31.01% 1331.86 ms 1915.76 ms
310-
311- Comparison:
312- encode stream 1.63
313- insert stream 1.22 - 1.34x slower +206.87 ms
314- encode 1.09 - 1.49x slower +302.79 ms
315- insert 0.73 - 2.24x slower +760.88 ms</code >
316- </pre >
317-
318- </details >
319-
320- <details >
321- <summary ><code >SELECT</code > 500, 500 thousand, and 500 million rows <a href =" https://github.com/ClickHouse/ch-bench " >(original)</a ></summary >
322-
323- <pre ><code >
324- $ MIX_ENV=bench mix run bench/stream.exs
325-
326- This benchmark is based on https://github.com/ClickHouse/ch-bench
327-
328- Operating System: macOS
329- CPU Information: Apple M1
330- Number of Available Cores: 8
331- Available memory: 8 GB
332- Elixir 1.14.4
333- Erlang 25.3
334-
335- Benchmark suite executing with the following configuration:
336- warmup: 2 s
337- time: 5 s
338- memory time: 0 ns
339- reduction time: 0 ns
340- parallel: 1
341- inputs: 500 rows, 500_000 rows, 500_000_000 rows
342- Estimated total run time: 1.05 min
343-
344- Benchmarking stream with decode with input 500 rows ...
345- Benchmarking stream with decode with input 500_000 rows ...
346- Benchmarking stream with decode with input 500_000_000 rows ...
347- Benchmarking stream with manual decode with input 500 rows ...
348- Benchmarking stream with manual decode with input 500_000 rows ...
349- Benchmarking stream with manual decode with input 500_000_000 rows ...
350- Benchmarking stream without decode with input 500 rows ...
351- Benchmarking stream without decode with input 500_000 rows ...
352- Benchmarking stream without decode with input 500_000_000 rows ...
353-
354- ##### With input 500 rows #####
355- Name ips average deviation median 99th %
356- stream with decode 4.69 K 213.34 μs ±12.49% 211.38 μs 290.94 μs
357- stream with manual decode 4.69 K 213.43 μs ±17.40% 210.96 μs 298.75 μs
358- stream without decode 4.65 K 215.08 μs ±10.79% 213.79 μs 284.66 μs
359-
360- Comparison:
361- stream with decode 4.69 K
362- stream with manual decode 4.69 K - 1.00x slower +0.0838 μs
363- stream without decode 4.65 K - 1.01x slower +1.74 μs
364-
365- ##### With input 500_000 rows #####
366- Name ips average deviation median 99th %
367- stream without decode 234.58 4.26 ms ±13.99% 4.04 ms 5.95 ms
368- stream with manual decode 64.26 15.56 ms ±8.36% 15.86 ms 17.97 ms
369- stream with decode 41.03 24.37 ms ±6.27% 24.39 ms 26.60 ms
370-
371- Comparison:
372- stream without decode 234.58
373- stream with manual decode 64.26 - 3.65x slower +11.30 ms
374- stream with decode 41.03 - 5.72x slower +20.11 ms
375-
376- ##### With input 500_000_000 rows #####
377- Name ips average deviation median 99th %
378- stream without decode 0.32 3.17 s ±0.20% 3.17 s 3.17 s
379- stream with manual decode 0.0891 11.23 s ±0.00% 11.23 s 11.23 s
380- stream with decode 0.0462 21.66 s ±0.00% 21.66 s 21.66 s
381-
382- Comparison:
383- stream without decode 0.32
384- stream with manual decode 0.0891 - 3.55x slower +8.06 s
385- stream with decode 0.0462 - 6.84x slower +18.50 s</code >
386- </pre >
387-
388- </details >
389-
390- [ CI Results] ( https://github.com/plausible/ch/actions/workflows/bench.yml ) (click the latest workflow run and scroll down to "Artifacts")
273+ ## [ Benchmarks] ( ./bench )
274+
275+ See nightly [ CI runs] ( https://github.com/plausible/ch/actions/workflows/bench.yml ) for latest results.
0 commit comments