Skip to content

Commit

Permalink
[Docs] TT-Forge-FE compiler architecture overview (#571)
Browse files Browse the repository at this point in the history
- 3 images outline:
  - TT-Forge general overview
  - TT-TVM zoom-in overview
  - TT-Forge-FE zoom-in overview

In upcoming PRs, we'll push content for sub-sections as well. For now,
this is an initial push to cover the initial structure and enable
parallel
work for remaining sections.

Solves #570
  • Loading branch information
nvukobratTT authored Nov 4, 2024
1 parent 925ba58 commit 3a4dc32
Show file tree
Hide file tree
Showing 6 changed files with 143 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

# Introduction
- [Introduction](./introduction.md)
- [Architecture Overview](./architecture_overview.md)

# Project setup
- [Building](./build.md)
Expand Down
110 changes: 110 additions & 0 deletions docs/src/architecture_overview.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
# Architecture Overview

TT-Forge is a comprehensive compiler designed to facilitate the development and optimization of machine learning models. It encompasses various components, each serving a specific purpose in the compiling and running machine learning pipelines. This document provides an overview of the key components with focus on [TT-Forge-FE](https://github.com/tenstorrent/tt-forge-fe).

### Table of contents
- [TT-Forge Overview](#tt-forge-overview)
- [TT-TVM Overview](#tt-tvm-overview)
- [TVM IR](#tvm-ir)
- [TVM Compile](#tvm-compile)
- [Relay Compile Passes](#relay-compile-passes)
- [Forge Compile Passes](#forge-compile-passes)
- [Partition Graph](#partition-graph)
- [Construct Inputs, Constants and Ops](#construct-inputs-constants-and-ops)
- [Generate Forge-FE Module](#generate-forge-fe-module)
- [Standalone Forge-FE Module](#standalone-forge-fe-module)
- [TT-Forge-FE Overview](#tt-forge-fe-overview)
- [Initialize Compile](#initialize-compile)
- [Generate Initial Graph (TT-TVM)](#generate-initial-graph-tt-tvm)
- [Post Initial Graph passes](#post-initial-graph-passes)
- [Consteval](#consteval)
- [Autograd](#autograd)
- [Post Autograd](#post-autograd)
- [Pre Lowering](#pre-lowering)
- [Graph Split](#graph-split)
- [Compiler TTIR](#compiler-ttir)
- [Output Binary](#output-binary)

## TT-Forge Overview

![TT-Forge Overview](imgs/compiler_arch/tt-forge_overview.svg "TT-Forge Overview")

## TT-TVM Overview

![TT-TVM Overview](imgs/compiler_arch/tt-tvm_overview.svg "TT-TVM Overview")

### TVM IR

Coming soon!

### TVM Compile

Coming soon!

#### Relay Compile Passes

Coming soon!

#### Forge Compile Passes

Coming soon!

### Partition Graph

Coming soon!

### Construct Inputs, Constants and Ops

Coming soon!

### Generate Forge-FE Module

Coming soon!

### Standalone Forge-FE Module

Coming soon!

## TT-Forge-FE Overview

![Forge-FE Overview](imgs/compiler_arch/forge-fe_overview.svg "Forge-FE Overview")

### Initialize Compile

Coming soon!

### Generate Initial Graph (TT-TVM)

Coming soon!

### Post Initial Graph passes

Coming soon!

### Consteval

Coming soon!

### Autograd

Coming soon!

### Post Autograd

Coming soon!

### Pre Lowering

Coming soon!

### Graph Split

Coming soon!

### Compiler TTIR

Coming soon!

### Output Binary

Coming soon!
2 changes: 2 additions & 0 deletions docs/src/build.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,8 @@ mdbook serve build/docs

> **Note:** `mdbook serve` will by default create a local server at `http://localhost:3000`.
> **Note:** For custom port, just specify `-p` attribute. <br><br> E.g. `mdbook serve build/docs -p 5005`, and visit `http://localhost:5005`.
## Build Cleanup

To ensure a clean build environment, follow these steps to remove existing build artifacts:
Expand Down
10 changes: 10 additions & 0 deletions docs/src/imgs/compiler_arch/forge-fe_overview.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 10 additions & 0 deletions docs/src/imgs/compiler_arch/tt-forge_overview.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 10 additions & 0 deletions docs/src/imgs/compiler_arch/tt-tvm_overview.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 3a4dc32

Please sign in to comment.