PVM. PVM - What Is It? F Stands for: Parallel Virtual Machine F A software tool used to create and execute concurrent or parallel applications. F Operates.

Slides:



Advertisements
Similar presentations
Lecture 10 Sharing Resources. Basics of File Sharing The core component of any server is its ability to share files. In fact, the Server service in all.
Advertisements

Parallel Virtual Machine Rama Vykunta. Introduction n PVM provides a unified frame work for developing parallel programs with the existing infrastructure.
Winter, 2004CSS490 MPI1 CSS490 Group Communication and MPI Textbook Ch3 Instructor: Munehiro Fukuda These slides were compiled from the course textbook,
Distributed System Structures Network Operating Systems –provide an environment where users can access remote resources through remote login or file transfer.
Company LOGO Parallel Virtual Machine Issued by: Ameer Mosa Al_Saadi 1 University of Technology Computer Engineering and Information Technology Department.
Setting up of condor scheduler on computing cluster Raman Sehgal NPD-BARC.
Chapter One The Essence of UNIX.
Introducing the Command Line CMSC 121 Introduction to UNIX Much of the material in these slides was taken from Dan Hood’s CMSC 121 Lecture Notes.
Internet Applications: Telnet, Ping and Traceroute.
Introduction to PVM PVM (Parallel Virtual Machine) is a package of libraries and runtime daemons that enables building parallel apps easily and efficiently.
Slide 18-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 18.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Lecture 8 Configuring a Printer-using Magic Filter Introduction to IP Addressing.
Installing Samba Vicki Insixiengmay Jonathan Krieger.
A crash course in njit’s Afs
1 Lecture 4: Distributed-memory Computing with PVM/MPI.
Agenda What is Computer Programming? The Programming Process
Chapter 3 Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
Chapter 3.1:Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
STRATEGIES INVOLVED IN REMOTE COMPUTATION
Lecture 4: Parallel Programming Models. Parallel Programming Models Parallel Programming Models: Data parallelism / Task parallelism Explicit parallelism.
Chapter 9 Message Passing Copyright © Operating Systems, by Dhananjay Dhamdhere Copyright © Operating Systems, by Dhananjay Dhamdhere2 Introduction.
PVM and MPI What is more preferable? Comparative analysis of PVM and MPI for the development of physical applications on parallel clusters Ekaterina Elts.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
OAK RIDGE NATIONAL LABORATORY U.S. DEPARTMENT OF ENERGY Parallel Solution of 2-D Heat Equation Using Laplace Finite Difference Presented by Valerie Spencer.
11 MANAGING AND DISTRIBUTING SOFTWARE BY USING GROUP POLICY Chapter 5.
1 (1)Cluster computing (2) Grid computing) Part 4 Current trend of parallel processing.
Crossing The Line: Distributed Computing Across Network and Filesystem Boundaries.
Realtime Technologies, Inc. Distributed Simulation Training  April 2005.
Linux+ Guide to Linux Certification, Second Edition Chapter 14 Network Configuration.
Inetd...Server of Servers Looks at a number of ports Determines when a service is needed on any of those ports Calls the appropriate server Restarts new.
Computer Emergency Notification System (CENS)
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Agenda Link of the week Use of Virtual Machine Review week one lab assignment This week’s expected outcomes Review next lab assignments Break Out Problems.
1 Welcome to CSC 301 Web Programming Charles Frank.
Application Layer Khondaker Abdullah-Al-Mamun Lecturer, CSE Instructor, CNAP AUST.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February Session 11.
Chapter 10 Chapter 10: Managing the Distributed File System, Disk Quotas, and Software Installation.
OS, , Part I Operating - System Structures Department of Computer Engineering, PSUWannarat Suntiamorntut.
Distributed System Concepts and Architectures Services
Experiment Management System CSE 423 Aaron Kloc Jordan Harstad Robert Sorensen Robert Trevino Nicolas Tjioe Status Report Presentation Industry Mentor:
Slides for Parallel Programming Techniques & Applications Using Networked Workstations & Parallel Computers 2nd Edition, by B. Wilkinson & M. Allen, ©
Parallel and Distributed Programming Kashif Bilal.
Core Java Introduction Byju Veedu Ness Technologies httpdownload.oracle.com/javase/tutorial/getStarted/intro/definition.html.
How to for compiling and running MPI Programs. Prepared by Kiriti Venkat.
PVM (Parallel Virtual Machine)‏ By : Vishal Prajapati Course CS683 Computer Architecture Prof. Moreshwar R Bhujade.
PVM: Parallel Virtual Machine anonymous ftp ftp ftp.netlib.org cd pvm3/book get pvm-book.ps quit
Message-Passing Computing Chapter 2. Programming Multicomputer Design special parallel programming language –Occam Extend existing language to handle.
3-D Graphics Rendering Using PVM CLUSTERS Arjun Jain & Harish G. Naik R. V. College of Engineering, Bangalore.
1 Active Directory Administration Tasks And Tools Active Directory Administration Tasks Active Directory Administrative Tools Using Microsoft Management.
Linux Operations and Administration
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Lecture 02 File and File system. Topics Describe the layout of a Linux file system Display and set paths Describe the most important files, including.
Lecture 5: Parallel Virtual Machine (PVM). Parallel Programming Models Message Passing Model Used on Distributed memory MIMD architectures Multiple processes.
Chapter – 8 Software Tools.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February Session 12.
Chapter 4: server services. The Complete Guide to Linux System Administration2 Objectives Configure network interfaces using command- line and graphical.
CHAPTER 3 Router CLI Command Line Interface. Router User Interface User and privileged modes User mode --Typical tasks include those that check the router.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
PVM and MPI.
Architecture Review 10/11/2004
Topic 2: Hardware and Software
Chapter 2: System Structures
Parallel Virtual Machine
Prabhaker Mateti Wright State University
CS 584 Lecture 15 Assignment? (Due Friday) Friday paper presentations
Introduction to Operating System (OS)
Ubuntu Working in Terminal
Message Passing Libraries
Working in The IITJ HPC System
Presentation transcript:

PVM

PVM - What Is It? F Stands for: Parallel Virtual Machine F A software tool used to create and execute concurrent or parallel applications. F Operates on a collection of heterogenous Unix computers connected by one or more networks. F Communication accomplished by message passing

PVM - What Is It? F Comprised of two main components –the PVM daemon process (pvmd3) –library interface routines (libpvm3.a, libfpvm3.a & libgpvm3.a) F Public domain software package developed at Oak Ridge National Laboratory.

PVM Components

PVM Daemon (pvmd3) F The PVM daemon (pvmd3) is a Unix process which oversees the operation of user processes within a PVM application and coordinates inter-machine PVM communications.

PVM Daemon (pvmd3) F One daemon runs on each machine configured into your parallel virtual machine. Other users, with their own parallel virtual machines, will have their own pvmd3s running. F User processes communicate with each other through the daemons.

PVM Libraries F libpvm3.a - Library of C language interface routines. Always required. F They contain simple subroutine calls that the application programmer may imbed in concurrent or parallel application code.

Provide ability to: F initiate and terminate processes F pack, send, receive and broadcast messages F synchronize via barriers F query and dynamically change configuration of the parallel virtual machine

Libraries F do not directly communicate to other processes. Instead, they send commands to the local daemon and receive status information back. F Can be installed in user filespace - default is $HOME/pvm3/lib. F Data format conversion (XDR) performed automatically between hosts of different architectures.

Getting Started F Create a directory ~/pvm3/bin/ARCH on each machine for your executable components. F create a soft link to the actual pvm3/lib location (% ln -s ~snell/pvm3/lib ~/pvm3/lib) F PVM_ROOT should be set to ~/pvm3 F Include the appropriate PVM library routine calls in your code.

PVM Routines

Process Control & Information F Processes are identified by process IDs F Each process must acquire a list of all the process IDs in the group F Functions –pvm_mytid –pvm_siblings F Must call pvm_exit() to quit

Sending F Initialize buffers F Pack the message F Send pvm_initsend(PvmDataDefault); pvm_pkint(&token, count, stride); pvm_send(dest, msgtag);

Receiving F Receive the message F Unpack pvm_recv(src, msgtag); pvm_upkint(&token, count, stride);

Compile Your Application Components F Always need libpvm3.a library. F % cc -o myprog myprog.c - I$PVM_ROOT/include - L$PVM_ROOT/lib/$PVM_ARCH -lpvm3 F For Dynamic Groups, also need libgpvm3.a added before libpvm3.a F Make sure that executable components are located in ~/pvm3/bin/ARCH on each machine as required.

Create your PVM hostfile F Your PVM hostfile defines your parallel virtual machine. It contains the names of all desired machines, one per line F Must reside only on the machine where you start up PVM F The filename can be whatever you like F Comment lines start with "#" F Precede hostname with "&" if dynamically added later

Other options permitted: F lo = login userid F pw = password entry required F dx = daemon path if not using default F ep = executable program component paths if not using default ~/pvm3/bin/ARCH

Create Your $HOME/.rhosts file F The.rhosts is a standard Unix "trusted hosts" file - permits remote login and command execution without password. It is not unique to PVM - simply used by PVM. F Must be in your home directory F Should be readable by user only! F Format: host.domain.name userid

Start the Master PVM Daemon F Start up the master (first) daemon. F % pvmd3 hostfile & F Must be started on your local machine F Automatically starts up daemons on all other machines (remote) specified in your hostfile.

Tips F Do not run in the background if using the password (pw) specification in your hostfile. F Should only have one pvmd3 running on each machine in your virtual machine! F PVM console can be started after pvmd3 by typing "pvm". PVM console commands can then be issued.

Execute your application F Begin execution of your program on your local machine F % myprog F What happens from here depends upon your application.

Quit PVM F Make sure all application components include a PVM library call of "pvmfexit(info)" or "pvm_exit()". F Halting the master pvmd3 will automatically kill all other pvmd3s and all processes enrolled in this PVM. F Running in pvm console mode: use "halt" command

If it won't die F Abnormal terminations of PVM may leave files in /tmp which prevent you from restarting (known bug). Should delete all /tmp/pvm*. files on all machines before restarting the master pvmd3. F Try "~clement/bin/kill-pvms" if all else fails

Miscellaneous & Hints F The most common problem in starting PVM daemons is probably due to daemons already running on the machine(s), or the existence of a /tmp/pvmd.uid file. You'll need to kill old daemons and/or remove any /tmp/pvmd.uid files. F The second most common problem is probably due to incorrect.rhost files.

Other Problems F Another, less frequent startup problem is due to.cshrc files that require interactive input or which display messages.

Be Careful F Be careful of concurrent I/O to the same files in a shared filesystem! For concurrent I/O (writing) in a shared filesystem, you may want to implement a scheme to assign unique names to output files.

Your Assignment F Specifications are on the web F Using a Jacobi 5 point stencil, solve the 2D steady state temperature distribution problem on a 768 x 768 grid. F Use formula 2.1 on page 34 F Report your execution times on 2, 4, and 8 processors.