120 credits including 90 credits in computer science and mathematics with Computer Architecture or the equivalent. Proficiency in English equivalent to the Swedish upper secondary course English 6.
The following topics are covered in the course: Memory systems - technologies, caches, virtual memory systems, and different forms of optimisation in hardware and software. Processors - pipelining, speculation, super scalability, and support for parallel threads. Multi-processors - alternative programming strategies, coherent shared memory, synchronisation primitives, memory orders, SMP, NUMA, and COMA. Future - Technology trends, advanced speculation, chip multiprocessors, simultaneous multithreading, clusters, and shared memory emulation.