Commit Graph

67 Commits

Author SHA1 Message Date
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
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
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
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
Kamil Diedrich
877a781696 Add engine type to commandList
Change-Id: I108fc027dd4698ebecb224c20b92f2b741698f3c
2020-09-23 09:46:53 +02:00
Aravind Gopalakrishnan
2e912aff52 Add device capability for timestamp valid bits
Change-Id: Ib4a0f4ce80f0fc3649f366ceb458e8f506a97e34
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-09-21 18:15:54 +02:00
Vinod Tipparaju
c7ec23c836 Minor fix to take care of uninitialized variables
Change-Id: I6172dbb5c92d072561f3b710e663794e9f35411a
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-09-17 19:46:37 +02:00
Vinod Tipparaju
d2b218d82d Return ZE_RESULT_OUT_OF_MEMORY when alloc on device fails during cmdlist create
Change-Id: Ia03e7ac190598c56de044d3ad8216087b8da94f2
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-09-17 00:09:22 +05:30
Jitendra Sharma
e904a1f0b4 Create Sysman Frequency API handles based on available subdevice/device
Change-Id: I2049515150004551c3f61647d20f1df7b375f587
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-09-15 18:12:14 +02:00
Mateusz Hoppe
55a6525b34 L0Debugger fixes
- add Sba buffer to residency container of cmdQ
- allocate debugSurface
- add printing SBA tracked addresses

Change-Id: I3eb4d918b99dfadd737d8f9f8174e94b1a620125
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-21 10:41:15 +02:00
Jaime Arteaga
a34ee242d9 Fix query of floating-point flags in module properties
Change-Id: Iec1bf8c6cc4e8c351e94d2a74743ac76e4a91875
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-20 20:11:21 +02:00
Aravind Gopalakrishnan
649dfb93ee Set device property flags
Change-Id: I657a6b86c9f09e125b23428924605dbb175d294b
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-08-18 17:01:55 +02:00
Jaime Arteaga
c1e4e5152b Add support for queue groups (3/N)
- Select correct NEO device in when more than one subdevice available.

Change-Id: I3b5823c12310fde1c6a4e3c5870cbcd5e691ba86
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-14 19:26:05 +02:00
Jaime Arteaga
cc3186c413 Add support for queue groups (2/N)
- Correctly store available groups in vector passed by user.
- Some cleanup.

Change-Id: I4d3f24a4af38fed261809edf85ac043eba4d831f
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-13 13:21:07 -07:00
Spruit, Neil R
e7fd522c5d Return ZE_RESULT_ERROR_UNSUPPORTED_IMAGE_FORMAT for unsupported images
Change-Id: I731c50be70019fa95d57f71489f31aae6a4ba9a5
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2020-08-13 19:12:28 +02:00
Mateusz Hoppe
2990de538f Pass correct descriptor when creating pagefault cmdList
Related-To: NEO-4978

Change-Id: Ib6631407908ad3a86b8dc734e5f3f34bef636743
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-13 13:51:01 +02:00
Jaime Arteaga
a60b8c4831 Set maxMemAllocSize
Change-Id: Ib2e796e659a64176fa3edb14aedfe6291632281e
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-08 11:57:56 -07:00
Maciej Plewka
8785f5acb2 Dont use default engine in immediate cmdlist
Related-To: NEO-4913

Change-Id: I15b5bb700e37ea49c34931bc81de7314ec1ac4dc
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-08-07 17:25:31 +02:00
Maciej Dziuban
b2b90c3daf level-zero v1.0 (3/N)
Implement residency functions

Change-Id: I69179899f2a5fd627d10b976477a6736c600b430
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-08-07 13:49:02 +02:00
Maciej Plewka
4128761479 Use index to chose copy engine
Releated-To: NEO-4913

Change-Id: Ie86e4dc2c1c75f639c9c8b7173fc24d88cb9af82
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-08-06 16:37:22 +02:00
Matias A. Cabral
237e2fe61f Cleanup Sysman initialization
Change-Id: Idc1e13e1b1fd3928674d5f199665054dbab27a9b
Signed-off-by: Matias A. Cabral <matias.a.cabral@intel.com>
2020-08-06 06:28:21 +02:00
Jaime Arteaga
d97db3d7dc Correct getCacheProperties interface
Change-Id: I6e3cec56e78e7fad73f3afe5921ef156c308dd1d
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-06 01:36:05 +02:00
Jaime Arteaga
902fc2f6c4 level-zero v1.0 (2/N)
Change-Id: I1419231a721fab210e166d26a264cae04d661dcd
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
Signed-off-by: macabral <matias.a.cabral@intel.com>
Signed-off-by: davidoli <david.olien@intel.com>
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
Signed-off-by: Latif, Raiyan <raiyan.latif@intel.com>
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2020-08-03 13:11:13 +02:00
Jaime Arteaga
4ca4100a9a Add support for queue groups (1/N)
Change-Id: If4763dcb749acc8a6fd68714119808286306410f
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-07-30 16:26:53 -07:00
Jaime Arteaga
e7958be0bf Add stub for zeDeviceGetCommandQueueGroupProperties
Change-Id: Ib86d0ae331aef01c4e26c414bf1e1dfaca51aeeb
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-07-16 16:54:04 +02:00
davidoli
f70882c684 Move tracing files to experimental directories
Remove need for zetInit call for tracing

Change-Id: Icbb75d8f52e2f9107e5308fd0c99415ea1e227f6
Signed-off-by: davidoli <david.olien@intel.com>
2020-07-14 00:31:22 +02:00
Jitendra Sharma
146fc900c3 Add initial sysman stub as per latest spec
Change-Id: I6f36b9faa21e05a6954de0b50ea01240539441d1
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-07-11 06:54:08 +05:30
Lukasz Jobczyk
ff0add74e3 Add alternative residency model on Linux
Related-To: NEO-4732

Change-Id: I79e165d2b647af200ca314e1183ecf05903de644
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-10 12:38:57 +02:00
Jaime Arteaga
4e1d96f7c3 Modify creation of queues per ordinals in level-zero
In a multi-subDevice device:
- If creating the queue with the parent device handle:
  - Use subDevice0 engines.
- If creating the queue with one of the subDevice handles:
  - Use that subDevice engines

In a device without subDevices:
- No changes. All engines of device are used.

Change-Id: I11cf08cbab08d168deb135111f884c0c023ba384
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-07-10 02:04:45 -07:00
Mateusz Jablonski
93c1e1b976 Add MultiGraphicsAllocation to USM
Related-To: NEO-4672
Change-Id: I53ea4bea73ae6d52840146f63bc561bb90f9fe62
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-07-02 09:39:21 +02:00
Mateusz Hoppe
5eafc349c9 Introduce SBA tracking buffer allocation
Related-To: NEO-4637

- allocate sbaAllocation in L0 debugger

Change-Id: Ia1be1ad637bbdd6e7f12ca6fdfb0c486ba23a040
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-01 09:46:05 +02:00
Mateusz Hoppe
5bd5784559 New AllocationType for debugSurface
Related-To: NEO-4797

Change-Id: I851b6cc5b33fb286bea9d175506e932339701f93
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-24 16:16:04 +02:00
Mateusz Hoppe
15b91c4d45 Program debug commands for DebuggerL0
Related-To: NEO-4547, NEO-4549

Change-Id: Idf9139190a85aae7ec52de7a1899a46123809e63
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-24 15:48:38 +02:00
Mateusz Hoppe
df75856f17 Move EnableCrossDeviceAccess to release_variables.inl
Change-Id: Id16776ebb406ac06e9db534b8b743c24fa1e98d1
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-21 22:15:35 +02:00
Mateusz Hoppe
68847ef942 Create L0 debugger object
Related-To: NEO-4713

Change-Id: I9d10019bbe6e8514ce10bdd729a64ea233bf91b0
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-19 15:46:52 +02:00
Lukasz Jobczyk
8f30d87a1e Unify release variables
Resolves: NEO-4719

Change-Id: Ib2ab959c0a1eb45f24a4e0e2f02c437d96d47751
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-06-18 08:56:29 +02:00
Raiyan Latif
af2fe237b4 Add supportsOnDemandPageFaults to HW capability table
Change-Id: I99a2ed9cfaadb60d049628b03bc3abdfde4877b1
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2020-06-17 12:32:10 +02:00
Mateusz Hoppe
de2cce1238 Allocate debugSurface per RootDevice
subdevices should use RootDevice's debugSurface Allocation

Change-Id: I83a725ab574e33dc045f0a25715de682d1dc5efc
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-17 07:14:28 +02:00
Mateusz Hoppe
0d7d2c0be0 Fix casts between Device, DeviceImp and device handle
Change-Id: Ib267239cd041aa812e7d4d7e5cda6daf5b4b6d2c
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-15 15:51:18 +02:00
Jaime Arteaga
1a89335386 Add reg key for enabling cross device access
Change-Id: Iede7bc8c6fc2ea7fd8594b6b3e2ffb40820d303b
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-10 22:11:44 -07:00
Mateusz Jablonski
57d0967a2c Pass root device index to MemObj::getGraphicsAllocation method
leave parameterless method in Buffer and Image classes

add method to remove graphics allocation from MultiGraphicsAllocation

Related-To: NEO-4672
Change-Id: I3020eecfabe9a16af7f36d68a74b32d3f4fc2276
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-05 13:18:03 +02:00
Mateusz Hoppe
2b0114846e Add getComputeEngineIndexByOrdinal function
Related-To: NEO-4710

Change-Id: Idaf84e2b5df608582b32602a6fc987e889173eac
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-02 16:23:53 +02:00
Raiyan Latif
cb6823b1bd Allow for overriding the reported FP64 support in L0
Change-Id: Ib876e00e198c07dbae7b921e1e7dc2b142aee049
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2020-05-28 22:04:02 +02:00
Mateusz Jablonski
f0ef0d4d78 Remove redundancy from ModuleImp class
NEO::Device can be obtained from L0::Device
use modern API for MOCK_METHOD in Mock<Module>
remove not needed clang pragma from mock_module.h

Change-Id: I993fc77ee7cae56b3f21d6a60601fd649f984032
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-05-28 17:51:00 +02:00
Robert Krzemien
9b3dd97f81 Passing drm file descriptor to Metrics Library
Change-Id: I16b566ba262e0eeff9cb62b2a6ecc48811cdee48
Signed-off-by: Robert Krzemien <robert.krzemien@intel.com>
2020-05-21 18:33:51 +02:00
Jaime Arteaga
8ce44b0689 Expose devices according to ZE_AFFINITY_MASK
Change-Id: Ic8025a818b006c25f790688ef51bda6eeb4f03ad
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-19 19:35:46 +02:00
Vinod Tipparaju
c98949fd37 Fix thread safety violations within runtime allocators
Change-Id: I925d15429de314e3d3287f41a054732181911851
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2020-05-14 16:27:55 +02:00
Jaime Arteaga
415954e7a7 Correctly use debug variable for enabling copy lists and queues
Change-Id: If7dd67e6d2f2aa49f15ca6ce0e6b2dac6ff8e04e
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-12 21:16:01 +02:00
Jaime Arteaga
77791ba889 Create Level Zero command queue based on queue desc ordinal
And correctly return the number of engines available.

Related-to: NEO-4590

Change-Id: I637b3a94473e146003ea5e1c86d38e311406ce7e
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-07 12:10:54 +02:00