diff --git a/projects/clr/rocclr/device/pal/paldefs.hpp b/projects/clr/rocclr/device/pal/paldefs.hpp index 740b07b09f..18097c439d 100644 --- a/projects/clr/rocclr/device/pal/paldefs.hpp +++ b/projects/clr/rocclr/device/pal/paldefs.hpp @@ -178,48 +178,48 @@ static constexpr AMDDeviceInfo DeviceInfo[] = { // Ordering as per AsicRevision# in palDevice.h & AMDGPU Target Names static constexpr AMDDeviceInfo Gfx9PlusSubDeviceInfo[] = { - /* Vega10 */ {"gfx900", "gfx900", 16, 256, 32, 900, 900, false}, - /* Vega10 XNACK */ {"gfx901", "gfx900", 16, 256, 32, 900, 901, true}, - /* Vega12 */ {"gfx904", "gfx904", 16, 256, 32, 904, 904, false}, - /* Vega12 XNACK */ {"gfx905", "gfx904", 16, 256, 32, 904, 905, true}, - /* Vega20 */ {"gfx906", "gfx906", 16, 256, 32, 906, 906, false}, - /* Vega20 XNACK */ {"gfx907", "gfx906", 16, 256, 32, 906, 907, true}, - /* Raven */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false}, - /* Raven XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true}, - /* Raven2 */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false}, - /* Raven2 XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true}, - /* Renoir */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false}, - /* Renoir XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true}, - /* Navi10_A0 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false}, - /* Navi10_A0 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true}, - /* Navi10 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false}, - /* Navi10 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true}, - /* Navi10Lite */ UnknownDevice, - /* Navi10LiteXNACK */ UnknownDevice, - /* Navi12 */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, false}, - /* Navi12 XNACK */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, true}, - /* Navi12Lite */ UnknownDevice, - /* Navi12LiteXNACK */ UnknownDevice, - /* Navi14 */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, false}, - /* Navi14 XNACK */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, true}, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, - /* UnknownDevice */ UnknownDevice, - /* UnknownDevice XNACK */ UnknownDevice, + /* 0x18 Vega10 */ {"gfx900", "gfx900", 16, 256, 32, 900, 900, false}, + /* Vega10 XNACK */ {"gfx901", "gfx900", 16, 256, 32, 900, 901, true}, + /* 0x19 Vega12 */ {"gfx904", "gfx904", 16, 256, 32, 904, 904, false}, + /* Vega12 XNACK */ {"gfx905", "gfx904", 16, 256, 32, 904, 905, true}, + /* 0x1a Vega20 */ {"gfx906", "gfx906", 16, 256, 32, 906, 906, false}, + /* Vega20 XNACK */ {"gfx907", "gfx906", 16, 256, 32, 906, 907, true}, + /* 0x1b Raven */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false}, + /* Raven XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true}, + /* 0x1c Raven2 */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false}, + /* Raven2 XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true}, + /* 0x1d Renoir */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false}, + /* Renoir XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true}, + /* 0x1e Navi10_A0 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false}, + /* Navi10_A0 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true}, + /* 0x1f Navi10 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false}, + /* Navi10 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true}, + /* 0x20 Navi10Lite */ UnknownDevice, + /* Navi10LiteXNACK */ UnknownDevice, + /* 0x21 Navi12 */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, false}, + /* Navi12 XNACK */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, true}, + /* 0x22 Navi12Lite */ UnknownDevice, + /* Navi12LiteXNACK */ UnknownDevice, + /* 0x23 Navi14 */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, false}, + /* Navi14 XNACK */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, true}, + /* 0x24 UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x25 UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x26 UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x27 UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x28 UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x29 UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x2a UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x2b UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, + /* 0x2c UnknownDevice */ UnknownDevice, + /* UnknownDevice XNACK */ UnknownDevice, }; // Supported OpenCL versions diff --git a/projects/clr/rocclr/device/pal/paldevice.cpp b/projects/clr/rocclr/device/pal/paldevice.cpp index f15a513888..5953078da7 100644 --- a/projects/clr/rocclr/device/pal/paldevice.cpp +++ b/projects/clr/rocclr/device/pal/paldevice.cpp @@ -908,7 +908,7 @@ bool Device::create(Pal::IDevice* device) { hwInfo_ = &DeviceInfo[static_cast(properties().revision)]; } else if (ipLevel_ >= Pal::GfxIpLevel::GfxIp9) { // For compiler sub targets - subtarget = (static_cast(asicRevision_) % static_cast(Pal::AsicRevision::Vega10)) + subtarget = (static_cast(asicRevision_) - static_cast(Pal::AsicRevision::Vega10)) << 1 | subtarget; hwInfo_ = &Gfx9PlusSubDeviceInfo[subtarget];