gem5 训练营 (Bootcamp)
欢迎来到 gem5 训练营!这些材料来自 gem5 Bootcamp 2024,旨在帮助你系统地学习 gem5 模拟器。
关于训练营
gem5 训练营是一个为期5天的密集培训课程,涵盖从 gem5 基础知识到高级开发技术的所有内容。这些材料按照以下结构组织:
第一部分:介绍
- 训练营介绍 - 了解训练营的整体结构和目标
- 模拟器背景 - 了解模拟器的基本概念和 gem5 的历史
- 快速开始 - 设置开发环境并运行第一个模拟
- Python 背景知识 - gem5 中使用的 Python 基础
第二部分:使用 gem5
- gem5 标准库 - 学习使用 gem5 的标准库
- gem5 资源 - 了解如何获取和使用 gem5 资源
- 运行程序 - 在 gem5 中运行应用程序
- 核心模型 - 了解 gem5 中的 CPU 模型
- 缓存层次结构 - 配置缓存系统
- 内存模型 - 配置内存系统
- 全系统模拟 - 运行完整的操作系统
- 加速模拟 - 使用 KVM 和检查点加速模拟
- 采样模拟 - 使用 SimPoint 和 LoopPoint 进行采样
- 功耗建模 - 在 gem5 中建模功耗
第三部分:开发 gem5 模型
- SimObject 入门 - 创建自定义 SimObject
- 调试 gem5 - 使用调试工具和标志
- 事件驱动模拟 - 理解 gem5 的事件系统
- 端口与内存对象 - 创建内存系统组件
- 核心建模 - 添加新指令和理解执行模型
- 缓存一致性建模 - 使用 Ruby 和 SLICC
- CHI 协议 - 配置 CHI 缓存层次结构
- Ruby 网络 - 使用 Garnet 建模片上网络
第四部分:GPU 模型
- GPU 模型介绍 - 了解 gem5 中的 GPU 模拟
第五部分:其他模拟器
- SST 集成 - 将 gem5 与 SST 集成
- DRAM 模拟器 - 使用外部 DRAM 模拟器
- SystemC 集成 - gem5 与 SystemC 的集成
第六部分:贡献指南
- 贡献流程 - 如何为 gem5 项目做贡献
- 测试 - gem5 的测试框架
- 在家运行 gem5 - 在本地环境中设置 gem5
开始学习
点击左侧边栏中的任意主题开始学习,或者从 训练营介绍 开始。
注意:这些材料目前保持英文原文,尚未翻译成中文。我们计划在未来逐步完成翻译工作。
