Skip to content

HPC / CFD Written-Exam Master Index

Course: Fundamentals of High-Performance Computing for CFD Simulations
Lecturer: Jun.-Prof. Dr.-Ing. Federica Ferraro (IFAS, TU Braunschweig)
Output folder: D:\MyFiles\STUDY\SS25\hpc\HPC


How to use this index

This file is the map of all your study materials. Each row points to the chapter .md/.pdf, the source PDFs, the related code/exercises, and the most-likely written-exam questions. Study left → right: read the chapter, do the exercise, drill the question bank, finish with the cheat sheet.

June 2026 revision — what changed

Every chapter was upgraded for the written exam: German vocabulary removed (the বাংলা column stays); Bengali explanation boxes (বাংলায়:) added alongside the English for every key concept; formal math added with worked numeric examples (umask binary masking, Amdahl + Gustafson derivations, surface-to-volume halo analysis, R_peak, pointer arithmetic, log-log slopes, core-hour budgeting, exit-status algebra…); ASCII diagrams added (redirection FD flow, sed cycle, memory layout, build pipeline, commit DAG, domain decomposition, SLURM lifecycle…); and each chapter now ends with Section 14: Mock Exam — Four Levels: Level 1 Basic → Level 2 Intuitive (predict/explain) → Level 3 Hard (real exam) → Level 4 Beyond-the-lecture (transfer + coding), every question with a full worked solution and Bengali hints (বাংলা ইঙ্গিত) on the hard ones. Drill order for mocks: do Level 1–2 of all chapters first, then Level 3 of the HIGH chapters (03, 06, 07, 08, 11), then Level 4 everywhere.


Suggested Study Order

Day Topic Chapter
1 Course intro + Linux philosophy 01, 02
2 Basic Linux + permissions 03
3 bashrc + SSH + remote workflow 04
4 Vim mastery (do vimtutor) 05
5 Regex + globbing (regex101.com) 06
6 grep / awk / sed / find / column 07
7 Shell scripting + backup-data.sh 08
8 Gnuplot + Bash automation 09
9 Git + GitLab + branching 10
10 C++ basics + Complex class 11
11 Compile / link / Make / CMake 12
12 gdb / valgrind / ASan 13
13 OpenMP / MPI / parallel scaling 14
14 SLURM / modules / cluster usage 15
15 Read HPC_Final_Exam_Revision.pdf + 4 practice sets combined

Chapter Index

# Chapter Source PDFs Code/Scripts Exercise Difficulty Exam relevance
01 Course Introduction & HPC Overview read.pdf 1-22, L01_Introduction_and_Linux.pdf 1-35 E01_WSL Easy Low–Medium
02 Unix / Linux Basics L01_Introduction_and_Linux.pdf 35-80 Easy–Medium Medium
03 Linux Commands & File Permissions L01_Introduction_and_Linux.pdf 80-end find/, test.sh E02_Linux_commands Medium HIGH
04 bashrc, SSH, Remote Workflows V02.1_Linux_SSH_bashrc_2025.pdf (in lecture) Medium High
05 Vim & Command-Line Editing L03_Vim_2025.pdf test-1.zip files E03_Vim_2025 Medium Medium
06 Regex & Globbing L04_Regexp.pdf E04_files/ E04_Regexp Medium-Hard HIGH
07 Linux Text Tools (find/grep/awk/sed/diff/column) V05_Linux_tools.pdf V05_examples/, E05_Excercises/ E05_Linux_tools Hard HIGH
08 Shell Scripting V06_shell_scripting.pdf lecture_scripts/example01-18.sh, backup-data.sh, task1_solution.sh, task2_solution.sh E06_shell_scripting Hard HIGH
09 Gnuplot Postprocessing V07_gnuplot.pdf gnuplot_examples/, E07_gnuplot_exercise/ E07_gnuplot Medium Medium-High
10 Git Version Control V08_Git.pdf (interactive) E08_Git Medium High
11 C++ Basics for HPC V09_Cpp_Basics.pdf examples_exercises/example01-10.cpp, task_01.cpp, task_02.cpp, exercises_solutions/*.cpp E09_Cpp_Basics Hard HIGH
12 Build Process: Compile, Link, Make, CMake V10_buildProcess_compiling_linking.pdf demos/demo01_compiling/, demos/demo02_makefile/, demos/demo03_cmake/, class_Complex_task_solution.cpp E10_buildProcess Hard High
13 Debugging — gdb, valgrind, sanitizers V11_debugging.pdf lecture_examples/debug01-06.cpp, task01.cpp E11_debugging Hard High
14 Parallelization (shared/distributed memory, OpenMP, MPI) V12_Parallelization.pdf examples/example01.cpp, example02.cpp, example03_int.cpp, example03_Cstring.cpp (none) Hard Medium-High
15 HPC Cluster Usage (SLURM, modules) V13_HPC_cluster.pdf (cluster-specific) (none) Medium Medium

Important Commands by Chapter

Chapter Top commands
03 ls -lh, chmod 755, chmod 4755, chown user:group, cp -rpv, rm -rf, umask 022, >, >>, 2>&1, \|, wc -l
04 ssh-keygen -t ed25519 -b 4096 -f ~/.ssh/k, ssh-copy-id, ~/.ssh/config, scp -r, rsync -avzP --delete, sshfs, ssh -L, nohup … 2>&1 &, tmux new -s
05 i a o I A O Esc, :wq :q!, dd 5dd yy p, /pat n N *, :%s/old/new/gc, qa…q @a, :sp :vsp gt
06 *.txt, {a,b}/*.{c,h}, [a-z], [[:alpha:]], \<word\>, ^abc$, ls dir-{1,3}/*[0-9].h
07 find -regex … -exec chmod +w {} \;, grep -E -nA 2, sed -E -i.bak 's/…/…/g', awk -F, '{...}', column -t -s ":", diff -u
08 #!/bin/bash, set -euo pipefail, [ -f f ], [[ "$x" =~ pat ]], (( a+b )), case x in …;; esac, for/while/until, getopts ":vs", shift $((OPTIND-1))
09 plot 'd' u 1:2 w lp, set logscale y, set multiplot layout 2,2, fit f(x) 'd' via a,b,c, set terminal png; set output; replot
10 git config --global user.{name,email}, git init, git add, git commit -m, git switch -c, git merge, git push -u origin main, git tag v1.0
11 g++ -O2 -std=c++17 -Wall src.cpp -o exe, int*p=&a;, int& r=a;, void f(int&), class C{private:…;public:…;};
12 g++ -E/-S/-c, #ifndef … #define … #endif, g++ -fPIC -shared -o libx.so x.cpp, Makefile target: deps \n\trecipe, cmake -B build
13 g++ -O0 -g, gdb ./prog, break run next step print backtrace watch continue, valgrind --leak-check=full, -fsanitize=address
14 mpic++ -O2, mpirun -n N, MPI_Init/Comm_rank/Comm_size/Send/Recv/Finalize, #pragma omp parallel for reduction(+:sum)
15 module purge, module load gcc/12 openmpi/4.1, sbatch run.sbatch, squeue -u $USER, scancel ID, srun --pty bash

High-Probability Written-Exam Questions

Topic Likely question
Linux Translate -rwxr-xr-- ↔ chmod numeric. Predict redirection output.
SSH Describe passwordless auth setup. Compare scp/rsync/sftp/sshfs.
Vim Write keystrokes for :%s global replace. Record + apply a macro.
Regex Email/phone/IP regex. Glob a multi-pattern listing.
Tools Predict awk/sed output. Pipeline grep + awk.
Bash Walk through backup-data.sh. Write a parameter sweep.
Gnuplot Multi-curve plot, fit, multiplot, PNG output.
Git Setup + first commit + branch + merge + push to GitLab.
C++ Pointer/reference, swap, Complex class.
Build Pipeline diagram, header guard, Makefile, CMake.
Debug Find off-by-one with gdb. Detect leak with valgrind.
Parallel OpenMP vs MPI, Amdahl, MPI hello, halo exchange.
Cluster Write a SBATCH script, module commands, sinfo/squeue/scancel.

Prerequisites Map

01,02 ── 03 ── 04 ── 05
            └── 06 ── 07 ── 08 ── 09
                                    └── 10
   ┌────────────────────── 11 ── 12 ── 13 ── 14 ── 15
   └─ Ch 4 (SSH)

Read 01–08 in order; the rest can be parallel.


Files in D:\MyFiles\STUDY\SS25\hpc\HPC

Per-chapter:

  • Chapter_01_Course_Introduction_and_HPC_Overview.{md,pdf}
  • Chapter_02_Unix_Linux_Basics.{md,pdf}
  • Chapter_03_Linux_Commands_and_File_Permissions.{md,pdf}
  • Chapter_04_Bashrc_SSH_and_Remote_Workflows.{md,pdf}
  • Chapter_05_Vim_Command_Line_Editing.{md,pdf}
  • Chapter_06_Regex_and_Globbing.{md,pdf}
  • Chapter_07_Linux_Text_Tools_Find_Grep_Awk_Sed.{md,pdf}
  • Chapter_08_Shell_Scripting.{md,pdf}
  • Chapter_09_Gnuplot_Postprocessing.{md,pdf}
  • Chapter_10_Git_Version_Control.{md,pdf}
  • Chapter_11_Cpp_Basics_for_HPC.{md,pdf}
  • Chapter_12_Build_Process_Compiling_Linking_Make_CMake.{md,pdf}
  • Chapter_13_Debugging.{md,pdf}
  • Chapter_14_Parallelization.{md,pdf}
  • Chapter_15_HPC_Cluster_Usage.{md,pdf}

Combined:

  • HPC_Exam_Master_Index.{md,pdf} (this file)
  • HPC_Final_Exam_Revision.{md,pdf}
  • HPC_Deep_Question_Bank.{md,pdf}
  • HPC_Coding_Command_Practice.{md,pdf}
  • HPC_Written_Exam_Preparation.{md,pdf}
  • HPC_Final_Cheat_Sheets.{md,pdf}

Strategy for the day before the exam: Re-read HPC_Final_Cheat_Sheets.pdf and HPC_Final_Exam_Revision.pdf only. Don't open the long chapters again — trust the work you did during the term.

End of master index.