Awesome
Computer Engineering Resources
A curated catalogue of Computer Engineering/Computer Architecture/Computer Systems resources
<p align="center"> <img width="50%" height="50%" src="./graphic.jpg"> </p>The six ideas in Computer Architecture - Prof. Trevor Mudge
Surprisingly, there are only six distinct concepts used to design computers, apart from technology advances, that reappear in many guises over and over again:
Locality – spatial & temporal, e.g. caches
Prediction – no state change, e.g. branch prediction
Speculation – state change, e.g. prefetching
Indirection, e.g. virtualization
Parallelism, e.g. pipelining, OoO, vectors
Specialization, e.g. GPUs, accelerators
Table of Contents
Direct link to the page on simulators
- Conferences/Workshops
- Digging Deeper
- Communities
- Great courses on Computer Architecture
- Blogs
- Podcasts
- Interesting Resources
- Other specific curated lists related to CompEngg
Conferences/Workshops
Area specific conferences/workshops are captured under their specific pages
Computer Architecture & Systems
- ISCA - International Symposium on Computer Architecture
- ASPLOS - ASPLOS is the premier forum for interdisciplinary systems research, intersecting computer architecture, hardware and emerging technologies, programming languages and compilers, operating systems, and networking.
- MICRO - IEEE International Symposium on Microarchitecture
- USENIX - Systems Researchers Conf
- TACO - ACM Transactions on Architecture and Code Optimization focuses on hardware, software, and system research spanning the fields of computer architecture and code optimization
- PACT - Conference on Parallel Architectures and Compilation Techniques
- NAS - Conference on Networking, Architecture, and Storage
- HotOS - Workshop on Hot Topics in Operating Systems
High Performance Computing
- SuperComputing - International Conference for High Performance Computing, Networking, Storage, and Analysis.
- HPCA - International Symposium on High-Performance Computer Architecture by IEEE Computer Society
- Hot Chips - A Symposium on High Performance Chips
- PASC - The Platform for Advanced Scientific Computing (PASC) Conference is an interdisciplinary conference in HPC that brings together domain science, applied mathematics and computer science – where computer science is focused on enabling the realization of scientific computation.
- ISC High Performance - Event for HPC, Networking, Storage, AI/ML
- HiPEAC - Events on High-Performance and Embedded Architectures and Compilers
- MULTIPROG - Workshop on Programmability and Architectures for Heterogeneous Multicores
- ICS - ACM International Conference on Supercomputing of research results in HPC systems
- HPCKP - HPC Knowledge meeting to share expertise and strategies in High-Performance Computing, Data Analysis, and Artificial Intelligence.
Machine Learning Systems
- MLSYS - Conference on Machine Learning and Systems
- ASSYST - Architecture and System Support for Transformer Models
Halls of Fame
- SOSP/OSDI - Systems Research
- ISCA
- MICRO - Microarchitecture
- Computer Architecture Aggregated Hall-of-Fame
State of Computer Architecture Conferences: Source: Elba Garza
Search tools for conferences
- ConfSearch
- WikiCfp
- HGPU
- CORE Rankings
- NSF Funding - The NSF site provides a great filtering tool to list NSF funded projects, PIs in specific areas. A good tool to follow active research trends in areas of your interest. Here's an example for NoC/interconnection networks.
Digging Deeper
Computer Architecture is diverse and there's interplay between domains that are under it. Look under each of these pages to find specific information or check the full list here
Communities
- ACM Association for Computing Machinery
- SIGARCH Computer professionals working on the forefront of computer design in both industry and academia.
- SIGHPC - Special interest groupt for HPC
- SIGMICRO - The ACM Special Interest Group on Microarchitecture
- Semiconductor Research Coroportation
- ITRS - International Technology Roadmap for semiconductors
- Eurolab4HPC - To strengthen academic research excellence and innovation in HPC in Europe
- PRACE - Partnership for Advanced computing in Europe
- CASA - Computer Architecture Student Association
- Students@Systems - Group of students that organizes talks, podcasts, and panels within the systems community.
- MLCommons - A collaborative engineering organization focused on developing the AI ecosystem through benchmarks, public datasets, and research.
Industry Organizations
- OpenHW Group - Proven Processor IP
- CHIPS Alliance - Common Hardware for Interfaces, Processors and Systems harnesses the energy of open source collaboration to accelerate hardware development.
- RISC-V - RISC-V is a free and open ISA enabling a new era of processor innovation through open standard collaboration.
- MultiCore Association - Define and promote open specifications to enable multicore product development.
- Storage Networking Industry Association - A non-profit global organization dedicated to developing standards and education programs to advance storage and information technology.
- OpenFabrics Alliance - The Alliance’s mission is to develop and promote software that enables maximum application efficiency by delivering wire-speed messaging, ultra-low latencies and maximum bandwidth directly to applications with minimal CPU overhead.
- Open Compute Project - Focus on reimagining hardware, making it more efficient, flexible, and scalable.
- Open Chiplet Initiative - zGlue Open Chiplet Initiative is a gallery of open designs, tools, and file formats that span the chiplet ecosystem from toolsets all the way to completed designs. The goal of the initiative is to lower the barrier for entry to create a collaborative environment for chiplet-based systems.
Great courses on Computer Architecture
- Prof. Onur Mutlu's lectures and talks
- Computer Organization and Computer Architecture courses by Prof. Rajeev Balasubramonian
- Computer Architecture course by David Wentzlaff on Coursera
- Prof. David Black-Schaffer's lectures on Virtual Memory etc.
- HPCA - Prof. Milos Prvulovic covers High Performance Computer Architecture
Video channels
- TSMC and semiconductor engineering: 101
- Coffee before Architecture - Videos covering beginner, intermediate, and advanced programming concepts, as well as things related to computer engineering and research.
- Talks hosted by Prof. Matthew Guthaus
Blogs
- Chips and Cheese - In-depth analysis on memory and performance data for modern hardware
- Computer Architecture Today
- WikiChip
- SemiEngineering
- HPCWire
- The Next Platform
- Inside HPC
- FPGA CPU News - Exploring Parallel Computer Architecture with FPGAs
- Real world technology - Everything from cloud, chips, processors and software. Some interesting articles such as Power delivery in a CPU
- TechInsights - Die shots, analysis, reverse engineering and more
- Coffee Before Architecture
Podcasts
Interesting Resources
- The Great ISAs - Adrian Sampson
- A great resource on upcoming Systems conferences and venues
- Computer Architecture Zotero Research library
- Computer Latency at a Human Scale
- Networking conference search tool
- Chips for Machine Intelligence in 2019
- Microprocessor trend data
- Demonstration of Hardware Effects - This repository demonstrates various hardware effects that can degrade application performance in surprising ways and that may be very hard to explain without knowledge of the low-level CPU and OS architecture.
- Die shots of chips
- Bottom Up Computer Science
- Computing and Internet History Posters
- Selected Historical Computer Designs
- Who are Computer Architects?
- Which machines do Computer Architects admire?
- Moore's law till date - Counting transistors
- AI Chip Landscape in 2020 - A list of ICs and IPs for AI, Machine Learning and Deep Learning.
- Animations for concepts in Computer Architecture
Other specific curated lists related to CompEngg
- awesome-hardware-tools - A curated list of awesome open source hardware tools.
- awesome-semiconductor-startups - A curated list of awesome semiconductor startups.
- Deep Learning Hardware resources A curated list of awesome hardware/chip design resources for deep learning
- HGPU - Resources for HPC on graphics processing units
- Awesome-HDL A curated list of amazingly awesome hardware description language projects.
- Awesome-Quantum-Computing - A curated list of awesome quantum computing learning and developing resources.
- Awesome RISCV - A curated list of RISCV resources
- Awesome RISCV - A curated list of awesome RISC-V implementations
- Awesome-DV - Awesome ASIC design verification
- Awesome Thesis - Resources for thesis/research writing
- EDA-Wiki
- Computer Architecture Resources
- Awesome IoT - A curated list of awesome Internet of Things projects and resources.
- Awesome C - A curated list of awesome C frameworks, libraries, resources
- Professional Programming - A collection of full-stack resources for programmers.
- Digital Design Resources