Introduction to Python University of Oxford Department of Particle Physics

Total Page:16

File Type:pdf, Size:1020Kb

Introduction to Python University of Oxford Department of Particle Physics Particle Physics Cluster Infrastructure Introduction University of Oxford Department of Particle Physics October 2019 Vipul Davda Particle Physics Linux Systems Administrator Room 661 Telephone: x73389 [email protected] Particle Physics Computing Overview 1 Particle Physics Linux Infrastructure Distributed File System gluster NFS /data Worker Nodes /data/atlas /data/lhcb NFS HTCondor /home Batch Server Interactive Servers physics_s/eduroam Network Printer Managed Laptops Managed Desktops Particle Physics Computing Overview 2 Introduction to the Unix Operating System Unix is a Multi-User/Multi-Tasking operating system. Developed in 1969 at AT&T’s Bell Labs by Ken Thompson (Unix) Dennis Ritchie (C) Unix is written in C programming language. Unix was originally a command-line OS, but now has a graphical user interface. It is available in many different forms: Linux , Solaris, AIX, HP-UX, freeBSD It is a well-suited environment for program development: C, C++, Java, Fortran, Python… Unix is mainly used on large servers for scientific applications. Particle Physics Computing Overview 3 Linux Distributions Source: https://www.muylinux.com/2009/04/24/logos-de-distribuciones-gnulinux/ Particle Physics Computing Overview 4 Particle Physics Linux Infrastructure Particle Physics uses CentOS Linux on the cluster. It is a free version of RedHat Enterprise Linux. Particle Physics Computing Overview 5 Basic Linux Commands Particle Physics Computing Overview 6 Basic Linux Commands o ls - list directory contents ls –l - long listing ls -a - list all files including hidden file beginning with a dot “.”. ls -ld * - list details about a directory and not its contents ls –lh - give human readable file sizes ls –lS - sort files by file size ls –lt - sort files by modification time o cd – change directory $ cd /data/atlas/ o pwd - print name of working directory $ pwd o ~ (tilde) $ cd ~ Particle Physics Computing Overview 7 Basic Linux Commands o cp – copy file $ cp file1.txt file2.txt o mv – rename file/directory $ mv somefilename.txt file.txt o mkdir – create directory $ mkdir mydata o rm – delete file $ rm myfile o cat - concatenate files and print on the standard output $ cat ~/somefilename.txt Particle Physics Computing Overview 8 Basic Linux Commands otar - tape archive $ tar cvfp mydata.tar mydata/ ogzip - compress files $ gzip mydata.tar ountar and ungzip $ gzip -cd mydata.tar.gz | tar xvf – $ tar xvfz mydata.tar.gz Particle Physics Computing Overview 9 Basic Linux Commands o Disk usage $ df -h /data/snoplus Filesystem Size Used Avail Use% Mounted on pplxfs30.physics.ox.ac.uk:/data/snoplus 48T 38T 11T 79% /data/snoplus o File space usage $ du -sh ~/ 15G /home/davda/ tree - list contents of directories in a tree-like format. $ tree –L 3 –d ~/ | less $ tree –L 3 ~/ | less o find - search for files in a directory hierarchy $ find ~/ -name "*.py" Particle Physics Computing Overview 10 Basic Linux Commands o which - shows the full path of (shell) commands $ which ls /usr/bin/ls o whereis - locate the binary, source, and manual page files for a command $ whereis ls ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz o locate - find files by name $ locate stdio.h Particle Physics Computing Overview 11 Linux Command Line Training Linux Command Line Training: https://www.linkedin.com/learning/learning-linux-command-line-2 Particle Physics Computing Overview 12 Environment Modules Particle Physics Computing Overview 13 Environment Modules CentOS comes with a set of core packages such as gcc, python, glibc etc. The version of each core package is locked to the version of the OS. For example, if later versions of gcc are required, the following options are available: Download and compile in your home area and update all paths manually. OR Use Environment modules. Environment modules allow you to load different versions of gcc, python, root etc. If you require any software which is not available as a module, please let us know. Particle Physics Computing Overview 14 How to use Environment Modules $ module avail ----------------- /network/software/el7//modules ----------------------------- editors/vim/8.1 gcc/8.1.0 genie/genie intel/2015 pygist/2.2 root/5.34.36_pythia6 texlive/2019forthon/0.8.35 geant4/10.4.2 git/2.21.0 lhapdf5/5.9.1 root/5.34.36 texlive/2018 warp/single ----------------- /etc/modulefiles ------------------------------------------- mpi/mpich-3.2-x86_64 Particle Physics Computing Overview 15 How to use Environment Modules $ module show gcc/8.1.0 ------------------------------------------------------------------- /network/software/el7//modules/gcc/8.1.0: module-whatis adds gcc 8.1.0 package to your environment prepend-path PATH /network/software/el7/compilers/gcc/8.1.0/bin prepend-path LD_LIBRARY_PATH /network/software/el7/compilers/gcc/8.1.0/lib64 prepend-path MANPATH /network/software/el7/compilers/gcc/8.1.0/share/man prepend-path LD_LIBRARY_PATH /network/software/el7/compilers/gcc/8.1.0/common/lib setenv CC gcc setenv MPICH_CC gcc setenv FC gfortran setenv MPICH_FC gfortran setenv F90 gfortran setenv MPICH_F90 gfortran setenv F77 gfortran setenv MPICH_F77 gfortran setenv CPP cpp setenv MPICH_CPP cpp setenv CXX g++ Particle Physics Computing Overview 16 How to use Environment Modules $ gcc –version gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36) Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ module load gcc/8.1.0 $ gcc –version gcc (GCC) 8.1.0Copyright (C) 2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ module unload gcc/8.1.0 Particle Physics Computing Overview 17 PP Batch Systems Particle Physics Computing Overview 18 What is HTCondor? HTCondor is a batch management system for compute-intensive jobs. Like other batch systems, HTCondor provides: job queueing mechanism scheduling policy resource monitoring resource management. HTCondor is very useful when you have an application that has to run a large number of times on different input data. HTCondor is installed on the PP CentOS 7 interactive nodes to make it possible to run a large number of computational processes, on different machines. For a more detailed overview on HTCondor, please see https://research.cs.wisc.edu/htcondor/description.html Particle Physics Computing Overview 19 HTCondor Batch System Worker Nodes Jobs are submitted from pplxint10 and pplxint11 /home and /data areas are HTCondor Batch Server mounted on all worker nodes. Interactive Servers There are ~400 logical CPUs on worker nodes to run jobs. Users Particle Physics Computing Overview 20 HTCondor Quick Start Guide Login to either pplxint10 or pplxint11. These are configured to submit jobs, to the HTCondor batch system. Particle Physics Computing Overview 21 HTCondor Simple Test Script Create an executable on hello.py one of the interactive #!/usr/bin/python nodes. import platform Test your executable on host=platform.node() print "Hello World - ", host an interactive node. print "finished" Particle Physics Computing Overview 22 HTCondor Creating a Submit Description File For example, a simple submit file to run hello.py in the batch queue. myjob.submit In order to run a job on one of ####################################### the worker nodes, create a # HTCondor Submit Description File. # Author: submit file which sets # Date: environment variables for the # Description: batch queue. ####################################### executable = hello.py universe = vanilla output = output/results.output.$(Process) error = error/results.error.$(Process) log = log/results.log.$(Process) queue 1 Particle Physics Computing Overview 23 HTCondor Submit file executable: The script or command that HTCondor runs. output: Where the STDOUT of the command or script should be written to. This can be a relative or absolute path. Please note that the directory “output” will not be created, and will error if the directory does not exist. error: Where the STDERR of the command or script would be written to. The same rules apply as for output. log: This is the output of HTCondor's logs for the job. It will show the submission times, execution host and times, and on termination, it will show the stats. Please note it is not logging for the executable, hello.py, in our example queue: This schedules the job. It becomes more important (along with the interpolation) when the queue is used to schedule multiple jobs, by taking an integer as a value. Particle Physics Computing Overview 24 HTCondor Submitting a Job A job is added to the HTCondor queue, by using “condor_submit” command for it to be run. Simply run the command: $ condor_submit myjob.submit Submitting job(s). 1 job(s) submitted to cluster 70. Note: Before submitting any jobs, always test, in order to make sure that both your submit file and executable work properly. Please bear in mind that submitting untested files and/or jobs will waste time and resources if they fail. Particle Physics Computing Overview 25 HTCondor Submitting a Job condor_submit <submit_file>: Submits jobs to the HTCondor queue, according to the information specified in submit_file. Useful options: -dry-run <dest_file> : this option parses the submit file and saves all the related information (name and locations of input and output files after expanding
Recommended publications
  • Push-Based Job Submission Using Reverse SSH Connections
    rvGAHP – Push-Based Job Submission using Reverse SSH Connections Scott Callaghan Gideon Juve Karan Vahi University of Southern California USC Information Sciences Institute USC Information Sciences Institute Los Angeles, California Marina Del Rey, California Marina Del Rey, California [email protected] [email protected] [email protected] Philip J. Maechling Thomas H. Jordan Ewa Deelman University of Southern California University of Southern California USC Information Sciences Institute Los Angeles, California Los Angeles, California Marina Del Rey, California [email protected] [email protected] [email protected] ABSTRACT using Reverse SSH Connections. In WORKS’17: WORKS’17: 12th Workshop Computational science researchers running large-scale scientific on Workflows in Support of Large-Scale Science, November 12–17, 2017, Denver, CO, USA. ACM, New York, NY, USA, 8 pages. https://doi.org/10.1145/3150994. workflow applications often want to run their workflows onthe 3151003 largest available compute systems to improve time to solution. Workflow tools used in distributed, heterogeneous, high perfor- mance computing environments typically rely on either a push- 1 INTRODUCTION based or a pull-based approach for resource provisioning from these Modern scientific applications typically require the execution of compute systems. However, many large clusters have moved to multiple codes, may include computational and data dependencies, two-factor authentication for job submission, making traditional au- and contain varied computational models ranging from a bag of tomated push-based job submission impossible. On the other hand, tasks to a monolithic parallel code. These applications are often pull-based approaches such as pilot jobs may lead to increased com- complex software suites with substantial computational and data plexity and a reduction in node-hour efficiency.
    [Show full text]
  • The Translational Journey of the Htcondor-CE
    Journal of Computational Science xxx (xxxx) xxx Contents lists available at ScienceDirect Journal of Computational Science journal homepage: www.elsevier.com/locate/jocs Principles, technologies, and time: The translational journey of the HTCondor-CE Brian Bockelman a,*, Miron Livny a,b, Brian Lin b, Francesco Prelz c a Morgridge Institute for Research, Madison, USA b Department of Computer Sciences, University of Wisconsin-Madison, Madison, USA c INFN Milan, Milan, Italy ARTICLE INFO ABSTRACT Keywords: Mechanisms for remote execution of computational tasks enable a distributed system to effectively utilize all Distributed high throughput computing available resources. This ability is essential to attaining the objectives of high availability, system reliability, and High throughput computing graceful degradation and directly contribute to flexibility, adaptability, and incremental growth. As part of a Translational computing national fabric of Distributed High Throughput Computing (dHTC) services, remote execution is a cornerstone of Distributed computing the Open Science Grid (OSG) Compute Federation. Most of the organizations that harness the computing capacity provided by the OSG also deploy HTCondor pools on resources acquired from the OSG. The HTCondor Compute Entrypoint (CE) facilitates the remote acquisition of resources by all organizations. The HTCondor-CE is the product of a most recent translational cycle that is part of a multidecade translational process. The process is rooted in a partnership, between members of the High Energy Physics community and computer scientists, that evolved over three decades and involved testing and evaluation with active users and production infrastructures. Through several translational cycles that involved researchers from different organizations and continents, principles, ideas, frameworks and technologies were translated into a widely adopted software artifact that isresponsible for provisioning of approximately 9 million core hours per day across 170 endpoints.
    [Show full text]
  • A Comprehensive Perspective on Pilot-Job Systems
    A Comprehensive Perspective on Pilot-Job Systems ∗ Matteo Turilli Mark Santcroos Shantenu Jha RADICAL Laboratory, ECE RADICAL Laboratory, ECE RADICAL Laboratory, ECE Rutgers University Rutgers University Rutgers University New Brunswick, NJ, USA New Brunswick, NJ, USA New Brunswick, NJ, USA [email protected] [email protected] [email protected] Pilot-Jobs provide a multi-stage mechanism to execute ABSTRACT workloads. Resources are acquired via a placeholder job and subsequently assigned to workloads. Pilot-Jobs are having Pilot-Job systems play an important role in supporting dis- a high impact on scientific and distributed computing [1]. tributed scientific computing. They are used to consume more They are used to consume more than 700 million CPU hours than 700 million CPU hours a year by the Open Science Grid a year [2] by the Open Science Grid (OSG) [3, 4] communi- communities, and by processing up to 1 million jobs a day for ties, and process up to 1 million jobs a day [5] for the ATLAS the ATLAS experiment on the Worldwide LHC Computing experiment [6] on theLarge Hadron Collider (LHC) [7] Com- Grid. With the increasing importance of task-level paral- puting Grid (WLCG) [8, 9]. A variety of Pilot-Job systems lelism in high-performance computing, Pilot-Job systems are used on distributed computing infrastructures (DCI): are also witnessing an adoption beyond traditional domains. Glidein/GlideinWMS [10, 11], the Coaster System [12], DI- Notwithstanding the growing impact on scientific research, ANE [13], DIRAC [14], PanDA [15], GWPilot [16], Nim- there is no agreement upon a definition of Pilot-Job system rod/G [17], Falkon [18], MyCluster [19] to name a few.
    [Show full text]
  • EGI Federated Platforms Supporting Accelerated Computing
    EGI federated platforms supporting accelerated computing PoS(ISGC2017)020 Paolo Andreetto Jan Astalos INFN, Sezione di Padova Institute of Informatics Slovak Academy of Sciences Via Marzolo 8, 35131 Padova, Italy Bratislava, Slovakia E-mail: [email protected] E-mail: [email protected] Miroslav Dobrucky Andrea Giachetti Institute of Informatics Slovak Academy of Sciences CERM Magnetic Resonance Center Bratislava, Slovakia CIRMMP and University of Florence, Italy E-mail: [email protected] E-mail: [email protected] David Rebatto Antonio Rosato INFN, Sezione di Milano CERM Magnetic Resonance Center Via Celoria 16, 20133 Milano, Italy CIRMMP and University of Florence, Italy E-mail: [email protected] E-mail: [email protected] Viet Tran Marco Verlato1 Institute of Informatics Slovak Academy of Sciences INFN, Sezione di Padova Bratislava, Slovakia Via Marzolo 8, 35131 Padova, Italy E-mail: [email protected] E-mail: [email protected] Lisa Zangrando INFN, Sezione di Padova Via Marzolo 8, 35131 Padova, Italy E-mail: [email protected] While accelerated computing instances providing access to NVIDIATM GPUs are already available since a couple of years in commercial public clouds like Amazon EC2, the EGI Federated Cloud has put in production its first OpenStack-based site providing GPU-equipped instances at the end of 2015. However, many EGI sites which are providing GPUs or MIC coprocessors to enable high performance processing are not directly supported yet in a federated manner by the EGI HTC and Cloud platforms. In fact, to use the accelerator cards capabilities available at resource centre level, users must directly interact with the local provider to get information about the type of resources and software libraries available, and which submission queues must be used to submit accelerated computing workloads.
    [Show full text]
  • Experimental Study of Remote Job Submission and Execution on LRM Through Grid Computing Mechanisms
    Experimental Study of Remote Job Submission and Execution on LRM through Grid Computing Mechanisms Harshadkumar B. Prajapati Vipul A. Shah Information Technology Department Instrumentation & Control Engineering Dharmsinh Desai University Department Nadiad, INDIA Dharmsinh Desai University e-mail: [email protected], Nadiad, INDIA [email protected] e-mail: [email protected], [email protected] Abstract —Remote job submission and execution is The fundamental unit of work-done in Grid fundamental requirement of distributed computing done computing is successful execution of a job. A job in using Cluster computing. However, Cluster computing Grid is generally a batch-job, which does not interact limits usage within a single organization. Grid computing with user while it is running. Higher-level Grid environment can allow use of resources for remote job services and applications use job submission and execution that are available in other organizations. This execution facilities that are supported by a Grid paper discusses concepts of batch-job execution using LRM and using Grid. The paper discusses two ways of middleware. Therefore, it is very important to preparing test Grid computing environment that we use understand how a job is submitted, executed, and for experimental testing of concepts. This paper presents monitored in Grid computing environment. experimental testing of remote job submission and Researchers and scientists who are working in higher- execution mechanisms through LRM specific way and level Grid services and applications do not pay much Grid computing ways. Moreover, the paper also discusses attention to the underlying Grid infrastructure in their various problems faced while working with Grid published work.
    [Show full text]
  • Pilot-Job Provisioning Through CREAM Computing Elements on the Worldwide LHC Computing Grid Alexandre Boyer, David Hill, Christophe Haen, Federico Stagni
    Pilot-Job Provisioning through CREAM Computing Elements on the Worldwide LHC Computing Grid Alexandre Boyer, David Hill, Christophe Haen, Federico Stagni To cite this version: Alexandre Boyer, David Hill, Christophe Haen, Federico Stagni. Pilot-Job Provisioning through CREAM Computing Elements on the Worldwide LHC Computing Grid. 34th European Simulation and Modelling Conference (ESM), Oct 2020, Toulouse, France. hal-03191075 HAL Id: hal-03191075 https://hal.archives-ouvertes.fr/hal-03191075 Submitted on 6 Apr 2021 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Pilot-Job Provisioning through CREAM Computing Elements on the Worldwide LHC Computing Grid Alexandre F. Boyer1,2, David R.C. Hill1, Christophe Haen2, Federico Stagni2 {alexandre.franck.boyer, christophe.haen, federico.stagni}@cern.ch, [email protected] 1 Université Clermont Auvergne, ISIMA, CNRS, LIMOS, Clermont-Ferrand, France 2 European Organization for Nuclear Research, Meyrin, Switzerland Abstract The push model, used to manage Computing Grid resources, raises several issues that prevent employing the resources at their full capacity and, thus, limits the Grid throughput. While the push model remains necessary to get access to the resources, this paper aims at addressing some of these issues to make better use of the Worldwide LHC Computing Grid.
    [Show full text]
  • The NMI Build & Test Laboratory: Continuous Integration Framework
    The NMI Build & Test Laboratory: Continuous Integration Framework for Distributed Computing Software Andrew Pavlo, Peter Couvares, Rebekah Gietzel, Anatoly Karp, Ian D. Alderman, and Miron Livny – University of Wisconsin-Madison Charles Bacon – Argonne National Laboratory ABSTRACT We present a framework for building and testing software in a heterogeneous, multi-user, distributed computing environment. Unlike other systems for automated builds and tests, our framework is not tied to a specific developer tool, revision control system, or testing framework, and allows access to computing resources across administrative boundaries. Users define complex software building procedures for multiple platforms with simple semantics. The system balances the need to continually integrate software changes while still providing on-demand access for developers. Our key contributions in this paper are: (1) the development of design principles for distributed build-and-test systems, (2) a description of an implemented system that satisfies those principles, and (3) case studies on how this system is used in practice at two sites where large, multi-component systems are built and tested. Introduction To build and test any application, users explicitly define the execution workflow of build-and-test proce- Frequently building and testing software yields dures, along with any external software dependencies many benefits [10, 14, 17]. This process, known as and target platforms, using a lightweight declarative continuous integration, allows developers to recognize syntax. The NMI Build & Test software stores this and respond to problems in their applications as they information in a central repository to ensure every build are introduced, rather than be inundated with software or test is reproducible.
    [Show full text]
  • Workload Schedulers - Genesis, Algorithms and Comparisons
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE International Journal of Computer Science and Software Engineering (IJCSSE), Volume 4, Issue 6, June 2015 provided by WestminsterResearch ISSN (Online): 2409-4285 www.IJCSSE.org Page: 141-155 Workload Schedulers - Genesis, Algorithms and Comparisons Leszek Sliwko1 and Vladimir Getov2 1, 2 Faculty of Science and Technology, University of Westminster, 115 New Cavendish Street, United Kingdom [email protected], [email protected] ABSTRACT especially for online request scheduling [60]. However, In this article we provide brief descriptions of three classes of not taking into account additional factors such as current schedulers: Operating Systems Process Schedulers, Cluster server load, network infrastructure or storage availability Systems Jobs Schedulers and Big Data Schedulers. We describe may result in an inefficient utilization of available their evolution from early adoptions to modern implementations, machines and overall higher operational system costs. considering both the use and features of algorithms. In summary, More complex algorithms rely on the availability of static we discuss differences between all presented classes of schedulers and discuss their chronological development. In infrastructure data such as CPU speed, installed memory conclusion we highlight similarities in the focus of scheduling etc. As an example we find largest remaining processing strategies design, applicable to both local and distributed systems. time on fastest machine rule (LRPT-FM), where the job with the most remaining processing time is assigned to Keywords: Schedulers, Workload, Cluster, Cloud, Process, Big fastest machine [45]. LRPT_FM approach offers clear Data. advantages in heterogeneous environments, where the system is composed from machines with different configurations.
    [Show full text]
  • Nordugrid ARC 6 Information Release ARC6
    NorduGrid ARC 6 Information Release ARC6 NorduGrid Collaboration Sep 16, 2021 ARC OVERVIEW 1 ARC Overview 3 1.1 ARC CE components and the infrastructure ecosystem around...................3 2 Obtaining the software 5 3 Support and Community7 4 Documentation for Infrastructure Admins9 4.1 ARC Configuration Reference Document..............................9 4.2 ARC CE Deployment and Operation................................ 114 4.3 ARCHERY.............................................. 177 4.4 ARC Admin Tools Reference.................................... 197 5 Technical Documents Describing ARC Components 227 5.1 ARC Data Services Technical Description.............................. 227 5.2 ARC Next Generation Accounting Technical Details........................ 266 5.3 ARC CE REST interface specification................................ 271 5.4 ARCHERY data model and DNS records rendering......................... 282 5.5 Old Relevant Technical Documents................................. 286 5.6 Legacy JURA Accounting Technical Details............................ 288 5.7 ARC Accounting Database Schema................................. 292 6 Documentation for Developers 293 6.1 Implementation Details for Developers............................... 293 6.2 Contributing to Documentation................................... 304 7 Documentation for Infrastructure Users 311 7.1 Installing ARC Client Tools..................................... 311 7.2 Overview of ARC client tools.................................... 314 7.3 How to submit the job?.......................................
    [Show full text]
  • Freebsd in SCIENTIFIC COMPUTING
    SEE TEXT ONLY FreeBSD IN SCIENTIFIC COMPUTING By Jason Bacon I’ve been running both FreeBSD and Linux uninterrupted since the mid-1990s. I’ve run many different Linux distributions over the years, most recently focusing on CentOS. I also have significant experience with Mac OS X and NetBSD and have experimented with many other BSD platforms. As a staunch agnostic with a firm belief in the value of open standards, I like to remain familiar with all the options in the POSIX world so I’m always prepared to choose the best tool for the job. ver the years, I’ve watched barriers to rologists, neuropsychologists, cell biologists, psychia- FreeBSD use fall one by one. Open-source trists, and biophysicists. During most of this time, I Osoftware continues to spread like the Blob, was the sole IT support person for several labs, filling in niches once held exclusively by commercial peaking at over 60 researchers. I was responsible for and other closed-source software. maintaining many Unix workstations as well as OpenOffice/LibreOffice, OpenJDK, Clang, Flang, managing all the research software needed for fMRI and many other high-quality open-source products analysis. The need for a full-featured and extremely have made it possible for most people to do every- reliable operating system became very clear, very thing they need on FreeBSD with ease. The few quickly. FreeBSD answered that call and made it remaining limitations of what can be run on possible for me to single-handedly keep this impor- FreeBSD have become increasingly esoteric and tant research moving forward for many years.
    [Show full text]
  • Virtual Cluster Management for Analysis Of
    VIRTUAL CLUSTER MANAGEMENT FOR ANALYSIS OF GEOGRAPHICALLY DISTRIBUTED AND IMMOVABLE DATA Yuan Luo Submitted to the faculty of the University Graduate School in partial fulfillment of the requirements for the degree Doctor of Philosophy in the School of Informatics and Computing, Indiana University August 2015 Accepted by the Graduate Faculty, Indiana University, in partial fulfillment of the requirements for the degree of Doctor of Philosophy. Doctoral Committee Beth Plale, Ph.D. (Chairperson) Geoffrey Fox, Ph.D. Judy Qiu, Ph.D. Yuqing Wu, Ph.D. Philip Papadopoulos, Ph.D. August 7th, 2015 ii Copyright c 2015 Yuan Luo iii In loving memory of my grandfather. To my parents, my cousin, and all family members. iv Acknowledgements It has been a great pleasure working with the faculty, staff, and students at Indiana Univer- sity, during my seven-year PhD study. I would like to express my sincere gratitude to my advisor, Professor Beth Plale. This dissertation would never have been possible without her guidance, encouragement, challenges, and support throughout my research at Indiana Uni- versity. I am grateful for the many opportunities that Beth has provided for me to research, collaborate, publish, teach, and travel independently. I thank my other research committee members, Professor Geoffrey Fox, Professor Judy Qiu, Professor Yuqing Wu, and Dr. Philip Papadopoulos, for their invaluable discussion, ideas, and feedback. I also would like to thank Professor Xiaohui Wei, Dr. Peter Arzberger, and Dr. Wilfred Li for their mentorship before I joined Indiana University. I would never have started my PhD without their influence. I thank all current and past members in the Data to Insight Center at Indiana University for making the lab an enjoyable and stimulating place to work.
    [Show full text]
  • HPC Job Sceduling Co-Scheduling in HPC Clusters
    HPC Job Sceduling Co-scheduling in HPC Clusters October 26, 2018 Nikolaos Triantafyllis PhD student School of Electrical and Computer Engineering - N.T.U.A. Categories of Schedulers The majority of Schedulers could be categorized in: • Operating Systems Process Schedulers • Cluster Systems Jobs Schedulers • Big Data Schedulers 1 Operating Systems Process Schedulers • During scheduling events, an algorithm has to assign CPU times to tasks • Focus on responsiveness and low overhead • Most notable process schedulers: ◦ Cooperative Scheduling (CS) ◦ Multi-Level Feedback Queue (MLFQ) ◦ O(n) Scheduler ◦ O(1) Scheduler ◦ Completely Fair Scheduler (CFS) ◦ Brain F Scheduler (BFS) • CFS: Each process should have equal share of CPU time. Current Linux kernels use CFS • BFS: Improves interactivity, but lowers performance. Proposed in 2009 2 Cluster Systems Jobs Schedulers • During scheduling events, an algorithm has to assign nodes to jobs • Focus on scalability and high throughput • Most notable jobs schedulers: ◦ Simple Linux Utility for Resource Management (SLURM) ◦ Maui Cluster Scheduler (Maui) ◦ Moab High-Performance Computing Suite (Moab) ◦ Univa Grid Engine (UGE) ◦ LoadLeveler (LL) ◦ Load Sharing Facility (LSF) ◦ Portable Batch System (PBS) [OpenPBS, TORQUE, PBS Pro] ◦ Globus toolkit ◦ GridWay ◦ HTCondor ◦ Mesos ◦ Open MPI ◦ TORQUE ◦ Borg and Omega 3 Big Data Schedulers • During scheduling events, an algorithm has to assign nodes to jobs • Jobs have storage and processing of large and complex data sets • Support specialized frameworks and to a very limited set of problems • Most notable process schedulers: ◦ Dryad ◦ MapRedure ◦ Hadoop ◦ HaLoop ◦ Spark ◦ CIEL “Big Data: New York Stock Exchange produces about 1 TB of new trade data per day.” 4 Cluster Structure Figure 1: Typical resource management system 5 Job Submission example in SLURM § ¤¨ 1 #!/bin/bash 2 # Example with 48 MPI tasks and 24 tasks per node.
    [Show full text]