✨ Pixi task (bench-polars in oracle): python3 scripts/bench_polars.py --sizes 1000000,10000000 --threads 32 --reps 5 --runner build/bench_cpu110 # polars=1.44.2 threads=32 reps=5 machine=x86_64 Linux | workload | rows | dataframe_mojo ms | polars ms | mojo / polars | |---|---|---|---|---| | csv_read | 1,000,000 | 23.71 | 15.37 | 1.5x | | arithmetic_chain | 1,000,000 | 4.35 | 5.42 | 0.8x | | nullable_compare | 1,000,000 | 1.96 | 5.16 | 0.4x | | filter | 1,000,000 | 16.76 | 7.05 | 2.4x | | global_sum | 1,000,000 | 0.34 | 0.30 | 1.1x | | grouped_low | 1,000,000 | 22.98 | 13.94 | 1.6x | | grouped_high | 1,000,000 | 25.82 | 13.79 | 1.9x | | grouped_skew | 1,000,000 | 23.92 | 15.63 | 1.5x | | grouped_str | 1,000,000 | 32.20 | 14.66 | 2.2x | | join_inner | 1,000,000 | 56.21 | 28.84 | 1.9x | | sort_multi | 1,000,000 | 87.32 | 55.82 | 1.6x | | csv_read | 10,000,000 | 172.57 | 91.36 | 1.9x | | arithmetic_chain | 10,000,000 | 32.51 | 9.47 | 3.4x | | nullable_compare | 10,000,000 | 9.26 | 6.74 | 1.4x | | filter | 10,000,000 | 103.65 | 28.48 | 3.6x | | global_sum | 10,000,000 | 2.18 | 1.61 | 1.3x | | grouped_low | 10,000,000 | 239.00 | 115.43 | 2.1x | | grouped_high | 10,000,000 | 194.40 | 161.29 | 1.2x | | grouped_skew | 10,000,000 | 214.88 | 118.80 | 1.8x | | grouped_str | 10,000,000 | 319.15 | 149.54 | 2.1x | | join_inner | 10,000,000 | 576.77 | 157.96 | 3.7x | | sort_multi | 10,000,000 | 1198.14 | 588.74 | 2.0x | ✨ Pixi task (bench-polars in oracle): python3 scripts/bench_polars.py --sizes 1000000,10000000 --threads 1 --reps 3 --runner build/bench_cpu110 # polars=1.44.2 threads=1 reps=3 machine=x86_64 Linux | workload | rows | dataframe_mojo ms | polars ms | mojo / polars | |---|---|---|---|---| | csv_read | 1,000,000 | 322.32 | 210.93 | 1.5x | | arithmetic_chain | 1,000,000 | 19.91 | 2.29 | 8.7x | | nullable_compare | 1,000,000 | 17.26 | 0.93 | 18.6x | | filter | 1,000,000 | 52.33 | 7.81 | 6.7x | | global_sum | 1,000,000 | 0.77 | 0.63 | 1.2x | | grouped_low | 1,000,000 | 28.20 | 21.97 | 1.3x | | grouped_high | 1,000,000 | 45.53 | 59.93 | 0.8x | | grouped_skew | 1,000,000 | 28.79 | 24.02 | 1.2x | | grouped_str | 1,000,000 | 38.67 | 30.91 | 1.3x | | join_inner | 1,000,000 | 105.04 | 139.31 | 0.8x | | sort_multi | 1,000,000 | 739.14 | 362.81 | 2.0x | | csv_read | 10,000,000 | 3657.93 | 2157.53 | 1.7x | | arithmetic_chain | 10,000,000 | 198.12 | 18.63 | 10.6x | | nullable_compare | 10,000,000 | 169.81 | 7.92 | 21.5x | | filter | 10,000,000 | 524.70 | 71.26 | 7.4x | | global_sum | 10,000,000 | 9.67 | 7.71 | 1.3x | | grouped_low | 10,000,000 | 287.29 | 220.60 | 1.3x | | grouped_high | 10,000,000 | 1139.63 | 1411.61 | 0.8x | | grouped_skew | 10,000,000 | 291.76 | 225.30 | 1.3x | | grouped_str | 10,000,000 | 390.07 | 454.74 | 0.9x | | join_inner | 10,000,000 | 2708.41 | 2214.96 | 1.2x | | sort_multi | 10,000,000 | 18059.95 | 6634.58 | 2.7x | ✨ Pixi task (bench-polars in oracle): python3 scripts/bench_polars.py --sizes 1000000 --threads 32 --reps 7 --runner build/bench_cpu110 --data-dir build/cpu110_exponent --csv-only # polars=1.44.2 threads=32 reps=7 machine=x86_64 Linux | workload | rows | dataframe_mojo ms | polars ms | mojo / polars | |---|---|---|---|---| | csv_read | 1,000,000 | 28.93 | 20.93 | 1.4x |