123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- % vim: set foldmethod=marker foldmarker=<<<,>>>:
- \section{Introduction}
- \begin{frame} \frametitle{What is HPC?}{} %<<<
- \begin{columns}
- \column{0.43\textwidth}
- \column{0.56\textwidth}
- \centering
- \resizebox{0.99\textwidth}{!}{\begin{tikzpicture} %<<<
- \draw[black!0] (-4.73,-5) rectangle (4.73,4);
- \only<1-3>{
- \draw[color=green, ultra thick, fill=green, opacity=0.3] (1.73,1) circle (3);
- \node[text width=3.2cm] at (3.0,1.5) {\LARGE Methods \& Algorithms};
- }
- \only<2-3>{
- \draw[color=blue, ultra thick, fill=blue, opacity=0.3] (0,-2) circle (3);
- \node at (0,-2.9) {\LARGE Software};
- }
- \only<3-3>{
- \draw[color=red, ultra thick, fill=red, opacity=0.3] (-1.73,1) circle (3);
- \node at (-2.8,1.6) {\LARGE Hardware};
- }
- \end{tikzpicture}}%>>>
- \end{columns}
- \end{frame}
- %>>>
- % FUTURE PROOFING OUT METHODS AND CODES
- % Domain Specific Languages ⇒ Domain Specific Architectures
- \begin{frame} \frametitle{Trends in hardware}{} %<<<
- % exascale computing
- % heterogeneous computing, specialized hardware accelerators: GPUs, ASICS, FPGA, Tensor processing units
- % AMD GPUs becoming more common, Intel Xe GPU to feature in Aurora suprcomputer
- % energy efficiency
- % new memory technologies:
- % - Hybrid Memory Cube
- % - DDR6
- % - High Bandwidth Memory (HBM, HBM2, ...)
- \end{frame}
- %>>>
- \begin{frame} \frametitle{Trends in hardware}{} %<<<
- % end of frequency scaling
- % post Moore's law
- % Dennard scaling
- % multi-core / many-core
- % vector lengths (512-bit now standard in most CPU cores)
- % rise of ARM (RISC ISA)
- % transistor counts increasing -- multi-package CPUs (NUMA) -- AMD Risen 64 cores
- %https://www.karlrupp.net/2018/02/42-years-of-microprocessor-trend-data/
- \begin{columns}
- \column{0.3\textwidth}
- \column{0.7\textwidth}
- %\write18{wget -O figs/trends0.png https://github.com/karlrupp/microprocessor-trend-data/raw/master/50yrs/50-years-processor-trend.png}
- %\write18{wget -O figs/trends1.png https://upload.wikimedia.org/wikipedia/commons/0/00/Moore\%27s_Law_Transistor_Count_1970-2020.png}
- \includegraphics[width=0.99\textwidth]{figs/trends0.png}
- \end{columns}
- \end{frame}
- %>>>
- \begin{frame} \frametitle{Trends in hardware}{} %<<<
- \begin{columns}
- \column{0.3\textwidth}
- \column{0.7\textwidth}
- \includegraphics[width=0.99\textwidth]{figs/sustained-memory-bw-falling-graph-mccalpin-1000x}
- {\footnotesize John McCalpin - Memory bandwidth and system balance in HPC systems, 2016}
- \end{columns}
- \end{frame}
- %>>>
- \begin{frame} \frametitle{Trends in software}{} %<<<
- % programming languages: interpreted, JIT, code-generation,
- % - new languages (modern C++ - SCC sciware)
- % - features
- # know how your programming language works
- # don't iterate over billion element array in python
- % compilers
- # compiler options for best performance
- % profilers and debuggers
- % optimized libraries for scientific computing: (BLAS, LAPACK, FFTW)
- % use whenever it makes sense to do so
- \end{frame}
- \begin{frame} \frametitle{Resources}{} %<<<
- % SCC Sciware lectures
- \end{frame}
- %>>>
|