Welcome to the Intel® Software Dispatch Subscription Program

POSIX Threads Programming
Unix Thread Creation Tutorial: In shared memory multiprocessor architectures, such as SMPs, threads can be used to implement parallelism. Historically, hardware vendors have implemented their own proprietary versions of threads, making portability a concern for software developers. For UNIX systems, a standardized C language threads programming interface has been specified by the IEEE POSIX 1003.1c standard.

Abstract

In shared memory multiprocessor architectures, such as SMPs, threads can be used to implement parallelism. Historically, hardware vendors have implemented their own proprietary versions of threads, making portability a concern for software developers. For UNIX systems, a standardized C language threads programming interface has been specified by the IEEE POSIX 1003.1c standard. Implementations that adhere to this standard are referred to as POSIX threads, or Pthreads.

The tutorial begins with an introduction to concepts, motivations, and design considerations for using Pthreads. Each of the three major classes of routines in the Pthreads API are then covered: Thread Management, Mutex Variables, and Condition Variables. Example codes are used throughout to demonstrate how to use most of the Pthreads routines needed by a new Pthreads programmer. The tutorial concludes with a discussion and examples of how to develop hybrid MPI/Pthreads programs in an IBM SMP environment. A lab exercise, with numerous example codes (C Language) is also included.

Read Tutorial here.


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

The "Rich-Client" Advantage for .NET Web Services
by Dan Fineberg, enterprise/business marketing manager, and Gary Hayco...
Intel® Threading Tools Boost Performance for CPU Cycle-Hungry Digital Artists
Introduction Intel ® Threading Tools help Autodesk optimize its M...
Multithreaded Programming Quickstart*
This netseminar explains the benefits of adding parallelism to your ap...
Intel® Tools Make Threading Easier on Multiple Processors
Introduction Intel® Thread Profiler, Intel® Thread Checker,...
Getting Started with OpenMP*
Abstract By Richard Gerber As you probably know by now, to get the m...

Related Jobs:

Associate Software Engineer - CA - Santa Clara - Willow Technology, Inc.
We are looking for a software engineer with tremendous potential for ...
Software Development Engineer #143761 - WA - Redmond - Microsoft Corporation
Just how fast can you make mathematical code run? Multimedia compre...
Software Development Engineer #136658 - WA - Redmond - Microsoft Corporation
Just how fast can you make mathematical code run? Multimedia compre...
Sr. Software Engineer / Developer #CA2986 - CA - Camarillo - Vitesse Semiconductor Corporation
BSCS; 7 to 10 years experience with embedded software development. Mus...
Software Development Engineer #134497 - WA - Redmond - Microsoft Corporation
The MapPoint Business Unit builds MapPoint Web Service, MSN Maps & Dir...
Lead Software Development Engineer #144432 - WA - Redmond - Microsoft Corporation
The MapPoint Business Unit builds MapPoint Web Service, MSN Maps & Dir...
Software Development Engineer #137943 - WA - Mountain View - Microsoft Corporation
Hate spam? Love designing solutions to hard problems in a high perform...
Storage Architect - Canada - Markham - Albert White Technologies
Mid to Sr. level Engineer should have 2+ years experience developing ...
Open Systems Engineer - TS/SCI + #6751 - VA - Chantilly - CACI International Inc
Requirements Applies software, hardware, and standards informatio...
Senior Audio Systems Engineer #977 - CA - Milpitas - PalmOne, Inc.
Senior Audio Systems Engineer Job code: 977 Job Category: Engineerin...