White Papers

Finding a Path Through the Woods: Choosing a Parallelization Technique

June 01, 2018 | BY: Tammy Carter

Download PDF

It’s Monday morning and you’ve just been awarded a challenging, new assignment; porting 40 year old legacy code from an obsolete processor that you have never heard of. Fortunately, the code is in C. Unfortunately, the last person that knew anything about it is retired and is fishing off the coast of some tropical island...

parallelization-techniques

Figure 1: Parallel Programming Options

Most of the legacy code that needs porting to newer systems is serial code; meaning that the code runs on a single processor with only one instruction executing at a time. Modern OpenVPX boards incorporate powerful, multi-core processors such as the Intel Xeon-D. The inefficiency of running serial code on these high performance processors increases the number of boards required in your system; negatively impacting your SWaP-C.

GPGPUs are also becoming more common in OpenVPX systems due to their massively parallel architecture consisting of thousands of cores designed to process multiple tasks simultaneously. To modernize your serial code for parallel execution, you must first identify the individual sections that can be executed concurrently, and then optimize those sections for simultaneous execution on different cores and/or processors. Parallel programs must also employ some type of control mechanism for coordination, synchronization, and data re-alignment. To aid in parallelization, numerous open standard tools are available in the form of language extensions, compiler extensions and libraries.

So, which method or path is right for you? This white paper explores the options. Download the 'Finding a Path Through the Woods: Choosing a Parallelization Technique' white paper to learn more about:

  • Pthreads
  • C++/Boost Threads
  • Open Multi-Processing (OpenMP)
  • Open Accelerators (OpenACC)
  • Thread Building Blocks (TBB)
  • Message Passage Interface (MPI))

Author’s Biography

Tammy Carter

Senior Product Manager – GPGPUs & Software

Tammy Carter is the Senior Product Manager for GPGPUs and software products, featuring OpenHPEC, for Curtiss-Wright Defense Solutions. In addition to a M.S. in Computer Science, she has over 20 years of experience in designing, developing and integrating real-time embedded systems in the Defense, Communications and Medical arenas.

Share This Article

  • Share on Linkedin
  • Share on Twitter
  • Share on Facebook
  • Share on Google+
Connect With Curtiss-Wright Connect With Curtiss-Wright Connect With Curtiss-Wright
Sales

CONTACT SALES

Contact our sales team today to learn more about our products and services.

YOUR LOCATION

PRODUCT INFORMATION

Support

GET SUPPORT

Our support team can help answer your questions - contact us today.

REQUEST TYPE

SELECT BY

SELECT Topic