SWDEV-221166 - Detect support for large bar access through HIP runtime API

Change-Id: Iaa9756c1b5e40c1ab5afb38e44a6699fa5f6c13f
Этот коммит содержится в:
Alex Xie
2020-04-30 22:19:15 -04:00
коммит произвёл AlexBin Xie
родитель a94de6d463
Коммит 044a7e55ad
5 изменённых файлов: 5 добавлений и 6 удалений
+1 -1
Просмотреть файл
@@ -136,7 +136,7 @@ typedef struct hipDeviceProp_t {
///devices with unmatched block dimensions
int cooperativeMultiDeviceUnmatchedSharedMem; ///< HIP device supports cooperative launch on multiple
///devices with unmatched shared memories
int isLargeBar; ///< 1: if it is a large PCI bar device, else 0
} hipDeviceProp_t;
+2 -1
Просмотреть файл
@@ -146,7 +146,8 @@ void printDeviceProp(int deviceId) {
cout << setw(w1) << "maxTexture3D.width: " << props.maxTexture3D[0] << endl;
cout << setw(w1) << "maxTexture3D.height: " << props.maxTexture3D[1] << endl;
cout << setw(w1) << "maxTexture3D.depth: " << props.maxTexture3D[2] << endl;
cout << setw(w1) << "isLargeBar: " << props.isLargeBar << endl;
int deviceCnt;
hipGetDeviceCount(&deviceCnt);
cout << setw(w1) << "peers: ";
+1 -1
Просмотреть файл
@@ -864,7 +864,7 @@ hipError_t ihipDevice_t::initProperties(hipDeviceProp_t* prop) {
/* Computemode for HSA Devices is always : cudaComputeModeDefault */
prop->computeMode = 0;
_isLargeBar = _acc.has_cpu_accessible_am();
prop->isLargeBar = _acc.has_cpu_accessible_am() ? 1 : 0;
// Get Max Threads Per Multiprocessor
uint32_t max_waves_per_cu;
-3
Просмотреть файл
@@ -836,9 +836,6 @@ class ihipDevice_t {
unsigned _computeUnits;
hipDeviceProp_t _props; // saved device properties.
// TODO - report this through device properties, base on HCC API call.
int _isLargeBar;
// Node id reported by kfd for this device
uint32_t _driver_node_id;
+1
Просмотреть файл
@@ -230,6 +230,7 @@ hipError_t hipGetDeviceProperties ( hipDeviceProp_t* props, hipDevice_t device )
deviceProps.texturePitchAlignment = info.imagePitchAlignment_;
deviceProps.kernelExecTimeoutEnabled = 0;
deviceProps.ECCEnabled = info.errorCorrectionSupport_? 1:0;
deviceProps.isLargeBar = info.largeBar_ ? 1 : 0;
*props = deviceProps;
HIP_RETURN(hipSuccess);