Commit Graph

461 Commits

Author SHA1 Message Date
Jaroslaw Chodor
345e56a151 Zebin improvements
* cleaning-up per-thread buffer size calculations
* fixing default slm alignment to 16
* adding scratch space slots
* renaming slm addressing mode
* adding support for zeinfo version

Change-Id: I0450353788b8488a685976d7f1dd26a44360383c
2020-10-29 16:33:21 +01:00
Mateusz Hoppe
d539a7f8e4 Adjust AllocationProperties for SBA tracking buffer
Change-Id: I00d9d40c854c45775254b017997c53f17559daa4
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-29 15:48:25 +01:00
Mateusz Hoppe
ac3b65ba82 Refactor isDebuggerActive
- use it for SourceLevelDebugger only

Change-Id: I130219a13d6baa1f72c5b35295afd6efa4bf37fa
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-29 12:21:18 +01:00
Mateusz Hoppe
65690ccb21 Fix indirect dispatch programming
Related-To: NEO-5195

Change-Id: I82975abaa6323d27d3718ce1619748f7d83b55b4
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-28 01:06:08 +01:00
Jaime Arteaga
2fb48224a7 Remove unneeded variable
Change-Id: I1abc953063ed196bc045ef3084747a5328e7d443
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-27 09:30:20 +01:00
Mrozek, Michal
f53a6acb7f Revert "Use device allocation for events if host visibility not set"
This reverts commit 27e2c32daa.

Change-Id: I8035aad67a1aa1ed37d95a9bcd4354a64d75ac07
2020-10-26 00:21:27 -07:00
Aravind Gopalakrishnan
27e2c32daa Use device allocation for events if host visibility not set
Change-Id: I244cfd617ae77a88dd2f4e5818d39ac7e658b216
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-10-23 22:28:45 +02:00
Jitendra Sharma
bc3e09ca88 Don't delete Sysman handle during destructor of a Subdevice handle.
Change-Id: I6d17805c05ed556e51c908832d1150ffa17c28f0
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-10-23 17:44:19 +02:00
Filip Hazubski
c3b8727e97 Remove opencl includes from HwHelper
Resolves: NEO-3964

Change-Id: Ie891ba6a205a89b41ca2cce0fa386dc4c93a0aaa
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-23 11:10:52 +02:00
Jaime Arteaga
b62a121f6f Move thread arbitration programming to command list
Thread arbitration policy can be programmed in the command list
instead of doing it in executeCommandList(), so move it there.

Related-to: NEO-5187

Change-Id: I518e19e939e0548d9d454738c6deb5e095154422
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-22 19:42:55 +02:00
Jaime Arteaga
31291b1cf0 Add 4-digit zero alignment of device id in device name (2)
Unify names for OpenCL and L0

Related-To: NEO-4744

Change-Id: I5094f228f447ecbd942c25d6244abee593f3ffbf
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-22 15:53:20 +02:00
Bartosz Dunajski
1926ef8319 is_simt_thread token support
Change-Id: I8cee6ff26229f0f492ba0d1e5e61d6e46e0c2486
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-21 14:14:43 +02:00
Jitendra Sharma
6cce17e9a0 Add boiler plate support for sysman event API
Change-Id: I046620abb9943b2283215a5d2d85d71dcb8b98be
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-10-21 10:20:00 +05:30
Jaime Arteaga
d0634d3090 Correct cache memory size returned
Change-Id: I1b0467b23acf8c72c42430100237d921f565c86c
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-20 18:06:07 +02:00
Krystian Chmielewski
9f08a60a20 KernelInfo Refactor
Using kernelDescriptor.kernelMetadata.kernelName instead of
kernelInfo.name

Change-Id: I11f5721d8072a3beccb573cec4bea56cf14cf0f9
2020-10-20 13:18:09 +02:00
Michal Mrozek
1eefd3743f Optimize ExecuteCommandList.
- reuse vector instead of creating one per every function call.

Change-Id: I584bfbd7757e7b8851ae4970b740adf20659bcb1
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-10-19 10:49:44 +02:00
Jaime Arteaga
bc855e4696 Add support for zeContextGetStatus()
Change-Id: Idf6d7bf462d74720f2e21abad7eaecb297388ff4
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-16 22:48:02 +02:00
Mateusz Hoppe
4623cb3f85 Create module debug area allocation
Related-To: NEO-4550

Change-Id: I1aa151134cb51a7d4f578de3b08cdd51aefc58f2
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-16 11:21:39 +02:00
Filip Hazubski
60bfcbd69f Move populateFactoryTable() to shared
Related-To: NEO-3964

Change-Id: I9da0395265dc164deda219d5390dd9540e04f9aa
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-16 11:07:38 +02:00
Jaime Arteaga
6614698997 Add multi-device support to events
Change-Id: I544d2409fa5ad7c2b64f7bfd081469e80d4f9c73
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-15 12:54:51 -07:00
Spruit, Neil R
53a99f6772 Fixed 2D/3D copy to use aligned pointers and offsets in kernel programming
- Fixed the 2d/3d copy to correctly pass the aligned allocation data to
the kernel programming of the buffer surface states otherwise unaligned
host ptrs cannot be used.

Change-Id: If62e9321d572a786999a5ead8303f11e2e9a3c8d
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2020-10-14 17:53:40 +00:00
Slawomir Milczarek
eb8f5fa301 Get CL Device Name with device ID appended at the end
Related-To: NEO-4744

Change-Id: I8a9a791a634f9c0c444695036d96e3c959c90de0
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-10-13 14:00:33 +02:00
Jitendra Sharma
483447238a Add sysman handle for subdevices
Change-Id: I0f6986e7f5ed424ee2af759a5e70587289e1987b
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-10-12 20:23:29 +02:00
Bartosz Dunajski
27f9a95af2 Refactor: Common helper for Blit and CPU memory transfers
Change-Id: Icc61f82517e75e3066e441494af3bf9a7ffbbeef
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-12 18:29:42 +02:00
Kamil Diedrich
9e463ab45f Track all ssh in cmdList
Change-Id: Ibffb7b7b406e5e17d4ffb971fd0789557c879367
2020-10-12 12:12:12 +02:00
Maciej Plewka
2ebee73e4b Unify bindless debug flags
Change-Id: I6a9313722eed01b935707e93cad532adddcc78af
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-10-09 14:49:50 +02:00
Bartosz Dunajski
fb0651521d Linker: Fix incremental patching for local memory allocations
Change-Id: Ib85e4a2abc8a62477003853aa0c35f8107444f4e
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-09 09:13:42 +02:00
Kamil Diedrich
960860e4cb Fix reservation size
Change-Id: I1cc3d4405b00365908c5915c9d2a1c512d572530
2020-10-08 10:57:08 +02:00
Kamil Diedrich
67e2853857 Add missing mockable_virtual in code
Change-Id: Ia8d041b68163a99cf4e9e399e825d39798425544
2020-10-07 14:25:04 +02:00
Kamil Diedrich
ce7e293a99 Extend scratch implementation
Change-Id: I1bbc0c9be287b1411276b1e61a7ec1c8db238f3f
2020-10-07 11:39:04 +02:00
Maciej Plewka
4dc3827b8e Prepare object lib for precompiled builtins in bindless mode
Releated-To: NEO-5138

Change-Id: I18e564a9e32041fba5e887bc18d2195a1c4ddda8
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-10-06 16:57:11 +02:00
Andrzej Swierczynski
bdf8c5fc90 Extend UnifiedMemoryProperties constructor to take device bitfield
Related-To: NEO-4722

Change-Id: Ice185f1792635922e9bb89cd7329e6501bc585e0
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-10-06 16:35:08 +02:00
Konstanty Misiak
ff85c29e5c Do not recompile kernel if intermediate is empty
Related-To: NEO-5020

Change-Id: Ie71e1ac67a74309a90a899adb830a551922c5f35
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-10-06 13:47:25 +02:00
Maciej Dziuban
138f04bdcd Enable L1 cache for Tigerlake
Change-Id: I33513ed084f9d06ceca11315cac03f1b682db535
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-4832
2020-10-06 13:26:54 +02:00
Bill Jordan
909107cab6 Fix zesDeviceReset for Spec version 1.
This patch does the following:
- Fixes a bug in FsAccess::listDirectory that could return
ZE_RESULT_UNKNOWN_ERROR when no error has occurred.
- Fixes a bug in zesDeviceReset that would reset the device
if force was set to false, even if the device was in use.
- Fixes a bug in zesDeviceReset that would reset the device
if force was set to false without closing the file descriptor.
- Added a releaseResources method method to Device object.
This method does the same thing as the DeviceImp
destructor except it does not free the DeviceImp object
and it does not free the SysmanDeviceImp object.
- Added the releaseResources methods to Mock<Device> object.
- Moved the reset of the debugger out of DriverHandleImp
destructor and into DeviceImp releaseResources.
- Added a releaseEngine method to the EngineHandleContext. This
method frees all the Engine handles.
- On reset, I call the Devcie->releaseResources and
EngineHandleContext->releaseEngines before resetting the device.
- Added a -r (--reset) option to zello_sysman so I
could easily test resets.

With these patches, the L0 Sysman CTS for zesDeviceReset
both pass.

Change-Id: I31fad1b27bc5cc6befe31cd6f9319748e2683424
2020-10-05 19:55:14 +02:00
Michal Mrozek
5386f8be86 [L0] Optimize cache flush while waiting on events.
- do it only once

Change-Id: I0822b4f2acd9e281132447da65f563a635967905
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-10-05 13:12:56 +02:00
Jaroslaw Chodor
746cf7fd33 Reuse old build options if new ones are NULL
Change-Id: I435e7ec8554b0429dcf4f6f8d9d4fd80e70b68c6
2020-10-04 16:54:02 +02:00
Jaroslaw Chodor
df2e76f526 Fixing residency of extern device functions
Change-Id: Icad696cbf6fb3fc0276f0d0d488bf92091525d9b
2020-10-02 12:27:59 +02:00
Jaime Arteaga
9f9bf38d64 Copy user buffers when not accepted by Kernel
When performing copy operations to or from buffers allocated by the
user, it could happen that the buffer address is not accepted by
kernel, even though the buffer is valid. In those ocassions, then
allocate a new graphics allocation and copy the user buffer.

Change-Id: I6b1b6f2ef5fea0acf32c868bc87eafe8746f9a79
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-02 10:03:18 +02:00
Zbigniew Zdanowicz
18ccd448f2 Unify programming of semaphore command
Change-Id: Iae9060935554df366d9687e9f16c3b5dce9155ee
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-01 16:26:33 +02:00
Vinod Tipparaju
deb4cc2444 Reset cmdList - genericMediaStateClear not required during programSBA
This resolved regressions on Linux/ Windows for SYCL/L0 applications.

Change-Id: I26bd75a0473a5ceace1321d6b3f9613ce2cc5d9d
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-09-29 17:09:44 +02:00
Aravind Gopalakrishnan
79498dee93 Write global timestamp for copy engine
Change-Id: I6953ed787d7e21defcec07549c436c8b280be521
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-09-28 21:45:53 +02:00
Bartosz Dunajski
55bd544402 Lazy evaluate arguments of printDebugStrings(...) function
Change-Id: Ie44e109fd9235c5df32fb90b9e6fc6058e558a99
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-25 18:38:58 +02:00
Sebastian Luzynski
d24850cff3 Alter API with additional kernel exec info.
Related-To: NEO-4875
Change-Id: I10a5e3bfc32be520c3554c992dc36591fc1ff599
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-09-25 13:00:24 +02:00
Jim Snow
9f858c29a2 Enable internal image creation to return error codes
Change-Id: I20f28b57f3cd96245ce2dc1657ef2b40e63c0bc0
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2020-09-25 12:07:07 +02:00
Spruit, Neil R
7ea864cbd2 Update Kernel Buffer Argument given nullptr value assignment
- Given a nullptr Arg Buffer value, the argument value in cross thread
data must be updated to be a nullptr value especially given the argument
could have been set previously to a buffer that may not exist or should
not be used during this call to the kernel

Change-Id: Ie3a03ce25a4bb0b5e186863cc912a55863d0fb69
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2020-09-25 00:43:00 +02:00
Vinod Tipparaju
8d0df0c8a7 Reset cmdList - Fix to set genericMediaStateClear bit during programSBA
This resolves corruptions by flushing ID cache on HW

Change-Id: I56919360ac126cec67c5cbcf6380acfd72e0bcdb
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-09-24 13:42:04 +02:00
Aravind Gopalakrishnan
72c91c2f13 Do not program SBA for copy engine
Doing so causes hangs when reusing a copy command list

Change-Id: I1bd069942e9caee01636497f992dd35cbedcde1b
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-09-23 08:31:21 -07:00
Bartosz Dunajski
bb788b4cc4 Copy ISA on CPU if BCS is not supported
Change-Id: I18b0bea70a0104dfa3f930ee360b9967f8d615be
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-23 16:47:02 +02:00
Bartosz Dunajski
2a69b1ed78 Select correct heap base address for ISA
Change-Id: I400f965faa4615519729756daa78350a46c46ff2
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-23 14:21:22 +02:00