ROCm / ROCm/AMDMIGraphX

Driver output enhancements

Open
#1,210 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue
Dominant language
C++
Stars
333
Forks
150
Avg merge
4d 19h
Merged PRs (30d)
54

Description

This is really a follow on to
https://github.com/ROCmSoftwarePlatform/AMDMIGraphX/issues/844
which addressed the issue outside the driver output, and outside migraphx overall.

Useful as roctracer files may be, the driver output is still not very informative, in many cases, and migraphx still has no objective numbers that it can use to perform any kind of very credible pipeline autotuning in the future.

New proposal:

Besides printing the instruction time, per instruction, also print the number of invocations. This will enable the following heuristic calculation:

SOPI = Sync Overhead Per Invocation = (Total Instruction time - Total time)/(Total number of kernels or sync points)

Adjusted Time per Op = Time - (#calls)*SOPI

Adjusted Percentage per Op = Adjusted Time per Op / total time

The above is strictly true under very certain assumptions which may or may not be exactly true for any particular network. However, it is still a very useful calculation, which will be informative in many cases.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue does not name files or tests. Start by locating the driver output implementation and the code that records per-instruction timing, then determine where invocation counts are available; done means the driver output reports both instruction time and invocation count for each instruction.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
performance
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.