Skip to content

Tuna lightweight module Feature Request

Daming Feng edited this page Nov 3, 2021 · 42 revisions

Purpose

The purpose of this feature request is to show the need for a lightweight Tuna module that can be extended by users outside of the Tuna team.

Current implementation

Current Tuna module contains scripts specific to MIOpen Tuning, such as go_fish, the main script that launches MIOpen Driver commands. The module also contains important stand alone script to connect to the DB, build a DB, connect to servers etc.

Proposal

TunaRefactoringProposal

Stages

  1. Allowing Tuna users to make use of Tuna DB structure to create DB.
  • dbBase: Basic database classes to create DB
  1. Refactor Utility module in Tuna.
  • Re-design and refactor MIOpen utility module in Tuna based on Utility module.
  • Add unit tests for Utility module and MIOpen utility module.
  1. Allow Tuna users to make use of Grafana-Flask infrastructure.
  • flask: flask app module that utilize Grafana-Flask infrastructure for data visualization.
  1. Keep Tuning files grouped together (currently only MIOpen Tuning but should be split further when Tuna supports other projects).
  2. Make tuna more modular for easy unit testing and ability to add test coverage.
Clone this wiki locally