Code Sample: Using Modern C++ Techniques to Enhance Multi-core Optimizations

File(s):Download
License:Intel Sample Source Code License Agreement
Optimized for... 
OS:Windows® 10
Hardware:N/A
Software:
(Programming Language, tool, IDE, Framework)
C++, C#, Microsoft Visual Studio*
Prerequisites:Familiarity with Microsoft Visual Studio, C++ and C#, multi-core software development


Introduction

This software example demonstrates how to use multi-core technologies to edit images. There are two parts to this project, a .NET Windows application front end written using C# and Windows Presentation Foundation (WPF) and a C++ DLL which is responsible for the actual manipulation of the image.

The image editing is done by applying filters to images, where each filter is a different function in the C++ DLL. The C# front end passes the image bitmap data to the C++ DLL, the DLL processes the image by applying a chosen filter, the DLL then passes back to C# GUI the newly created image. Further, this app allows the user to see the performance difference between running single-core vs. multi-core.


Get Started

Download the code from GitHub* and read the article Using Modern C++ Techniques to Enhance Multicore Optimizations for a better understanding of how to perform multicore development.


Updated Log

Created June/19/2018

For more complete information about compiler optimizations, see our Optimization Notice.