Lecture 1: How computing is changing our lives

  • Published on

  • View

  • Download

Embed Size (px)


This is the first lecture of the introductory course on high performance computing for applied physics students of the Department of Physics and Technology, Kharkiv Karazin Universityhttps://www.facebook.com/kharkivhpc


  • High performance computingfor non-programmers

    Lecture #1:How computing is changing our lives

    Glib Ivashkevychjunior researcher, NSC KIPT

  • VFX createdby Weta Digital

    rendered with Nvidia GPUs,25 times faster


  • Computing is everywhere

    Science & engineering



    Retail and many more...


  • Progress is huge

    CP-PACS2048 coresUniversity of Tsukuba, Nov 1996

    Tesla C2075448 coresby Nvidia, Sept 2011

  • Progress is huge

    ASCI Red9152 coresSandia National Lab, Nov 1997

    Tesla K20X1792 coresby Nvidia, Nov 2012

  • Progress is huge

    ASCI Red9152 coresSandia National Lab, Nov 1997

    First supercomputer built from commodity hardware

    Start of broadly available computing resources era

  • Progress is huge

    Computers help tosolve problems once unsolvable

    HPC is nowcheaper than ever,easier than ever,more accessible than ever

  • Computational revolutionScience: Human Brain Project

    Computers help tosolve problems once unsolvable

    50 PFLOPs for modeling of mouse brain1 EFLOPs for modeling of human brain

  • Computational revolutionScience: CERN IT infrastructure

    Computers help tosolve problems once unsolvable

    15 PBytes of data annually at LHC, global tiered infrastructure1 Tier 0, 11 Tier 1, 140 Tier 2 sites

  • Computational revolutionEngineering: Car crash simulation

    Computers help tosolve problems once unsolvable

    Finite-elements modelingMillions of equationsTens of thousands of crash simulations a month

  • Trends are clearVirtualization & Clouds

    Hybrid computing

    Big Data

    Green computing

  • Trends are clearGeneral purpose hardware

    Specialized software

    Open data

    Open source

    Skilled software developers are required

  • Syllabus

  • Why this course?

    Physicist with programming skillsis better than just physicist

    Put the landmarks

    Software development is a learnable skill

  • Logistics

    One lecture per week + a real-life example

    Weekly assignments

    Three projects

    Numerous tutorials

    Course virtual machine image

  • Block #1: Infrastructure

    Computer architectureLinux OSAmazon AWSHow its made. How to leverage good parts and avoid bad ones.

  • PythonC++ reviewJava review: optional

    How to choose right tool for the job.

    Block #2: Languages

  • Revision Control Systems: git, Github, BitBucketBuild automation: GNU makeDocumentation: SphinxTesting and Debugging: nose framework, pdb

    How to be a good citizen in software development world.

    Block #3: Tools & Workflow

  • Basic algorithms

    Design patterns

    How to create elegant and complex software architecture.

    Block #4: Software Design

  • Profiling and optimizationsThreads and OpenMPMPICUDA

    How to achieve performance.

    Block #5: Parallel software

  • Developing simple DropBox alternative

    Neural networks on GPU

    N-body simulations on GPU

    And now its time to apply everything weve learned to real-world problems.


  • Questions?