Development of parallel codes using PL-Grid infrastructure.



Similar documents
ITG Software Engineering

Anwendungsintegration und Workflows mit UNICORE 6

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence

DataNet Flexible Metadata Overlay over File Resources

Mitglied der Helmholtz-Gemeinschaft. System monitoring with LLview and the Parallel Tools Platform

UFTP High-performance data transfer for UNICORE

PLGrid Programme: IT Platforms and Domain-Specific Solutions Developed for the National Grid Infrastructure for Polish Science

This presentation provides an overview of the architecture of the IBM Workload Deployer product.

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS

1001ICT Introduction To Programming Lecture Notes

Tutorial: Getting Started

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

Introduction to Running Computations on the High Performance Clusters at the Center for Computational Research

Tutorial 0A Programming on the command line

Matlab on a Supercomputer

Origins of Operating Systems OS/360. Martin Grund HPI

Running a Workflow on a PowerCenter Grid

Getting Started with the Internet Communications Engine

ORACLE DATA SHEET KEY FEATURES AND BENEFITS ORACLE WEBLOGIC SERVER STANDARD EDITION

LSKA 2010 Survey Report Job Scheduler

Networks and Services

PLGrid Infrastructure Solutions For Computational Chemistry

Learning GlassFish for Tomcat Users

XTM Web 2.0 Enterprise Architecture Hardware Implementation Guidelines. A.Zydroń 18 April Page 1 of 12

Effective Java Programming. efficient software development

Technical Report. Implementation and Performance Testing of Business Rules Evaluation Systems in a Computing Grid. Brian Fletcher x

MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune Tel: /

GridWay: Open Source Meta-scheduling Technology for Grid Computing

Developing modular Java applications

Microsoft HPC. V 1.0 José M. Cámara (checam@ubu.es)

Performance Evaluation for BlobSeer and Hadoop using Machine Learning Algorithms

Titolo del paragrafo. Titolo del documento - Sottotitolo documento The Benefits of Pushing Real-Time Market Data via a Web Infrastructure

enterprise^ IBM WebSphere Application Server v7.0 Security "publishing Secure your WebSphere applications with Java EE and JAAS security standards

Java Software Development Kit (JDK 5.0 Update 14) Installation Step by Step Instructions

ADAM 5.5. System Requirements

Introduction to programming

Monitor Your Key Performance Indicators using WSO2 Business Activity Monitor

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Remote Method Invocation in JAVA

PERFORMANCE COMPARISON OF COMMON OBJECT REQUEST BROKER ARCHITECTURE(CORBA) VS JAVA MESSAGING SERVICE(JMS) BY TEAM SCALABLE

Java with Eclipse: Setup & Getting Started

MathCloud: From Software Toolkit to Cloud Platform for Building Computing Services

Deploying Cisco Unified Contact Center Express Volume 1

Chapter 2: Getting Started

WEBLOGIC ADMINISTRATION

Integrated and reliable the heart of your iseries system. i5/os the next generation iseries operating system

Architecture Guide Community release

Oracle Communications WebRTC Session Controller: Basic Admin. Student Guide

Report on Project: Advanced System Monitoring for the Parallel Tools Platform (PTP)

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Monitoring IBM WebSphere extreme Scale (WXS) Calls With dynatrace

WebSphere Training Outline

INTRODUCTION TO JAVA PROGRAMMING LANGUAGE

Introduction to Sun ONE Application Server 7

Mesos: A Platform for Fine- Grained Resource Sharing in Data Centers (II)

Web Services and Service Oriented Architectures. Thomas Soddemann, RZG

System Models for Distributed and Cloud Computing

Provisioning and Resource Management at Large Scale (Kadeploy and OAR)

Testing and Deploying IBM Rational HATS 8.5 Applications on Apache Geronimo Server 3.1

Cluster, Grid, Cloud Concepts

IBM WebSphere DataStage Online training from Yes-M Systems

Comparison of the High Availability and Grid Options

IBM Business Monitor Version IBM Business Monitor Installation Guide

GRIP:Creating Interoperability between Grids

Load balancing in SOAJA (Service Oriented Java Adaptive Applications)

Enhanced Connector Applications SupportPac VP01 for IBM WebSphere Business Events 3.0.0

USING HDFS ON DISCOVERY CLUSTER TWO EXAMPLES - test1 and test2

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

V7 Reporting. Highlights

Release Notes for Open Grid Scheduler/Grid Engine. Version: Grid Engine

HPC Wales Skills Academy Course Catalogue 2015

EVALUATION ONLY. WA2088 WebSphere Application Server 8.5 Administration on Windows. Student Labs. Web Age Solutions Inc.

SLURM Workload Manager

HPCHadoop: MapReduce on Cray X-series

Chapter 1 - Web Server Management and Cluster Topology

Rocket AS v6.3. Benefits of upgrading

Overview of HPC Resources at Vanderbilt

Introduction to MapReduce and Hadoop

Oracle WebLogic Server 11g Administration

WebSphere Business Monitor V7.0: Clustering Single cluster deployment environment pattern

No.1 IT Online training institute from Hyderabad URL: sriramtechnologies.com

Web Developer Toolkit for IBM Digital Experience

For Internet Facing and Private Data Systems

The Hadoop Eco System Shanghai Data Science Meetup

Hello World Portlet Rendered with JSP for WebSphere Portal Version 4.1

Transcription:

Development of parallel codes using PL-Grid infrastructure. Rafał Kluszczyński 1, Marcin Stolarek 1, Grzegorz Marczak 1,2, Łukasz Górski 2, Marek Nowicki 2, 1 bala@icm.edu.pl 1 ICM, University of Warsaw, Warsaw, PL 2 WMiI, Nicolaus Copernicus University, Toruń, PL

Motivation The grid is widely used for execution of CPU intensive applications. The PL-Grid infrasrtucture consists of clusters built of multicore nodes. The grid jobs can have different characteristics: trivially paralel / paralel tasks parallel applications (MPI/OpenMP) masivelly paralel jobs (from few up to hudreads of nodes) Most of the PL-Grid users is using exising, already parallelized applications There is relatively small community of the developers who deploy and test paralel applications. 2

Problems Production and developement jobs have differet characteristics Production paralel jobs require few nodes, and run several hours (or even more) Development jobs require different numer of nodes 1-2 nodes for developement large numer of nodes for scalability tests 3

PL-Grid National Grid Initiative Partners: Polish supercomputer centres: Cyfronet, ICM, PCSS, WCSS, TASK Project aims: Build and operate Polish National Grid Provide training and user s support Provide support for application deployment on the grid ICM role in PL-GRID Operate DEISA compatible grid UNICORE Operating Center Domain applications: health, materials 4

SECURITY UNICORE 7 Architecture Registry Gateway HTTPS HTTPS / HTTP Atomic Services Client Layer UNICORE 6 Hosting Environment User DB WSRF Container Other Services Execution Manager Policies Target System Interface Computational Resources Files Data Storages Databases Target System 5

UNICORE Client framework Eclipse-based rich client Eclipse based workflow editor Command line client Web client UNICORE Portal 6

Job preparation 7

Job preparation files 8

Job preparation - script module load plgrid/tools/openmpi module load plgrid/tools/java8 # Get list of nodes mpiexec bash -c 'hostname -s ' > nodes.u sort nodes.u sed s/-g7e// uniq > nodes.uniq # Compile javac -cp PCJ_4.jar Pcj_hpc_ra1.java # Execute mpiexec --hostfile nodes.uniq bash -c 'java - d64 -cp.:pcj_4.jar Pcj_hpc_ra1' 9

PCJ - Parallel Computations in Java Java library developed at ICM pcj.icm.edu.pl Programming paradigm: partitioned global address space (PGAS) Features Does not require modification of JVM Work on almost all operating system that have JVM eg. IBM Java 1.7 on Power7 architecture Uses newest Java SE 7 (NIO, SDP,... ) Works with Java SE 8 Does not require other libraries! 10 7/6/2014

PCJ Hello world import pl.umk.mat.pcj.* public class PcjHelloWorld extends Storage @Override public void main() { System.out.println("Hello!"); } implements StartPoint { } public static void main(string[] args) { String[] nodes = new String[]{"localhost", "localhost"}; PCJ.deploy(PcjHelloWorld2.class, } PcjHelloWorld2.class, nodes); 11 7/6/2014

PCJ - basics double c; if (PCJ.myId()==0) c =(double) PCJ.get(3, "a"); if (PCJ.myId()==0) PCJ.put(3, "a", 5.0); public static void PCJ.barrier(); public static int PCJ.threadCount() 12 7/6/2014

Developement vs. Production Queueing systems are optimized for long production runs Developement jobs are short but use large amount of resources Developement jobs can wait days or weeks to eneter eexecution The plgrid-testing queue is configured with the short maximal execution time but it shares overall queue policy The solution is to use reservation system. PCJ resrvation has been created and is used by the code developers PCJ reservation contains 2 nodes each type (in total 6 nodes) 13

Job properties 14

Results (Raytrace performance) 15

Results (Global FFT performance) 16

Conclusions PL-Grid offers resources and functionality necessary for development parallel codes Short parallel jobs can be run without delay This is possible using resource reservation implemented in PL-Grid Server side support thanks to modified UNICORE TSI and extensions to the SLURM resource management UNICORE is able to use reservations Reservation is easy to use 17

Acknowledgmens This work was made possible thanks to the PLGrid Plus project POIG.02.03.00-00-096/10. This research was supported in part by the PL-Grid Infrastructure.. 18