Commit Graph

77 Commits

Author SHA1 Message Date
ef71915c71 Remove KernelArgInfo and use KernelDescriptor's args instead
Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-04-23 15:12:09 +02:00
7a5e0e13a5 Add isBlitterForImagesSupported helper
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2021-04-22 16:10:20 +02:00
b01b8ba5ac Use MI_SEMAPHORE_WAIT command for event synchronization
Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-04-19 11:34:52 +02:00
8215395401 Simplify Context method
return if context has multiple sub devices related to a given root device

Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-30 10:22:15 +02:00
ee44979bb5 Fix blit enqueue support check
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-23 15:29:12 +01:00
7098e9c5f2 Store single KernelInfo in Kernel
remove root device index from Kernel's methods

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-22 21:30:03 +01:00
2a1a63a823 Ensure valid engine inside OpenCL command queue
Related-To: NEO-5610
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-03-19 13:47:22 +01:00
3f5b9df122 Pass EngineUsage to getEngine
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5610
2021-03-16 16:31:44 +01:00
52e118fe49 Add extra parameters to Buffer::setSurfaceState() method
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-03-16 10:17:59 +01:00
41f3bd00ff Remove PatchTokens from KernelInfo
Use KernelDescriptor instead of patchTokens stored in KernelInfo's
patchInfo.
Removed: SPatchMediaInterfaceDescriptorLoad, SPatchAllocateLocalSurface,
SPatchMediaVFEState(slot 0), SPatchMediaVFEState(slot 1),
SPatchInterfaceDescriptorData, SPatchSamplerStateArray,
SPatchBindingTableState, SPatchDataParameterBuffer,
SPatchDataParameterStream, SPatchThreadPayload,
SPatchKernelAttributesInfo, SPatchAllocateStatelessPrivateSurface,
SPatchAllocateSyncBuffer,
SPatchAllocateStatelessConstantMemorySurfaceWithInitialization,
SPatchAllocateStatelessGlobalMemorySurfaceWithInitialization,
SPatchAllocateSystemThreadSurface.

Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-03-09 17:09:13 +01:00
8b89fb8541 Capability to exclude Engine on SubDevice
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-08 11:32:13 +01:00
a33d74bb79 Disallow CPU buffer read/write operation if CPU access is disallowed
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-02 11:35:08 +01:00
d8a1bb599e Extend event synchronization mechanism for multi device concept
Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-02-16 11:27:47 +01:00
6eebf82ec5 Add HW-specific preference for usage of blitter in local->local transfers
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Resolves: NEO-5549
2021-02-15 12:47:54 +01:00
98ff3cc0a9 Do not use blitter for local->local SVM and USM copies
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5549
2021-02-11 16:24:57 +01:00
a68a4aa74e OpenCL Queue Families extension 17/n
Return index of default queue (created without using the extension)

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2021-02-11 16:01:29 +01:00
2cd6809d1e Do not use blitter for clEnqueueCopyBuffer
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-02-11 12:42:43 +01:00
160e5ec112 OpenCL Queue Families extension 12/n
Fix engine selection for copy engines

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Relate-To: NEO-5120
2021-01-27 21:27:43 +01:00
681c6eeb38 OpenCL Queue Families extension 11/n
Check for support of cross queue events in enqueue calls

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2021-01-26 14:02:54 +01:00
d1d81c1f48 Revert "Enable blitter support for read/write images OpenCL"
This reverts commit 933b483b961351cbdb0a50d52bd61c76ae03443b.
2021-01-11 14:21:11 +01:00
38577bed6b Enable blitter support for read/write images OpenCL
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2021-01-08 13:32:36 +01:00
55f3c8f134 Add resolve capability for compressed USM device allocations
Related-To: NEO-5107

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-08 12:16:26 +01:00
384e47f438 OpenCL Queue Families extension 7/n
Update enum values to official ones
Delete redundant CL_DEVICE_NUM_QUEUE_FAMILIES_INTEL
Rename CL_QUEUE_CAPABILITY_ALL_INTEL to CL_QUEUE_DEFAULT_CAPABILITIES_INTEL
Add capabilities for cross queue events and single queue events
Add capabilities for buffer to image and image to buffer transfers

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-12-14 16:19:11 +01:00
350ec9f16b Pass root device index to get proper kernel info
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-09 19:11:43 +01:00
c8d1e082dd Update getKernelInfo method
add root device index parameter to return proper kernel info

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-08 09:14:44 +01:00
2293fc0cb5 OpenCL Queue Families extension 6/n
Add queue family and index querying from existing queue

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-12-01 09:03:21 +01:00
ef170607c8 OpenCL Queue Families extension 3/n
Check queue capabilities in enqueue calls for buffers

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-11-25 14:02:10 +01:00
7ec69c33f9 Store SSH per root device in Kernel
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-24 17:57:31 +01:00
14f92cc7a1 OpenCL Queue Families extension 1/n
Basic implementation, some things will be tweaked in future commits

Related-To: NEO-5120
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-11-24 11:48:18 +01:00
f13db6adad Rename method
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-11-15 23:58:32 +01:00
60c9bbea22 Disable blitter support for images
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2020-11-06 13:09:24 +01:00
b7d5427f01 CPU access disallowed mode and blitter amendments
Related-To: NEO-4876

Change-Id: I7d6de1a0530e9c4f8bcf302824242033d3ca724a
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-11-03 13:04:28 +01:00
523887019b Rename debug flag to EnableBlitterForEnqueueOperations
Change-Id: I9ae8dfc1e86a837c600ee9099e936fc4a64c80b1
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2020-10-29 12:00:09 +01:00
bc6ba0688e Limit usage of blitter for images
Change-Id: I15223ef4ebdbfef67b05647188bdd92d35a9dcad
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4692
2020-10-29 11:53:21 +01:00
f84cd9f424 Small refactor getCommandStreamReceiver
Related-To: NEO-4692
Change-Id: Ie8c36982d5bd626735d1f8e6d04084bce67738e5
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2020-10-27 15:52:18 +01:00
914ace6165 Add blitter support for read/write images OpenCL
Change-Id: I5a74bcbdc5a5d7c20f55ee3c59839077649778c4
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4692
2020-10-21 16:55:38 +02:00
9f08a60a20 KernelInfo Refactor
Using kernelDescriptor.kernelMetadata.kernelName instead of
kernelInfo.name

Change-Id: I11f5721d8072a3beccb573cec4bea56cf14cf0f9
2020-10-20 13:18:09 +02:00
8e44038f9a Revert "Add blitter support for read/write image OpenCL"
This reverts commit cc6d6968dd.

Change-Id: I2696f05c5d1e3959f60239ca49483b00ad1b36ec
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2020-10-16 15:59:58 +02:00
cc6d6968dd Add blitter support for read/write image OpenCL
Change-Id: I5d8bf0590899751f1f562fd55e44b0ed36ca6110
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4692
2020-10-16 11:59:03 +02:00
83252e7306 Add isCopyOnly field
Change-Id: Ia056af66af437c22738fd15abff12e1ad226509a
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-09-28 12:27:50 +02:00
5b31b31734 Remove low priority and internal engine index variables
Change-Id: I984dbcedd5456cfdee284f4d2eda1371ba77f0d0
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-21 16:44:14 +02:00
cf8f0c6437 Move blit enqueue out of enqueueCommon [2/n]
Unify events path

Change-Id: I5b1aa5277d48ebcb6efcdb91c67b921518e32783
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-08-28 13:18:50 +02:00
9cefc84edc Unify waiting method
Change-Id: I8e17d097e00f7d14c7243cc7989dd333807d5b44
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-08-26 17:46:30 +02:00
cb5ab704b6 Destroy all GraphicsAllocation in ~MemObj
Related-To: NEO-4672
Change-Id: I4fa09ae7753ed258f489b9e9f328d0a455e7d9b6
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2020-08-13 12:18:35 +02:00
7166dfdb05 Fix debugSurface allocation for non debug kernels
Change-Id: I253968f7ea617bc68275bec0d6279f1fcf948967
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-08-07 16:01:31 +02:00
a465d5c753 Dont clear dependencies on enqueue engine switch
Change-Id: Ic6c6f202052c7024c7997de882f0079eead07303
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-07 15:51:00 +02:00
107f07eb08 Optimize BCS flushing scheme [3/n]
Change-Id: I806d642c869bccfe40a1eb0c58b6a2f53e071cd8
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-26 16:45:39 +02:00
86dc5bacc7 Optimize BCS flushing scheme [2/n]
Change-Id: I6f1e0115b9c45f89afb86f8fd2304604243541df
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-26 11:37:24 +02:00
c6239968a5 Fix typos:
preffered -> preferred
deffered -> deferred

Change-Id: I1b87861590c273d7fcda5bf0c5a772bf36e1bc74
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 19:17:41 +02:00
01596c40f5 Pass device to Buffer::isReadWriteOnCpuPreffered
Related-To: NEO-4672
Change-Id: I857db6af225799f4d3451620d9dfb13f3a099add
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 12:38:37 +02:00