Post Thumbnail

Возможно вы слышали про уровни микроархитектуры. Каждый уровень включает в себя набор расширений набора команд. Тулинг Go предоставляет доступ к настройке уровней через переменную окружения GOAMD64

Наши 64-битные процессоры Intel и AMD совершенствовались на протяжении десятилетий. При компиляции программы на Go компилятор по умолчанию ориентируется на набор инструкций, которому уже почти 20 лет. Полученный бинарный файл работает практически на любом чипе x64, но при этом не использует ни одну из инструкций, добавленных после 2003 года.

Автор поигрался с настройкасм GOAMD64 и сравненил использование разных уровней в Go на библиотеке roaring. Получил большой прирост производительности при переходе на v2 и v3 уровни, но почти ничего от v4.

Можете попробовать такой подход у себя, но перед сменой целевого уровня компиляции тестируйте CPU-нагруженный код

Похожее

Post Thumbnail

Wi-Fi данные

Не знаю зачем вам это может буть нужно, но мне всегда нравятся статьи по работе ...

Post Thumbnail

Golang Ревью

Продолжение серии заметок о неочевидных и опасных поведениях Go, дополнение к пе...

Post Thumbnail

TigerFS

Файловая система — это просто API. А TigerFS — это файловая система, работающая ...