Целочисленное переполнение в Rust никогда не запускает неопределенное поведение, в отличие от C. При компиляции в режиме отладки арифметические операции проверяют переполнение и панику, но в режиме выпуска нет никаких проверок.Поведение можно контролировать, передавая флаг -C overflow-checks=yes
в rustc
.
В более общем случае, вы должны обязательно использовать сборки выпуска, если производительность имеет значение.Если вы хотите использовать только определенный процессор, вы можете использовать -C target-cpu=val
, например, -C target-cpu=native
, чтобы оптимизировать текущий процессор.И, конечно, вам нужно профилировать свой код, чтобы понять, что оптимизировать.