Commit Graph

625 Commits

Author SHA1 Message Date
Mateusz Jablonski c858a2b79f Refactor configuring device address space logic:
1. call GmmSetDeviceInfo
2. call ConfigureDeviceAddressSpace
3. obtain min address - only for gen12lp platforms

remove getConfigureAddressSpaceMode method

Resolves: NEO-4076

Change-Id: Ib72789c834df1307a3d105131943dcf9a54afc03
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-01-07 11:57:58 +01:00
Jaroslaw Chodor 5cf6d6348e Support mixed program scope ptrs
Change-Id: Ib2ff6ba2fcd9af66f984f9fcddafa16abfff1bfd
2020-01-05 21:58:53 +01:00
ocldev 87e948eef5 gmmlib revision update
use new interface from gmmlib 19.4.1

Change-Id: Ie07bd9e9533c01ef06c67a4059a278850e365f07
Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
2020-01-03 13:22:11 +01:00
Mateusz Hoppe 51f7ca1601 Move files to core
- runtime/gmm_helper files
- engine_control.h
- allocation_properties.h

Change-Id: I108888d639c8fdb298eda00fb1e7961b2ccb26cd
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-02 15:57:05 +01:00
Mateusz Jablonski 3e5fc4111b Initialize registers of page table manager for each command stream receiver
Resolves: NEO-4097
Change-Id: I364550f4e183e9375966eaff22c5726c67761589
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-01-02 13:05:55 +01:00
Mateusz Jablonski 10d274daa9 Pass GmmClientContext to Gmm and GmmResourceInfo
Related-To: NEO-3007
Change-Id: Ia590670e93ed93b0941d5a5dc6ac010268cb561e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-31 12:19:32 +01:00
Mateusz Jablonski 84f2185f7c Test non-default root device in api fixture
Define max number of root devices in ults
Resolves: NEO-4000

Change-Id: Ia8da5c22a36dca3c493a9caf836fc1fb29207ef9
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-30 15:28:00 +01:00
Mateusz Jablonski 4ed3b46da1 Calculate maxOsContextCount after setting up hardware info
Change-Id: I98e0275bc84930eea4990ce1c2281f9f82cda66a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-30 13:15:43 +01:00
Mateusz Jablonski 6ba76147d0 Pass proper handle to initContextAuxTableRegister function
Resolves: NEO-4082, NEO-4080, NEO-4079
Change-Id: If8d0b69126d6442e8a9a102cd21f78944f8551e9
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-23 14:19:54 +01:00
Jobczyk, Lukasz eac48002ab Calculate a maxOsContextCount variable
Change-Id: I7b2f7733be74abf4ae299396d616b249b67de58e
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-12-23 12:24:40 +01:00
Mateusz Jablonski 7ae7ec1dee Pass os interface to gmm helper's constructor
don't access global platform to obtain os interface
Related-To: NEO-3007

Change-Id: I166023a2c7a531393d6311bf991f31d03c634ca7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-20 00:51:32 +01:00
Zbigniew Zdanowicz 58fa5bd347 Add separate methods to Wddm interface to create monitor fence
Related-To: NEO-3639

Change-Id: Id1216def65c873028eb6a577fa30ad68ebec8f19
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-12-19 13:38:19 +01:00
Andrzej Swierczynski cc46cdf46c Move PageTableManager to RootDeviceEnvironment
Related-To: NEO-2285
Change-Id: I77699b5f540b6ac5b73cf1830712a5591326b766
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2019-12-19 12:26:45 +01:00
Pawel Wilma 2ad089a40b Create MAP_ALLOCATION as non-svm allocation when host ptr tracking is disabled.
Change-Id: I57c64706e798efa4b23e34b582be5a490d592e87
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-12-19 10:50:07 +01:00
Aravind Gopalakrishnan 98c109ea2d Exposing downloadAllocations in base CSR
Exposing downloadAllocation allows usage from other clients
to perform memory coherency on per allocation basis.

Change-Id: I2314d543a8db534a526a3a844ce91e1bf930c4f4
Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@intel.com>
2019-12-18 23:40:26 +01:00
Jaime Arteaga e02162d301 Enable shareable buffer support (1/N)
Define method to allocate memory in SKL using
DRM_IOCTL_I915_GEM_CREATE.

Change-Id: I3106c690eaa6ce089a21100a1839c4886580f9c0
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2019-12-18 22:13:14 +01:00
Mateusz Jablonski d11d3ad27e Move getDeviceIndex method to CommandStreamReceiverSimulatedCommonHw class
Related-To: NEO-3691
Change-Id: Ie425c035fcdd1467269ead131c4bd063c8b83e08
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-18 20:43:34 +01:00
Igor Venevtsev 8a059e636a Add ULTs to check rootDeviceIndex correctness in internal GraphicsAllocations
Related-To: NEO-2941

Change-Id: I76cfae48ef88fece6fd59453493f499dbf89f43b
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-12-18 14:50:10 +01:00
Zbigniew Zdanowicz 9e5b66404d Change WDDM interface to submit command buffer
Related-To: NEO-3639

Change-Id: Iaad6199372cd374b61a0e288ce52b5cd0d3eef4f
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-12-17 12:44:45 +01:00
Dunajski, Bartosz 211ba8adcb Dont call virtual method in CSR destructor
Change-Id: Idccea2ad8f5bc6ff9933e4f9f1f0549db5ce6a99
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-17 12:14:38 +01:00
Zbigniew Zdanowicz 37a690a185 Destroy WDDM monitor fence during OS Context cleanup
Change-Id: I654bc28891bcd1ec23fa18a07bef79a98edbce2e
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-12-16 14:05:07 +01:00
Maciej Dziuban e43e06192f Do not require RenderCompressed or MediaCompressed flags for compression
Change-Id: I19782bf16b94c34a0af6de62203e2a1b5c25a359
Related-To: NEO-3771
2019-12-16 07:53:21 +01:00
Mateusz Jablonski c7755c2c48 Move files to core
engine_node_helper
kmdaf_listener
wddm_engine_mapper
windows_defs

Related-To: NEO-3982
Change-Id: Ia39342059bdeafa97d17f286c167138e5c40553c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-11 17:39:14 +01:00
Cencelewska 230d808021 Add mechanism to dynamically assign thread arbitration policy by one kernel
-use clSetKernelExecInfo with param
 CL_KERNEL_EXEC_INFO_THREAD_ARBITRATION_POLICY_INTEL
 to change default value of ThreadArbitrationPolicy

Change-Id: I15d0de0840ed14687c16ae04890b662bc157de76
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2019-12-11 09:30:33 +01:00
Zbigniew Zdanowicz 2a50c86945 Use actual MockSip object in ULTs
Change-Id: I60016a5c2f14f9bf4391df84335856e93bf1e64f
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-12-10 14:13:17 +01:00
Mateusz Jablonski 5fa53f4516 Move headers to core
- address_patch.h
- options.h
- registered_method_dispatcher.h
- grf_config.h

Rename OCL_RUNTIME_PROFILING -> KMD_PROFILING

Related-To: NEO-3982

Change-Id: I06cf72729e9d7d7d2ff0bd169fcbada00c4b509a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-10 12:19:29 +01:00
Gibala 5ac1d1258c Connect UnifiedMemoryProperties with MemoryPropertiesFlags
-Add support to SvmAllocationData
-Refactor parseMemoryProperties
-Add allocation flags

Related-To: NEO-4011
Change-Id: I3728d2319aeef983dbcc3f8702da9a303a4e2b9c
Signed-off-by: Gibala <krzysztof.gibala@intel.com>
2019-12-09 14:23:46 +01:00
Dunajski, Bartosz b544b2da60 Remove redundant CommandQueue member
Change-Id: I2ee338a3134cd81d6de7ecbed47c049dfbbae5aa
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-09 13:13:45 +01:00
Jaroslaw Chodor 72a1542140 [2/N] Program refactor - gather compiler options
Change-Id: I0a614be73fbd87184be2dfea407582a58c27b0bc
2019-12-06 22:17:19 +01:00
Dunajski, Bartosz ec21f06427 Move GMM-OCL types conversions to new helper + includes cleanup
Change-Id: I13e5917a32a5cd894ee42a848407fe20bf1daa06
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-04 10:42:49 +01:00
Michal Mrozek e234c89ee4 Change makeResident to be non virtual function.
- remove wddm version, not a lot of value there as residency is logged
in processResidency anyway.

Change-Id: Icb2814cfce0e8f3cd75445f1fd2e2f8535d476cc
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-12-04 07:29:00 +01:00
Mateusz Jablonski ee544e2515 Reorder members and methods in Device class
Related-To: NEO-3938

Change-Id: I18e6ed4b301d5e221263ced5a3213b54dd21745a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-03 10:22:31 +01:00
Dunajski, Bartosz 0527c9113c Disable TimestampPacket optimizations in Aub/Tbx mode
Avoid removing semaphores and reusing returned tags

Change-Id: Ic26167953c5d5a9ccceaae49f4921af11a375fab
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-02 15:38:13 +01:00
Mateusz Jablonski 54f65c0243 Move headers to core
- hw_info
- hw_cmds
- kmd_notify_properties
- completion_stamp
- bxml_generator_glue

Related-To: NEO-3982
Change-Id: I3ed3ef81f42596f381e60c19250f6eb1296d47a4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-02 14:20:45 +01:00
Filip Hazubski 0270ad8015 Add pointer checks
Change-Id: I37a6898670a4d9e66f0eff404b5282714f293956
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-12-02 12:57:02 +01:00
Mateusz Jablonski 244146c203 Move Device::getProductAbbrev method to MockDevice
Change-Id: Ia146d0198039b526e563a44d76710ac175ea3b88
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-11-29 11:12:08 +01:00
Filip Hazubski 5bed747e33 Update Program::extractInternalOptions
Change-Id: Ie67a8ef7b6f010a44b252666e9d9ef48fdeac9e0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-28 15:04:28 +01:00
Michal Mrozek 0071964138 Do not call malloc for Virtual Alloc mock.
Change-Id: Ic6689716c4f4cdfa8f18eaccb39e375f9f48b56c
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-11-27 14:44:14 +01:00
Jaroslaw Chodor fd0d69e144 Fixing race condition in compiler interface
Change-Id: Iba3e4c3213cff7750260539849c630b3c66d98ca
2019-11-27 13:29:34 +01:00
Pawel Wilma 472a75912d Return error code from submit() to application.
Related-To: NEO-3741

Change-Id: I0e0ff6606eb6a8a77673949955c8e799689017b6
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-11-26 12:42:47 +01:00
Jaroslaw Chodor 355e8d3e5a [1/N] Program refactor - decouple from patchokens
Change-Id: I63bbf6c31a5db9e788124f22b6105e65c16c86d4
2019-11-25 19:46:21 +01:00
Klein, Yaniv 1d05947cbe sync with interface change on Aub stream
Change-Id: Ibb4937a4c8368d93f4f787c92ff8e9fcd64ae199
2019-11-22 00:01:18 +01:00
Pawel Wilma ae0cefc834 Add patchToken OffsetToSkipSetFFIDGP in device execution
Change-Id: I0634836b787fa371f0b64779732941396a6ba804
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
Related-To: NEO-3892
2019-11-19 17:26:22 +01:00
Mateusz Jablonski 3e1b15c31d Move initialization of AubCenter to RootDeviceEnvironment
make RootDeviceEnvironments vector of unique_ptr

Related-To: NEO-3857

Change-Id: I23998502198307c8535cdd5c9c4af5223a5d69a5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-11-19 11:30:16 +01:00
Zbigniew Zdanowicz b31e25dbb6 Move PreemptionHelper class to core
Change-Id: I172c4beb8ea2576505d6192585d45cfa3d00da34
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-11-18 23:59:28 +01:00
Dunajski, Bartosz 46b5513028 Initial Blit aux translation support
Change-Id: I67fb71be57cff28a3736d5ffb9e1c39b2498feb8
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-11-16 11:42:10 +01:00
Igor Venevtsev 63fd26f6d6 Always specify rootDeviceIndex for graphics memory allocations
Related-To: NEO-2941

Change-Id: Ia2362fd6b4e72ede02919152475f40b3edbc3658
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-11-15 15:14:41 +01:00
Filip Hazubski 5f021afd6d Move HwHelper to core directory
Change-Id: I2c78a8b737ee8e61b917b4918da37e77bbd9fe34
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-15 14:06:40 +01:00
Filip Hazubski 4b2a8e99d8 Add clGetExecutionInfoIntel API
This API allows querying for execution related information.
CL_EXECUTION_INFO_MAX_WORKGROUP_COUNT_INTEL parameter allows to query for
maximal work group count that is possible to run concurrently on the device.

Related-To: NEO-2712

Change-Id: I4e6b4c80aeb06ff966fb543c0a7f05ed54416dab
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-13 12:09:40 +01:00
Klein, Yaniv 340e80bb1a added support for 2 stages write memory of aub_manager
1. write ppgtt pages only by calling write memory with pagesOnly set to true
2. write the actual memory pages by calling writePhysicalMemoryPages

Change-Id: Id3766704e4b8f84f77336f78da6b9270bfd44b70
2019-11-13 11:45:08 +01:00