mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-11 16:45:25 +08:00
Add per platform toggle for integer 64bit atomic extensions
Related-To: NEO-3649 Change-Id: Ic97566a91d50911c006e24a23d448281a8d2df64 Signed-off-by: Cencelewska <katarzyna.cencelewska@intel.com>
This commit is contained in:
@@ -49,6 +49,7 @@ const RuntimeCapabilityTable EHL::capabilityTable{
|
||||
1, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
false, // ftrSupportsInteger64BitAtomics
|
||||
false, // ftrSupportsFP64
|
||||
false, // ftrSupports64BitMath
|
||||
false, // ftrSvm
|
||||
@@ -64,7 +65,8 @@ const RuntimeCapabilityTable EHL::capabilityTable{
|
||||
true, // sourceLevelDebuggerSupported
|
||||
false, // supportsVme
|
||||
false, // supportCacheFlushAfterWalker
|
||||
true // supportsImages
|
||||
true, // supportsImages
|
||||
true // supportsDeviceEnqueue
|
||||
};
|
||||
|
||||
WorkaroundTable EHL::workaroundTable = {};
|
||||
|
||||
@@ -50,6 +50,7 @@ const RuntimeCapabilityTable ICLLP::capabilityTable{
|
||||
1, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
true, // ftrSupportsInteger64BitAtomics
|
||||
false, // ftrSupportsFP64
|
||||
false, // ftrSupports64BitMath
|
||||
true, // ftrSvm
|
||||
|
||||
@@ -49,6 +49,7 @@ const RuntimeCapabilityTable LKF::capabilityTable{
|
||||
1, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
false, // ftrSupportsInteger64BitAtomics
|
||||
false, // ftrSupportsFP64
|
||||
false, // ftrSupports64BitMath
|
||||
false, // ftrSvm
|
||||
|
||||
@@ -54,6 +54,7 @@ const RuntimeCapabilityTable BDW::capabilityTable{
|
||||
0, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
true, // ftrSupportsInteger64BitAtomics
|
||||
true, // ftrSupportsFP64
|
||||
true, // ftrSupports64BitMath
|
||||
true, // ftrSvm
|
||||
|
||||
@@ -51,6 +51,7 @@ const RuntimeCapabilityTable BXT::capabilityTable{
|
||||
0, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
false, // ftrSupportsInteger64BitAtomics
|
||||
true, // ftrSupportsFP64
|
||||
true, // ftrSupports64BitMath
|
||||
false, // ftrSvm
|
||||
|
||||
@@ -46,6 +46,7 @@ const RuntimeCapabilityTable CFL::capabilityTable{
|
||||
0, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
true, // ftrSupportsInteger64BitAtomics
|
||||
true, // ftrSupportsFP64
|
||||
true, // ftrSupports64BitMath
|
||||
true, // ftrSvm
|
||||
|
||||
@@ -46,6 +46,7 @@ const RuntimeCapabilityTable GLK::capabilityTable{
|
||||
0, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
false, // ftrSupportsInteger64BitAtomics
|
||||
true, // ftrSupportsFP64
|
||||
true, // ftrSupports64BitMath
|
||||
false, // ftrSvm
|
||||
|
||||
@@ -46,6 +46,7 @@ const RuntimeCapabilityTable KBL::capabilityTable{
|
||||
0, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
true, // ftrSupportsInteger64BitAtomics
|
||||
true, // ftrSupportsFP64
|
||||
true, // ftrSupports64BitMath
|
||||
true, // ftrSvm
|
||||
|
||||
@@ -54,6 +54,7 @@ const RuntimeCapabilityTable SKL::capabilityTable{
|
||||
0, // extraQuantityThreadsPerEU
|
||||
64, // slmSize
|
||||
false, // blitterOperationsSupported
|
||||
true, // ftrSupportsInteger64BitAtomics
|
||||
true, // ftrSupportsFP64
|
||||
true, // ftrSupports64BitMath
|
||||
true, // ftrSvm
|
||||
|
||||
@@ -33,6 +33,7 @@ struct RuntimeCapabilityTable {
|
||||
uint32_t extraQuantityThreadsPerEU;
|
||||
uint32_t slmSize;
|
||||
bool blitterOperationsSupported;
|
||||
bool ftrSupportsInteger64BitAtomics;
|
||||
bool ftrSupportsFP64;
|
||||
bool ftrSupports64BitMath;
|
||||
bool ftrSvm;
|
||||
|
||||
@@ -32,9 +32,7 @@ const char *deviceExtensionsList = "cl_khr_3d_image_writes "
|
||||
"cl_intel_driver_diagnostics "
|
||||
"cl_khr_priority_hints "
|
||||
"cl_khr_throttle_hints "
|
||||
"cl_khr_create_command_queue "
|
||||
"cl_khr_int64_base_atomics "
|
||||
"cl_khr_int64_extended_atomics ";
|
||||
"cl_khr_create_command_queue ";
|
||||
|
||||
std::string getExtensionsList(const HardwareInfo &hwInfo) {
|
||||
std::string allExtensionsList;
|
||||
@@ -55,6 +53,11 @@ std::string getExtensionsList(const HardwareInfo &hwInfo) {
|
||||
allExtensionsList += "cl_khr_fp64 ";
|
||||
}
|
||||
|
||||
if (hwInfo.capabilityTable.ftrSupportsInteger64BitAtomics) {
|
||||
allExtensionsList += "cl_khr_int64_base_atomics ";
|
||||
allExtensionsList += "cl_khr_int64_extended_atomics ";
|
||||
}
|
||||
|
||||
if (hwInfo.capabilityTable.supportsVme) {
|
||||
allExtensionsList += "cl_intel_motion_estimation cl_intel_device_side_avc_motion_estimation ";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user