CSE 260 Assignment 2

CSE 260 Assignment 2 - CSE 260 Assignment 2 Due Thursday in...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
CSE 260 Assignment 2 Due Thursday, 10/5/06 in class Changelog Date Description 26-Sep-06 Original posting 03-Oct-06 The final part (modifying ring to communicate with nearest neighbors) is inte impact of increased communication traffic on performance. In lieu of commu neighbors, I suggest the following alternative. Have the processors communic neighbor, in matched even-odd pairs. That is, have processors 0 and 1 exchan 2 and 3, and so on (Thus, the number of processors must be an even number.) lieu of asynchronous (immediate) calls. 4-Oct-06 Fixed typo in previous note. Number of processors must be an even number. 4-Oct-06 There is also MPI_Sendrecv_replace , which uses just one buffer. Either way i This assignment contains 2 parts involving MPI code provided to you. You'll make functional modifications to the code and conduct some experiments. All the code you need exists as subdirectories of the publicly readable directory /export/home/cs260x-public/A1. Henceforth this directory will be referred to as $(A1) . I. Simplest MPI. This part will acquaint you with process of running an MPI program on Valkyrie. Copy the directory $(A1)/Basic to your home directory. Compile and run the two programs contained in Basic. Be sure to use the supplied Makefile so that you get the correct compiler and loader flags. The Makefile includes an architecture file called arch file that defines appropriate command line flags to compile on Valkyrie. (If you modify this file, be sure and discuss your modifications--along with any impact(s)--in your report.) Your first program is a parallel "hello world" program. This program prints "Hello World'' from each processor, along with the process ID. It also reports the total number of processors in the run. Run the program on 3 processors. Here is some sample output: # processes: 3 Hello world from process 2 Hello world from process 0 Hello world from process 1 Do the process ID's come in any particular order? Why is this? In the second program message each process sends two integers to process 0, which prints out the values. A common convention is to call process 0 the root . Run program 2 several times on 4 processes. Do the process ID's come in any particular order? Why is this the case? Modify the program so that the process report to the root in increasing order of rank.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
II. The purpose of this part is to show you how to set up the processes to communicate as if they were connected in a ring, and to measure some aspects of communication performance. You'll be asked to make some changes to this program as well. The program we've supplied you,
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

This homework help was uploaded on 02/20/2008 for the course CSE 260 taught by Professor Baden during the Fall '06 term at UCSD.

Page1 / 5

CSE 260 Assignment 2 - CSE 260 Assignment 2 Due Thursday in...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online