The Curious Engineer

All blogs / C++

Parallel Programming in Native Code

learn.microsoft.com/en-us/archive/blogs/nativeconcurrency

Parallel programming using C++ AMP, PPL and Agents libraries.

C++ConcurrencyGraphicsPerformance / optimizationMicrosoft blogsMSDN archive

’10’15’20’25
Posts
295 from 6 Jun 2008 to 24 Nov 2014
Posting
archived, read-only
Kind
project news
Feed
https://learn.microsoft.com/en-us/archive/blogs/nativeconcurrency/feed.xml

2014 3

  1. New Release of the AMP Algorithms Library
  2. Raking through the parallelism tool-shed: the curious case of matrix-matrix multiplication
  3. FaceMorphing Windows Store Application

2013 39

  1. Eigen Values
  2. C++ AMP Open Spec V1.2 Published
  3. Using C++ AMP to Perform Millions of Experiments in Hours Instead of Weeks
  4. C++ AMP Feature Matrix on Windows Platform
  5. AMD’s Bolt Library uses C++ AMP under the covers
  6. C++ AMP to target Khronos SPIR and HSAIL
  7. Using C++ AMP for modeling and risk analysis
  8. C++ AMP Algorithms library now supports Visual Studio 2013
  9. Latest Version of C++ AMP now available
  10. NVIDIA Tesla’s support for C++ AMP
  11. What features do you want in C++ AMP V3?
  12. Texture with Mipmaps
  13. Online training course for C++ AMP by LearnNowPlus
  14. Support of 3-Component Textures
  15. array_view without Data Source
  16. Texture Copy Improvements in C++ AMP with Visual Studio 2013
  17. Staging Texture in C++ AMP
  18. Overview of the texture view design in C++ AMP
  19. Texture Sampling in C++ AMP
  20. Introducing the Parallel Patterns Libraries (PPL) Power Pack
  21. Shared memory support in C++ AMP – a deeper dive
  22. Shared memory support in C++ AMP – array_view
  23. Shared memory support in C++ AMP – Introduction
  24. C++ AMP Highlighted in BUILD 2013 Keynote
  25. What’s new for C++ AMP in Visual Studio 2013
  26. Simultaneous CPU/GPU Debugging in Visual Studio 2013
  27. Using C++ AMP to Build the Aviary Photo Editor
  28. Scan algorithms in C++ AMP Algorithms Library
  29. Image Processing toolkit for .NET framework using C++ AMP
  30. Addendum to CMA’s Case Study
  31. C++ AMP used for GPU Benchmarking
  32. Verity Software’s integrating C++ AMP into their GEMStone software
  33. Aviary’s Photo Editor SDK for Windows 8 is using C++ AMP
  34. Kinect Fusion Runs on C++ AMP
  35. C++ AMP CPU fallback support now available on Windows 7
  36. Using C++ AMP in financial service industry – A Case Study
  37. Harmless DXGI warnings with C++ AMP
  38. Remote GPU Debugging on Nvidia Hardware
  39. C++ AMP GPU debugging now available on Windows 7

2012 154

  1. Introducing Shevlin Park–A Proof of Concept C++ AMP Implementation on OpenCL
  2. C++ AMP Training in Chicago Dec 11-14, 2012
  3. C++ AMP book now available
  4. Floating-point arithmetic intricacies in C++ AMP
  5. accelerator_view selection for C++ AMP parallel_for_each and copy operations
  6. String search sample with C++ AMP
  7. Read-only array_view/array in C++ AMP – Part 2 of 2
  8. Julia fractal using C++ AMP
  9. Read-only array_view/array in C++ AMP – Part 1 of 2
  10. Mutable lambdas considered harmful in C++ AMP
  11. What do you want in the next version of C++ AMP? – we are listening
  12. Cartoonizer sample in C++ AMP
  13. Antenna Radiation Simulation using C++ AMP
  14. Learn C++ AMP
  15. All about C++ AMP concurrency::array_view
  16. Present on C++ AMP
  17. concurrency::array_view – data source lifetime
  18. concurrency::array_view –array_views on staging arrays
  19. Fluid simulation C++ AMP sample
  20. Using CUDA Libraries from C++ AMP
  21. Avoid Bank Conflicts on tile_static Memory with C++ AMP
  22. concurrency::array_view - Caching and data coherence
  23. Memory Coalescing with C++ AMP
  24. Image morphing C++ AMP sample
  25. Detecting Race Hazards across tiles with the GPU debugger
  26. Debugging C++ AMP code in Visual Studio 2012
  27. concurrency::array_view – discard_data
  28. Random Traveler Sample in C++ AMP
  29. Detecting Write after Read Hazards with the GPU debugger
  30. concurrency::array_view - Implicit synchronization on destruction
  31. Performance Guidance for C++ AMP
  32. Detecting Read after Write Hazards with the GPU debugger
  33. Norms and unorms in C++ AMP textures
  34. concurrency::array_view - Introduction
  35. Simplifying Overlapped I/O With PPL
  36. C++ AMP Consulting
  37. Visual Studio Race Detection for C++ AMP
  38. Choosing between array and array_view in C++ AMP
  39. C++ AMP apps on Optimus notebooks
  40. Image Effects Sample in C++ AMP
  41. Auto-Vectorizer in Visual Studio 2012 – Cookbook
  42. Intro and MxM screencasts for C++ AMP
  43. Interop with Direct3D11 textures in C++ AMP
  44. In the NYC or SVC area in July? Register for C++ AMP training!
  45. Auto-Vectorizer in Visual Studio 2012 – How Much Faster?
  46. Server environments and C++ AMP
  47. Belgian event covering C++ AMP and VC++11
  48. Auto-Vectorizer in Visual Studio 2012 – Did It Work? – The Movie
  49. Win Prizes with Beyond3D's C++ AMP Coding Contest
  50. Meet C++ AMP engineers in Bellevue
  51. C++ AMP Conformance Test Suite
  52. Auto-Vectorizer in Visual Studio 2012 – Aliasing
  53. What is new in the Release Candidate for C++ AMP
  54. Screencast on tiling in C++ AMP
  55. Asynchronous Operations and Continuations in C++ AMP
  56. More external C++ AMP coverage
  57. Auto-Vectorizer in Visual Studio 2012 – Did It Work?
  58. Libraries for C++ AMP
  59. Meet C++ AMP engineers in San Jose
  60. reinterpret_as function in C++ AMP
  61. view_as function in C++ AMP
  62. Arrays are Row Major in C++ AMP
  63. How to put a PPLTasks continuation chain into a loop
  64. Auto-Vectorizer in Visual Studio 2012 – Rules for Loop Body
  65. Check out Hilo for Windows 8!
  66. int design choices in C++ AMP
  67. Auto-Vectorizer in Visual Studio 2012 – Rules for Loop Header
  68. “Hello world” using Textures in C++ AMP
  69. C++ AMP one page flyer with FAQ
  70. Writing to C++ AMP textures with specific bits_per_scalar_element
  71. Data warm up when measuring performance with C++ AMP
  72. Auto-Vectorizer in Visual Studio 2012 – How it Works
  73. Copying Textures in C++ AMP
  74. C++ AMP Training Course by Acceleware
  75. Aliased Invocation of parallel_for_each in C++ AMP
  76. Writing to Textures in C++ AMP
  77. Bits per scalar element in C++ AMP textures
  78. Data under the covers in C++ AMP
  79. Screencasts on C++ AMP
  80. C++ AMP book by Kate Gregory and Ade Miller
  81. Auto-Vectorizer in Visual Studio 2012 - Overview
  82. What is Vectorization?
  83. C++ AMP for the CUDA Programmer
  84. C++ AMP for the OpenCL Programmer
  85. C++ AMP for the DirectCompute Programmer
  86. C++ AMP Articles in MSDN Magazine April issue
  87. Getting Started with Textures in C++ AMP
  88. Short Vector Types in C++ AMP
  89. norm and unorm in C++ AMP
  90. Function overloading with restrict in C++ AMP
  91. PPL Asynchronous Sample Pack Updated
  92. warp or wavefront of GPU threads
  93. Remote GPU Debugging in Visual Studio 11
  94. Start GPU Debugging in Visual Studio 2012
  95. Black Scholes using C++ AMP
  96. Mandelbrot using C++ AMP
  97. Gaussian Blur using C++ AMP
  98. Slides for C++ AMP presentation
  99. Scan using C++ AMP
  100. Deploying apps built with C++ AMP
  101. direct3d_ref accelerator in C++ AMP
  102. cpu_accelerator in C++ AMP
  103. Analyzing C++ AMP Code with the Concurrency Visualizer
  104. PPL and JavaScript: Bing Maps Trip Optimizer for Windows 8 Now Available on MSDN Developer Samples!
  105. Parallel Reduction using C++ AMP
  106. Documentation updates for the PPL (Visual Studio 11 Beta) and Welcome Back to C++
  107. Using multiple accelerators from C++ AMP
  108. Handling TDRs in C++ AMP
  109. Disabling TDR on Windows 8 for your C++ AMP algorithms
  110. Chunking data across multiple C++ AMP kernels
  111. "Hello world" in C++ AMP
  112. Visual Studio 11 Beta – get it now
  113. Changes in VS 11 Beta for C++ AMP
  114. accelerator_view::create_marker in C++ AMP
  115. External C++ AMP coverage
  116. PPL and ConcRT: What’s new in Visual Studio 11 Beta
  117. tiled_extent::truncate in C++ AMP
  118. tiled_extent::pad in C++ AMP
  119. Divisibility Requirement of tiled_extent in C++ AMP
  120. Meet the C++ AMP team... through recorded video
  121. Matrix Transpose using C++ AMP
  122. direct3d namespace and HLSL intrinsics in C++ AMP
  123. accelerator_view_removed exception of C++ AMP
  124. x, y, z removed from C++ AMP
  125. out_of_memory exception of C++ AMP
  126. unsupported_feature exception of C++ AMP
  127. printf, errorf, abort in C++ AMP
  128. Capturing data in C++ AMP
  129. Synchronizing array_view in C++ AMP
  130. Projections in C++ AMP
  131. writeonly becomes discard_data for C++ AMP array_view
  132. section example in C++ AMP
  133. invalid_compute_domain exception of C++ AMP
  134. Handling subsections of data in C++ AMP
  135. runtime_exception of C++ AMP
  136. Math Library for C++ AMP
  137. Double precision support in C++ AMP
  138. C++ AMP open spec published
  139. Default accelerator in C++ AMP
  140. C++ AMP Runtime Exceptions
  141. C++ AMP sample projects for download
  142. Perils Of Lambda Capture
  143. concurrency::graphics in C++ AMP
  144. Simplifying single-dimensional C++ AMP Code
  145. grid class replacement
  146. Histogram using C++ AMP
  147. C++ AMP: It's got character, but no char!
  148. Using Constant Memory in C++ AMP
  149. restrict(amp) restrictions part 10 of N – tile_static
  150. restrict(amp) restrictions part 9 of N – lambda expressions capture rules
  151. restrict(amp) restrictions part 8 of N – restricted lambda expressions
  152. Using C++ AMP code in a C++ CLR project
  153. Atomic Operations in C++ AMP
  154. restrict(amp) restrictions part 7 of N – volatile and miscellaneous forbidden operators and statements

2011 56

  1. restrict(amp) restrictions part 6 of N – pointer operations and casting
  2. Sample of 2D Triangle Rotation in C++ AMP
  3. Interoperability between Direct 3D and C++ AMP
  4. restrict(amp) restrictions part 5 of N – identifier expressions
  5. How to measure the performance of C++ AMP algorithms?
  6. High-resolution timer for C++
  7. Using function objects instead of lambdas with C++ AMP
  8. tile_barrier in C++ AMP
  9. restrict(amp) restrictions part 4 of N – literals
  10. restrict(amp) restrictions part 3 of N – function declarators and calls
  11. C++ AMP: Full Inlining Requirement
  12. How to use C++ AMP from C++ CLR app
  13. restrict(amp) restrictions part 2 of N – compound types
  14. Random Number Generator Sample for C++ AMP
  15. restrict(amp) restrictions part 1 of N – fundamental types
  16. restrict(amp) restrictions part 0 of N – introduction
  17. Passing pointers through C++ AMP
  18. Introductory articles for C++ AMP
  19. Understanding accelerator_view queuing_mode in C++ AMP
  20. C++ AMP FFT Test Application
  21. Initializing C++ AMP arrays to the same value
  22. Live from Super Computing 2011: Live C++ AMP Debugging on nVidia's GPUs!
  23. The C++ AMP FFT Library
  24. Fast Fourier Transforms (FFT) on the GPU
  25. Bitonic Sort Sample using C++ AMP
  26. Ocean simulation sample in C++ AMP
  27. Staging Arrays in C++ AMP
  28. Transitive Closure Sample in C++ AMP
  29. Matrix Multiplication Sample
  30. Convolution Sample
  31. Try It Now: Use PPL to Produce Windows 8 Asynchronous Operations
  32. Binomial Option using C++ AMP
  33. Case Study: Massachusetts General Hospital uses PPL for 3-d image-processing
  34. Windows 8 Asynchrony with PPL
  35. Can I Run C++ AMP on My Device?
  36. C++ AMP: N-Body Simulation Sample
  37. VS 11 Developer Preview gotchas with C++ AMP
  38. Get it now - Visual Studio 11 Developer Preview
  39. C++ AMP in a nutshell
  40. Summary of new PPL features
  41. Dr. Dobbs Article on C++ AMP Now Available
  42. Introduction
  43. Performance Enhancements to Parallel Patterns Library (PPL) and Concurrency Runtime
  44. restrict – a key new language feature introduced with C++ AMP
  45. Announcing the PPL, Agents and ConcRT efforts for V.next
  46. Bing Maps Trip Optimizer Now Available on MSDN Developer Samples!
  47. Invitation to meet with the concurrency runtime team
  48. The Concurrency Runtime and Visual C++ 2010: Transporting Exceptions between Threads
  49. Building Responsive GUI Applications with PPL Tasks
  50. The Concurrency Runtime and Visual C++ 2010: Rvalue References
  51. Tasks and Continuations: Available for Download Today!
  52. The Concurrency Runtime and Visual C++ 2010: The decltype Type Specifier
  53. The Concurrency Runtime and Visual C++ 2010: Automatic Type Deduction
  54. The Concurrency Runtime and Visual C++ 2010: Lambda Expressions
  55. How to pick your parallel sort?
  56. Sorting in PPL

2010 13

  1. New Sample Pack Update!
  2. The Promise of UMS
  3. Sample Pack Updated
  4. An approach to breaking loop carried dependencies - Parallel Wavefront
  5. Sequence Alignment using Concurrency Runtime
  6. Cross Process Resource Management - do we need it now?
  7. Walkthrough: Cartoon Effect filter using data-flow network
  8. Samples updated for ConcRT, PPL and Agents
  9. Parallel Computing Platform Developer Lab
  10. Are you using ConcRT, PPL, or the Agents Library? We'd love to know.
  11. Writing a Custom Message Block – Part 2: Reserving and Consuming
  12. concurrent_vector and concurrent_queue explained
  13. Using Concurrency runtime, and Visual Studio to build a financial application

2009 24

  1. Writing a Custom Message Block – Part 1: Introduction
  2. The concurrent_queue Container in VS2010
  3. Debugging PPL in Visual Studio 2010
  4. Concurency::parallel_for and Concurrency::parallel_for_each
  5. Sample Message Blocks priority_buffer, bounded_buffer, and alternator
  6. Resource Management in Concurrency Runtime – Part 3
  7. Code Samples for the Concurrency Runtime, Agents Library and Parallel Pattern Library updated for Beta2
  8. What’s new in Beta 2 for the Concurrency Runtime, Parallel Pattern Library and Asynchronous Agents Library
  9. Resource Management in Concurrency Runtime – Part 2
  10. Asynchronous Agents Library - Intro to Message Blocks
  11. Synchronization with the Concurrency Runtime - Part 3
  12. Introduction to Asynchronous Agents Library
  13. Samples posted for the Parallel Pattern Library and Concurrency Runtime
  14. Auction Simulation written in the Asynchronous Agents Library
  15. Implementing Dining Philosophers with the Agents Library
  16. What's new in the Concurrency Runtime and the Parallel Patterns and Asynchronous Agents Libraries
  17. Debugging PPL Tasks
  18. Synchronization with the Concurrency Runtime - Part 2
  19. Synchronization with the Concurrency Runtime - Part 1
  20. Resource Management in the Concurrency Runtime – Part 1
  21. Concurrency Runtime and Windows 7
  22. Dave Probert ‘goes deep’ on Win7 User Mode Scheduled Threads
  23. On Channel9: a chat with members from the Visual C++ and Concurrency Runtime teams
  24. An Introduction to Native Concurrency in Visual Studio 2010

2008 6

  1. Getting the Visual Studio 2010 CTP to use more than one hardware thread: using Hyper-V and other options
  2. Visual Studio 2010 CTP available: Including the Concurrency Runtime, Parallel Pattern Library and Asynchronous Agents Library!
  3. Concurrency Runtime on Channel 9
  4. Avoiding Contention using Combinable Objects
  5. Guided Tour of the Concurrency Runtime and Parallel Libraries Part 1: supporting fine-grained tasks
  6. Welcome to the Native Concurrency blog!