openhpc introduction

59
OpenHPC Introduction Adrian Reber CentOS Dojo CERN 2018 October 19

Upload: others

Post on 24-Oct-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: OpenHPC Introduction

OpenHPC Introduction

Adrian ReberCentOS Dojo CERN 2018October 19

Page 2: OpenHPC Introduction

What is OpenHPC?

2 CENTOS DOJO CERN 2018

Page 3: OpenHPC Introduction

Software Repository

3 CENTOS DOJO CERN 2018

Page 4: OpenHPC Introduction

yum and zypper

4 CENTOS DOJO CERN 2018

Page 5: OpenHPC Introduction

CentOS 7 and SLES 12

5 CENTOS DOJO CERN 2018

Page 6: OpenHPC Introduction

x86_64 and aarch64

6 CENTOS DOJO CERN 2018

Page 7: OpenHPC Introduction

Why OpenHPC?

7 CENTOS DOJO CERN 2018

Page 8: OpenHPC Introduction

Multiple Compilers

8 CENTOS DOJO CERN 2018

Page 9: OpenHPC Introduction

Multiple MPIs

9 CENTOS DOJO CERN 2018

Page 10: OpenHPC Introduction

Three compilersTwo versions each

Already six permutations

10 CENTOS DOJO CERN 2018

Page 11: OpenHPC Introduction

Six compiler permutationsThree MPIs

Two versions eachAlready 36 permutations

11 CENTOS DOJO CERN 2018

Page 12: OpenHPC Introduction

Common setup formany HPC sites

12 CENTOS DOJO CERN 2018

Page 13: OpenHPC Introduction

What is OpenHPC?

13 CENTOS DOJO CERN 2018

Page 14: OpenHPC Introduction

Community effort toreduce duplication

14 CENTOS DOJO CERN 2018

Page 15: OpenHPC Introduction

OpenHPC: Mission and Vision

Vision: OpenHPC components and best practices will enable and accelerateinnovation and discoveries by broadening access to state-of-the-art, open-sourceHPC methods and tools in a consistent environment, supported by a collaborative,worldwide community of HPC users, developers, researchers, administrators, andvendors.

15 CENTOS DOJO CERN 2018

Page 16: OpenHPC Introduction

OpenHPC: Mission and Vision

Mission: to provide a reference collection of open-source HPC softwarecomponents and best practices, lowering barriers to deployment, advancement,and use of modern HPC methods and tools.

16 CENTOS DOJO CERN 2018

Page 17: OpenHPC Introduction

OpenHPC: Current Project Members

17 CENTOS DOJO CERN 2018

Page 18: OpenHPC Introduction

OpenHPC: Current TSC Members• Reese Baird, Intel (Maintainer)• Brayford, LRZ (Maintainer)• Coulter, Indiana University (End-User/Site Representative)• Chris Downing, Red Oak Consulting (Maintainer)• Craig Gardner, SUSE (Maintainer)• Renato Golin, Linaro (Testing Coordinator)• Michael Karo, Altair (Maintainer)• Janet Lebens, Cray (Maintainer)• Thomas Moschny, ParTec (Maintainer)• Takayuki Okamoto, Fujitsu (Maintainer)• Kevin Pedretti, Sandia National Laboratory (Maintainer)• Paul Peltz, Los Alamos National Laboratory (Maintainer)• Nam Pho, Harvard Medical School (Maintainer)• Cyrus Proctor, Texas Advanced Computing Center (Maintainer)• Adrian Reber, Red Hat (Maintainer)• Karl W. Schulz, UT Austin (Project Lead, Testing Coordinator)• Jeff Schutkoske, Cray (Component Development Representative)• Derek Simmel, Pittsburgh Supercomputing Center (End-User/Site Representative)• Chris Simmons, UT Dallas (Maintainer)• Nirmala Sundararajan, Dell (Maintainer)

18 CENTOS DOJO CERN 2018

Page 19: OpenHPC Introduction
Page 20: OpenHPC Introduction

Building Blocks: Pick and Choose

20 CENTOS DOJO CERN 2018

Page 21: OpenHPC Introduction

OpenHPC: Project History

21 CENTOS DOJO CERN 2018

Page 22: OpenHPC Introduction

OpenHPC: Number of Components

v1.0

v1.0.1

v1.1

v1.1.1

v1.2

v1.2.1

v1.3v1.3.1

v1.3.2

v1.3.3 v1.3.4

v1.3.5

40

45

50

55

60

65

70

75

80

85

Jul-15 Jan-16 Aug-16 Mar-17 Sep-17 Apr-18 Oct-18

# of

Com

pone

ts In

clud

ed

22 CENTOS DOJO CERN 2018

Page 23: OpenHPC Introduction

OpenHPC: Components Changed

1.8%

33.9%

8.1%

51.6%

4.5%

25.8%

40.9%

31.9%

26.7%

41.6%43.8%

0%

10%

20%

30%

40%

50%

60%

v1.0.1 v1.1 v1.1.1 v1.2 v1.2.1 v1.3 v1.3.1 v1.3.2 v1.3.3 v1.3.4 v1.3.5

% C

ompo

nets

Upd

ated

23 CENTOS DOJO CERN 2018

Page 24: OpenHPC Introduction

What is OpenHPC?

24 CENTOS DOJO CERN 2018

Page 25: OpenHPC Introduction

Software Repository

25 CENTOS DOJO CERN 2018

Page 26: OpenHPC Introduction

Including:Lmod

26 CENTOS DOJO CERN 2018

Page 27: OpenHPC Introduction

Including:Provisioning: Warewulf

27 CENTOS DOJO CERN 2018

Page 28: OpenHPC Introduction

Including:Provisioning: xCAT

28 CENTOS DOJO CERN 2018

Page 29: OpenHPC Introduction

Including:Monitoring: Nagios

29 CENTOS DOJO CERN 2018

Page 30: OpenHPC Introduction

Including:Monitoring: Ganglia

30 CENTOS DOJO CERN 2018

Page 31: OpenHPC Introduction

Including:Resource Manager: PBS Pro

31 CENTOS DOJO CERN 2018

Page 32: OpenHPC Introduction

Including:Resource Manager: Slurm

32 CENTOS DOJO CERN 2018

Page 33: OpenHPC Introduction

Including:Compiler: GCC

33 CENTOS DOJO CERN 2018

Page 34: OpenHPC Introduction

Including:Compiler: LLVM

34 CENTOS DOJO CERN 2018

Page 35: OpenHPC Introduction

Including:Compiler: Intel

35 CENTOS DOJO CERN 2018

Page 36: OpenHPC Introduction

Including:Compiler: ARM

36 CENTOS DOJO CERN 2018

Page 37: OpenHPC Introduction

Including:MPI: Open MPI

37 CENTOS DOJO CERN 2018

Page 38: OpenHPC Introduction

Including:MPI: MVAPICH2

38 CENTOS DOJO CERN 2018

Page 39: OpenHPC Introduction

Including:MPI: MPICH

39 CENTOS DOJO CERN 2018

Page 40: OpenHPC Introduction

Including:MPI: Intel

40 CENTOS DOJO CERN 2018

Page 41: OpenHPC Introduction

Including:EasyBuild

41 CENTOS DOJO CERN 2018

Page 42: OpenHPC Introduction

Including:Spack

42 CENTOS DOJO CERN 2018

Page 43: OpenHPC Introduction

Including:Charliecloud

43 CENTOS DOJO CERN 2018

Page 44: OpenHPC Introduction

Including:Singularity

44 CENTOS DOJO CERN 2018

Page 45: OpenHPC Introduction

Including:Lustre Client

45 CENTOS DOJO CERN 2018

Page 46: OpenHPC Introduction

Including:BeeGFS Client

46 CENTOS DOJO CERN 2018

Page 47: OpenHPC Introduction

Including:Lot’s of different libraries

47 CENTOS DOJO CERN 2018

Page 48: OpenHPC Introduction

But not just aSoftware Repository

48 CENTOS DOJO CERN 2018

Page 49: OpenHPC Introduction

Excellent DocumentationIncluding Recipes

49 CENTOS DOJO CERN 2018

Page 50: OpenHPC Introduction

Each Release iscompletely tested

50 CENTOS DOJO CERN 2018

Page 51: OpenHPC Introduction

OpenHPC: Same Interface Everywhere

51 CENTOS DOJO CERN 2018

Page 52: OpenHPC Introduction

Some Technical Details

52 CENTOS DOJO CERN 2018

Page 53: OpenHPC Introduction

Based on RPM

53 CENTOS DOJO CERN 2018

Page 54: OpenHPC Introduction

Tries to avoid Conflicts

# repoquery --whatprovides "libopenblas.so.0()(64bit)”openblas-0:0.2.20-3.el7.x86_64openblas-gnu7-ohpc-0:0.2.20-1.ohpc.x86_64

# repoquery --whatprovides "libltdl.so.7()(64bit)"libtool-ltdl-0:2.4.2-22.el7_3.x86_64libtool-ohpc-0:2.4.6-1.x86_64

54 CENTOS DOJO CERN 2018

Page 55: OpenHPC Introduction

RPM ColoringOpenHPC RPMs add ”(ohpc)” color string to shared objects (.so) for ”Provides:”and ”Requires:”:

# cat /usr/lib/rpm/fileattrs/ohpc.attr%__ohpc_provides /usr/lib/rpm/ohpc-find-provides%__ohpc_requires /usr/lib/rpm/ohpc-find-requires %{buildroot} /opt/ohpc

%__ohpc_path ^/opt/ohpc%__elf_exclude_path ^/opt/ohpc

%__ohpc_magic ^ELF (32|64)-bit.*$%__ohpc_flags magic_and_path

55 CENTOS DOJO CERN 2018

Page 56: OpenHPC Introduction

RPM Coloring# rpm -q --requires gnu7-compilers-ohpc | egrep “libc.so|libgc”

Without coloring With coloringlibgcc_s.so.1()(64bit) libgcc_s.so.1()(64bit)(ohpc)libgcc_s.so.1(GCC_3.0)(64bit) libgcc_s.so.1(GCC_3.0)(64bit)(ohpc)libgcc_s.so.1(GCC_3.3)(64bit) libgcc_s.so.1(GCC_3.3)(64bit)(ohpc)libgcc_s.so.1(GCC_4.2.0)(64bit) libgcc_s.so.1(GCC_4.2.0)(64bit)(ohpc)

libc.so.6()(64bit) libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit) libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.11)(64bit) libc.so.6(GLIBC_2.11)(64bit)libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.14)(64bit)

56 CENTOS DOJO CERN 2018

Page 57: OpenHPC Introduction

OpenHPC Home: https://openhpc.community/Primary GitHub Site: https://github.com/openhpc/ohpcBuildsystem: https://build.openhpc.community/Package Repositories: http://build.openhpc.community/OpenHPC:/Component Submission: https://github.com/openhpc/submissionsSystem Registry: System Registration FormCI Infrastructure: http://test.openhpc.community:8080/OpenHPC Wiki: https://github.com/openhpc/ohpc/wikiMailing Lists: https://openhpc.community/support/mail-lists/

57 CENTOS DOJO CERN 2018

Page 58: OpenHPC Introduction

THANK YOU

Page 59: OpenHPC Introduction