High Performance Computing Modernization Program (HPCMP) Summer 2011 Puerto Rico Workshop on Intermediate Parallel Programming & Cluster Computing in conjunction.

Slides:



Advertisements
Similar presentations
High Performance Computing Modernization Program (HPCMP) Summer 2011 Puerto Rico Workshop on Intermediate Parallel Programming & Cluster Computing in conjunction.
Advertisements

High Performance Computing Modernization Program (HPCMP) Summer 2011 Puerto Rico Workshop on Intermediate Parallel Programming & Cluster Computing in conjunction.
Parallel & Cluster Computing Distributed Cartesian Meshes Paul Gray, University of Northern Iowa David Joiner, Shodor Education Foundation Tom Murphy,
1 Web Conferencing Training Services Web Meeting 5.0 for New Users Instructor: Gordon Freeman.
Introduction to Parallel Programming & Cluster Computing Overview: What the Heck is Supercomputing? Josh Alexander, University of Oklahoma Ivan Babic,
Downloading and Installing AutoCAD Architecture 2015 This is a 4 step process 1.Register with the Autodesk Student Community 2.Downloading the software.
Tutorial Video basic skills basic skills Next page -->
Oklahoma Supercomputing Symposium 2012 Building Courses Around MPI & Cuda with a LittleFe Karl Frinkle Mike Morris.
Introduction to Parallel Programming & Cluster Computing Scientific Libraries and I/O Libraries Josh Alexander, University of Oklahoma Ivan Babic, Earlham.
Parallel & Cluster Computing MPI Basics Paul Gray, University of Northern Iowa David Joiner, Shodor Education Foundation Tom Murphy, Contra Costa College.
1 IE in the Classroom The Internet Explorer Web Browser EDW647 Internet for Educators Roger Webster, Ph.D. Millersville University Department of Computer.
High Performance Computing Modernization Program (HPCMP) Summer 2011 Puerto Rico Workshop on Intermediate Parallel Programming & Cluster Computing in conjunction.
High Performance Computing Modernization Program (HPCMP) Summer 2011 Puerto Rico Workshop on Intermediate Parallel Programming & Cluster Computing in conjunction.
SharePoint document libraries I: Introduction to sharing files Sharjah Higher Colleges of Technology presents:
Downloading and Installing Autodesk Revit 2016
Wimba Participant Orientation North Dakota University System May 2009.
Downloading and Installing Autodesk Inventor Professional 2015 This is a 4 step process 1.Register with the Autodesk Student Community 2.Downloading the.
Introduction to Parallel Programming & Cluster Computing Stupid Compiler Tricks Josh Alexander, University of Oklahoma Ivan Babic, Earlham College Andrew.
Parallel Programming & Cluster Computing MPI Collective Communications Dan Ernst Andrew Fitz Gibbon Tom Murphy Henry Neeman Charlie Peck Stephen Providence.
Introduction to Parallel Programming & Cluster Computing MPI Collective Communications Josh Alexander, University of Oklahoma Ivan Babic, Earlham College.
MPI Send/Receive Blocked/Unblocked Josh Alexander, University of Oklahoma Ivan Babic, Earlham College Andrew Fitz Gibbon, Shodor Education Foundation Inc.
Introduction to Parallel Programming & Cluster Computing MPI Collective Communications Joshua Alexander, U Oklahoma Ivan Babic, Earlham College Michial.
High Performance Computing Modernization Program (HPCMP) Summer 2011 Puerto Rico Workshop on Intermediate Parallel Programming & Cluster Computing in conjunction.
TechKnowlogy Conference August 2, 2011 Using GoogleDocs for Collaboration.
CWA 3105 Presents At&t Connect for Windows pc This will be a quick set up guide for our new virtual meeting program We are the ELITE to have this trial.
Adding Students in EbD-BUZZ
Jacynthe Touchette, MSI JGH Health Sciences Library
QOF Assessor Validation Report Generator
MeetingPlace Overview
Welcome to Customer Interaction Center (CIC) Client and Phone Training
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Development Environment
Introduction to Eclipse
Welcome to your first Online Class Session
Appendix A Barb Ericson Georgia Institute of Technology May 2006
Conferences Presenter Guide
MPI Message Passing Interface
Services Course 9/11/2018 5:45 PM Services Course Windows Live Messenger Participant Guide © 2008 Microsoft Corporation. All rights reserved.
Welcome to WebEx Thanks to the NHS Institute for Innovation & Improvement for their contribution to this document.
Google Summit 2017 Creating Assessments with google forms
All About Business Phone Systems
Collaboration with Google Docs
Fix Bitdefender Internet Security Error 217 Bitdefender Support Number Give a Ring on:
S P A N I H 101 LAB ORIENTATION.
Introduction to Computer Basics Part 2
Adding Students in EbD-BUZZ
Presenting a Webex session
UW Trustee Conference Calls
IT for Students Need IT Help? Visit
Star Math PreTest Instructions For iPad users with the STAR app
E-permits Tutorial for first-time users
SAMPLE PRESENTATION Company Name presents PowerPoint Basics
FALL 2014 SCC Language Lab S P A N I S H Lab Orientation.
Tonga Institute of Higher Education
SUMMER 2016 LAB ORIENTATION.
S i g n L a n g u a g e LAB ORIENTATION.
The 1st International Open Science Conference
How to Run a Java Program
Introduction to Apps for Faculty/Staff
ULTRA SESSION PREPARATION KIT
2008 Workshop AHEPA District 3 Website Presentation
Tonga Institute of Higher Education IT 141: Information Systems
Welcome to WebEx We would like to thank the NHS Institute for Innovation & Improvement for their contribution to this document.
Tonga Institute of Higher Education IT 141: Information Systems
S P A N I H 101 LAB ORIENTATION.
ClicktoHuddle Training
Cyberinfrastructure Leadership Academy: Overview
CSCE 206 Lab Structured Programming in C
Workshop for Programming And Systems Management Teachers
Selenium IDE Installation and Use.
Presentation transcript:

High Performance Computing Modernization Program (HPCMP) Summer 2011 Puerto Rico Workshop on Intermediate Parallel Programming & Cluster Computing in conjunction with the National Computational Science Institute (NCSI)/ SC11 Conference Jointly hosted at Polytechnic U of Puerto Rico and U Oklahoma and available live via videoconferencing (streaming video recordings coming soon) Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR Intermediate Parallel Programming & Cluster Computing Strategies for Debugging Parallel Programs Josh Alexander, University of Oklahoma Ivan Babic, Earlham College Ken Gamradt, South Dakota State University Andrew Fitz Gibbon, Amazon.com Mobeen Ludin, Earlham College Tom Murphy, Contra Costa College Henry Neeman, University of Oklahoma Charlie Peck, Earlham College Stephen Providence, Hampton University Jeff Rufinus, Widener University Luis Vicente, Polytechnic University of Puerto Rico Aaron Weeden, Earlham College Sunday July 31 – Saturday August

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR This is an experiment! It’s the nature of these kinds of videoconferences that FAILURES ARE GUARANTEED TO HAPPEN! NO PROMISES! So, please bear with us. Hopefully everything will work out well enough. If you lose your connection, you can retry the same kind of connection, or try connecting another way. Remember, if all else fails, you always have the toll free phone bridge to fall back on. STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug H.323 (Polycom etc) If you want to use H.323 videoconferencing – for example, Polycom – then: If you ARE already registered with the OneNet gatekeeper, dial If you AREN’T registered with the OneNet gatekeeper (which is probably the case), then: Dial When asked for the conference ID, enter: #0409# Many thanks to Roger Holder and OneNet for providing this.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug H.323 from Internet Explorer From a Windows PC running Internet Explorer: 1.You MUST have the ability to install software on the PC (or have someone install it for you). 2.Download and install the latest Java Runtime Environment (JRE) from here (click on the Java Download icon, because that install package includes both the JRE and other components).here 3.Download and install this video decoder.video decoder 4.Start Internet Explorer. 5.Copy-and-paste this URL into your IE window: 6.When that webpage loads, in the upper left, click on "Streaming". 7.In the textbox labeled Sign-in Name, type your name. 8.In the textbox labeled Conference ID, type this: Click on "Stream this conference". 10.When that webpage loads, you may see, at the very top, a bar offering you options. If so, click on it and choose "Install this add-on."

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug EVO There’s a quick description of how to use EVO on the workshop logistics webpage.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Phone Bridge If all else fails, you can call into our toll free phone bridge: * # Please mute yourself and use the phone to listen. Don’t worry, we’ll call out slide numbers as we go. Please use the phone bridge ONLY if you cannot connect any other way: the phone bridge is charged per connection per minute, so our preference is to minimize the number of connections. Many thanks to OU Information Technology for providing the toll free phone bridge.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Please Mute Yourself No matter how you connect, please mute yourself, so that we cannot hear you. At ISU and UW, we will turn off the sound on all conferencing technologies. That way, we won’t have problems with echo cancellation. Of course, that means we cannot hear questions. So for questions, you’ll need to send some kind of text.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Questions via Text: Piazzza Ask questions via: All questions will be read out loud and then answered out loud. NOTE: Because of image-and-likeness rules, people attending remotely offsite via videoconferencing CANNOT ask questions via voice.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Thanks for helping! OSCER operations staff (Brandon George, Dave Akin, Brett Zimmerman, Josh Alexander, Patrick Calhoun) Debi Gentis, OU Kevin Blake, OU IT (videographer) James Deaton and Roger Holder, OneNet Alfredo Cruz, Polytechnic U Puerto Rico Omar Padron, Kean U Scott Lathrop, SC11 General Chair Donna Cappo, ACM Bob Panoff, Jack Parkin and Joyce South, Shodor Education Foundation Inc

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Strategies for Debugging Parallel Algorithms

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Strategies for Debugging Parallel Algorithms ● Preventing Bugs Through Good Software Engineering ● Finding Bugs ● Fixing Bugs

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Preventing Bugs Through Good Software Engineering ● “Days of debugging can save you from hours of design and planning” - Charlie Peck.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Preventing Bugs Through Good Software Engineering ● Read and write lots of documentation. - man pages - MPI standard, OpenMP standard - GIYF (Google Is Your Friend) - comments - READMEs - man pages

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Preventing Bugs Through Good Software Engineering ● Adopt test-driven development. my_area = total_area / number_of_processes; #ifdef TESTING if(my_area != 2.0) printf(“Area calculation incorrect: area is %d\n”, my_area); #endif $./area Area calculation incorrect: area is

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Preventing Bugs Through Good Software Engineering ● Automate the process. $./tests Test 1 (same send and recv message #1) … passed! Test 2 (good area calculation) … passed! Test 3 (same send and recv message #2) … FAILED: Received message of length 12 instead of 2. Test 4 (good area aggregation) … passed! Test 5 (cleanup) … passed! PASSED 4 of 5 TESTS

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Preventing Bugs Through Good Software Engineering ● Develop incrementally.Change Change Compile/Run/TestChange ChangeCompile/Run/Test

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Preventing Bugs Through Good Software Engineering ● Choose meaningful variable names. my_nSs = nSs / m_R; vs my_number_of_stars = number_of_stars / my_region;

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Preventing Bugs Through Good Software Engineering ● Keep MPI collective calls outside of conditional branches. if(my_rank != 0) { MPI_Allgather(...); }

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Finding Bugs ● Make it easy to turn off the parallelism. #ifdef MPI MPI_Send(...); #endif $ gcc -DMPI=0 area.c -o area

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Finding Bugs ● Let the compiler help you. $ gcc -Wall --pedantic -O0 -Wuninitialized file.c -o file const double AREA = 10.0; #define AREA 10.0

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Finding Bugs ● Examine error codes. return_value = MPI_Recv(message, 10, MPI_CHAR, 0, TAG, MPI_COMM_WORLD, &status); if(return_value != MPI_SUCCESS) {...}

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Finding Bugs ● Use print statements, report the MPI rank and OpenMP thread number in each, and keep them in your code for later. MPI_Recv(message, 10, MPI_CHAR, 0, TAG, MPI_COMM_WORLD, &status); printf(“Rank %d: Thread %d: Message after receive: %s\n”, my_rank, omp_get_thread_num(), &message);

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Finding Bugs ● Match MPI Sends and Receives. /* 0th Send *//* 0th Send */MPI_Send(...); /* 1st Recv *//* 1st Recv */MPI_Recv(...);... /* 0th Recv *//* 0th Recv */MPI_Recv(...); /* 1st Send *//* 1st Send */MPI_Send(...);

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Finding Bugs ● Try your code under different MPI bindings.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Fixing Bugs ● Take advantage of the other OpenMP pragmas. – critical – private – firstprivate – master – single

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Fixing Bugs ● Use a debugger and take advantage of its parallel debugging features. – The “attach” command in gdb: – $ mpirun -np 2 program & – $ ps | grep program – $ gdb – gdb> attach the_PID_returned_by_the_ps_command

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Fixing Bugs ● Only fix one error at a time, but fix it everywhere.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Fixing Bugs ● Get a “second set of eyeballs” to look at your code.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Fixing Bugs ● “Code deleted is code debugged” - Steve Olson.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Fixing Bugs ● Walk away for awhile.

Sponsored by DOD HPCMP, SC11/ACM, NCSI and OK EPSCoR STRATEGIES FOR DEBUGGING PARALLEL PROGRAMS Intermediate Parallel, July 31 – Aug Thanks for your attention! Questions?