C++ Team Blog

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

Latest posts

Image Processing with C++ AMP and the .NET Framework
May 21, 2013
Post comments count 0
Post likes count 0

Image Processing with C++ AMP and the .NET Framework

Eric Battalio
Eric Battalio

Image processing is a computational task that lends itself very well to GPU compute scenarios. In many cases the most commonly used algorithms are inherently massively parallel, with each pixel in the image being processed independently from the others. As a result, image processing toolkits have been early adopters of the new GPGPU programming model. Many of these mass-market toolkits, however, can be more accurately described as image manipulation packages that offer "image-in, image-out" capabilities; in other words, for each operation there is an input image and a resulting output (manipulated) image. In cont...

Speed up Windows PHP Performance using Profile Guided Optimization (PGO)
May 8, 2013
Post comments count 0
Post likes count 0

Speed up Windows PHP Performance using Profile Guided Optimization (PGO)

Ankit Asthana
Ankit Asthana

To introduce myself I am Ankit Asthana and I am the program manager for the backend C++ compiler. In my last two blogs I provided an introduction to what Profile Guided Optimization (PGO) is all about and a case study which illustrates how PGO is used to make SAP NetWeaver faster.  In this blog I would like to present the story about how PGO is used make official Windows PHP binaries faster. Stephen Zarkos (Program Manager for Windows PHP) has been kind enough for providing the content for this blog.  After reading this blog you folks should be able to further understand and use this case study to intr...

NuGet for C++ and the Northwest Hackathon
May 8, 2013
Post comments count 0
Post likes count 0

NuGet for C++ and the Northwest Hackathon

Garrett Serack, MSFT
Garrett Serack, MSFT

Howdy!My name is Garrett Serack, I'm not actually part of the Visual C++ team--I actually work as a Senior Software Development Engineer in Microsoft's Open Source Technology Center, which is part of Windows Server. I have a distinctly different job than most here at Microsoft-I work to get Open Source software running better on Windows and Azure.A little over a week ago, I released the beta version of the CoApp PowerShell tools that let us generate NuGet packages for C and C++ libraries.Over the next few weeks, I'll try to explain what the heck goes on under the covers when creating packages ...

Fix: Visual Studio 2012 Update 2 breaks Windows XP targeting with ATL and/or statically linking MFC
May 7, 2013
Post comments count 0
Post likes count 0

Fix: Visual Studio 2012 Update 2 breaks Windows XP targeting with ATL and/or statically linking MFC

Eric Battalio
Eric Battalio

Recently, some of our customers reported a bug in Visual Studio 2012 Update 2 that breaks Windows XP targeting with C++ in some scenarios. Specifically, applications using ATL and/or statically linking with MFC will get the following error when run on Windows XP:"The procedure entry point InitializeCriticalSectionEx could not be located in the dynamic link library kernel32.dll."This issue has been fixed in Visual Studio 2012 Update 3 RC1. If you encounter this issue, please download and install this update.

NuGet for C++
Apr 26, 2013
Post comments count 0
Post likes count 0

NuGet for C++

Jennifer Leaf [MSFT]
Jennifer Leaf [MSFT]

The wait is over.  NuGet support for C++ projects is here.Quick Links• NuGet 2.5 Download page: https://nuget.codeplex.com/releases/view/96733• CoApp’s Powershell Tools Installer to create C++ NuGet packages: http://coapp.org/releases• Some C++ NuGet packages to try out:  http://nuget.org/profiles/coapp/Start downloading, then head on back here to learn more about NuGet and how to create and use packages for C++ libraries.What is NuGet?From the NuGet website: NuGet is a Visual Studio extension that makes it easy to add, remove, and update libraries and tools...

Profile Guided Optimization (PGO) drives next generation SAP NetWeaver Performance
Apr 21, 2013
Post comments count 0
Post likes count 0

Profile Guided Optimization (PGO) drives next generation SAP NetWeaver Performance

Ankit Asthana
Ankit Asthana

To introduce myself I am Ankit Asthana and I am the program manager for the backend C++ compiler. In my last blog I provided an introduction to what Profile Guided Optimization (PGO) is all about with an exercise which involved PGO’izing the NBody sample application.  In this blog I would like to talk about how PGO is used within SAP to power and deliver next generation performance for SAP NetWeaver.   Starting with a little bit of history, the effort to PGO’ize SAP NetWeaver was undertaken and completed by SAPs Microsoft Platforms Group. The SAP Microsoft Platforms Group is responsible...

Finding the Visual Studio Command Prompts in Visual Studio 2012
Apr 19, 2013
Post comments count 0
Post likes count 0

Finding the Visual Studio Command Prompts in Visual Studio 2012

Jennifer Leaf [MSFT]
Jennifer Leaf [MSFT]

If you’re using Visual Studio 2012 on Windows 8, you may be looking for the Visual Studio Command Prompt shortcuts.  These shortcuts are installed by Visual Studio to run scripts that configure the command line environment to use particular sets of Visual Studio tools, or to use specific versions of the Visual C++ compiler from the command line. These shortcuts are installed with Visual Studio 2012, but only the “Developer Command Prompt for VS2012” (which is equivalent to the shortcut for the x86 native tools) is pinned to the Start screen by default.  The command prompts for the x64...

Developing an app with the Visual Studio 3D Starter Kit, part 3 of 3
Apr 11, 2013
Post comments count 0
Post likes count 0

Developing an app with the Visual Studio 3D Starter Kit, part 3 of 3

Roberto Sonnino - MSFT
Roberto Sonnino - MSFT

Welcome back to our third and final post on using the Visual Studio 3D Starter Kit! If you read our previous posts in this series (here and here), you’ve got an app that has an animated die, and you’re ready to make the last few changes to get this app to run on Windows RT devices and Windows Phone 8.  If you haven’t read the previous posts, you may want to go through these posts and create an app – we’ll be here once you’re ready. If you're more of a visual learner, you might prefer following Part 1 and 2 in our new Channel 9 video! In less than 30 minutes you'll g...

Profile Guided Optimization (PGO)
Apr 8, 2013
Post comments count 0
Post likes count 0

Profile Guided Optimization (PGO)

Ankit Asthana
Ankit Asthana

PGO is a runtime compiler optimization which leverages profile data collected from running important and performance centric user scenarios to build an optimized version of the application. PGO optimizations have some significant advantage over traditional static optimizations as they are based upon how the application is likely to perform in a production environment which allow the optimizer to optimize for speed for hotter code paths (common user scenarios) and optimize for size for colder code paths (not so common user scenarios) resulting in generating faster and smaller code for the application attributing t...