Skip to content
Stefano Tommesani

  • Home
  • Programming
    • SIMD on x64/x86
    • Multi-thread
    • C# and .NET
    • Testing
  • Software
  • Video
  • Marketing
  • About me
  • Home
  • Programming
    • SIMD on x64/x86
    • Multi-thread
    • C# and .NET
    • Testing
  • Software
  • Video
  • Marketing
  • About me
  • SIMD on x64/x86

    Intel AVX-512 instruction set: 512-bit SIMD, masks, and high-throughput vector computing

    June 24, 2022

    Intel AVX-512 enhances SIMD capabilities by extending AVX2's 256-bit model to 512-bit registers, introducing dedicated mask registers for conditional operations, and offering more vector registers. It's particularly beneficial for scientific computing, AI, and cryptography. However, its availability is limited compared to AVX2, and performance may vary by processor.

    Continue Reading
  • C# and .NET - OOD / OOP - Programming

    PriorityQueue in .NET 6: a practical guide

    December 25, 2021

    .NET 6 added a long-missing collection to the base class library: PriorityQueue<TElement, TPriority>. A priority queue is useful when you do not want to process items in the order they were inserted, but in the order of their priority. Typical examples include job scheduling, pathfinding, graph algorithms, simulations, message processing,…

    Continue Reading
  • C# and .NET - OOD / OOP - Programming

    Custom comparer of a SortedSet in C#

    December 25, 2021

    SortedSet in .NET manages ordered, unique elements using a custom comparer that defines both sorting order and element uniqueness. A common pitfall occurs when two different instances with the same value are treated as duplicates. To avoid this, a tie-breaker is needed, ensuring both order and distinctness among elements.

    Continue Reading
  • YiImport1
    Video

    Easily upload videos of security cameras to YouTube

    April 5, 2021

    Home security cameras have become increasingly popular in recent years, with many homeowners opting to install cameras to keep their homes and families safe. One of the benefits of these cameras is that they can capture footage of potential intruders or other suspicious activity around the home. In this blog…

    Continue Reading
  • SIMD on x64/x86

    Intel AVX2 instruction set: 256-bit SIMD for integers, gathers, and modern data processing

    June 24, 2020

    Intel AVX2 is one of the most important SIMD extensions in the x86 instruction set. While the original AVX instruction set introduced 256-bit YMM registers and wider floating-point vector operations, AVX2 extended that model to integer SIMD and made 256-bit vector programming much more broadly useful. AVX2 arrived with Intel’s…

    Continue Reading
  • SIMD on x64/x86

    Intel AVX instruction set: 256-bit SIMD for floating-point performance

    June 24, 2020

    Intel AVX, short for Advanced Vector Extensions, marked one of the most important transitions in the history of x86 SIMD programming. It extended the 128-bit SSE model to 256-bit vector registers, introduced a cleaner instruction encoding, and made SIMD code easier for compilers and developers to optimize. AVX was first…

    Continue Reading
  • SIMD on x64/x86

    SSE4.2: the SIMD extension focused on strings, CRC, and 64-bit comparisons

    June 24, 2020

    SSE4.2 is the second part of Intel’s SSE4 family. Compared with SSE4.1, it is much smaller and more specialized. SSE4.1 added a broad set of practical SIMD improvements: blends, dot products, rounding, integer min/max operations, widening conversions, insertion and extraction, and several multimedia helpers. SSE4.2 did not continue in that…

    Continue Reading
  • SIMD on x64/x86

    SSE4.1: the SIMD extension that made 128-bit code more practical

    June 24, 2020

    SSE4.1 is one of the most useful refinement steps in the SSE family. It did not introduce wider vectors, new XMM registers, or the newer AVX encoding model. Instead, it filled many gaps that made SSE2, SSE3, and SSSE3 code awkward. Where SSE3 mostly improved floating-point horizontal operations, and SSSE3…

    Continue Reading
  • SIMD on x64/x86

    SSSE3: the SIMD extension that made integer shuffling and packed arithmetic much better

    June 24, 2020

    SSSE3 is one of the most useful but most poorly named SIMD extensions in the x86 family. The name stands for Supplemental Streaming SIMD Extensions 3, and the extra “S” is important. SSSE3 is not the same thing as SSE3. It is a later extension, with a very different focus.…

    Continue Reading
  • SIMD on x64/x86

    SSE3: the small SIMD extension that made horizontal operations easier

    June 24, 2020

    SSE3 is one of the easiest SIMD instruction sets to misunderstand. Compared with MMX, SSE, and SSE2, it did not introduce a new vector register file, it did not widen vectors beyond 128 bits, and it did not radically change the programming model. Instead, SSE3 added a small set of…

    Continue Reading
 Older Posts
Newer Posts 

Recent Posts

  • AltaLux 2.0: a new multiscale engine and a simpler way to enhance images
  • Terminal thinking
  • The evolution of entropy coding: from Huffman coding to ANS
  • Day-by-day: forecasting project completion through work flow simulation
  • Skills, or do we have the right developers?

Downloads

Icon
AltaLux 1.9.1 (x64) plugin for IrfanView
192.98 KB 1 file(s)
Icon
AltaLux 1.9.1 (x86) plugin for IrfanView
158.34 KB 1 file(s)
Icon
AltaLux 2.0.2 (x64) plugin for IrfanView
219.23 KB 1 file(s)

Vintage CPUs of the day

  • AMD Athlon 64 X2 4200+ AMD Athlon 64 X2 4200+
  • AMD Duron 800 MHz AMD Duron 800 MHz
  • Intel Pentium 150 Intel Pentium 150
  • AMD Athlon XP 1700+ AMD Athlon XP 1700+

Categories

  • Audio
  • C# and .NET
  • GPGPU
  • Marketing
  • Multi-thread
  • OOD / OOP
  • Programming
  • SIMD on x64/x86
  • Software
  • Testing
  • Uncategorized
  • Various
  • Video
  • Web
  • Web
© 2026 Stefano Tommesani. All rights reserved.
Graceful Theme by Optima Themes