This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Fix the gfx10 scheduling model for f32 conversions
ClosedPublic

Authored by foad on Feb 28 2020, 3:49 PM.

Details

Summary

As far as I can tell on gfx10 conversions to/from f32 (that are not
converting f32 to/from f64) are full rate instructions, but they were
marked as quarter rate instructions.

I have fixed this for gfx10 only. I assume the scheduling model was
correct for older architectures, though I don't have any documentation
handy to confirm that.

Diff Detail

Event Timeline

foad created this revision.Feb 28 2020, 3:49 PM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 28 2020, 3:49 PM
rampitec added inline comments.Feb 28 2020, 4:00 PM
llvm/lib/Target/AMDGPU/VOP1Instructions.td
199

As far as I can tell this is quarter rate.

201

And this is full rate, as well as 3 opcodes below.

This revision is now accepted and ready to land.Mar 10 2020, 11:14 AM
foad marked 2 inline comments as done.Mar 10 2020, 12:04 PM
foad added inline comments.
llvm/lib/Target/AMDGPU/VOP1Instructions.td
199

For anyone following at home, we got confirmation from an authority at AMD that V_CVT_F16_F32 is full rate on gfx10.

This revision was automatically updated to reflect the committed changes.
foad marked an inline comment as done.