Covers pipelining in computer architecture, focusing on its role in enhancing performance through instruction-level parallelism and addressing associated challenges.
Covers the basics of parallel programming, including concurrency, forms of parallelism, synchronization, and programming models like PThreads and OpenMP.
Explores GPUs' architecture, CUDA programming, image processing, and their significance in modern computing, emphasizing early start and correctness in GPU programming.
Explores parallelism in programming, emphasizing trade-offs between programmability and performance, and introduces shared memory parallel programming using OpenMP.
Covers the components of a processor, ISA classifications, specific ISAs like MIPS, assembly language examples, and the importance of machine instruction regularity.
Provides an overview of computer architecture, focusing on the von Neumann architecture and its components, including the CPU and memory management units.