Автор разбирает продвинутый прием устранения проверки границ в горячих путях Go
Когда компилятор не может доказать безопасность доступа к срезу, а программист может, на помощь приходит unsafe.Pointer с арифметикой указателей. Вместо `binary.LittleEndian.Uint32(data[i:])` можно использовать `*(*uint32)(unsafe.Add(unsafe.Pointer(unsafe.SliceData(b)), i))`, что устраняет все проверки границ и на реальном бенчмарке brotli-компрессора даёт прирост ~10%. У автора в статье довольно много таких хаков
Кроме очевидного сокращения инструкций и ветвлений в хотпасе, вы еще и работу кеша процессора улучшаете. Меньше инструкций, меньше мисов
23.07.2026
Похожее
05.09.2026
DDD во времена AI
Статья утверждает, что с ростом AI-кодинга идеи Domain-Driven Design становятся ...
03.09.2026
Конкурентный сервер на Go
Это восьмая часть серии о конкурентных сетевых серверах, в этот раз посвященная ...
03.09.2026
Горутины повсюду
Частенько мы пишем Go-сервисы, не задумываясь о том, кто и как запускает наши го...
02.09.2026
Интересные баги
Команда sigma star(хз кто это) нашла и исправила давнюю ошибку в рантайме Go, пр...