Commit Graph

179 Commits

Author SHA1 Message Date
Bartosz Dunajski
6dd07bd3bc Use correct Heap32 index for local memory allocations
Change-Id: I068f712ab2b05ee3d5a9716b21de685a7fee3a02
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-01 17:31:43 +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
Jaime Arteaga
8113fafe53 Disable cross-device indirect access
Change-Id: I57655abfc02785dfd68384a1546ee4cfdbea938a
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-30 21:42:47 +02:00
Maciej Plewka
a661f4b878 Reuse hostPtr allocations
Change-Id: Ie7e24e6630b26809fac1215b66cd90b3cafda53f
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-06-30 20:44:16 +02:00
Spruit, Neil R
489521da97 Fixed Image size used in Copy From/to memory for null regions
- When peforming Image Copy from/to memory, the size of the image and thus the
memory should be expected to be at maximum the size of the
image width, height, & depth in the user's descriptor.
- When a user passes in a nullptr for the destination or source region the
width, height, & depth of the image region should match the image descriptor
that was passed in by the user at image create.
- The Physical image allocated may be larger than the user requested.
This new size cannot be used in the Copy to/From memory otherwise device data
corruption will occur.

Change-Id: I950f6fd1d5ddc9911dd235f84e1cf00618e4e2a3
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2020-06-29 22:48:29 +02:00
Jaime Arteaga
5b61ad0966 Add stub for dynamic link function and for extended kernel properties
Change-Id: Ifaaf1226114233618e7959def086989cf93bd0bd
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-29 02:11:29 +02:00
Raiyan Latif
b73c757a82 Add indirect allocations to residency at kernel submission time
Change-Id: Idc6ce7ac72de84107990a5c9786c868d4bfa4322
Signed-off-by: Raiyan Latif <raiyan.latif@intel.com>
2020-06-26 01:54:09 +02:00
Mateusz Jablonski
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
Maciej Plewka
a822503b41 Use encoder to program buffer surface state
Change-Id: Ibe66bd9906743b021a04f1d9aad1aae4127a4f71
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-06-25 12:32:29 +02:00
Aravind Gopalakrishnan
d635eb6300 Move event timestamp function to cmdlist_hw.inl
Change-Id: I0fdff3a70172a81a32e416d62b00bc57420640f3
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2020-06-24 21:50:51 +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
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
Maciej Plewka
a3bb60e17c Fix dont use srcTile type to calculate dst pitch value
Change-Id: I0d31cd5979f092bcf826898c7034b7b50a3c3c03
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-06-19 08:34:48 +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
Mateusz Jablonski
e5671d8e22 ULT: setup productFamily and renderCoreFamily before using them
Change-Id: I005afe541f1bf01b6e28adf48d0e10eda121b03b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-18 09:09:31 +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
Artur Harasimiuk
b817c9abfa add missing override
Change-Id: I2db6b415fd4c79f7040452380d9e340780a6ad78
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2020-06-15 20:47:08 +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 Jablonski
39b61b5928 Add .clang-tidy file for level zero and shared tests
add some extra checks for clang-tidy in tests:
- clang-analyzer-core.StackAddressEscape
- clang-analyzer-core.uninitialized.Assign
- clang-analyzer-core.NonNullParamChecker
- readability-identifier-naming.StructMemberCase

Change-Id: Ib8f82d5555f65635f2e7a6f82287bd480a508a7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-02 19:05:35 +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
Mateusz Jablonski
b674b4aff7 Add missing override in Mock<Driver>
Change-Id: Ie07bc3c7c947bb5ba8b1cfd5fd380a7c1a40d2cf
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-01 15:09:07 +02: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