$30 off During Our Annual Pro Sale. View Details »

Developing Open Source in Service to National Security

Ian Lee
September 14, 2016

Developing Open Source in Service to National Security

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.

Ian Lee

September 14, 2016
Tweet

More Decks by Ian Lee

Other Decks in Technology

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 Na3onal Security
    GitHub Universe
    Ian Lee
    Lawrence Livermore Na5onal Laboratory
    September 14, 2016

    View Slide

  2. LLNL-PRES-702741
    2
    so9ware.llnl.gov

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  7. LLNL-PRES-702741
    7
    so9ware.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

    View Slide

  8. LLNL-PRES-702741
    8
    so9ware.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/

    View Slide

  9. LLNL-PRES-702741
    9
    so9ware.llnl.gov
    TOSS – Tri-Lab Opera3ng System So@ware
    §  Built on Red Hat Enterprise Linux
    —  Not an HPC distribu5on
    §  Adds LLNL developed addi5ons and
    patches to support HPC
    —  Low Latency Interconnect: Infiniband
    —  Parallel File System: Lustre
    —  Resource Manager: SLURM
    §  Work closely with open communi5es
    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!

    View Slide

  10. LLNL-PRES-702741
    10
    so9ware.llnl.gov
    §  Began as simple resource manager
    —  Now scalable to 1.6M+ cores (sequoia)
    §  Launch and manage parallel jobs
    —  Large, parallel jobs, o9en MPI
    §  Queuing and scheduling of jobs
    —  Much more work than resources
    hCp://slurm.schedmd.com
    http://www.ibm.com/developerworks/library/l-slurm-utility/figure3.gif

    View Slide

  11. LLNL-PRES-702741
    11
    so9ware.llnl.gov
    hCp://flux-framework.github.io
    §  Family of projects used to build site-customized resource management systems
    §  flux-core
    —  Implements the communica5on layer and lowest level services and interfaces
    §  flux-sched
    —  Consists of an engine that handles all the func5onality common to scheduling
    §  capacitor
    —  A bulk execu5on manager using flux-core, handles running and monitoring 1000’s of jobs

    View Slide

  12. LLNL-PRES-702741
    12
    so9ware.llnl.gov
    ZFS on Linux
    hCp://zfsonlinux.org
    §  ZFS is an open source filesystem and volume
    manager designed to address the limita5ons
    of exis5ng storage solu5ons
    §  2011: Available for Linux
    §  Ten LLNL filesystems, totaling ~ 100PB
    §  Ships in Ubuntu 16.04

    View Slide

  13. LLNL-PRES-702741
    13
    so9ware.llnl.gov
    §  Handles combinatorial explosion of
    ABI-incompa5ble packages
    §  All versions coexist, binaries work
    regardless of user’s environment
    §  Familiar syntax, reminiscent of brew, yum, etc
    !
    !
    !
    $ spack install mpileaks unconstrained!
    $ spack install [email protected] @ custom version!
    $ spack install [email protected] %[email protected] % custom compiler!
    $ spack install [email protected] %[email protected] +threads +/- build option!
    $ spack install [email protected] os=SuSE11 os=!
    $ spack install [email protected] os=CNL10 os=!
    $ spack install [email protected] os=CNL10 target=haswell target=!
    SPACK
    hCp://[email protected]/spack

    View Slide

  14. LLNL-PRES-702741
    14
    so9ware.llnl.gov
    §  Manages the first-ever decentralized
    database for handling climate science data
    §  Mul5ple petabytes of data at dozens of
    federated sites worldwide
    §  International collaboration for the
    software that powers most global
    climate change research
    hCps://github.com/ESGF
    hCp://esgf.llnl.gov

    View Slide

  15. LLNL-PRES-702741
    15
    so9ware.llnl.gov
    VisIt
    §  Originally developed to visualize and
    analyze the results of terascale
    simula5ons
    §  Interac5ve, scalable, visualiza5on,
    anima5on and analysis tool
    §  Powerful, easy to use GUI
    §  Distributed and parallel architecture
    allows handling extremely large data
    sets interac5vely
    hCp://visit.llnl.gov

    View Slide

  16. LLNL-PRES-702741
    16
    so9ware.llnl.gov
    hCp://computa3on.llnl.gov/casc

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

  20. LLNL-PRES-702741
    20
    so9ware.llnl.gov
    [email protected]

    View Slide

  21. LLNL-PRES-702741
    21
    so9ware.llnl.gov
    §  “Federal Source Code Policy: Achieving Efficiency, Transparency, and Innova5on
    through Reuseable and Open Source So9ware”
    —  “Agencies shall make custom-developed code available for Government-wide reuse and
    make their code inventories discoverable at hmps://www.code.gov (“Code.gov”) […]”
    —  “[…] establishes a pilot program that requires agencies, when commissioning new custom
    so9ware, to release at least 20 percent of new custom-developed code as Open Source
    So9ware (OSS) […]”
    Federal Source Code Policy

    View Slide

  22. LLNL-PRES-702741
    22
    so9ware.llnl.gov
    US Government Organiza3ons on GitHub
    https://government.github.com/community/

    View Slide

  23. Thank You!
    @IanLee1521 // @LLNL_OpenSource
    [email protected]

    View Slide