microbenchmarks: Rust vs KDB+ (Q)
Как-то давно натыкался тут на микробенчмарки разных Rust, Haskell и т.д. Но тогда они показались мне абсолютно неадекватными, типа измерение как быстро сможет раздуть в памяти вектор, когда как, на мой взгляд, можно было бы взять не сильно сложные, но гораздо ближе к реальности тесты.
Дело было вечером ... поставил на ноут Rust, и конечно сравниваю его с Q (в домашней 32bit версии).
- Почему именно их? - Потому, что Q у нас в проде, а Rust приобретает репутацию того, что может когда-то взлететит в энтерпрайсе для low-latency и производидтельных задач.
Понятное дело, что сейчас это сравнение интерпретируемого и компилируемого, но Q всегда выдают как что-то запредельно быстрое, с другой стороны на Rust не сильно сложнее писать подобные конструкции через итераторы. В перспективе конечно хорошо бы добавить C и Java в тест. Да и сами тесты немного расширить, только пока не знаю чем.
запушил на гитхаб:
https://github.com/inv2004/rust_vectors
Из того, что было лень пилить - median, оно явно далеко от отпимального на Rust'е.
время в ms