Here are some useful courses and learning materials.

Parallel

The Art of Multiprocessor Programming - Maurice Herlihy

C++ Concurrency in Action

Concurrency with Modern C++

An Introduction to Parallel Programming (Pacheco, Peter etc.)

HPC

MIT 6.172 Performance Engineering of Software Systems, Fall 2018

UCB CS267 Spring 2023 - Application of Parallel Computers

CS121-Parallel Computing

Stanford CS149 Fall 2023 PARALLEL COMPUTING

15-418/15-618: Parallel Computer Architecture and Programming

Machine Learning

国立台湾大学 李宏毅 机器学习

Deep Learning Systems Course

CS224W: Machine Learning with Graphs

Book - 机器学习中的概率统计

Machine Learning System

CMU 10-414/714: Deep Learning Systems

Machine Learning Compilation

机器学习系统:设计和实现

Programming Languages

Cornell CS 4110

Cornell CS 6110

Semantics with Applications: An Appetizer

The Formal Semantics of Programming Languages

Types and Programming Languages

Compiler & Program Analysis

Cornell CS 4120 Introduction of Compilers

Cornell CS 6120: Advanced Compilers: The Self-Guided Online Course

U of T CSCD70 Compiler Optimization

CS242 Programming Languages

DCC888 Static Program Analysis

NJU Static Program Analysis

PKU Software Analysi

miniSysY 编译实验

USTC 编译原理和技术

Introduction to Program Synthesis

Book - Static Program Analysis

Book - Program Analysis - Jonathan Aldrich

Book - Static Single Assignment Book

Architecture

CS61C: Great Ideas in Computer Architecture

ETH: Computer Architecture

Berkeley CS 152/252A Spring 2023

USTC 计算机体系结构

MIT 6.823 Computer System Architecture - Fall 2024

LLVM

LLVM Tutorial

LLVM User Guides

MLIR Tutorial

Writing an LLVM Backend

LLVM Coding Standards

LLVM Programmer’s Manual

The LLVM Target-Independent Code Generator

Thoughts

C++

Book - C++ Templates: The Complete Guide

Others

6.851: Advanced Data Structures (Spring'12)