February 21, 2014 to July 18, 2014
Europe/Zurich timezone

Scientific Program

Schedule

February 21, 2014: Welcome, Install session, Motivation (IPP, Astro, ITP), System aspects (ISG)

February 28, 2014: Software Carpentry - Software design best practices, basics of software projects, versioning, profiling ,…

March 1, 2014: Software Carpentry - Programming techniques

June 26+27, 2014: More specific high performance computational aspects

July 14+15, 2014: Aspects of more scientific relevance, with particular weight on particle physics and astrophysics.

 

Preliminary contents


Day 1 - HIT E 51

Welcome
Install session

Give participants the opportunity to install the software / libraries they'll need for the rest of the workshop, help provided.

Motivation

Show nice examples from everyday work in IPP, ITP and Astro, how to speed up a naive program, visualization examples…

System aspects
  • fat node vs. NUMA vs. cluster vs. cloud vs. GPGPU
  • single core vs. multithread vs. multicore vs. multihost
  • I/O bound vs. CPU bound vs. Mem bound, high cost of IPC
  • local storage vs. NFS vs. SMB
  • job control/queueing system: condor, torque…
  • communication: MPI, TIPC…
  • choice of programming language (Python might just not be the best choice in all cases..)
  • file formats, checkpointing…

     

Day 2+3 - HIT E 51 - 40 people max

Advanced tools and programming
  • revision systems (git)
  • make
  • python
  • advanced shell programming
  • testing etc.

     

Day 4+5

High Performance Aspects
  • OpenMP
  • Usage of MPI
  • some GPU introduction, and possibly optimization for GPU
  • Visualization

     

Day 6+7

Scientific methods in our communities

Algorithms and methods used for data analyses relevant for IPP and Astro

  • Monte Carlo Generation”: How to write your own MC generator; including efficient integration, sampling phase space etc.
  • “Multivariate analyses tools” ; principles and statistical analyses tools available; particular SW implementations, libraries, TMVA; examples and some hands-on;
  • Unfolding: algorithms: usage and implementations in HEP; image processing; specific examples and hands-on
  • Data mining, BigData