Scheduling Jobs onto Intel Xeon Phi using PBS Professional

Similar documents
PBS Professional Integration with HP CMU

An Integrated Approach to Workload and Cluster Management: The HP CMU PBS Professional Connector

PBS Professional Quick Start Guide

Running Schlumberger Simulators in a PBS Professional Computing Environment:

PBS Pro with Docker Integration

Altair. PBS Professional 9.1. Quick Start Guide. for UNIX, Linux, and Windows

Maximize Performance and Scalability of RADIOSS* Structural Analysis Software on Intel Xeon Processor E7 v2 Family-Based Platforms

Learn more at solidthinking.com solidthinking, Inc. All Rights Reserved. All other trademarks are properties of their respective owners.

GPU ACCELERATED DATABASE MANAGEMENT SYSTEMS

TORQUE Resource Manager Quick Start Guide Version

Debugging Programs Accelerated with Intel Xeon Phi Coprocessors

Production and Operational Use of the Cray X1 System

How to run applications on Aziz supercomputer. Mohammad Rafi System Administrator Fujitsu Technology Solutions

Reduces latency and buffer overhead. Messaging occurs at a speed close to the processors being directly connected. Less error detection

Your Microservice Layout

The Leading Parallel Cluster File System

Answers to Federal Reserve Questions. Training for University of Richmond

Cluster Network Products

PBS Analytics TM Release Notes. PBS Works is a division of

HPC Cluster: Setup and Configuration HowTo Guide

TORQUE Resource Manager Release Notes

PBS Professional 11.1

Tech Computer Center Documentation

PBS Professional Programmer s Guide. PBS Works is a division of

New Approach to Unstructured Data

Goverlan Reach Server Hardware & Operating System Guidelines

Agent Teamwork Research Assistant. Progress Report. Prepared by Solomon Lane

David R. Mackay, Ph.D. Libraries play an important role in threading software to run faster on Intel multi-core platforms.

SWsoft ADVANCED VIRTUALIZATION AND WORKLOAD MANAGEMENT ON ITANIUM 2-BASED SERVERS

A Study of High Performance Computing and the Cray SV1 Supercomputer. Michael Sullivan TJHSST Class of 2004

Scheduler Optimization for Current Generation Cray Systems

PBS Pro. Release 5.2. Administrator Guide

Become a MongoDB Replica Set Expert in Under 5 Minutes:

Introduction to parallel computing

When, Where & Why to Use NoSQL?

Diagnostics in Testing and Performance Engineering

PBS PROFESSIONAL VS. MICROSOFT HPC PACK

TORQUE Resource Manager5.0.2 release notes

Frequently Asked Questions (FAQ)

PRESERVE DATABASE PERFORMANCE WHEN RUNNING MIXED WORKLOADS

User Guide of High Performance Computing Cluster in School of Physics

Market Report. Scale-out 2.0: Simple, Scalable, Services- Oriented Storage. Scale-out Storage Meets the Enterprise. June 2010.

Users and utilization of CERIT-SC infrastructure

ASYNCHRONOUS SHADERS WHITE PAPER 0

Running applications on the Cray XC30

BUILDING the VIRtUAL enterprise

STORAGE CONSOLIDATION AND THE SUN ZFS STORAGE APPLIANCE

Data Center Management and Automation Strategic Briefing

Grid Architectural Models

Batch environment PBS (Running applications on the Cray XC30) 1/18/2016

Multi-Level Feedback Queues

Making Supercomputing More Available and Accessible Windows HPC Server 2008 R2 Beta 2 Microsoft High Performance Computing April, 2010

Dispatcher. Phoenix. Dispatcher Phoenix Enterprise White Paper Version 0.2

Accelerate Database Performance and Reduce Response Times in MongoDB Humongous Environments with the LSI Nytro MegaRAID Flash Accelerator Card

SAS Viya 3.2 Administration: Monitoring

NERSC. National Energy Research Scientific Computing Center

IME (Infinite Memory Engine) Extreme Application Acceleration & Highly Efficient I/O Provisioning

Introduction to GALILEO

WIND RIVER TITANIUM CLOUD FOR TELECOMMUNICATIONS

Measuring VDI Fitness and User Experience Technical White Paper

Simulation-Driven Design Has Never Been Easier

Introduction to PICO Parallel & Production Enviroment

Service Execution Platform WebOTX To Support Cloud Computing

Oracle JD Edwards EnterpriseOne Object Usage Tracking Performance Characterization Using JD Edwards EnterpriseOne Object Usage Tracking

VMware vshield App Design Guide TECHNICAL WHITE PAPER

Massive Scalability With InterSystems IRIS Data Platform

Key Considerations for Improving Performance And Virtualization in Microsoft SQL Server Environments

Managing CAE Simulation Workloads in Cluster Environments

NTP Software File Reporter Data Collection Agent for Windows

a white paper from Corel Corporation

Solution Brief. A Key Value of the Future: Trillion Operations Technology. 89 Fifth Avenue, 7th Floor. New York, NY

Cloud Computing: Making the Right Choice for Your Organization

TECHNICAL OVERVIEW ACCELERATED COMPUTING AND THE DEMOCRATIZATION OF SUPERCOMPUTING

Was ist dran an einer spezialisierten Data Warehousing platform?

Optimize Your Databases Using Foglight for Oracle s Performance Investigator

Effective resource utilization by In-Memory Parallel Execution in Oracle Real Application Clusters 11g Release 2

IBM Power Advanced Compute (AC) AC922 Server

Clustering Application Benchmark

IBM TS7700 grid solutions for business continuity

BrainPad Accelerates Multiple Web Analytics Systems with Fusion iomemory Solutions

1 Obtaining and compiling TORQUE and Maui

Whitepaper. Solving Complex Hierarchical Data Integration Issues. What is Complex Data? Types of Data

Oracle JD Edwards EnterpriseOne Object Usage Tracking Performance Characterization Using JD Edwards EnterpriseOne Object Usage Tracking

Abstract. The Challenges. ESG Lab Review InterSystems IRIS Data Platform: A Unified, Efficient Data Platform for Fast Business Insight

ArcGIS Enterprise: Architecture & Deployment. Anthony Myers

ASSURING PERFORMANCE IN VDI DEPLOYMENTS

WebSphere Application Server, Version 5. What s New?

Accelerating Enterprise Search with Fusion iomemory PCIe Application Accelerators

Migrate from Netezza Workload Migration

Performance Optimizations via Connect-IB and Dynamically Connected Transport Service for Maximum Performance on LS-DYNA

and how to use TORQUE & Maui Piero Calucci

Introduction to Slurm

Japan s post K Computer Yutaka Ishikawa Project Leader RIKEN AICS

Extreme Networks Session Director

Intellicus Getting Started

IBM Power Systems solution for SugarCRM

Vortex Whitepaper. Simplifying Real-time Information Integration in Industrial Internet of Things (IIoT) Control Systems

Altair. PBS Pro. Administrator Guide 5.4. for UNIX, Linux, and Windows

Reduce costs and enhance user access with Lenovo Client Virtualization solutions

Queue systems. and how to use Torque/Maui. Piero Calucci. Scuola Internazionale Superiore di Studi Avanzati Trieste

Transcription:

Scheduling Jobs onto Intel Xeon Phi using PBS Professional Scott Suchyta 1 1 Altair Engineering Inc., 1820 Big Beaver Road, Troy, MI 48083, USA Abstract As new hardware and technology arrives, it is imperative that workload managers and job schedulers scale and support the new technology. By working closely with Intel, Altair has ensured that PBS Professional supports the Intel Xeon Phi (previously known as many-integrated cores, or MIC) architecture targeting high performance computing applications. This collaboration will allow users to take full advantage of the performance and power of this new Intel architecture immediately without relying on any workarounds. This document will review how to configure PBS Professional in an Intel Xeon Phi environment and provide tips. As early adopters (i.e., software and hardware vendors) continue to explore the new technology, we are looking for feedback on how PBS Professional can improve support for scheduling jobs onto the Intel Xeon Phi. Introduction to PBS Professional PBS Professional is the professional version of the Portable Batch System (PBS), a flexible workload management solution, originally developed to manage aerospace computing resources at NASA. PBS Professional has since become the leader in supercomputer workload management and the de facto standard on Linux clusters. Today, growing enterprises often support hundreds of users running thousands of jobs across many different types of machines in diverse geographical locations. In this distributed heterogeneous environment, it can be extremely difficult for administrators to collect detailed, accurate usage data, or to set system-wide resource priorities. As a result, many computing resources are under-utilized, while others are over-utilized. At the same time, users are confronted with an ever-expanding array of operating systems and platforms. Each year, scientists, engineers, designers and analysts must waste countless hours learning the nuances of different computing environments, rather than 1: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

focusing on their primary goals. PBS Professional addresses these problems for computing-intensive industries such as science, engineering, finance and entertainment. Now you can use the power of PBS Professional to better control your computing resources. This allows you to unlock the potential in the valuable assets you already have, while at the same time reducing the load on system administrators and operators, freeing them to focus on other activities. PBS Professional can help you effectively manage growth by tracking real usage levels across your systems and allowing you to target future purchases to your needs. PBS Professional consists of two major component types: commands and daemons / services. A brief description of each is given here to help you understand how the pieces fit together. Commands PBS Professional supplies both a graphical interface and a set of POSIX 1003.2d-conforming command-line programs. These are used to submit, monitor, modify and delete jobs. These client commands can be installed on any system type supported by PBS and do not require local presence of any of the other components of PBS. There are three command classifications: commands available to any authorized user, commands requiring special PBS privilege, and administrator commands. Administrator commands require root access or the equivalent to use. Server The server daemon/service, pbs_server, is the central focus of PBS Professional. All commands and other daemons/services communicate with the server via an Internet Protocol (IP) network. The server s main function is to provide the basic batch services such as receiving/creating a batch job, modifying the job, and passing the job to the execution node. One server manages the machines and jobs in a PBS complex; a secondary server may be configured to handle failover. Execution Node Manager (MOM) The MOM is the daemon/service, which actually places the job into execution. The pbs_mom daemon is informally called MOM, as it is the mother of all processes for jobs. (MOM is a reverse-engineered acronym that stands for Machine Oriented Mini-server). MOM places a job into execution when it receives a 2: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

copy of the job from the Server. MOM creates a new session for each job and gathers information about the resource usage of that job. MOM also has the responsibility for communicating with all MOMs assigned to the job and returning the job s output to the user when directed to do so by the Server. One MOM runs on each execution host. Scheduler The job scheduler daemon/service, pbs_sched, implements the site s scheduling policy, controlling when each job is run and on which resources. The Scheduler may communicate with the various MOMs to query the state of system resources and with the Server for availability of jobs to execute. Introduction to Intel Xeon Phi Relative to the multi-core Intel Xeon processors, Intel Xeon Phi Architecture has many more smaller cores, many more hardware threads, and wider vector units. This is ideal for achieving higher aggregate performance for highly parallel applications. As developers embrace high degrees of parallelism (instruction, data, task, vector, thread, cluster, etc.), important and popular programming models for Intel architecture processors extend to Intel Xeon Phi architecture without rethinking the entire problem. The same techniques that deliver optimal performance on Intel processors scaling applications to cores and threads, blocking data for hierarchical memory and caches, and effective use of SIMD also apply to maximizing performance on Intel Xeon Phi architecture. With greater reuse of parallel CPU code, software companies and IT departments benefit from creating and maintaining a single code base binary and not having to retrain developers on proprietary programming models associated with accelerators. Configuring Intel Xeon Phi for use in PBS Professional PBS supports both basic and advanced Intel Xeon Phi scheduling. Basic scheduling consists of prioritizing jobs based on site policies, controlling access to nodes with Intel Xeon Phi cards, ensuring that Intel Xeon Phi is not over-subscribed, and tracking use of Intel Xeon Phi in accounting logs. Configuring PBS to perform basic scheduling of Intel 3: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

Xeon Phi is relatively simple, and only requires defining and configuring a single custom resource to represent the number of Intel Xeon Phi cards on each node. Approach 1 describes basic Intel Xeon Phi scheduling. Although basic Intel Xeon Phi scheduling will meet the needs of 95% of customers, PBS also supports more advanced Intel Xeon Phi scheduling: the ability for a job to separately allocate (request and/or identify) each individual Intel Xeon Phi device on a node. This capability is useful for sharing a single node among multiple jobs, where each job requires its own Intel Xeon Phi s. In this case, both PBS and the applications themselves must support individually allocating a node s Intel Xeon Phi. This more advanced scheduling requires defining a PBS vnode for each Intel Xeon Phi. Approach 2 describes advanced Intel Xeon Phi scheduling. This section covers both approaches on how to configure Intel Xeon Phi in PBS Professional, and also compares the pros and cons of each approach. Note that in order to schedule jobs onto Intel Xeon Phi, the administrator must manually configure Intel Xeon Phi cards as resources. Note also that PBS Professional allocates Intel Xeon Phi, but doesn t bind jobs to any particular Intel Xeon Phi; the application itself (or the Intel library) is responsible for the actual binding. Altair will be making a configuration tool available at Xeon Phi launch in 2013 which automates the configuration for Xeon Phi within PBS Professional. 4: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

Approach 1 Basic Intel Xeon Phi Scheduling Configure all Intel Xeon Phi devices as a single custom resource The administrator adds only one custom resource in this approach. PBS Professional treats all Intel Xeon Phi devices with equal priority (similar to the built-in ncpus PBS resource) and doesn t bind jobs to any particular Intel Xeon Phi. Steps to configure using single custom resource approach: Assuming there are two execution hosts, nodea and nodeb, present in the cluster, and each execution host has 2 Intel Xeon Phi devices, the administrator configures a single consumable custom resource nmics to represent all Intel Xeon Phi devices on the execution hosts. The administrator then configures the nmics custom resource in the following way: 1. Stop the PBS Professional server and scheduler. On the server s host, type: /etc/init.d/pbs stop 2. Edit $PBS_HOME/server_priv/resourcedef to add the following line: nmics type=long flag=nh 3. Edit $PBS_HOME/sched_priv/sched_config to add nmics to the list of scheduling resources: resources: ncpus, mem, arch, host, vnode, nmics 4. Restart the PBS Professional server and scheduler. On the server s host, type: /etc/init.d/pbs start 5. Add the number of Intel Xeon Phi devices available (in our example, this number is 2) to each execution host in the cluster via qmgr: qmgr c set node nodea resources_available.nmics=2 qmgr c set node nodeb resources_available.nmics=2 5: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

6. Submit a one-node job (e.g., my_mic_job ) on 2 Intel Xeon Phi devices in the following manner: qsub lselect=1:ncpus=1:nmics=2 my_mic_job The administrator can find the number of Intel Xeon Phi devices available/assigned on the execution hosts via the pbsnodes command. Approach 2 Advanced Intel Xeon Phi Scheduling Configure Intel Xeon Phi devices as vnodes In this approach, the administrator configures each Intel Xeon Phi device in its own vnode, including the Intel Xeon Phi device number. Steps to configure Intel Xeon Phi as virtual nodes with device number: 1. Stop the PBS Professional server and scheduler. On the server s host, type: /etc/init.d/pbs stop 2. Edit $PBS_HOME/server_priv/resourcedef to add two new custom resources, nmics and mic_id: nmics type=long flag=nh mic_id type=string flag=h 3. Edit $PBS_HOME/sched_priv/sched_config to add nmics and mic_id to the list of scheduling resources: resources: ncpus, mem, arch, host, vnode, nmics, mic_id 4. Restart PBS Professional services. On the server s host, type: /etc/init.d/pbs start 6: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

5. Create a vnode configuration for each execution host where Intel Xeon Phi devices are present. In this example, we create a script named nodea-vnodes for nodea which has 4 CPUs, 2 Intel Xeon Phi s, and 16 GB of memory: $configversion 2 nodea: resources_available.ncpus = 0 nodea: resources_available.mem = 0 nodea[0]: resources_available.ncpus = 2 nodea[0] : resources_available.mem = 8gb nodea[0] : resources_available.nmics = 1 nodea[0] : resources_available.mic_id = mic0 nodea[0] : sharing = default_exclusive nodea[1] : resources_available.ncpus = 2 nodea[1] : resources_available.mem = 8gb nodea[1] : resources_available.nmics = 1 nodea[1] : resources_available.mic_id = mic1 nodea[1]: sharing = default_exclusive 6. Add vnode configuration information to PBS Professional in the following manner (for each node with Intel Xeon Phi): $PBS_EXEC/sbin/pbs_mom s insert nodea-vnodes nodea-vnodes 7. Signal each pbs_mom to reread the configuration files: kill HUP <pbs_mom PID> 8. Submit job (e.g., my_mic_job ) requesting one node with one Intel Xeon Phi: qsub lselect=1:ncpus=1:nmics=1 my_mic_job The PBS Scheduler looks for a vnode with an available Intel Xeon Phi card and assigns that vnode to the job. Since there is a 1-1 correspondence between Intel Xeon Phi and vnodes, the job can now ask PBS which vnode it was given, and determine the mic_id of that vnode. Finally, the application can use the appropriate Intel libraries to bind the process to the allocated Intel Xeon Phi device. 7: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

Alternatively, one can submit a job requesting a particular mic_id as well. The following requests 4 nodes, each with Intel Xeon Phi id 0: qsub lselect=4:ncpus=1:mic_id=mic0 my_mic_job This provides a high degree of control for users and administrators, allowing them to run their applications based on the devices for which their applications are programmed. Comparison of Basic and Advanced Intel Xeon Phi Scheduling Approach 1 Approach 2 Configuration & Administration Granularity Number of custom resources configured Uses Easy and centralized. Must make configuration changes only in PBS Server and Scheduler. All Intel Xeon Phi devices are given equal priority. The user does not specify Intel Xeon Phi on which to run job. Only one Good choice when jobs do not share nodes (i.e., only one Intel Xeon Phi job at a time is run on any given node, exclusively). More complicated and distributed. Must make configuration changes on all nodes with Intel Xeon Phi. Users can select Intel Xeon Phi devices by specifying their device numbers. Two, plus virtual nodes on all MOMs based on number of Intel Xeon Phi devices Good choice when sharing of nodes by multiple jobs at the same time is required, or individual access to Intel Xeon Phi (by device number) is required. Conclusion The two approaches suggested in this paper provide the techniques necessary to configure and schedule jobs onto Intel Xeon Phi using PBS Professional. This document provides detailed information on how to make efficient use of hundreds of computing cores on Intel Xeon Phi with PBS Professional. Given that the Intel Xeon Phi is new and emerging technology, and as it continues to be integrated into hardware and software vendor solutions, we may need to revisit the approach. 8: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of

In closing it should be noted that users could check the number of Intel Xeon Phi devices assigned and requested for the job in the PBS accounting log file, or via PBS Professional commands such as pbsnodes. It should also be noted that none of the approaches specified in this paper tries to pin tasks to particular Intel Xeon Phi devices. As with normal CPU-based jobs, assignment of tasks to cores is handled by the operating system services. www.pbsworks.com www.intel.com Copyright 2011 Altair Engineering, Inc. All rights reserved. PBS, PBS Works, PBS Professional, PBS Analytics, PBS Catalyst, e-biochem, e-compute, and e-render are trademarks of Altair Engineering, Inc. and are protected under U.S. and international law and treaties. All other marks are the property of their respective owners. This paper is for informational purposes only, and may contain errors; the content is provided as is, without express or implied warranties of any kind. 9: Scheduling Jobs onto Intel Xeon Phi using PBS Professional PBS Works is a division of