До сегодняшнего утра «грузовой график» работал немного медленнее, чем «грузовой пробег» после «грузовой сборки --выпуск».
Я сделал небольшое изменение, поменяв местами:
std::collections::{HashMap, HashSet};
с:
rustc_hash::{FxHashMap, FxHashSet};
Но я не могу понять, почему это (или что-то на самом деле) может привести к тому, что «грузовой график» внезапно и резко превзойдет «грузовой пробег».
@SebastianRedl На самом деле он интенсивно использует хеш-таблицу, поэтому я не удивлен ускорением, но удивлен тем, что вижу ускорение только при использовании Flamegraph.
cargo run
соберёт в режиме отладки и запустит.
Если вы хотите запустить выпуск, либо используйте артефакт target/release/project_name[.exe]
, либо выполните cargo run --release
.
Если все, что вы тестируете, требует большого использования хеш-таблицы, это «небольшое изменение» действительно может иметь огромное значение! Кроме того, вы просто попробовали переключить его обратно и посмотреть, исчезнет ли разница?