Add HW-specific preference for usage of blitter in local->local transfers

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Resolves: NEO-5549
This commit is contained in:
Maciej Dziuban
2021-02-12 12:25:51 +00:00
committed by Compute-Runtime-Automation
parent 25c696ae85
commit 6eebf82ec5
5 changed files with 103 additions and 24 deletions

View File

@@ -30,6 +30,7 @@ class ClHwHelper {
virtual cl_command_queue_capabilities_intel getAdditionalDisabledQueueFamilyCapabilities(EngineGroupType type) const = 0;
virtual bool getQueueFamilyName(std::string &name, EngineGroupType type) const = 0;
virtual cl_ulong getKernelPrivateMemSize(const KernelInfo &kernelInfo) const = 0;
virtual bool preferBlitterForLocalToLocalTransfers() const = 0;
protected:
virtual bool hasStatelessAccessToBuffer(const KernelInfo &kernelInfo) const = 0;
@@ -51,6 +52,7 @@ class ClHwHelperHw : public ClHwHelper {
cl_command_queue_capabilities_intel getAdditionalDisabledQueueFamilyCapabilities(EngineGroupType type) const override;
bool getQueueFamilyName(std::string &name, EngineGroupType type) const override;
cl_ulong getKernelPrivateMemSize(const KernelInfo &kernelInfo) const override;
bool preferBlitterForLocalToLocalTransfers() const override;
protected:
bool hasStatelessAccessToBuffer(const KernelInfo &kernelInfo) const override;

View File

@@ -47,4 +47,9 @@ inline bool ClHwHelperHw<GfxFamily>::getQueueFamilyName(std::string &name, Engin
return false;
}
template <typename GfxFamily>
inline bool ClHwHelperHw<GfxFamily>::preferBlitterForLocalToLocalTransfers() const {
return false;
}
} // namespace NEO