Yifan SuninAkita SimulationAkita Basics 5: TracingThe purpose of running a simulation is to acquire performance metrics. Akita uses a tracing system to allow users to extract desired…Sep 12, 2020Sep 12, 2020
Yifan SuninAkita SimulationRefactoring MGPUSim Work-Group Dispatching MechanismWork-group dispatching is a critical step during a GPU kernel execution. In this article, we document how we refactor the MGPUSim’s…May 25, 2020May 25, 2020
Yifan SuninAkita SimulationAkita Basics 4: TickingTicking is a solution that can simplify event-driven simulator design. It provides a cycle-based simulation development experience while…Jan 13, 20201Jan 13, 20201
Yifan SuninAkita SimulationAkita Basics 3: An Event-Based Ping SimulationSo far, we have introduced the essential elements of the Akita simulation framework. This time we use the existing concept to implement a…Jan 3, 2020Jan 3, 2020
Yifan SuninAkita SimulationAkita Basics 2: Components, Messages, Ports, and ConnectionsIn the last blog, we introduced events and event engines in Akita. In this blog, we introduce another group of concepts: components, ports…Dec 27, 2019Dec 27, 2019
Yifan SuninAkita SimulationAkita Basics 1: EventsThe goal of Akita is to create a reusable computer architecture framework. With Akita, developers can fast prototype their hardware design.Dec 2, 2019Dec 2, 2019
Yifan SunAkita now supports network modelingAkita has been using connections as the channels to pass messages between components. Previously, we have the commonly used direct…Nov 19, 2019Nov 19, 2019