localectl set-locale LC_ALL=ru_RU.UTF-8
localectl list-locales
localectl set-locale LANG="ru_RU.UTF-8"
localectl status
localectl list-locales
нету подходящей локали то её необходимо сгенерировать.locale-gen
можно, только сомневаюсь, что автор именно так думал и делал...
/home
pip
есть ? есть, имя выбрано конечно странное, но кто не без грехаtmp1
куда автор хочет скидывать кешь, ну и молодец, в чем проблема ?$HOME/tmp
и смонтировал её по типу /tmp
то есть в ОЗУ(tmpfs), очень удобно для временных поделок, я даже стандартную $HOME/.cache
запихнул в tmpfs
для ускорения приложений работающих с этим кешем$ findmnt -no FSTYPE $HOME/.cache
tmpfs
Я вам могу ответственно сказать и мои слова вам подтвердят все, что каталог /home всегда существует, если был создан Пользователь
HOME
в файле /etc/default/useradd
ну или ключиком useradd --base-dir ...
непосредственно при создании юзера. кажется, что тут код тупо свернулся до констант и никаких вычислений не происходит.
$ go build -compiler=gccgo main.go
$ time ./main
17167680177565
________________________________________________________
Executed in 4.30 secs fish external
usr time 4.29 secs 122.00 micros 4.29 secs
sys time 0.01 secs 183.00 micros 0.01 secs
Можешь декомпилировать и показать что там нагенерилось?
$ go version
go version go1.18 gccgo (GCC) 13.2.1 20230801 linux/amd64
$ go build -compiler=gccgo main.go
$ time ./main
1134903170
________________________________________________________
Executed in 18.28 millis fish external
usr time 18.55 millis 258.00 micros 18.29 millis
sys time 0.00 millis 0.00 micros 0.00 millis
$ go version
go version go1.21.3 linux/amd64
$ go build main.go
$ time ./main
1134903170
________________________________________________________
Executed in 6.75 secs fish external
usr time 6.73 secs 239.00 micros 6.73 secs
sys time 0.00 secs 57.00 micros 0.00 secs
$ gcc --version
gcc (GCC) 13.2.1 20230801
$ gcc main.c
$ time ./a.out
1134903170
________________________________________________________
Executed in 8.27 secs fish external
usr time 8.26 secs 330.00 micros 8.26 secs
sys time 0.00 secs 0.00 micros 0.00 secs
хотябы покажи с какими флагами gccgo запускал и сколько конкретно времени получилось
$ go build -compiler=gccgo main.go
https://habr.com/ru/companies/intel/articles/348230/
А выигрыш в 400 раз выглядит как аномалия. Покажешь?
Выигрыш в скорости исключительно из-за выключенных в си оптимизаций
Оптимизации по умолчанию не включены из-за того что они требуют много ресурсов и времени компиляции и при этом не нужны на этапе разработки.
$ go version
go version go1.18 gccgo (GCC) 13.2.1 20230801 linux/amd64
$ go build -compiler=gccgo main.go
$ time ./main
1134903170
________________________________________________________
Executed in 18.28 millis fish external
usr time 18.55 millis 258.00 micros 18.29 millis
sys time 0.00 millis 0.00 micros 0.00 millis
$ go version
go version go1.21.3 linux/amd64
$ go build main.go
$ time ./main
1134903170
________________________________________________________
Executed in 6.75 secs fish external
usr time 6.73 secs 239.00 micros 6.73 secs
sys time 0.00 secs 57.00 micros 0.00 secs
$ gcc --version
gcc (GCC) 13.2.1 20230801
$ gcc main.c
$ time ./a.out
1134903170
________________________________________________________
Executed in 8.27 secs fish external
usr time 8.26 secs 330.00 micros 8.26 secs
sys time 0.00 secs 0.00 micros 0.00 secs
да, похоже что переменная LC_ALL это единственная переменная из кагорты LC_ которую нельзя установить в /etc/locale.conf
как вариант можно установить её в .profile чтобы было доступно всем оболочкам текущего пользователя
echo "export LC_ALL=ru_RU.UTF-8" >> $HOME/.profile
и перезагрузиться
п.с.
чуть подправил, забыл export