Telegram Group & Telegram Channel
1. https://www.intel.com/content/www/us/en/developer/articles/technical/advanced-performance-extensions-apx.html

Тут Intel выложили статью о том как они будут менять архитектуру ассемблера. Мне честно очень понравилось, будет выглядеть более похоже на Arm:
* Теперь будет 32 логических регистра. Тут уменьшатся в разы инструкции перекладываний со стека и на стек. Тем не менее, результаты могут быть не такими воодушевляюшими, так как современные процессоры имеют по 200-350 физических регистров (без учёта SIMD регистров) и алгоритмы переименования давным давно хорошо справляются со сложными задачами. Тем не менее, можно будет не использовать такие сложные алгоритмы
* push2, pop2: быстрее будем класть и брать со стека. Тут можно посмотреть на LDP/STP инструкции из Arm о которых я писал.
* 3 argument instructions. Инструкции будут иметь 3 аргумента, теперь на надо будет складывать память с регистром и мувать в другой регистр, можно сразу класть в другой. Тоже Arm так делает давным давно. Тут скорее всего лучше будет компиляторам такие инструкции производить.
* Conditional stores/loads -- это интересно, на Arm такого нет, я думаю хорошо взлетит во всяких compression/sorting
* Унификация SIMD. Intel тоже хочет быть похожим на SVE в Армах с непостоянной максимальной шириной максимального регистра. Поэтому вы можете спросить какая версия SIMD доступна и кодировать инструкции с помощью EVEX префикса. И даже не придётся компилировать 2 копии.

2. Тут нашли удивительную уязвимость с помощью фаззинга AMD процессоров https://lock.cmpxchg8b.com/zenbleed.html: более менее мои Ctrl+C Ctrl+V оно нашло за несколько секунд эксплуатации. Идея: давайте на разных процессорах запустим случайно сгенерированные программы, а также программы, где между инструкциями стоят lfence/mfence инструкции. Последние убивают instruction level parallelism, а значит и много оптимизаций вроде переименования регистров, speculative execution. После этого можно сверить все результаты. Если убрать все инструкции результат которых не определён, скажем, bsf (Bit Scan Forward при нуле не определён), то можно честно сравнивать выходы. Так и нашли этот баг. Удивительно крутая история.

3. Переписал Iguana Compression c Go на C++ (выложим код скорее всего). Получилось попробовать в более боевых условиях. Результаты хорошие, но не 2-3x заявленных в бенчмарках. По уровню сжатия версия без энтропийного кодирования чуть получше стандартного LZ4, а энтропийное где-то между ZSTD:2-3. В целом ничего не мешает увеличивать сжатие, так как алгоритм из LZ семейства и все алгоритмы сжатия из ZSTD можно перенести в Iguana. На Icelake писали, что где-то прибавка в 20-30%, а от себя скажу, что на Zen4 примерно всё ровно с ZSTD. AVX вещи у AMD всегда отстают на где-то 1 поколение от Intel. Догонят :)



group-telegram.com/experimentalchill/250
Create:
Last Update:

1. https://www.intel.com/content/www/us/en/developer/articles/technical/advanced-performance-extensions-apx.html

Тут Intel выложили статью о том как они будут менять архитектуру ассемблера. Мне честно очень понравилось, будет выглядеть более похоже на Arm:
* Теперь будет 32 логических регистра. Тут уменьшатся в разы инструкции перекладываний со стека и на стек. Тем не менее, результаты могут быть не такими воодушевляюшими, так как современные процессоры имеют по 200-350 физических регистров (без учёта SIMD регистров) и алгоритмы переименования давным давно хорошо справляются со сложными задачами. Тем не менее, можно будет не использовать такие сложные алгоритмы
* push2, pop2: быстрее будем класть и брать со стека. Тут можно посмотреть на LDP/STP инструкции из Arm о которых я писал.
* 3 argument instructions. Инструкции будут иметь 3 аргумента, теперь на надо будет складывать память с регистром и мувать в другой регистр, можно сразу класть в другой. Тоже Arm так делает давным давно. Тут скорее всего лучше будет компиляторам такие инструкции производить.
* Conditional stores/loads -- это интересно, на Arm такого нет, я думаю хорошо взлетит во всяких compression/sorting
* Унификация SIMD. Intel тоже хочет быть похожим на SVE в Армах с непостоянной максимальной шириной максимального регистра. Поэтому вы можете спросить какая версия SIMD доступна и кодировать инструкции с помощью EVEX префикса. И даже не придётся компилировать 2 копии.

2. Тут нашли удивительную уязвимость с помощью фаззинга AMD процессоров https://lock.cmpxchg8b.com/zenbleed.html: более менее мои Ctrl+C Ctrl+V оно нашло за несколько секунд эксплуатации. Идея: давайте на разных процессорах запустим случайно сгенерированные программы, а также программы, где между инструкциями стоят lfence/mfence инструкции. Последние убивают instruction level parallelism, а значит и много оптимизаций вроде переименования регистров, speculative execution. После этого можно сверить все результаты. Если убрать все инструкции результат которых не определён, скажем, bsf (Bit Scan Forward при нуле не определён), то можно честно сравнивать выходы. Так и нашли этот баг. Удивительно крутая история.

3. Переписал Iguana Compression c Go на C++ (выложим код скорее всего). Получилось попробовать в более боевых условиях. Результаты хорошие, но не 2-3x заявленных в бенчмарках. По уровню сжатия версия без энтропийного кодирования чуть получше стандартного LZ4, а энтропийное где-то между ZSTD:2-3. В целом ничего не мешает увеличивать сжатие, так как алгоритм из LZ семейства и все алгоритмы сжатия из ZSTD можно перенести в Iguana. На Icelake писали, что где-то прибавка в 20-30%, а от себя скажу, что на Zen4 примерно всё ровно с ZSTD. AVX вещи у AMD всегда отстают на где-то 1 поколение от Intel. Догонят :)

BY Experimental chill




Share with your friend now:
group-telegram.com/experimentalchill/250

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

After fleeing Russia, the brothers founded Telegram as a way to communicate outside the Kremlin's orbit. They now run it from Dubai, and Pavel Durov says it has more than 500 million monthly active users. To that end, when files are actively downloading, a new icon now appears in the Search bar that users can tap to view and manage downloads, pause and resume all downloads or just individual items, and select one to increase its priority or view it in a chat. Emerson Brooking, a disinformation expert at the Atlantic Council's Digital Forensic Research Lab, said: "Back in the Wild West period of content moderation, like 2014 or 2015, maybe they could have gotten away with it, but it stands in marked contrast with how other companies run themselves today." "We're seeing really dramatic moves, and it's all really tied to Ukraine right now, and in a secondary way, in terms of interest rates," Octavio Marenzi, CEO of Opimas, told Yahoo Finance Live on Thursday. "This war in Ukraine is going to give the Fed the ammunition, the cover that it needs, to not raise interest rates too quickly. And I think Jay Powell is a very tepid sort of inflation fighter and he's not going to do as much as he needs to do to get that under control. And this seems like an excuse to kick the can further down the road still and not do too much too soon." Asked about its stance on disinformation, Telegram spokesperson Remi Vaughn told AFP: "As noted by our CEO, the sheer volume of information being shared on channels makes it extremely difficult to verify, so it's important that users double-check what they read."
from es


Telegram Experimental chill
FROM American