Size: a a a

2020 October 29

MB

Mikail Bagishov in Rust Beginners
А, там же теперь виртуалка обычная.
источник

AZ

Alexander Zaitsev in Rust Beginners
я за wsl не особо слежу. если intel vtune пашет - я бы в первом приближении не парился и юзал его
источник

ML

Michael Larin in Rust Beginners
Perf это что-то сложное ни осилил я его.

Есть что-то человеческое? Подходящее для rust. Типа ANTS performance profiler.

https://www.red-gate.com/products/dotnet-development/ants-performance-profiler/
источник

CH

Crouching Homeless S... in Rust Beginners
hey it happens
источник

AZ

Alexander Zaitsev in Rust Beginners
Michael Larin
Perf это что-то сложное ни осилил я его.

Есть что-то человеческое? Подходящее для rust. Типа ANTS performance profiler.

https://www.red-gate.com/products/dotnet-development/ants-performance-profiler/
intel vtune попробуй
источник

АГ

Алексей Герасимов... in Rust Beginners
Crouching Homeless Soon
hey it happens
бот?
источник
2020 October 30

M

Mikhail in Rust Beginners
@shagon не подкажешь как логгирование в sqlx в релизном билде вырубить?
источник

МП

Максим Петров... in Rust Beginners
Dima N1ght
Народ, вопрос. Я в Rust совсем новичок. Попробовал создать helloworld на actix и столкнулся со странным поведением - при запросе на одном эндпоинте первый запрос отвечает очень много - 500мс, но следующие после него очень мало - 2-3мс. Если подождать 1-3 секунды, то первый после этого перерыва запрос выполняется опять очень много - 500мс. Это документированное поведение такое? Где можно почитать про это?
Ты через сеть запросы отправляешь? Это может иметь значение, так как, например, в беспроводных сетях девайсы могут засыпать при неактивности, и там сотни миллисекунд как раз влегкую набегают.
источник

МП

Максим Петров... in Rust Beginners
Сорри, глянул в код, увидел loopback, вопрос снимаю
источник

SS

Slava Sokolovsky in Rust Beginners
Можно как-то список без реаллокации очистить и занести туда новые значения? Типа заменить, но необязательно таким же количеством (но элемент того же типа)
источник

KR

Kai Ren in Rust Beginners
Slava Sokolovsky
Можно как-то список без реаллокации очистить и занести туда новые значения? Типа заменить, но необязательно таким же количеством (но элемент того же типа)
Список это Vec?

Если новое кол-во <= старого, то можно без реаллокации. Если больше - может быть реаллокация.

А как сделать: просто пройдись мутабельным итератором колько тебе нужно и переустанови длинну.
источник

SS

Slava Sokolovsky in Rust Beginners
Kai Ren
Список это Vec?

Если новое кол-во <= старого, то можно без реаллокации. Если больше - может быть реаллокация.

А как сделать: просто пройдись мутабельным итератором колько тебе нужно и переустанови длинну.
А нет какой-то функции, которая позволила бы заменить элементы? Ведь на этапе кодогенерации можно просто сделать memcpy, нежели каждый элемент менять
источник

KR

Kai Ren in Rust Beginners
Посмотри тут. resize_with, к примеру. Зависит от того что тебе нужно.
https://doc.rust-lang.org/stable/std/vec/struct.Vec.html#method.resize_with
источник

SS

Slava Sokolovsky in Rust Beginners
Вообще, всё просто: clear + extend
источник

CM

Chingiz Mamiyev in Rust Beginners
Dima N1ght
Винда, actix-web 3.1.0, actix-rt 1.1.1. Блин, тупанул, не посмотрел как оно в релизе, запускал через cargo run
Начиная с 3 версии рантайм из под коробки идёт, отдельно ставить не нужно
источник

d

diabolo in Rust Beginners
Chingiz Mamiyev
Начиная с 3 версии рантайм из под коробки идёт, отдельно ставить не нужно
его и раньше можно было отдельно не совать в депсы, он реекспортился, но не весь, как и сейчас — не весь)
источник

A

Adatan in Rust Beginners
Посоветуйте настройки для profile.release, чтобы жертвуя всем, получить максимально производительный бинарник
источник

A

Adatan in Rust Beginners
Сейчас использую
lto = "fat"
codegen-units = 1
источник

A

Adatan in Rust Beginners
По поводу units, где-то слышал, что при 1, будет более оптимизированный бинарник, но я так и не понял, как кол-во потоков для генерации влияет на это, если честно
источник

G

George in Rust Beginners
Adatan
По поводу units, где-то слышал, что при 1, будет более оптимизированный бинарник, но я так и не понял, как кол-во потоков для генерации влияет на это, если честно
Там же вроде есть объяснение, что-то вроде: разные юниты не разбрасываются по ядрам, а собираются строго последовательно в одном потоке, что даёт этому потоку полный контроль над кодом и, соответственно, он может сделать те оптимизации, которые упустил бы, если бы юниты компиляции были разбросаны между ядрами ~равномерно, когда один крейт компилируется в одном месте, а другой - в другом.
источник