Using library methods returns number of threads, Computer Engineering

Assignment Help:

Q. Using Library methods returns number of threads?

#include < omp.h >

void subdomain(float x[ ], int istart, int ipoints)

{

int i;

for (i = 0; i < ipoints; i++)

x[istart+i] = 123.456;

}

void sub(float x[ 10000], int npoints)

{

int t_num, num_t, ipoints, istart;

#pragma omp parallel default(shared) private(t_num , num_t, ipoints, istart)

{

t_num = omp_get_thread_num(); //thread number of current thread

num_t = omp_get_num_threads(); //number of threads

ipoints = npoints / num_t; /* size of partition */

istart = t_num * ipoints; /* starting array index */

if (t_num == num_t-1) /* last thread may do more */

ipoints = npoints - istart;

subdomain(x, istart, ipoints);

}

}

int main()

{

float array[10000];

sub(array, 10000);

return 0;

}

In this illustration we used two library methods : omp_get_num_threads() and omp_get_thread_num().

omp_get_num_threads() returns number of threads which are currently being used in parallel directive. 

omp_get_thread_num() returns thread number (an integer from 0 to omp_get_num_threads() - 1 where thread 0 is master thread).


Related Discussions:- Using library methods returns number of threads

Information security, i wants to know the methods and process of substituti...

i wants to know the methods and process of substitution and transposition cipher with examples.

Exception handling and recursion, In the previous assignment, you implement...

In the previous assignment, you implemented a stack and a list that both inherited from the abstract class ArrayIntCollection. In this task you are supposed to extend that implemen

How do we synthesize verilog into gates with synopsys, How do we synthesize...

How do we synthesize Verilog into gates with Synopsys?  The answer can, of course, occupy various lifetimes to completely answer.. BUT.. a straight-forward Verilog module can b

Loadrunner would you use to record a script, What Component of LoadRunner w...

What Component of LoadRunner would you use to record a Script? Ans) The Virtual User Generator (VuGen) component is used to record a script. It enables you to make Vuser scripts

The height of the left sub tree and height of the right tree, The differenc...

The difference among the height of the left sub tree and height of the right tree, for each node, is almost one.  AVL - tree

Explain about binning?, Binning process is very helpful to save space. Perf...

Binning process is very helpful to save space. Performance may differ depending upon the query generated sometimes solution to a query can come within some seconds and sometimes it

What is a multiple line field, What is a multiple line field? A multipl...

What is a multiple line field? A multiple line field is a special part of field which allows the user to enter multiple lines of data into it.

Define memory allocation scheme in ''external'' fragmentation, The memory a...

The memory allocation scheme subject to “external” fragmentation is? Segmentation is the memory allocation scheme subject to “external” fragmentation.

Explain properties of the webservice attribute, Question: (a) (i) Expl...

Question: (a) (i) Explain properties of the WebService attribute. (ii) Discuss three properties of the WebMethod attribute. (b) What are WSDL documents used for? (c)

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