🌗 使用 AVX-512 進行 Zigzag 解碼
➤ 透過 AVX-512 遮罩技術提升解碼效能的實作分析
https://zeux.io/2026/06/17/zigzag-decoding-avx512/
本文由 meshoptimizer 的開發者撰寫,深入探討瞭如何利用 AVX-512 指令集優化 Zigzag 解碼演算法。Zigzag 編碼常被用於處理小數值的整數編碼,透過將符號位元移至最低位,能有效地將數值範圍壓縮。作者首先展示了標準的無分支(Branchless)解碼邏輯,隨後透過 AVX-512 強大的遮罩(Masking)功能,成功將指令數從四條精簡至三條,大幅提升了處理效率。
+ 這篇關於 AVX-512 的細節分析非常精彩!雖然只是簡化了一條指令,但在處理海量頂點數據的場景下,這種累積效能是非常可觀的。
+ 之前一直習慣用無分支邏輯處理 Zigzag,沒想到透過 AVX-512 的 `vptestmd` 指令結合遮罩 XOR 操作,能寫出如此簡潔的 SIMD 實作。
#程式設計 #效能優化 #SIMD #AVX-512
Zigzag decoding with AVX-512

I’ve been working on speeding up AVX-512 vertex decoding in meshoptimizer recently; in the process I stumbled upon two optimizations that I did not end up using but I thought they might be fun to write about! The optimizations that actually made it in require some higher level background / explanations that will have to wait until another day :)

Terrible moment to learn that #Bonfire, the up-and-coming #ActivityPub implementation, apparently has a hard dependency on #AVX instructions that my home server's chipset physically lacks. I'd have to spend upwards of $400 just to replace my server in order to test it, sigh... @Bonfire
Terrible moment to learn that #Bonfire, the up-and-coming #ActivityPub implementation, apparently has a hard dependency on #AVX instructions that my home server's chipset physically lacks. I'd have to spend upwards of $400 just to replace my server in order to test it, sigh... @Bonfire

Ускорение вычислений в алгоритме DRS-виртуализации через векторизацию

Переписать решение с Python на Go и получить ускорение в 35 раз — звучит приятно. Но можно ведь пойти дальше, вспомнить о возможностях современных процессоров и увеличить отрыв Go до 200 раз! Статья написана по мотивам доклада для

https://habr.com/ru/companies/oleg-bunin/articles/980710/

#avx #avx2 #avx512 #бэкенд #разработка #go #golang #phyton #ускорение #ускорение_кода

Ускорение вычислений в алгоритме DRS-виртуализации через векторизацию

Переписать решение с Python на Go и получить ускорение в 35 раз — звучит приятно. Но можно ведь пойти дальше, вспомнить о возможностях современных процессоров и увеличить отрыв Go до 200 раз! Привет,...

Хабр

SIMD – neboli Single Instruction, Multiple Data – znamená, že procesor může jednou instrukcí zpracovat více datových prvků najednou. Typicky to znamená, že místo sčítání dvou čísel přičtete dvě sady čísel paralelně. To může přinést výrazné zrychlení například při zpracování obrazu, audia nebo numerických výpočtů.

Pokud již SIMD znáte, tato tabulka je vše, co budete potřebovat. A pokud s SIMD teprve začínáte, tabulku pochopíte do konce tohoto článku

https://zdrojak.cz/clanky/stav-simd-v-rustu-v-roce-2025/

"Lincoln AI Computing Survey (LAICS) and Trends"

This paper is an update of the survey of AI accelerators and processors from past seven years, which is called the Lincoln AI Computing Survey -- LAICS (pronounced "lace").

https://arxiv.org/abs/2510.20931

#research #AI #ML #computerChips
#hardware #electronics #GPU #TPU
#FPGA #ASIC #AVX

#NPU って何に使えるんだ、 #AVX みたいなダークシリコンの穴埋めなんじゃないのか、と思っております
🌘 超越 memcpy:優化大型資料傳輸效能
➤ 剖析與實踐:如何利用現代 CPU 指令集大幅提升記憶體複製速度
https://squadrick.dev/journal/going-faster-than-memcpy
作者在分析程式效能瓶頸時,發現大型二進位訊息的處理時間主要花費在記憶體複製操作上。為瞭解決這個問題,他深入探究了 glibc 中 `memcpy` 的實現,特別是 `__memmove_avx_unaligned_erms` 函式,並逐步分析其底層 AVX 指令集、向量化處理、非時序傳輸(non-temporal moves)以及預取(prefetching)等技術。接著,他嘗試了多種優化方法,包括基於 ERMS 的 `rep movsb`、對齊的 AVX 向量複製、使用非時序傳輸的 AVX 向量複製,以及結合預取的 AVX 向量複製,並透過實驗驗證了不同方法的效能差異,最終展示瞭如何透過這些技術顯著提升記憶體複製的效率。
+ 這篇文章對 memcpy 的底層實現解析得非常透徹,尤其是 AVX 和預取的
#效能優化 #記憶體複製 #AVX #Assembly
Going faster than memcpy

While profiling Shadesmar a couple of weeks ago, I noticed that for large binary unserialized messages (>512kB) most of the execution time is spent doing copying the message (using memcpy) between process memory to shared memory and back.

Squadrick

SIMD на x86 — чудовище Франкенштейна?

Общее количество всех команд во всех этих расширениях — 1342 инструкции ! От комментариев воздержусь, оставлю эту привилегию читателю )) При этом SIMD на RiscV очень хвалят, как очень продуманный, минималистичный, при этом мощный и выразительный: https://www.youtube.com/watch?v=lwIBp6cc-HY

https://habr.com/ru/articles/913586/

#simd #x86 #mmx #avx #avx2

Масштабируемая векторизация в RISCV, Константин Владимиров

YouTube
Sometimes I wish the c++ compilers were clearer about what they do, because when I mix SIMD with expression templates and it gets as optimized as the best for loop I could write, it doesn't feel like I'm doing code anymore, but dark magic #cpp #SIMD #avx #vectorization #gcc #clang