Combot
combot.org/chat/-1001082778544
Anton
Євгеній 😌
big bro is watching
Євгеній 😌
(reading)
Evgeniy
/stat@combot
Combot
combot.org/chat/-1001082778544
Anton
Alexander
Это как: cargo run --bin test запускаю - собирается ну и пишет что там usage и типа такие параметры - все норм. Потом запускаю run --bin test arg - и они пишет ошибки компиляции - это как.
Andrei
эээ
а можно пасту вместо пересказа?
Alexander
Нельзя :)
Денис
аргументы передаются после --
Alexander
Похоже обязательно надо --bin test -- arg . Но как же я до этого пускал. Хм.
Денис
cargo run --bin test -- arg
Alexander
Может это в win только нормально работает, а в linux надо --
ㅤ
Alexander
мда, руст. for - норм, for_each - на 20% тормознее. ну как так, код один по факту.
Vlad
https://medium.com/@veedrac/rust-is-slow-and-i-am-the-cure-32facc0fdcb
Alexander
да, это давно читал, не думал что ещё настолько актуально.
ㅤ
Зирокост
Alexander
да какая-то жесть, если честно. с такими проблемами это получается очень сырое поделие, которому до прода ещё года. можно сказать что даже циклы пока не особо стабильно умеет :(
доня.
> с такими проблемами это получается очень сырое поделие, которому до прода ещё года
с такими проблемами для огромного пласта задач в проде на эти проблемы всем абсолютно наплевать
Alexander
не очень понял.
доня.
ну даже с такими проблемами с перфомансом всякий там веб например можно спокойно на расте писать, и в плане эффективности будет всё ещё гораздо лучше чем то же самое на приблизительно всём, на чём обычно пишут веб
я короче вёл к тому что когда говоришь «до прода ещё ...», пушо всё очень зависит от области применения
embedded на расте пока 100% нельзя в прод, какие-нибудь сетевые штуки — очень даже можно
Loo
Alexander
доня.
Alexander
Alexander
Да, вполне логично что кому-то надо, а кому-то нет.
доня.
Ой, ладно, убеждать тебя в том готов раст или не готов к проду я не собираюсь.
То что ты скинул это мелочь, а не «такие проблемы».
Alexander
Ну ок, для всех по-разному.
Loo
Loo
Ты случаем не из тех кто бенчит ради бенчей? А не потому что находится узкое место и его только нужно оптимайзить
Alexander
vladislav
Как не зайду в чат, так @inv2004 пишет про перфоманс итераторов
Alexander
vladislav
Marat
Alexander
Там ещё и fold и and_then и инлайн
Alexander
vladislav
Alexander
И как?
Там нет особо вариантов как писать. Основное отличие в этом :) но работает норм.
vladislav
Alexander
Один в один как в for на расте было.
Alexander
С чего ты взял что я не бенчил и не собираюсь?
С такой стати, что у меня падает вообще на ровном месте, внутри самого итераторах вообще никаких наворотов. Если у меня оно на 20% проседает, то почему у тебя вдруг нет, только если логики внутри больше, но это не значит что проблем нет.
Маjко
Что за задача такая, где тебе критично каждую наносекундочку выжать?
Складывается ощущение, что кто-то занимается преждевременными оптимизициями.
Маjко
Надо перформанс — фор и get_unchecked в помощь
Alexander
Надо перформанс — фор и get_unchecked в помощь
1) это просто неприятно, потому что по факту код один
2) для уверенности надо разворачивать все fold и sum и тд.
3) надо следить даже за for, потому как .rev и даже .take могут просадить все очень значительно, хотя казалось бы очевидно что код опять же не должен по первормансу меняться.
4) я уже писал что if let и and_then тоже могут очень разойтись, хотя тут-то даже итераторов нет
Маjко
1) Пока нет боттлнека — тебя это не должно ебать
2) Пока нет боттлнека — тебя это не должно ебать
3) Пока нет боттлнека — тебя это не должно ебать
Маjко
Бессмысленные оптимизации -- отличный метод прокрастинации, я понимаю.
Но на готовности к проду это не сказывается.
Маjко
Это другой вопрос уже.
Профилировщиком выяснили где затык или так, на шару все подряд фиксили?
Alexander
И раздражает , то что все оптимизации не чем-то логичным делаются а вот заменой if на and_then. Вставкой инлайнов и тд.
Ivan
Alexander
@i_m_0 https://github.com/inv2004/soa_iter_bench/commit/93dd8d2403c6ca16063545c72b7ee1c34c16cdf5#diff-25d902c24283ab8cfbac54dfa101ad31
Alexander
к сожалению репа сейчас немного поломана, но по ревизии норм думаю.
Ivan
интересно
Ivan
возможно вариант с if_then() компилятору проще оптимизировать из-за того, что одна из веток if'а в этом случае "разинлайнена" в отдельную функцию
Маjко
Оно и так внутри разынлайнено в функтор
Маjко
Так что да, интересно)
Alexander
но по факту это эквивалентные конструкции.
Alexander
точно как и for и for_each
ㅤ
Loo
Loo
Alexander
Я про пго только читал и посчитал что это уже когда совсем хардкор но надо. Тут же примитивные конструкции и ради них туда лезть - излишне.
Marat
Marat
Даже проверил, скачал последнюю версию, заменил там and_then на if let, разница в пределах погрешности
Loo
John
Mehul
https://twitter.com/rowdymehul/status/975967810626244608?s=21
andrei
а че за underscore lifetime?
Anton
@inv2004 дизасм-то смотрел?
Маjко
Типа который сам выведется