Module 4: Working with MPI

Similar documents
Module 3: Working with C/C++

Developing Scientific Applications Using Eclipse and the Parallel Tools Platform

Using Eclipse and the

Parallel Debugging. ª Objective. ª Contents. ª Learn the basics of debugging parallel programs

The Eclipse Parallel Tools Platform. Tutorial Outline

At the shell prompt, enter idlde

Parallel Tools Platform for Judge

Parallel Tools Platform

A New and Improved Eclipse Parallel Tools Platform: Advancing the Development of Scientific Applications

Using Eclipse Parallel Tools Platform with BlueFern s HPCs. The BlueFern Team

User Guide. Introduction. Requirements. Installing and Configuring. C Interface for NI myrio

Introduction. Key features and lab exercises to familiarize new users to the Visual environment

Table of Contents. Table of Contents Job Manager for remote execution of QuantumATK scripts. A single remote machine

Laboratory Assignment #3 Eclipse CDT

DS-5 ARM. Using Eclipse. Version Copyright ARM. All rights reserved. ARM DUI 0480L (ID100912)

PTP Cheatsheet. View. Editor. View. Preferences: Menu: Window>Preferences. Rightmouse for Project Properties. Mac: Eclipse>Preferences. Build.

Using Eclipse for C, MPI, and Suzaku

QNX Software Development Platform 6.6. Quickstart Guide

STARTING THE DDT DEBUGGER ON MIO, AUN, & MC2. (Mouse over to the left to see thumbnails of all of the slides)

Creating a Roster (1 of 5) A Creating a New Roster. B Opening / Navigating to a Roster. 7 Select the From date for the roster(s) 3 4 Click on Find

Lab Android Development Environment

Introduction to Computation and Problem Solving

APPLICATION COMMON OPERATING ENVIRONMENT (APPCOE)

ncsa eclipse internal training

Creating a new CDC policy using the Database Administration Console

1.00 Lecture 2. What s an IDE?

Eclipse Setup. Opening Eclipse. Setting Up Eclipse for CS15

PowerScheduler Course Tally Worksheet instructions.

PTP - PLDT Parallel Language Development Tools Overview, Status & Plans

A QUICK OVERVIEW OF THE OMNeT++ IDE

Using Eclipse for Java. Using Eclipse for Java 1 / 1

SC2007. The Eclipse Parallel Tools Platform

Mend for Eclipse quick start guide local analysis

Eclipse Environment Setup

Creating a Roster (1)

Adding Support For a New Resource Manager

Eclipse Quick Reference Windows Hosted

ECE QNX Real-time Lab

CST8152 Compilers Creating a C Language Console Project with Microsoft Visual Studio.Net 2010

Laboratory Assignment #4 Debugging in Eclipse CDT 1

Application Note: AN00194 Getting Started with VCD Tracing in xtimecomposer

JSF Tools Reference Guide. Version: M5

1. Move your mouse to the location you wish text to appear in the document. 2. Click the mouse. The insertion point appears.

Drools Tools Reference Guide. Version: CR1

CHEMICAL SAFETY EMS SOFTWARE. Accumulation Inventory

Cupid Documentation. Release 0.2 (ESMF v7) Rocky Dunlap

Your password is: firstpw

QRG: Adding Images, Files and Links in the WYSIWYG Editor

Scientific Software Development with Eclipse

2 TUTORIAL. Overview. VisualDSP Getting Started Guide 2-1 for SHARC DSPs

IBM i Debugger. Overview Service Entry Points Debugger Functions Attach to an IBM i Job Launch Configurations and Settings

WinSCP. Author A.Kishore/Sachin

Author A.Kishore/Sachin WinSCP

Prototype User Guide Public Release Version 1

IBM WebSphere Java Batch Lab

Developing Scientific Applications with the IBM Parallel Environment Developer Edition

Remedy ITSM Work Order Management User Guide

CST8152 Compilers Creating a C Language Console Project with Microsoft Visual Studio.Net 2005

NetBeans Tutorial. For Introduction to Java Programming By Y. Daniel Liang. This tutorial applies to NetBeans 6, 7, or a higher version.

Newforma Contact Directory Quick Reference Guide

Getting Started with Code Coverage/Eclipse

D CLIENT for DIRECTOR/DIRECTOR PRO Series Publishing System Operator s Guide

ARM DS-5. Using the Debugger. Copyright 2010 ARM. All rights reserved. ARM DUI 0446A (ID070310)

Step 10: Conversion to PDF

Impossible Solutions, Inc. JDF Ticket Creator & DP2 to Indigo scripts Reference Manual Rev

Performer to DP2 Hot Folder Reference Manual Rev There is only one file involved with installing the Performer to DP2 Hot Folder.

Quick Start Guide ZedboardOLED Display Controller IP v1.0

The following instructions cover how to edit an existing report in IBM Cognos Analytics.

WPS Workbench. user guide. "To help guide you through using the WPS user interface (Workbench) to create, edit and run programs"

BEAWebLogic. Portal. Tutorials Getting Started with WebLogic Portal

Perforce Getting Started with P4V

CodeWarrior Development Studio for Advanced Packet Processing FAQ Guide

Navigate to Cognos Cognos Analytics supports all browsers with the exception of Microsoft Edge.

BASIC NAVIGATION & VIEWS...

HOW TO ACCESS AND SUBMIT DOCUMENTS TO SUMMIT FOR PROCESSING USING STARTING POINT NEW CLIENT

CodeWarrior Development Studio for Power Architecture Processors FAQ Guide

Getting Started with Xpediter/Eclipse

Test/Debug Guide. Reference Pages. Test/Debug Guide. Site Map Index

JSF Tools Reference Guide. Version: beta1

Dealing with Event Viewer

BASICS OF THE RENESAS SYNERGY TM

COBOL-IT Developer Studio Getting Started The Debugger Perspective Version 2.0

Application Note: AN00193 Getting Started with Debugging in xtimecomposer

Building and Running a Simple UML RT Model in RSARTE

Module Road Map. 7. Version Control with Subversion Introduction Terminology

Working with Images 1 / 12

Zend Studio 3.0. Quick Start Guide

BASICS OF THE RENESAS SYNERGY PLATFORM

Supplement H.1: JBuilder X Tutorial. For Introduction to Java Programming, 5E By Y. Daniel Liang

BASIC USER TRAINING PROGRAM Module 4: Topology

PART 1. Eclipse IDE Tutorial. 1. What is Eclipse? Eclipse Java IDE

Supplement II.B(1): JBuilder X Tutorial. For Introduction to Java Programming By Y. Daniel Liang

Status Bar: Right click on the Status Bar to add or remove features.

In this lab, you will build and execute a simple message flow. A message flow is like a program but is developed using a visual paradigm.

Instructions for SAP CCtr. How to use SAP Contact Center phone system

BASICS OF THE RENESAS SYNERGY PLATFORM

6L00IA - Introduction to Synergy Software Package Short Version (SSP v1.2.0) Renesas Synergy Family - S7 Series

Colligo Contributor Pro 4.4 SP2. User Guide

Print Station. Point-and-Click Printing WHITE PAPER

Getting Started with Eclipse/Java

Transcription:

Module 4: Working with MPI Objective Learn how to develop, build and launch a parallel (MPI) program on a remote parallel machine Contents Remote project setup Building with Makefiles MPI assistance features Working with resource managers Launching a parallel application Module 4 4-0

Local vs. Remote PTP allows the program to be run locally if you have MPI installed However we want to run the program on a remote machine We will now show you how to run a parallel program on a remote machine Interactively Through a batch system We have provided the source code to an MPI program on the remote machine The project will be created using this source code Module 4 4-1

Creating a Remote MPI Project Like the previous module, create a new Remote C/C++ project Enter shallow for the Project Name Use the same Connection as before Click the Browse button and choose the directory shallow in in your home directory Select a Remote Makefile Project as before Click Finish You may be prompted to open the Remote C/C++ Perspective Module 4 4-2

Changing the Project Build Properties The project makefile has a non-standard name Makefile.mk We need to change the build properties so that the project will build By default, the project is built by running make Right-click on project shallow in the Project Explorer Select Properties Module 4 4-3

Changing the Build Command Select C/C++ Build Uncheck Use default build command Change the Build command to: make f Makefile.mk Module 4 4-4

Building the Project Click OK to save project properties after changing build command Select project and hit the build button The project can be built at any time by hitting this button Module 4 4-5

Include File Locations Like the previous example, Eclipse content assist and navigation require knowledge of include file locations on the remote system Since the build will be running remotely, the compiler knows how to find include files But Eclipse does not In Project Explorer,, right-click on project Select Properties Module 4 4-6

Remote Paths and Symbols In Project Properties, Expand Remote Development Select Remote Paths and Symbols Select Languages>GNU C This is compiler on abe Click Add Enter /usr/local/openmpi-1.4.2-intel-11.1/include Click OK, then Add again Enter /usr/include Click OK Click OK to close preferences When prompted to rebuild index, click OK Include files on abe.ncsa.uiuc.edu Module 4 4-7

MPI-Specific Features PTP s Parallel Language Development Tools (PLDT) has several features specifically for developing MPI code Show MPI Artifacts Code completion Context Sensitive Help for MPI Hover Help MPI Templates in the editor More MPI features covered in Module 7: Advanced Features Module 4 4-8

Show MPI Artifacts In Project Explorer, select a project, folder, or a single source file The analysis will be run on the selected resources Run the analysis by clicking on drop-down menu next to the analysis button Selecting Show MPI Artifacts Module 4 4-9

MPI Artifact View Markers indicate the location of artifacts in editor The MPI Artifact View list the type and location of each artifact Navigate to source code line by double-clicking on the artifact Run the analysis on another file (or entire project!) and its markers will be added to the view Remove markers via Click on column headings to sort Module 4 4-10

MPI Editor Features Code completion will show all the possible MPI keyword completions o Enter the start of a keyword then press <ctrl-space> Hover over MPI API Displays the function prototype and a description Module 4 4-11

Context Sensitive Help Click mouse, then press help key when the cursor is within a function name Windows: F1 key Linux: ctrl-f1 key MacOS X: Help key or HelpDynamic Help A help view appears (Related Topics) which shows additional information (You may need to click on MPI Some special API in editor again, to populate) Click on the function name to see more information i Move the help view within your Eclipse workbench, if you like, by dragging g its title tab info has been added for MPI APIs Module 4 4-12

MPI Templates Allows quick entry of common patterns in MPI programming Example: MPI send-receive Enter: mpisr <ctrl-space> Expands to a send-receive pattern Highlighted g variable names can all be changed at once Type mpi <ctrl-space> <ctrlspace> to see all templates Add more templates using Eclipse preferences! C/C++>Editor>Templates Extend to other common patterns Module 4 4-13

Running the Program Creating a resource manager Starting the resource manager Creating a launch configuration Launching the application Viewing the application run Module 4 4-14

Terminology The Parallel Runtime perspective is provided for monitoring and controlling applications Some terminology Resource manager - Corresponds to an instance of a resource management system (e.g. a job scheduler). You can have multiple resource managers connected to different machines. Queue - A queue of pending jobs Job A single run of a parallel application Machine - A parallel computer system Node - Some form of computational resource Process - An execution unit (may be multiple threads of execution) Module 4 4-15

Resource Managers PTP uses the term resource manager to refer to any subsystem that controls the resources required for launching a parallel job. Examples: Job scheduler (e.g. LoadLeveler, PBS, SLURM) Interactive execution (e.g. Open MPI, MPICH2, etc.) Each resource manager controls one target system Resource Managers can be local or remote Module 4 4-16

Preparing to Launch Setting up a resource manager is done in the Parallel Runtime perspective p Select Window>Open Perspective>Other Choose Parallel Runtime and click OK Module 4 4-17

Parallel Runtime Perspective Resource managers view Machines view Console view Node details view Jobs List view Properties view Module 4 4-18

Open using legend icon in toolbar About PTP Icons Module 4 4-19

Running Jobs Interactively Interactive resource managers will run the parallel application immediately They are also used for debugging the application Right-click in Resource Managers view and select Add Resource Manager Choose the Open MPI Resource Manager Type Select Next> Module 4 4-20

Configure the Remote Location Choose Remote Tools for Remote service provider Choose the remote connection you made previously Configure Tunneling Options to use SSH Port Forwarding Click Next> Module 4 4-21

Configure the Resource Manager The Open MPI resource manager will auto detect the version esion and use the appropriate commands Change only if you re an expert Set the location of the mpirun command if it is not in your path Click Next> Change the Name or Description of the resource manager if you wish You can also set the resource manager to automatically start Click Finish Module 4 4-22

Starting the Resource Manager Right click on new resource manager and select Start resource manager If everything is ok, you should see the resource manager change to green If something goes wrong, it will change to red Module 4 4-23

System Monitoring Machine status shown in Machines view Node status also shown Machines view Hover over node to see node name Double-click on node to show attributes Module 4 4-24

Create a Launch Configuration Open the run configuration dialog Run>Run Configurations Select Parallel Application Select the New button Depending on which flavor of Eclipse you installed, you might have more choices in Application types Module 4 4-25

Complete the Resources Tab Enter a name for the launch configuration, e.g. shallow In Resources tab, select the resource manager you want to use to launch this job Enter a value in the Number of processes field Other fields can be used to specify resource manager-specific information E.g. specify By node to allocate each process to a different node Module 4 4-26

Complete the Application Tab Select the Application tab Choose the Application program by clicking the Browse button and locating the executable on the remote machine There should be a shallow executable in the shallow directory Select Display output from all processes in a console view Click Run to run the application Module 4 4-27

Viewing The Run Double-click a node in machines view to see which processes ran on the node Hover over a process for tooltip popup Job status and information Module 4 4-28

Viewing Program Output Console displays combined output from all processes Properties view shows job details Module 4 4-29

Using a Job Scheduler Right-click in Resource Managers view and select Add Resource Manager Choose the PBS Resource Manager Type Select Next> Module 4 4-30

Configure the Remote Location Choose Remote Tools for Remote service provider Choose the remote connection you made previously Configure Tunneling Options to use SSH Port Forwarding Click Next> Module 4 4-31

Configure the Resource Manager The PBS resource manager allows customization to match the local site options for the PBS installation By default, all known PBS options will be displayed Templates can be used to customize the options for each installation We will not change this, just click Finish to complete the configuration Module 4 4-32

Starting the Resource Manager Right click on new resource manager and select Start resource manager If everything is ok, you should see the resource manager change to green If something goes wrong, it will change to red Module 4 4-33

System Monitoring Machine status shown in Machines view Node status also shown Machines view Hover over node to see node name Double-click on node to show attributes Module 4 4-34

Create a Launch Configuration Open the run configuration dialog Run>Run Configurations Select Parallel Application Select the New button Module 4 4-35

Complete the Resources Tab Enter a name for this launch configuration, e.g. shallow (PBS) In Resources tab, select the PBS resource manager you just created The MPI Command field allows this job to be run as an MPI job Choose mpirun Enter account name dvd Enter the number of nodes to reserve in the Resource_List.nodes field Use 4 nodes Select the destination queue -- nomss Module 4 4-36

Complete the Application Tab Select the Application tab Choose the Application program by clicking the Browse button and locating the executable on the remote machine Use the same shallow executable Select Display output from all processes in a console view If Debugger tab has error, select Debugger: SDM Click Run to submit the application to the job scheduler Module 4 4-37

Job Monitoring Job status is tracked here, successful jobs disappear from list To cancel, select job and select Red button in Jobs List Module 4 4-38