Advanced School on Scientific Software Development: Concepts and Tools | (smr 2330)
Go to day
-
-
08:30 - 10:00
REGISTRATION at the Adriatico Guesthouse, outside the Kastler Lecture Hall (Lower Level 1)
- 08:30 REGISTRATION at the Adriatico Guesthouse, outside the Kastler Lecture Hall (Lower Level 1) 1h30'
-
10:00 - 10:30
Introduction to the School
-
10:00
Introduction to the School
30'
Speaker: Organizers (S. Cozzini, A. Balaz, G. Giuliani)
-
10:00
Introduction to the School
30'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 11:45
Basic concepts of software engineering and maintenance
-
11:00
Basic concepts of software engineering and maintenance
45'
Speaker: Graziano Giuliani (ICTP Trieste/University of L'Aquila) Material: Lesson notes
-
11:00
Basic concepts of software engineering and maintenance
45'
-
11:45 - 12:45
Software lifecycle and writing of scientific codes
-
11:45
Software lifecycle and writing of scientific codes
1h0'
Material: Lesson notes
-
11:45
Software lifecycle and writing of scientific codes
1h0'
-
12:45 - 14:00
Lunch break
- 12:45 Lunch break 1h15'
-
14:00 - 15:00
Unix shell 1
Location: Adriatico Guest House Informatics Lab. -
14:00
Unix shell 1
1h0'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto) Material: Lesson notes
-
14:00
Unix shell 1
1h0'
-
15:00 - 16:00
Unix shell 2
Location: Adriatico Guest House Informatics Lab. -
15:00
Unix shell 2
1h0'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto)
-
15:00
Unix shell 2
1h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 17:30
Version control 1
Location: Adriatico Guest House Informatics Lab. -
16:30
Version control 1
1h0'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory) Material: Lesson notes
-
16:30
Version control 1
1h0'
-
17:30 - 18:30
Version control 2
Location: Adriatico Guest House Informatics Lab. -
17:30
Version control 2
1h0'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory) Material: Lesson notes
-
17:30
Version control 2
1h0'
-
08:30 - 10:00
REGISTRATION at the Adriatico Guesthouse, outside the Kastler Lecture Hall (Lower Level 1)
-
-
09:00 - 09:45
Compiling scientific codes: Basic concepts and tools (compilers & make)
-
09:00
Compiling scientific codes: Basic concepts and tools (compilers & make)
45'
Speaker: A. Balaz (Scientific Computing Laboratory, Institute of Physics Belgrade) Material: Lesson notes
-
09:00
Compiling scientific codes: Basic concepts and tools (compilers & make)
45'
-
09:45 - 10:30
Debugging scientific codes: Basic concepts and tools (gdb/ddd)
-
09:45
Debugging scientific codes: Basic concepts and tools (gdb/ddd)
45'
Speaker: A. Balaz (Scientific Computing Laboratory, Institute of Physics Belgrade) Material: Lesson notes
-
09:45
Debugging scientific codes: Basic concepts and tools (gdb/ddd)
45'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 11:45
Python 1: Shell and variables
-
11:00
Python 1: Shell and variables
45'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory) Material: Lesson notes
-
11:00
Python 1: Shell and variables
45'
-
11:45 - 12:30
Python 2: Sets/dicts/lists/tuples
Location: Adriatico Guest House Informatics Lab. -
11:45
Python 2: Sets/dicts/lists/tuples
45'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto) Material: Lesson notes
-
11:45
Python 2: Sets/dicts/lists/tuples
45'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 15:00
Python 3: Flow control and lists
Location: Adriatico Guest House Informatics Lab. -
14:00
Python 3: Flow control and lists
1h0'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory) Material: Lesson notes
-
14:00
Python 3: Flow control and lists
1h0'
-
15:00 - 16:00
Python 4: Functions/standard modules
Location: Adriatico Guest House Informatics Lab. -
15:00
Python 4: Functions/standard modules
1h0'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto) Material: Lesson notes
-
15:00
Python 4: Functions/standard modules
1h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 18:30
Laboratory sessions: Python exercises
Location: Adriatico Guest House Informatics Lab. -
16:30
Laboratory sessions: Python exercises
2h0'
Material: Python exercises 1
-
16:30
Laboratory sessions: Python exercises
2h0'
-
19:30 - 21:00
WELCOME RECEPTION
Cafeteria, Adriatico Guest House
- 19:30 WELCOME RECEPTION 1h30'
-
09:00 - 09:45
Compiling scientific codes: Basic concepts and tools (compilers & make)
-
-
09:00 - 09:45
Python 5: File I/O
-
09:00
Python 5: File I/O
45'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto)
-
09:00
Python 5: File I/O
45'
-
09:45 - 10:30
Python 6: OO design
-
09:45
Python 6: OO design
45'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto)
-
09:45
Python 6: OO design
45'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 11:45
Python 7: Matplolib
-
11:00
Python 7: Matplolib
45'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory)
-
11:00
Python 7: Matplolib
45'
-
11:45 - 12:30
Python 8: Scipy
-
11:45
Python 8: Scipy
45'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory)
-
11:45
Python 8: Scipy
45'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 15:00
Python 9: Numpy
Location: Adriatico Guest House Informatics Lab. -
14:00
Python 9: Numpy
1h0'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory)
-
14:00
Python 9: Numpy
1h0'
-
15:00 - 16:00
Python 10: Nose Testing
Location: Adriatico Guest House Informatics Lab. -
15:00
Python 10: Nose Testing
1h0'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto)
-
15:00
Python 10: Nose Testing
1h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 18:30
Laboratory sessions: Python exercises
Location: Adriatico Guest House Informatics Lab. -
16:30
Laboratory sessions: Python exercises
2h0'
-
16:30
Laboratory sessions: Python exercises
2h0'
-
09:00 - 09:45
Python 5: File I/O
-
-
09:00 - 10:30
Introduction to testing scientific software
-
09:00
Introduction to testing scientific software
1h30'
Speaker: S. Cozzini (CNR/IOM/Uos/SISSA Trieste) Material: Lesson notes
-
09:00
Introduction to testing scientific software
1h30'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 12:30
How to setup regression tests for codes (Buildbot usage)
-
11:00
How to setup regression tests for codes (Buildbot usage)
1h30'
Speaker: S. Cozzini (CNR/IOM/Uos/SISSA Trieste) Material: Lesson notes
-
11:00
How to setup regression tests for codes (Buildbot usage)
1h30'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 16:00
Laboratory sessions: Exercises on software testing
Location: Adriatico Guest House Informatics Lab. -
14:00
Laboratory sessions: Exercises on software testing
2h0'
-
14:00
Laboratory sessions: Exercises on software testing
2h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 17:00
GDB tutorial and hands-on
Location: Adriatico Guest House Informatics Lab. -
16:30
GDB tutorial and hands-on
30'
Speaker: V. Slavnic (Scientific Computing Laboratory, Institute of Physics Belgrade) Material: Examples
-
16:30
GDB tutorial and hands-on
30'
-
17:00 - 18:30
Laboratory sessions: Exercises on software testing
Location: Adriatico Guest House Informatics Lab. -
17:00
Laboratory sessions: Exercises on software testing
1h30'
-
17:00
Laboratory sessions: Exercises on software testing
1h30'
-
09:00 - 10:30
Introduction to testing scientific software
-
-
09:00 - 09:45
Managing sustainability into software
-
09:00
Managing sustainability into software
45'
Speaker: S. Crouch (School of Electronics and Computer Science, University of Southampton) Material: Lesson notes
-
09:00
Managing sustainability into software
45'
-
09:45 - 10:30
Adopting open source software for longer-term use
-
09:45
Adopting open source software for longer-term use
45'
Speaker: S. Crouch (School of Electronics and Computer Science, University of Southampton) Material: Lesson notes
-
09:45
Adopting open source software for longer-term use
45'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 11:45
Ticketing, trac pages, documentation
-
11:00
Ticketing, trac pages, documentation
45'
Speaker: S. Crouch (School of Electronics and Computer Science, University of Southampton) Material: Lesson notes
-
11:00
Ticketing, trac pages, documentation
45'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 16:00
Laboratory sessions: Exercises on software development
Location: Adriatico Guest House Informatics Lab. -
14:00
Laboratory sessions: Exercises on software development
2h0'
Material: Exercises
-
14:00
Laboratory sessions: Exercises on software development
2h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 18:30
Students' projects presentations and discussion
Location: Adriatico Guest House Informatics Lab. -
16:30
Students' projects presentations and discussion
2h0'
-
16:30
Students' projects presentations and discussion
2h0'
-
09:00 - 09:45
Managing sustainability into software
-
-
09:00 - 09:30
Wrap-up of the first week activities
-
09:00
Wrap-up of the first week activities
30'
-
09:00
Wrap-up of the first week activities
30'
-
09:30 - 10:30
Students' projects presentations and discussion
-
09:30
Students' projects presentations and discussion
1h0'
-
09:30
Students' projects presentations and discussion
1h0'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 12:30
Students' projects presentations and discussion
-
11:00
Students' projects presentations and discussion
1h30'
-
11:00
Students' projects presentations and discussion
1h30'
-
12:30 - 14:00
Lunch break
Lunch, and free afternoon
- 12:30 Lunch break 1h30'
-
09:00 - 09:30
Wrap-up of the first week activities
-
-
09:00 - 09:45
Optimizing scientific codes: profiling and optimizing (gprof/perfview)
-
09:00
Optimizing scientific codes: profiling and optimizing (gprof/perfview)
45'
Speaker: A. Balaz (Scientific Computing Laboratory, Institute of Physics Belgrade) Material: Lesson notes
-
09:00
Optimizing scientific codes: profiling and optimizing (gprof/perfview)
45'
-
09:45 - 10:30
Merging and mixing different languages: code wrapping
and the coding glue
-
09:45
Merging and mixing different languages: code wrapping
and the coding glue
45'
Speaker: A. Balaz (Scientific Computing Laboratory, Institute of Physics Belgrade) Material: Lesson notes
-
09:45
Merging and mixing different languages: code wrapping
and the coding glue
45'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 11:45
Mixing Python, C and Fortran
-
11:00
Mixing Python, C and Fortran
45'
Speaker: K. Huff (University of Wisconsin - Madison and Argonne National Laboratory) Material: Lesson notes
-
11:00
Mixing Python, C and Fortran
45'
-
11:45 - 12:30
Exercises related to topics of the first week
Location: Adriatico Guest House Informatics Lab. -
11:45
Exercises related to topics of the first week
45'
-
11:45
Exercises related to topics of the first week
45'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 15:00
Catching memory leaks with Valgrind
-
14:00
Catching memory leaks with Valgrind
1h0'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto)
-
14:00
Catching memory leaks with Valgrind
1h0'
-
15:00 - 16:00
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
15:00
Laboratory sessions: Work on individual/group projects
1h0'
-
15:00
Laboratory sessions: Work on individual/group projects
1h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 18:30
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
09:00 - 09:45
Optimizing scientific codes: profiling and optimizing (gprof/perfview)
-
-
09:00 - 09:45
HPC Infrastructures for Scienfific Computing - 1
-
09:00
HPC Infrastructures for Scienfific Computing - 1
45'
Speaker: A. Ali (Bahauddin Zakariya University) Material: Lesson notes
-
09:00
HPC Infrastructures for Scienfific Computing - 1
45'
-
09:45 - 10:30
Scientific Data Formats
-
09:45
Scientific Data Formats
45'
Speaker: G. Giuliani (ICTP Trieste/University of L'Aquila) Material: Lesson notes
-
09:45
Scientific Data Formats
45'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 11:45
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
11:00
Laboratory sessions: Work on individual/group projects
45'
-
11:00
Laboratory sessions: Work on individual/group projects
45'
-
11:45 - 12:30
Laboratory sessions:
Hands on NetCDF: Examples
Location: Adriatico Guest House Informatics Lab. -
11:45
Laboratory sessions:
Hands on NetCDF: Examples
45'
Material: Examples
-
11:45
Laboratory sessions:
Hands on NetCDF: Examples
45'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 15:00
How to compile Matlab codes
-
14:00
How to compile Matlab codes
1h0'
Speaker: R.T. Guy (Dept of Computer Science, University of Toronto)
-
14:00
How to compile Matlab codes
1h0'
-
15:00 - 16:00
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
15:00
Laboratory sessions: Work on individual/group projects
1h0'
-
15:00
Laboratory sessions: Work on individual/group projects
1h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 18:30
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
09:00 - 09:45
HPC Infrastructures for Scienfific Computing - 1
-
-
09:00 - 09:45
HPC Infrastructures for Scienfific Computing - 2
-
09:00
HPC Infrastructures for Scienfific Computing - 2
45'
Speaker: A. Ali (Bahauddin Zakariya University) Material: Lesson notes
-
09:00
HPC Infrastructures for Scienfific Computing - 2
45'
-
09:45 - 10:30
Introduction to porting scientific codes to different computational infrastructures
-
09:45
Introduction to porting scientific codes to different computational infrastructures
45'
Speaker: S.Cozzini (CNR/IOM/Uos/SISSA Trieste) Material: Lesson notes
-
09:45
Introduction to porting scientific codes to different computational infrastructures
45'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 12:30
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
11:00
Laboratory sessions: Work on individual/group projects
1h30'
-
11:00
Laboratory sessions: Work on individual/group projects
1h30'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 16:00
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
14:00
Laboratory sessions: Work on individual/group projects
2h0'
-
14:00
Laboratory sessions: Work on individual/group projects
2h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 18:30
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
09:00 - 09:45
HPC Infrastructures for Scienfific Computing - 2
-
-
09:00 - 09:45
Hands-on on scientific data formats
-
09:00
Hands-on on scientific data formats
45'
Speaker: G. Giuliani (ICTP Trieste/University of L'Aquila)
-
09:00
Hands-on on scientific data formats
45'
-
09:45 - 10:30
On floating point representation of real numbers in computers
-
09:45
On floating point representation of real numbers in computers
45'
Speaker: A. Ali (Bahauddin Zakariya University) Material: Lesson notes
-
09:45
On floating point representation of real numbers in computers
45'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 11:30
PRACE Research Infrastructure
-
11:00
PRACE Research Infrastructure
30'
Speaker: A. Balaz (Scientific Computing Laboratory, Institute of Physics Belgrade) Material: Presentation
-
11:00
PRACE Research Infrastructure
30'
-
11:30 - 12:30
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
11:30
Laboratory sessions: Work on individual/group projects
1h0'
-
11:30
Laboratory sessions: Work on individual/group projects
1h0'
-
12:30 - 14:00
Lunch break
- 12:30 Lunch break 1h30'
-
14:00 - 16:00
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
14:00
Laboratory sessions: Work on individual/group projects
2h0'
-
14:00
Laboratory sessions: Work on individual/group projects
2h0'
-
16:00 - 16:30
Coffee break
- 16:00 Coffee break 30'
-
16:30 - 18:30
Laboratory sessions: Work on individual/group projects
Location: Adriatico Guest House Informatics Lab. -
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
16:30
Laboratory sessions: Work on individual/group projects
2h0'
-
09:00 - 09:45
Hands-on on scientific data formats
-
-
09:00 - 10:30
Selected presentations by participants
-
09:00
Selected presentations by participants
1h30'
-
09:00
Selected presentations by participants
1h30'
-
10:30 - 11:00
Coffee break
- 10:30 Coffee break 30'
-
11:00 - 12:30
Selected presentations by participants
-
11:00
Selected presentations by participants
1h30'
-
11:00
Selected presentations by participants
1h30'
-
12:30 - 13:00
Wrap-up and closing remarks
-
12:30
Wrap-up and closing remarks
30'
Speaker: Organizers
-
12:30
Wrap-up and closing remarks
30'
-
09:00 - 10:30
Selected presentations by participants