Openmp in shared memory programming, Computer Networking

Assignment Help:

OpenMP is a compiler directive based standard developed in the late 1990s jointly by a group of main computer hardware and software vendors. It is portable across a lot of popular platforms including Unix and Windows NT platforms. The OpenMP Fortran API was released on October 28, 1997 and the C/C++ API was released in late 1998. We shall talk about only about C/C++ API.

The OpenMP API uses the fork-join model of parallel implementation. As soon as an OpenMP program starts implementing it creates a single thread of implementation, known as the initial thread. The initial thread implements sequentially. As early as it gets a parallel construct, the thread makes additional threads and works as the master thread for all threads. All of the new threads implement the code inside the parallel construct. Only the master thread continues implementation of the user code beyond the end of the parallel construct. There is no restriction on the number of parallel constructs in a one program. When a thread with its child threads encounters a work-sharing construct, the work inside the construct is separated between the members of the team and implemented co-operatively instead of being implemented by every thread. Implementation of the code by every thread in the team resumes after the end of the work-sharing construct. Library routines and the Synchronization constructs are available in OpenMP to co-ordinate threads and data in parallel and work-sharing constructs.

Each OpenMP directive begins with #pragma omp. The general syntax is

#pragma omp directive-name [Set of clauses]

where omp is an OpenMP keyword. There may be additional clauses (parameters) after the directive name for dissimilar options.

Now, we shall talk about some compiler directives in OpenMP.


Related Discussions:- Openmp in shared memory programming

Connection oriented transport tcp - transport layer, Connection Oriented Tr...

Connection Oriented Transport TCP In addition  to providing  reliable communication transmission control protocols  effects errors  control flow  control  and resequencing of

Application layer - computer network, Application Layer The  applicati...

Application Layer The  application layer is where  network  applications and their  application layer protocols  reside. The internet application layer includes many protocols

Achieving universal services, The purpose of internetworking is universal s...

The purpose of internetworking is universal service across heterogeneous networks. To give this service all computers, and routers have to agree to forward information from a sourc

Relevance and protection regarding dns attacks, Relevance and Protection re...

Relevance and Protection regarding DNS Attacks While discussing about the relevance and protection of the database, there are many things which need to consider. Almost, may o

Why it is essential to have layering in a network, Q. Why it is essential t...

Q. Why it is essential to have layering in a network? Ans: A computer network is a very complicated system. It becomes very hard to implement as a single entity. The layered ap

Modern computer , modern technology in world of 21 century

modern technology in world of 21 century

What is the multicast routing, Sending a message to a group multicast addre...

Sending a message to a group multicast address is known as multicasting, and its routing algorithm is known as multicast routing.

Write examples of the transport layer, Example of transport layer are:- ...

Example of transport layer are:- a) TCP is connection oriented. b) UDP is connectionless

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd