mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-08 22:12:59 +08:00
Add USM support flags
Change-Id: I36ef2eaf22ea75c28efd83a91ac3ef9e8961a824
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2017-2019 Intel Corporation
|
||||
* Copyright (C) 2017-2020 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
@@ -8,7 +8,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "core/helpers/hw_info.h"
|
||||
#include "public/cl_ext_private.h"
|
||||
#include "core/unified_memory/usm_memory_support.h"
|
||||
|
||||
#include "igfxfmid.h"
|
||||
|
||||
@@ -28,11 +28,11 @@ class HwInfoConfig {
|
||||
int configureHwInfo(const HardwareInfo *inHwInfo, HardwareInfo *outHwInfo, OSInterface *osIface);
|
||||
virtual int configureHardwareCustom(HardwareInfo *hwInfo, OSInterface *osIface) = 0;
|
||||
virtual void adjustPlatformForProductFamily(HardwareInfo *hwInfo) = 0;
|
||||
virtual cl_unified_shared_memory_capabilities_intel getHostMemCapabilities() = 0;
|
||||
virtual cl_unified_shared_memory_capabilities_intel getDeviceMemCapabilities() = 0;
|
||||
virtual cl_unified_shared_memory_capabilities_intel getSingleDeviceSharedMemCapabilities() = 0;
|
||||
virtual cl_unified_shared_memory_capabilities_intel getCrossDeviceSharedMemCapabilities() = 0;
|
||||
virtual cl_unified_shared_memory_capabilities_intel getSharedSystemMemCapabilities() = 0;
|
||||
virtual uint64_t getHostMemCapabilities() = 0;
|
||||
virtual uint64_t getDeviceMemCapabilities() = 0;
|
||||
virtual uint64_t getSingleDeviceSharedMemCapabilities() = 0;
|
||||
virtual uint64_t getCrossDeviceSharedMemCapabilities() = 0;
|
||||
virtual uint64_t getSharedSystemMemCapabilities() = 0;
|
||||
uint32_t threadsPerEu;
|
||||
};
|
||||
|
||||
@@ -45,11 +45,11 @@ class HwInfoConfigHw : public HwInfoConfig {
|
||||
}
|
||||
int configureHardwareCustom(HardwareInfo *hwInfo, OSInterface *osIface) override;
|
||||
void adjustPlatformForProductFamily(HardwareInfo *hwInfo) override;
|
||||
cl_unified_shared_memory_capabilities_intel getHostMemCapabilities() override;
|
||||
cl_unified_shared_memory_capabilities_intel getDeviceMemCapabilities() override;
|
||||
cl_unified_shared_memory_capabilities_intel getSingleDeviceSharedMemCapabilities() override;
|
||||
cl_unified_shared_memory_capabilities_intel getCrossDeviceSharedMemCapabilities() override;
|
||||
cl_unified_shared_memory_capabilities_intel getSharedSystemMemCapabilities() override;
|
||||
uint64_t getHostMemCapabilities() override;
|
||||
uint64_t getDeviceMemCapabilities() override;
|
||||
uint64_t getSingleDeviceSharedMemCapabilities() override;
|
||||
uint64_t getCrossDeviceSharedMemCapabilities() override;
|
||||
uint64_t getSharedSystemMemCapabilities() override;
|
||||
|
||||
protected:
|
||||
HwInfoConfigHw() {}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2019 Intel Corporation
|
||||
* Copyright (C) 2019-2020 Intel Corporation
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
@@ -9,27 +9,27 @@
|
||||
|
||||
namespace NEO {
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
cl_unified_shared_memory_capabilities_intel HwInfoConfigHw<gfxProduct>::getHostMemCapabilities() {
|
||||
return (CL_UNIFIED_SHARED_MEMORY_ACCESS_INTEL | CL_UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS_INTEL);
|
||||
uint64_t HwInfoConfigHw<gfxProduct>::getHostMemCapabilities() {
|
||||
return (UNIFIED_SHARED_MEMORY_ACCESS | UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS);
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
cl_unified_shared_memory_capabilities_intel HwInfoConfigHw<gfxProduct>::getDeviceMemCapabilities() {
|
||||
return (CL_UNIFIED_SHARED_MEMORY_ACCESS_INTEL | CL_UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS_INTEL);
|
||||
uint64_t HwInfoConfigHw<gfxProduct>::getDeviceMemCapabilities() {
|
||||
return (UNIFIED_SHARED_MEMORY_ACCESS | UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS);
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
cl_unified_shared_memory_capabilities_intel HwInfoConfigHw<gfxProduct>::getSingleDeviceSharedMemCapabilities() {
|
||||
return (CL_UNIFIED_SHARED_MEMORY_ACCESS_INTEL | CL_UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS_INTEL);
|
||||
uint64_t HwInfoConfigHw<gfxProduct>::getSingleDeviceSharedMemCapabilities() {
|
||||
return (UNIFIED_SHARED_MEMORY_ACCESS | UNIFIED_SHARED_MEMORY_ATOMIC_ACCESS);
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
cl_unified_shared_memory_capabilities_intel HwInfoConfigHw<gfxProduct>::getCrossDeviceSharedMemCapabilities() {
|
||||
uint64_t HwInfoConfigHw<gfxProduct>::getCrossDeviceSharedMemCapabilities() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
template <PRODUCT_FAMILY gfxProduct>
|
||||
cl_unified_shared_memory_capabilities_intel HwInfoConfigHw<gfxProduct>::getSharedSystemMemCapabilities() {
|
||||
uint64_t HwInfoConfigHw<gfxProduct>::getSharedSystemMemCapabilities() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user