gematria icon indicating copy to clipboard operation
gematria copied to clipboard

GRANITE Performance model with context

Open ondrasej opened this issue 1 year ago • 1 comments

As of now, the GRANITE model is basic-block oriented (resp. trace-oriented), i.e. it doesn't use any information about code that was executed before or after the basic block. We believe that adding such information may provide additional context to improve the prediction of the precisions.

The GRANITE model can be extended to cover such context by:

  1. adding code graph from the preceding basic block (in execution order) and the following basic block,
  2. modifying the predictor to compute throughput only from the instructions in the input basic block.

This modification will also require an extension to the data collection methodology to collect basic blocks and their throughput with the execution context.

ondrasej avatar Sep 09 '24 10:09 ondrasej

For potential pretraining, we could use existing reciprocal throughput measurements as we know that the context is just the block itself up to whatever reasonable context limits we have.

boomanaiden154 avatar Sep 09 '24 16:09 boomanaiden154