C++ Team Blog

The latest in C++, Visual Studio, VS Code, and vcpkg from the MSFT C++ team

MSVC ARM64 Optimizations in Visual Studio 2022 17.7

In Visual Studio 2022 version 17.6 we added a host of new ARM64 optimizations. In this 2nd edition of our blog, we will highlight some of the performance improvements to MSVC ARM64 compiler backend, we will discuss key optimizations in the Visual Studio 2022 version 17.7 for both scalar ISA and SIMD ISA (NEON). We started introducing these ...

MSVC Machine-Independent Optimizations in Visual Studio 2022 17.7

This blog post presents a selection of machine-independent optimizations that were added between Visual Studio versions 17.4 (released November 8, 2022) and 17.7 P3 (released July 11, 2023). Each optimization below shows assembly code for both X64 and ARM64 to show the machine-independent nature of the optimization. Optimizing Memory Across ...

Improving the State of Debug Performance in C++

In this blog we will explore one change the MSVC compiler has implemented in an effort to improve the codegen quality of applications in debug mode. We will highlight what the change does, and how it could be extended for the future. If debug performance is something you care about for your C++ projects, then Visual Studio 2022 version 17.5 is...

Visual Studio 2022 Performance: Faster C++ Source Code Indexing

Building on top of performance wins in Visual Studio 2022 version 17.3, we are excited to announce additional improvements in version 17.4. Whether you are a game developer, work with large codebases, or have solutions with many C++ projects, your development experience in Visual Studio 2022 17.4 will feel even faster. In 17.4 we ...

The /fp:contract flag and changes to FP modes in VS2022

The /fp:contract flag and changes to FP modes in VS2022 In this blog we will cover a new feature we have added to the MSVC version 17.0 compiler in VS2022 that impacts the generation of Floating-Point contractions such as Fused Multiply Add (FMA) instructions. We will cover how FMA contractions are supported in pre-VS2022 MSVC compiler ...

2x-3x Performance Improvements for Debug Builds

We have made substantial runtime performance improvements in the x86/x64 C++ compiler for Visual Studio's default debug configuration. For Visual Studio 2019 version 16.10 Preview 2, we measure 2x - 3x speedup for programs compiled in debug mode. These improvements come from reducing the overhead introduced by runtime checks (/...