Developing Open Source in Service to National Security - ORNL Visit

C416a04a16b233e65afd993815c167dd?s=47 Ian Lee
June 28, 2017

Developing Open Source in Service to National Security - ORNL Visit

Ever wondered what software gets developed at a national laboratory? Thanks to the open source efforts of LLNL, you don't have to wonder any longer!

This talk will highlight the ongoing expansion of the open source community inside one Department of Energy research lab. These developers bring software and tools which support science and security, issues of national importance, into the open source community. The talk will also describe the unique challenge of bringing decades old software projects and historically closed source developers into the open source community for the first time.

-- Updated version of slides presented at ORNL in June 2017 --

C416a04a16b233e65afd993815c167dd?s=128

Ian Lee

June 28, 2017
Tweet

Transcript

  1. LLNL-PRES-702741 This work was performed under the auspices of the

    U.S. Department of Energy by Lawrence Livermore National Laboratory under contract DE-AC52-07NA27344. Lawrence Livermore National Security, LLC Developing Open Source in Service to National Security ORNL Visit Ian Lee Lawrence Livermore National Laboratory June 28, 2017
  2. LLNL-PRES-702741 2 software.llnl.gov

  3. LLNL-PRES-702741 3 software.llnl.gov

  4. LLNL-PRES-702741 4 software.llnl.gov https://upload.wikimedia.org/wikipedia/commons/a/a8/U.S._National_labs_map.jpg

  5. LLNL-PRES-702741 5 software.llnl.gov http://www.ex-astris-scientia.org/articles/new_enterprise/enterprise-warpcore.jpg

  6. LLNL-PRES-702741 6 software.llnl.gov https://pixabay.com/get/e833b10d2af4083ed1534705fb0938c9bd22ffd41db612439df7c17ba0/silos-1602209_1920.jpg

  7. LLNL-PRES-702741 7 software.llnl.gov 1960s 1970s 1980s 1990s 2000s 2010s Pioneering

    simulations of particle tracking CDC 3600 CDC 7600 Ozone mixing models CRAY 1 ASCI Blue- Pacific Helping the medical community plan radiation treatment Unprecedented dislocation dynamics simulations BlueGene Breakthrough visualizations of mixing fluids Dynamics in three dimensions Global climate modeling Detailed predictions of ecosystems Petascale and exascale computing
  8. LLNL-PRES-702741 8 software.llnl.gov § 3 out of 16 #1 systems

    over last 20 years Top500.org ASCI White Nov 2000 – Nov 2001 BlueGene/L Nov 2004 – Nov 2007 Sequoia June 2012 https://www.top500.org/resources/top-systems/
  9. LLNL-PRES-702741 9 software.llnl.gov TOSS – Tri-Lab Operating System Software §

    Built on Red Hat Enterprise Linux — Not an HPC distribution § Adds LLNL developed additions and patches to support HPC — Low Latency Interconnect: Infiniband — Parallel File System: Lustre — Resource Manager: SLURM § Work closely with open communities Components not in TOSS Supported Linux Commodity Hardware Platform Kernel, Infiniband, Message Passing Interface Batch Scheduler (MOAB) User Environment Lustre File Systems Compiler & Development Tools Resource Manager (SLURM) TOSS Components HPSS Hopper LLNL-PRES-550311 TOSS is a software stack for HPC – large, interconnected clusters!
  10. LLNL-PRES-702741 10 software.llnl.gov § Began as simple resource manager —

    Now scalable to 1.6M+ cores (sequoia) § Launch and manage parallel jobs — Large, parallel jobs, often MPI § Queuing and scheduling of jobs — Much more work than resources http://slurm.schedmd.com http://www.ibm.com/developerworks/library/l-slurm-utility/figure3.gif
  11. LLNL-PRES-702741 11 software.llnl.gov http://flux-framework.github.io § Family of projects used to

    build site-customized resource management systems § flux-core — Implements the communication layer and lowest level services and interfaces § flux-sched — Consists of an engine that handles all the functionality common to scheduling § capacitor — A bulk execution manager using flux-core, handles running and monitoring 1000’s of jobs
  12. LLNL-PRES-702741 12 software.llnl.gov ZFS on Linux http://zfsonlinux.org § ZFS is

    an open source filesystem and volume manager designed to address the limitations of existing storage solutions § 2011: Available for Linux § Ten LLNL filesystems, totaling ~ 100PB § Ships in Ubuntu 16.04
  13. LLNL-PRES-702741 13 software.llnl.gov § Handles combinatorial explosion of ABI-incompatible packages

    § All versions coexist, binaries work regardless of user’s environment § Familiar syntax, reminiscent of brew, yum, etc $ spack install mpileaks unconstrained $ spack install mpileaks@3.3 @ custom version $ spack install mpileaks@3.3 %gcc@4.7.3 % custom compiler $ spack install mpileaks@3.3 %gcc@4.7.3 +threads +/- build option $ spack install mpileaks@3.3 os=SuSE11 os=<frontend OS> $ spack install mpileaks@3.3 os=CNL10 os=<backend OS> $ spack install mpileaks@3.3 os=CNL10 target=haswell target=<cpu target> SPACK http://software.llnl.gov/spack
  14. LLNL-PRES-702741 14 software.llnl.gov § Manages the first-ever decentralized database for

    handling climate science data § Multiple petabytes of data at dozens of federated sites worldwide § International collaboration for the software that powers most global climate change research https://github.com/ESGF http://esgf.llnl.gov
  15. LLNL-PRES-702741 15 software.llnl.gov VisIt § Originally developed to visualize and

    analyze the results of terascale simulations § Interactive, scalable, visualization, animation and analysis tool § Powerful, easy to use GUI § Distributed and parallel architecture allows handling extremely large data sets interactively http://visit.llnl.gov
  16. LLNL-PRES-702741 16 software.llnl.gov http://computation.llnl.gov/casc

  17. LLNL-PRES-702741 17 software.llnl.gov GitHub.com/LLNL – Repositories

  18. LLNL-PRES-702741 18 software.llnl.gov GitHub.com/LLNL – Languages

  19. LLNL-PRES-702741 19 software.llnl.gov GitHub.com/LLNL – Stargazers

  20. LLNL-PRES-702741 20 software.llnl.gov

  21. LLNL-PRES-702741 21 software.llnl.gov § “Federal Source Code Policy: Achieving Efficiency,

    Transparency, and Innovation through Reuseable and Open Source Software” — “Agencies shall make custom-developed code available for Government-wide reuse and make their code inventories discoverable at https://www.code.gov (“Code.gov”) […]” — “[…] establishes a pilot program that requires agencies, when commissioning new custom software, to release at least 20 percent of new custom-developed code as Open Source Software (OSS) […]” Federal Source Code Policy https://code.gov & https://sourcecode.cio.gov
  22. LLNL-PRES-702741 22 software.llnl.gov https://code.gov

  23. LLNL-PRES-702741 23 software.llnl.gov https://www.osti.gov/doecode/

  24. LLNL-PRES-702741 24 software.llnl.gov US Government Organizations on GitHub https://government.github.com/community/

  25. Thank You! ian@llnl.gov @IanLee1521 // @LLNL_OpenSource