Database System Concepts
Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
Bartleby Related Questions Icon

Related questions

bartleby

Concept explainers

Question

Please note this is not Java or C++

Complete the program 'Bcast-Reduce-Assignment.c' to make the program have the output as follows if we run the program using 2 processes.

          The input sequence is:   

          0 1 2 3          

          The output sequence is:  

          0 2 6 12

This is an MPI program and the code below is partially finished. i am supposed to have input above result in the output above. 

 

//////////////////////////////////////////////////////////////////////////
//
// This is a simple MPI program using MPI_Bcast and MPI_Reduce functions
//
// Compile:  mpicc Bcast-Reduce-Example.c -o  Bcast-Reduce-Example
// 
// Run:      mpiexec -n  <p>  ./Bcast-Reduce-Example
//
//           -p: the number of processes
//
/////////////////////////////////////////////////////////////////////////

#include <stdio.h>
#include <stdlib.h>
#include <mpi.h>


int main(void)

{
int my_rank, comm_sz;
int i;
   int Count = 4;
int Number[4];
   int PartialResult = 0;
int Result;

   MPI_Init(NULL, NULL);

   MPI_Comm_size(MPI_COMM_WORLD, &comm_sz);
   MPI_Comm_rank(MPI_COMM_WORLD, &my_rank);


   if(my_rank == 0)
{
 printf("The input sequence is as follows: \n");

 for (i = 0; i < Count; i++)
 {
  Number[i] = i;
  printf("%d ", Number[i]);
 }

 printf("\n");
   }

// Process 0 sends data to all of the processes
   MPI_Bcast(Number, Count, MPI_INT, 0, MPI_COMM_WORLD);


for (i = 0; i < Count; i++)
{
 Number[i] += my_rank;
  
 PartialResult += Number[i];
}

MPI_Reduce(&PartialResult, &Result, 1, MPI_INT, MPI_PROD, 0, MPI_COMM_WORLD);
 

// Print out the result 
if (my_rank == 0)

 printf("The final resutl is: %d. \n", Result);
 
MPI_Finalize();

return 0;
}

Expert Solution
Check Mark
Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education