Define an array of size 1000

Assignment Help Basic Computer Science
Reference no: EM131030914

Write a parallel program with MPI functions to do the following:

1) Define an array of size 1000.

2) Generate a random integer in the range of: 0 t0 999 for: n.

3) Generate n random integers in the range of: 0 to 1000 and save them in array.

4) For m (its value comes from the keyboard) processes divide that array to (m-1) segments. All the segments except the last one must be equal (Note that the last segment may get bigger than other segments)

5) Each of process p1, p2, p3,..., pm-1 obtains the biggest number from its segment and send it to the process with rank = 0.

6) Process 0 receives a number from each process: p1, p2, p3,..., pm-1, finds the biggest number and print it.

Note: If m -1 is bigger n terminate the execution of the program with an appropriate message the shows the value of m-1 and n.

The following is a serial program. It may help.

Note: Remember the variable comm_sz in the parallel program must not get its value in the program or via scanf.

//File name: a.c

#include
#include
#include
#define atmost 1000
int find(int* a, int from, int to){
int i, b;
printf("%d----%d\n", from,to);
b = a[from];
for(i = from + 1; i
if(a[i] > b)
b = a[i];
return b;
}

int main(){
int i, n, a[atmost], comm_sz, biggest, h, b;
printf("How many segments? ");
scanf("%d", &comm_sz);
srand((unsigned)time(NULL));
n = rand()%atmost;
printf("n = %d\n", n);
for(i = 0; i
a[i] = rand() % 10001;
printf("a[%d] = %d, ", i, a[i]);
}
printf("\n");
h = n/(comm_sz-1);
biggest = -1;
printf("h = %d\n", h);
for(i = 0; i
if(i == comm_sz - 2)
b = find(a, i * h, n-1);
else
b = find(a, i * h, (i+1) * h - 1);
if(b > biggest)
biggest = b;
}
printf("The biggest is: %d\n", biggest);
return 0;
}

Note: Since I need to test your project use static array (i.e. Do not use the built-in function: malloc). Name your array: a. Only use one array. Do not sort.

Reference no: EM131030914

Questions Cloud

Write a program that produces a list of nz notes and coins : Money dispenser calculatorWrite a program that produces a list of NZ notes and coins required to give change for a user-entered amount up to $1000.
Hierarchical arrangement of lines of authority : The typically hierarchical arrangement of lines of authority, communications, rights and duties of an organization. Organizational structure determines how the roles, power and responsibilities are assigned, controlled, and coordinated, and how in..
What are the key sources of financing these organisations : Identify the differences in their reports structure and content - What are the key performance indicators?
Pros and cons of separating and integrating : Discuss pros and cons of "separating" and "integrating" the sourcing and logistics functions. Examine whether this BPM project of Gap led to the right decision to split them.
Define an array of size 1000 : For m (its value comes from the keyboard) processes divide that array to (m-1) segments. All the segments except the last one must be equal (Note that the last segment may get bigger than other segments)
What explanations can you find for high teen pregnancy rates : What explanations can you find for the high teen pregnancy rates in Texas, Mississippi, Georgia and North Carolina - Why do you think the teen pregnancy rate is lower in the Northeast and some parts of the Midwest and North?
Impact of regulatory requirements : Though sustainability initiatives are often driven by regulatory requirements, an increasing number of companies notice that they frequently result in decreased operating costs and increased revenues.
States the argument unilever is likely to make in its appeal : Recommends to the General Counsel how FDA should respond to these arguments, and what course it should adopt when regulating the sale and labeling of Just Mayo products. Write the memorandum.
Would you use dantes classification : If you were to organize a contemporary hell for the great villains of our day, would you use Dante's classification or would you construct another schema? On what basis would it be organized?

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Identifies the cost of computer

identifies the cost of computer components to configure a computer system (including all peripheral devices where needed) for use in one of the following four situations:

  Input devices

Compare how the gestures data is generated and represented for interpretation in each of the following input devices. In your comparison, consider the data formats (radio waves, electrical signal, sound, etc.), device drivers, operating systems suppo..

  Cores on computer systems

Assignment : Cores on Computer Systems:  Differentiate between multiprocessor systems and many-core systems in terms of power efficiency, cost benefit analysis, instructions processing efficiency, and packaging form factors.

  Prepare an annual budget in an excel spreadsheet

Prepare working solutions in Excel that will manage the annual budget

  Write a research paper in relation to a software design

Research paper in relation to a Software Design related topic

  Describe the forest, domain, ou, and trust configuration

Describe the forest, domain, OU, and trust configuration for Bluesky. Include a chart or diagram of the current configuration. Currently Bluesky has a single domain and default OU structure.

  Construct a truth table for the boolean expression

Construct a truth table for the Boolean expressions ABC + A'B'C' ABC + AB'C' + A'B'C' A(BC' + B'C)

  Evaluate the cost of materials

Evaluate the cost of materials

  The marie simulator

Depending on how comfortable you are with using the MARIE simulator after reading

  What is the main advantage of using master pages

What is the main advantage of using master pages. Explain the purpose and advantage of using styles.

  Describe the three fundamental models of distributed systems

Explain the two approaches to packet delivery by the network layer in Distributed Systems. Describe the three fundamental models of Distributed Systems

  Distinguish between caching and buffering

Distinguish between caching and buffering The failure model defines the ways in which failure may occur in order to provide an understanding of the effects of failure. Give one type of failure with a brief description of the failure

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