Multithreading

Multithreading (computer architecture)

Multithreading in computer architecture refers to the ability of a CPU or single core in a multi-core processor to execute multiple threads concurrently. Unlike multiprocessing, where multiple processing units are used, multithreading aims to increase utilization of a single core by utilizing thread-level and instruction-level parallelism. Modern systems combine both techniques, using CPUs with multiple multithreading cores or multiple multithreading CPUs.

4 courses cover this concept

CS 110: Principles of Computer Systems

Stanford University

Winter 2022

CS 110 delves into advanced computer systems and program construction, focusing on designing large systems, software that spans multiple machines, and parallel computing. This course builds upon CS107 and requires good knowledge of C, C++, Unix, GDB, Valgrind, and Make. It covers Linux filesystems, multiprocessing, threading, networking, and more.

No concepts data

+ 28 more concepts

CS 107e Computer Systems from the Ground Up

Stanford University

Winter 2023

CS 107e focuses on bare metal programming on the Raspberry Pi, serving as an introduction to embedded systems. It covers the entire process from the microprocessor to the C programming language. The course aims to build a solid understanding of how modern computers execute programs and how program development tools work.

No concepts data

+ 20 more concepts

ELE/COS 475 Computer Architecture

Princeton University

Fall 2019

This course offers an in-depth understanding of modern computer processor and system architecture. It covers topics like instruction-set architecture, processor organization, cache, memory, multiprocessors, and more. Designed for senior-level undergraduates and first-year graduate students.

No concepts data

+ 19 more concepts

CS 149 PARALLEL COMPUTING

Stanford University

Fall 2022

Focused on principles and trade-offs in designing modern parallel computing systems, this course also teaches parallel programming techniques. It is intended for students looking to understand both parallel hardware and software design. Prerequisite knowledge in computer systems is required.

No concepts data

+ 45 more concepts