TGViewer
C++ Academy C++ Academy @cpluspluc · 15.5K subscribers
Post #1570 1.18K
✔️ В C/C++ есть любопытный трюк с AVX-512: `_mm512_maskz_loadu_epi8`.

Инструкция может выборочно загрузить до 64 байт по маске. Каждый бит маски отвечает за один байт:

- 1 - байт загружается
- 0 - вместо него ставится ноль

Самое интересное начинается, когда маска полностью нулевая:


#include <x86intrin.h>

void f(const char *p) {
_mm512_maskz_loadu_epi8(0, p);
}


При нулевой маске память фактически не читается, а результатом становится 512-битный вектор из нулей.

То есть значение p в таком случае не влияет на результат, а компилятор при оптимизации вообще может удалить весь вызов.

Хороший пример того, насколько необычно работают masked-load инструкции в AVX-512.
  • ❤ 8
  • 👍 2
  • 🥰 1
More from @cpluspluc
  1. Sep 28, 2026C23 сделал enum в C заметно удобнее для низкоуровневого кода. Раньше базовый тип перечисле…
  2. Sep 26, 2026Minimum-Cost Maximum-Flow всего в ~110 строках C++ Хороший компактный пример одного из сам…
  3. Sep 25, 2026🐧 Linux Cheat Sheet - шпаргалка по командам Linux Самая удобная шпаргалка по Linux и Bash…
  4. Sep 24, 2026photo post
  5. Sep 24, 2026`🤖 В SourceCraft появилась команда цифровых разработчиков Агентам можно назначать задачи…
  6. Sep 23, 2026😂 Собеседование на C++ прошло успешно HR: у вас есть опыт с C++? Я: конечно, отлично знаю…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →