riscv-software-src / riscv-perf-model

Example RISC-V Out-of-Order/Superscalar Processor Performance Core and MSS Model
Apache License 2.0
117 stars 43 forks source link

performance study: fusion #176

Open jeffnye-gh opened 1 month ago

jeffnye-gh commented 1 month ago

We propose a project to explore/compare the performance characteristics when instruction operations are fused in the machine alone and when the machine is assisted by a fusion aware compiler.

The project consists of two main components. The first component involves the more standard method of performing fusion within the machine, typically at the decode stage. Olympia supports fusion through the FSL API and domain language. As part of this project, we will continue this work, using the performance model to qualify instruction tuples and gauge their benefits.

The second component is a hardware/software co-design effort. This involves using fusion-aware compilers in combination with Olympia's fusion decoder. LLVM is known to support user-defined expressions of preferred instruction tuple sequences.

The outcome would be a better understanding of the interaction of these two systems.