Skip to content

Commit

Permalink
Merge branch 'mm_reorganisation' of github.com:UCL/research-computing…
Browse files Browse the repository at this point in the history
…-with-cpp into mm_reorganisation
  • Loading branch information
Michael McLeod committed Jan 4, 2024
2 parents 955eb2c + c43a766 commit f1b7496
Show file tree
Hide file tree
Showing 4 changed files with 208 additions and 197 deletions.
8 changes: 4 additions & 4 deletions 07performance/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,19 @@ This week we'll be introducing some concepts for producing high performance prog

Even though parallelism can help us improve our throughput, single core optimisation is still vital for producing good performance on ordinary machines or for maximising the work that each core can do in a parallel program. This week we'll talk about:

1. [_Why_ and _when_ we should optimise](sec00Motivation)
2. [Complexity and algorithm analysis](sec01Complexity)
1. [_Why_ and _when_ we should optimise](sec00Motivation.html)
2. [Complexity and algorithm analysis](sec01Complexity.html)
- How the time and space usage of algorithms scales with the size of the input.
- Big-O notation.
- How to determine complexity and examples with some common algorithms.
- How does complexity impact our choices as software designers?
3. [Memory management and caching](sec02Memory)
3. [Memory management and caching](sec02Memory.html)
- Memory bound problems.
- How memory is structured in a typical machine.
- Speed of different kinds of memory access.
- Cache structure and operation.
- Writing algorithms to effectively exploit the cache.
4. [Compiler Optimisation](sec03Optimisation)
4. [Compiler Optimisation](sec03Optimisation.html)
- Automated optimisation by the compiler.
- Compiler flags for optimisation.
- Examples of optimisations, pros and cons.
Expand Down
Loading

0 comments on commit f1b7496

Please sign in to comment.