The following commit caused a pretty large drop in performance for the TPC-H benchmark running against a SF=100 data set.
29e9d13481ea6acc3f74cda108ed34ef8a411ba2isthefirstbadcommitcommit29e9d13481ea6acc3f74cda108ed34ef8a411ba2Author: JorgeC. Leitao <jorgecarleitao@gmail.com>
Date: SunOct1821:05:482020 +0200ARROW-10002: [Rust] RemovetraitspecializationfromarrowcrateThisPRremovestraitspecializationbyleveragingthecompilertoremovetrivial `if` statements.
Iverifiedthattheassemblycodewasthesameina [simpleexample](https://rust.godbolt.org/z/qrcW8W). I do not know if this generalizes to our use-case, but I suspect so as LLVM is (hopefully) removing trivial branches like `if a != a`.Thechange `get_data_type()` to `DATA_TYPE` isnotnecessary. Ididitbeforerealizingthis. IMOitmakesitmoreexplicitthatthisisnotafunction, butaconstant, butwecanrevertit.
Closes #8485fromjorgecarleitao/simp_typesAuthored-by: JorgeC. Leitao <jorgecarleitao@gmail.com>
Signed-off-by: NevilleDipale <nevilledips@gmail.com>:040000040000cbdaf3c9e924ec0e51d178df73169956b2bf723f87c79e17378196b61dce9c5373e008ee94620d58Mrust
Benchmark command:
cargorun --release --bintpch -- --iterations3 --path /mnt/tpch/parquet-100GB --formatparquet --query1 --batch-size4096 --concurrency24
Before this commit:
Query1iteration0took13629msQuery1iteration1took13450msQuery1iteration2took13465ms
After this commit:
Query1iteration0took18586msQuery1iteration1took18297msQuery1iteration2took18253ms
Reporter: Andy Grove / @andygrove
Assignee: Jorge Leitão / @jorgecarleitao
PRs and other links:
Note: This issue was originally created as ARROW-10453. Please see the migration documentation for further details.
The following commit caused a pretty large drop in performance for the TPC-H benchmark running against a SF=100 data set.
Benchmark command:
Before this commit:
After this commit:
Reporter: Andy Grove / @andygrove
Assignee: Jorge Leitão / @jorgecarleitao
PRs and other links:
Note: This issue was originally created as ARROW-10453. Please see the migration documentation for further details.