Commit Graph

132 Commits

Author SHA1 Message Date
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
Andrzej Swierczynski
2b7ce21709 Pass valid device bitfield while allocating memory
Related-To: NEO-4645

Change-Id: I96eaf3c4f5aba8b8b3de36182accdc16f28f7ee4
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-06-23 08:52:08 +02:00
Mateusz Hoppe
dd407681ff Check if kernel was compiled for debug
Related-To: NEO-4776

Change-Id: I54fe64430bf0c4d7972018367340a2ac88a94f99
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-23 08:51:31 +02:00
Maciej Plewka
2beccf9dc0 Fix Read timestamp register once when memory copy
Change-Id: Ibd02275cefbaebd702e3d40eb23e153840741aec
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-06-23 07:45:15 +02:00
Spruit, Neil R
e1d9f92b94 Fixed Global Driver to be void * with library unload driver cleanup
- Changed Global Driver to be a void * to avoid auto add of Global
Driver Destructor to run before destruction of other L0 data structures
that might be enqueued to destory in static object destructors.
- Added register of library unload driverdestructor to cleanup
driver/device as the last destructor run.

Change-Id: I8ba6c5c27424b942a86a2613edd52fc682ab1c64
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2020-06-22 12:59:03 +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
Milczarek, Slawomir
3029db07c3 Add DG1 support to OpenCL and Level Zero (1/n)
Related-To: NEO-4744

Change-Id: I7e574d7cf003ed01467c72e797187c0717bb76f2
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2020-06-19 11:59:28 +02:00
Mateusz Hoppe
0e76e9db66 Unify Debugger::create methods and link to shared library
- OCL and L0 can share this method

Change-Id: Ice9488281a5c2a26ea09310319243880a6aa0682
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-19 08:26:18 +02:00
Maciej Plewka
2930c8feba Fix fill allocation that is not aligned to pattern
Change-Id: Ie17c869f4ae8ac0dbedf154242bf8955f2bfd90d
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-06-18 16:31:00 +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
Jaime Arteaga
abdb707a39 Check for hardware limit for runtime device allocations
Use hardware limit, instead of the one used for device capabilities,
so applications can fully use the available memory in the device.

Change-Id: I910c610d7a3af254724a810c3c60b9da8d5d64a7
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-17 18:56:09 -07: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
59da9598aa Return INVALID_ARGUMENT for system-allocated pointers in kernelSetArg
Change-Id: I5ad50f8d60c5a54aedf24484a65400352ec855df
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-14 19:21:49 +02:00
Jim Snow
5dc7c2368e Improve error handling for unsupported image creation
Change-Id: I4aeec25f32164b8cf71a78d742b7de254e97aed2
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2020-06-11 15:05:23 -07: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
Jaime Arteaga
775ce2cbee Expose devices according to ZE_AFFINITY_MASK (2)
Read the env var in hexadecimal format, as spec defines it,
and allow for empty string to be the same as default value.

Change-Id: I201c81733ac3d55a5c9ba50b42e28a8cf3414a6d
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-10 10:28:48 -07:00
Mateusz Hoppe
d55a0ae5c6 Detect enable program debugging env variable
Resolves: NEO-4713

Change-Id: Id9ce30b84943c4b364f7756a430d58df2614a28b
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-09 15:23:20 +02: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
Katarzyna Cencelewska
c2295bfb4b Add new method appendSamplerStateParams
to L0
Change-Id: Ia6328799334b56fea91bc244fbc2a91acc65bed1
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-06-05 10:05:48 +02:00
Maciej Plewka
008af5b6e4 Add event profiling for copy commandLists
Change-Id: I9f13e48b4139b3ce3c802c2d38b0ce054e64562c
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-06-02 19:35:13 +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
Aravind Gopalakrishnan
6ee7c6d77c Use correct allocation type for timestamp events
Change-Id: I82dc122fd78045d548f95262c2155eab1b1eae39
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-06-02 12:24:12 +02:00
Jaime Arteaga
e25eb4057c Make sure CommandList methods are called within it
When calls are originated in CommandListImmediate objects,
CommandList calls may be rerouted back to CommandListImmediate,
causing executeCommanListImmediate() to be called twice.

Change-Id: I8cea4500de4d10c9ebeb9af7b5ffe00a733fa4dd
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-01 14:32:19 -07:00
Jaime Arteaga
390ec9fd71 Return ZE_MEMORY_TYPE_UNKNOWN for non-runtime allocated pointers
This aligns more to spec definition

Change-Id: I3f6aaf50945ef82fa5ffe8f400972e944ad03e2b
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-01 09:45:07 +02:00
Mateusz Jablonski
91dc953e1c Add virtual destructor to L0::Driver
Change-Id: Iaeebe3e45a172daa028111f6dd1d741ca6a24969
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-05-29 14:59:42 +02:00
Mateusz Hoppe
f4ef256900 Program hardware context in L0 command queue
Related-To: NEO-4577

Change-Id: I204a5e86ad3b23b71071bbbfd58c23a408f6865f
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-29 13:07:38 +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
chmielew
3e8f05d702 remove kernelHeader from HeapInfo
Change-Id: Ic2d441df15a7f75b5f3ef41d484969148e59715f
2020-05-28 03:59:49 -07:00
Jaime Arteaga
276269788b Add support for thread arbitration policies to Level Zero
Change-Id: I6bbb2ff75dbd930b72a4f60acb0c3a9f372671cb
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-28 11:40:05 +02:00
Jaime Arteaga
5b0a2ee09b Add support for specialization constants in Level Zero
Change-Id: Ifc1255365f4f25e83c5c6128f2ea4d8994e0ae8b
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-27 19:18:45 +02:00
Jaime Arteaga
a90553b9e4 Remove non-used parameters from appendLaunchKernelWithParams
Change-Id: I13d033ffec74a639d308493cb3b399029de2c036
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-27 09:01:46 +02:00
Maciej Plewka
89195ca4a3 Add support for copy images by bliter
Change-Id: I0082fafb3363c6c6eb6973e5e35fa4d3ba1b6465
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-05-22 17:24:34 +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
Maciej Plewka
9131eeca09 Add MI_FLUSH for eventReset in copy only cmdList
Change-Id: I276ec874069e075e1712d813530ba64ab712262a
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-05-21 16:19:32 +02:00
Jaime Arteaga
b2688554ce Correct alignment of events
Change-Id: I967bb5e201df5b881c4d1914d74258e6ceda373f
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-05-19 23:27:22 -07: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
Mateusz Hoppe
ac426b5108 TBX csr downloads allocations on queryStatus calls
Change-Id: I57fd98f4227b6d03430db6b96cfd21dd726919a3
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-13 16:28:19 +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
kamdiedrich
080609e174 Add flush after write to CPU memory
Change-Id: I199c8b203f1afdf648f6520f13b0498efb760c84
2020-05-12 20:34:28 +02:00
kamdiedrich
fa8a5d6451 Add programming crossThreadData for image and sampler
Change-Id: I3322548c60e11d0d0bf2f2b5d76f5932032fe569
2020-05-08 10:02:10 +02:00
Aravind Gopalakrishnan
d176462fb0 Use memcpy for getting and setting event values
Direct pointer dereference may not yield expected results

Change-Id: I872dd837ae21bc8a0e1833527cc9a8791cad5295
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-05-07 16:03:16 -07: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
Katarzyna Cencelewska
ae17fdf63b Add tests for builtin to L0
Change-Id: Ic6ab3dd6b249b339412c71d2d393dbf34e45371d
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-05-07 10:25:46 +02:00
Mateusz Hoppe
ef4fae3903 Enable TBX mode in level zero
RelatedTo: NEO-4644

Change-Id: I76913d6b7c7d978a5a90a7a574778c67283497c1
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-06 16:33:15 +02:00