8000 GitHub - ucb-bar/virgo: Cluster-level matrix unit integration into GPUs, implemented in Chipyard SoC
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
/ virgo Public

Cluster-level matrix unit integration into GPUs, implemented in Chipyard SoC

License

Unknown, Apache-2.0 licenses found

Licenses found

Unknown
LICENSE.Berkeley
Apache-2.0
LICENSE.SiFive
Notifications You must be signed in to change notification settings

ucb-bar/virgo

Repository files navigation

Virgo

Virgo is a GPU microarchitecture that integrates dedicated matrix units at the cluster (SM)-level, achieving better FLOPS scalability and energy efficiency.

Virgo cluster microarchitecture overview

This repository includes the essential RTL logic for Virgo's implementation, including the Gemmini matrix unit integration, shared memory, baseline Tensor Core models, memory coalescer, and Vortex SIMT core integration.

The entire Virgo GPU design is implemented within the Chipyard SoC environment. To evaluate the full design, please follow the instructions in Chipyard.

The GPU kernel written and evaluated for Virgo can be found in virgo-kernels.

Code Structure

A Virgo cluster is constructed by integrating a collection of Tiles that house Virgo's compute units, such as Vortex SIMT cores and the Gemmini matrix unit, as well as memory units such as the shared memory and interconnect. We use rocket-chip's Cluster API to construct the cluster hiearchy.

The Chisel RTL code for the main Virgo hardware modules can be found in src/main/scala/radiance:

More details to follow.

About

Cluster-level matrix unit integration into GPUs, implemented in Chipyard SoC

Resources

License

Unknown, Apache-2.0 licenses found

Licenses found

Unknown
LICENSE.Berkeley
Apache-2.0
LICENSE.SiFive

Stars

Watchers

Forks

Packages

No packages published

Contributors 7

0