Performance
note
- Memory SIMD-Vector processing performance only
- Dataset: 100,000,000,000 (100 Billion)
- Hardware: AMD Ryzen 7 PRO 4750U, 8 CPU Cores, 16 Threads
- Rust: rustc 1.56.0-nightly (e3b1c12be 2021-08-02)
- Build with Link-time Optimization and Using CPU Specific Instructions
Query | DatabendQuery (v0.4.76-nightly) |
---|---|
SELECT avg(number) FROM numbers_mt(100000000000) | 3.712 s. (26.94 billion rows/s., 215.52 GB/s.) |
SELECT sum(number) FROM numbers_mt(100000000000) | 3.669 s. (27.26 billion rows/s., 218.07 GB/s.) |
SELECT min(number) FROM numbers_mt(100000000000) | 4.498 s. (22.23 billion rows/s., 177.85 GB/s.) |
SELECT max(number) FROM numbers_mt(100000000000) | 4.438 s. (22.53 billion rows/s., 180.25 GB/s.) |
SELECT count(number) FROM numbers_mt(100000000000) | 2.125 s. (47.07 billion rows/s., 376.53 GB/s.) |
SELECT sum(number+number+number) FROM numbers_mt(100000000000) | 17.169 s. (5.82 billion rows/s., 46.60 GB/s.) |
SELECT sum(number) / count(number) FROM numbers_mt(100000000000) | 3.696 s. (27.06 billion rows/s., 216.45 GB/s.) |
SELECT sum(number) / count(number), max(number), min(number) FROM numbers_mt(100000000000) | 8.348 s. (11.98 billion rows/s., 95.83 GB/s.) |
SELECT number FROM numbers_mt(10000000000) ORDER BY number DESC LIMIT 10 | 3.164 s. (3.16 billion rows/s., 25.28 GB/s.) |
SELECT max(number), sum(number) FROM numbers_mt(1000000000) GROUP BY number % 3, number % 4, number % 5 LIMIT 10 | 1.657 s. (603.62 million rows/s., 4.83 GB/s.) |
Notes
DatabendQuery system.numbers_mt is 16-way parallelism processing, gist
Experience 100 billion performance on your laptop, talk is cheap just bench it