Learn how to analyze and improve the performance of scientific applications on high performance computing systems including motivating the need for performance considerations, establishing a common performance vocabulary, learning standard situations and parameters, getting to know the tools that provide insight, establishing a higher throughput of experiments and running bigger experiments.
Performance is Ambiguous
First Steps on BlueWaters
Pen, Paper and Performance
Simple Tools for Simple Questions
The Command Line is Your Friend
Benchmarks Provide the Baseline
Tuning Needs Persistence
Core Tuning Pays Off n-times
How to Access Your Data Quickly
Tools Can Be Fun Sometimes
Zoom and Scroll
An Introduction to GPGPU Programming
Down to Earth
The Grand Final
Sharing May Double the Sorrow
OpenMP Picking the Low Hanging Fruit
Handmade Parallelization Hurts
MPI Gone Bad
This two day training course will introduce students to data visualization with a primary focus on visualization of large volumetric data resulting from simulation and instrumentation. We begin with an overview of visualization as a whole, beginning with a simple taxonomy: illustration, which uses techniques of computer graphics and animation to convey concepts, and data driven visualization which interpret data as imagery to convey the content of the data driven visualization is further divided into two broad areas. Information visualization is concerned with visualizing discrete data such as is often found in Excel spreadsheets and relational databases, think a sales database, including a record for many customer transactions including date, product list and so forth. Scientific data is concerned with continuous data defined over a domain, think weather data, representing variables like temperature and pressure in a three dimensional region of the atmosphere. This section will include copious examples of each class of visualization.
The next section provides a brief introduction to scientific illustration, in which a specialist will provide a hands on demonstration of an interactive tool for modeling, animating and rendering visualizations. Either Blender or Maya will be demonstrated. This section is intended to give students a broad overview of the capabilities of these systems and to enable them to identify situations in which these are the appropriate tools. Following will be an introduction to information visualization. We begin with an brief history of info viz, then discuss data and techniques and an overview of the software tools available. Following this will be a demonstration of a commercial end-user application, Tableau.
We then segue to scientific visualization, the focus of the course. In an introductory section we will present an overview of scientific data. We begin with a conceptual approach to scientific data as functions over a time and or space domain, then discuss how this data is represented as time/space grids with variables associated with grid points and cells. We discuss how visualization systems transform such data to imagery. We then present hands on demonstrations of open source general purpose tools for scientific visualization, ParaView and VisIt. Following demonstrations of the interactive interface to each of these, we will discuss techniques in which scripting can be used to generate visualizations off line. We will then discuss issues that arise when datasets become very large, discussing parallel execution of the tools, and data layout for optimal I/O. This will include a presentation of the facilities we maintain at the Texas Advanced Computing Center for high performance visualization of very large datasets and how we provide these services to remote users.