Size: a a a

2020 February 07

AZ

Alex Zhukovsky in rust_offtopic
вводить мусорные переменные чтобы обмануть оптимизатор это конеш модно, но не надо делать тупые правила которые потом придется обходить
источник

AZ

Alex Zhukovsky in rust_offtopic
Tux
как быть? я на тс не пишу, а тут прижало
ну это похоже на баг. Stage еще ладно, но StageObj явно юзается
источник

T

Tux in rust_offtopic
=(
источник

P

Pavel in rust_offtopic
Alex Zhukovsky
потому что я могу с помощью этого кода:

1. пушить эвристику джита чтобы он быстрее факториал заоптимизировал
2. защищаться от meltdown уязвимости
3. проверять нагрев процессора
4. ...
запушь эвристику джита параметром запуска, от мелтдауна защитись патчем ядра, а нагрев процессора проверяй специальными инструкциями, например AVX, потому, что факториал слабо нагреет.
источник

AZ

Alex Zhukovsky in rust_offtopic
спроси в канале тсеров, такой наверняка есть
источник

AZ

Alex Zhukovsky in rust_offtopic
Pavel
запушь эвристику джита параметром запуска, от мелтдауна защитись патчем ядра, а нагрев процессора проверяй специальными инструкциями, например AVX, потому, что факториал слабо нагреет.
источник

P

Pavel in rust_offtopic
ну, ты ж описал хак, буквально, понадеялся на сайдеффекты, которые тебе никто не гарантировал
источник

AZ

Alex Zhukovsky in rust_offtopic
Pavel
ну, ты ж описал хак, буквально, понадеялся на сайдеффекты, которые тебе никто не гарантировал
я не раз сталкивался, когда разработчики делали очень "умную" оптмизиацию и убирали лишние действия, которые оказывались очень даже нужными
источник

AZ

Alex Zhukovsky in rust_offtopic
я уже молчу про то что вне какого-нибудь хаскеля ты не знаешь делает ли функция факториала что-то кроме вычисления
источник

P

Pavel in rust_offtopic
Alex Zhukovsky
я не раз сталкивался, когда разработчики делали очень "умную" оптмизиацию и убирали лишние действия, которые оказывались очень даже нужными
ты понадеялся на то, что спекой не гарантировалось
источник

A

Anton 📦 ᯌ in rust_offtopic
Alex Zhukovsky
use itertools::Itertools;
use std::collections::HashMap;

fn main() {
   let result = TEXT
       .split_whitespace()
       .fold(HashMap::<_, i32>::new(), |mut acc, w| {
           let word = w.trim_matches(|c: char| !c.is_alphabetic()).to_lowercase();
           *acc.entry(word).or_default() += 1;
           acc
       })
       .into_iter()
       .sorted_by_key(|(_, count)| -*count);
   println!("{:?}", result);
}
Ну так здесь норм
источник

P

Pavel in rust_offtopic
Alex Zhukovsky
я уже молчу про то что вне какого-нибудь хаскеля ты не знаешь делает ли функция факториала что-то кроме вычисления
ну так в хаскеле ты бы грел проц факториалом?
источник

AZ

Alex Zhukovsky in rust_offtopic
Pavel
ну так в хаскеле ты бы грел проц факториалом?
да
источник

AZ

Alex Zhukovsky in rust_offtopic
язык тут не при чем, если мне надо греть, буду на любом греть
источник

P

Pavel in rust_offtopic
хаскель гарантирует, что factorial(50) будет каждый раз вычисляться и не может быть мемоизирован?
источник

AZ

Alex Zhukovsky in rust_offtopic
Pavel
хаскель гарантирует, что factorial(50) будет каждый раз вычисляться и не может быть мемоизирован?
ну я его в IO запихну и да, будет каждый раз вычисляться
источник

P

Pavel in rust_offtopic
Alex Zhukovsky
ну я его в IO запихну и да, будет каждый раз вычисляться
ну, так ты код выше в ио не запихнул
источник

AZ

Alex Zhukovsky in rust_offtopic
Pavel
ну, так ты код выше в ио не запихнул
нельзя код запихнуть в ИО в языке где нет ио
источник

P

Pavel in rust_offtopic
Alex Zhukovsky
нельзя код запихнуть в ИО в языке где нет ио
можно, "запихнуть в ио" же здесь значит не буквально "запихнуть в ио", а "использовать конструкцию, которая знает про сайд-эффекты"
источник

AZ

Alex Zhukovsky in rust_offtopic
да, но в обычных япах по-дефолту считается что любая функа это сайдэффекты
источник