Choosing between OpenMP* and Explicit Threading Methods
C++ Openmp, Multithreading Tutorial: OpenMP provides a powerful, portable, and simple means of threading applications. In some cases, however, developers should choose the flexibility of native threading APIs. The guidelines in this article help to identify whether OpenMP is an appropriate choice for a given situation.

Introduction

OpenMP provides a powerful, portable, and simple means of threading applications. In some cases, however, developers should choose the flexibility of native threading APIs. The guidelines in this article help to identify whether OpenMP is an appropriate choice for a given situation.

By Andrew Binstock

Other articles on this Web site extol the virtues of programming with OpenMP, a vendor-neutral interface for threading portions of programs in a simple, portable fashion. It consists of a set of pragmas, APIs, and environment variables, and it is supported by compilers on a wide range of platforms. OpenMP's greatest attributes are this portability and the simplicity it brings to parallel programming.

If you're interested in this topic, these articles may be helpful:

Multi-Threading for Experts: Inside a Parallel Application
by Sergey N. Zheltov, project manager, and Stanislav V. Bratanov, soft...
Preparing for Hyper-Threading and Dual Core Technologies
Subscribe to Intel Software Dispatch and see the complete article I...
Threading Models for High-Performance Computing: Pthreads or OpenMP?
What is OpenMP? In 1997, a group of vendors came together under the...
Threading Games for High Performance on Intel® Processors
The evolution of the multi-threaded processor design is the trend for ...
Performance Obstacles for Threading: How do they affect OpenMP code?
Why thread, and what does that have to do with performance? You might...

Related Jobs:

Lead Software Development Engineer #144432 - WA - Redmond - Microsoft Corporation
The MapPoint Business Unit builds MapPoint Web Service, MSN Maps & Dir...
Staff R&D Engineer #4426 - CA - Sunnyvale - Synopsys, Inc
ReqCode: 4426 Position: Staff R&D Engineer Location: US02-Sunnyvale ...
Software Development Engineer #134497 - WA - Redmond - Microsoft Corporation
The MapPoint Business Unit builds MapPoint Web Service, MSN Maps & Dir...
Software Engineer #RCR100503 - IA - Cedar Rapids - Intermec Technologies Corporation
Job Title Software Engineer Department RFID Intellitag Engr Openin...
Computational Scientist - CEN - OH - Dayton - High Performance Technologies, Inc.
High Performance Technologies, Inc. (HPTi), based in Reston, VA is a s...
Computational Scientist - CEA - OH - Dayton - High Performance Technologies, Inc.
High Performance Technologies, Inc. (HPTi), based in Reston, VA is a s...
Software Engineer - CA - Milpitas - Sigma Designs, Inc.
Description of duties and responsibilities: Design and implement ad...
Software Engineer #REV100508 - WA - Everett - Intermec Technologies Corporation
Job Title Software Engineer Department WLAN Software Opening Date ...
Software Development Engineer #143761 - WA - Redmond - Microsoft Corporation
Just how fast can you make mathematical code run? Multimedia compre...
Storage Architect - Canada - Markham - Albert White Technologies
Mid to Sr. level Engineer should have 2+ years experience developing ...