Commit Graph

540 Commits

Author SHA1 Message Date
Mateusz Jablonski
7cb6d665a5 Use device index from os context when allocating heaps and command buffers
Related-To: NEO-3691

Change-Id: I64015d606bba289d250920899ad620171e8303b7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-23 17:26:39 +02:00
Piotr Fusik
02e1677cf0 DrmCommandStreamEnhancedTest for different families.
Related-To: NEO-3008

Change-Id: I04ef29ff868a0b2dda50cf7a6a7c660149b5ec6a
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-09-19 12:23:39 +02:00
Kamil Diedrich
115070767c Move graphics_allocation to core folder
Change-Id: I16b8dbb57c2a40126826a232332c18ba9f563220
2019-09-18 05:26:55 +02:00
Mateusz Jablonski
dc949f6d18 Setup sub device's os context based on sub device id
Move types defined by using to separated header file

Related-To: NEO-3691

Change-Id: I71dfca0644b7022c4a381fbe396d0e32ca7d1ce5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-17 14:04:26 +02:00
Piotr Fusik
578a03e417 Remove redundant test code.
Related-To: NEO-3008

Change-Id: Ibd52700d6eef01136a3df8ce97a6e4d4d741495e
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-09-17 13:36:19 +02:00
Mateusz Jablonski
f7f420b066 Pass os context to ScratchSpaceController::setRequiredScratchSpace
Related-To: NEO-3691

Change-Id: I3c040b9dd8e31dc798d70c7d0b12e2a89d22fa80
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-16 17:56:03 +02:00
Piotr Fusik
f18b3bb5f5 Clean up TestedDrmCommandStreamReceiver.
Change-Id: I566bda0e8c942c3a458e24ad1ee23845f4a5c1ba
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-09-16 17:44:01 +02:00
Mateusz Jablonski
5c120893ed Move method isMultiOsContextCapable to CommandStreamReceiverHw
Related-To: NEO-3691

Change-Id: I3169ee8d5a29b8f562b70403b2fa9ebba7601a48
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-16 14:46:11 +02:00
Mateusz Jablonski
5d640e7100 Remove multiOsContextCapable flag from GraphicsAllocation
Change-Id: I3ebeef39befdc2a3e0f9d7d76ae531622ecf1a42
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-13 13:55:42 +02:00
Mateusz Jablonski
af80a61db3 Add debug flag to create multiple sub devices
Related-To: NEO-3691

Change-Id: Ia3554424221e102094c40cdd5941680c6a253b18
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-11 10:25:21 +02:00
Jobczyk, Lukasz
3fe91e6d69 Move host_ptr_defines to the core dir
Related-To: NEO-3677

Change-Id: Ic973fb65f584563cc3fbcfa20eb81fe687dc5435
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-11 09:35:55 +02:00
Milczarek, Slawomir
093bc4da9c Add support for multiple buffer objects in drm allocation
Resolves: NEO-3364

Change-Id: I05e8b9a05328298dcc578d62b2aa7b56ffbf4ddc
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-09-06 10:16:05 +02:00
Jobczyk, Lukasz
a79b682fc2 Move a GfxPartition to the core dir
Related-To: NEO-3677

Change-Id: Ia89ba93eefbb2921ef7d64bde7ed4114a0c78e0d
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-04 15:42:25 +02:00
Jobczyk, Lukasz
76fe09c2a9 Handle page faults while accessing unified memory
Related-To: NEO-3330

Change-Id: I7e21f894e9d1c82598954c49342d1f65af07498f
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-04 13:28:53 +02:00
Dunajski, Bartosz
cf979c3bc0 Remove getWaTable() method
Change-Id: I508103a0d46ae94b55891c8a7ef104fb47b0b3e0
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-09-04 11:32:55 +02:00
Mateusz Jablonski
94761a78d6 Unregister engine during destruction of related command stream receiver
Change-Id: I9225439b67a11c02998296bd9c3fbc4e2149cae2
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-03 09:02:41 +02:00
Maciej Dziuban
7e6ef7c208 Add helpers for MI_ATOMIC address
Setter in HardwareCommandsHelper
Getter in UnitTestHelper

Change-Id: I26610d0ccf0113b2b3d3c8ba2d1edd5bf8b41175
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-09-02 08:52:59 +02:00
Maciej Plewka
7827501b91 Add returned status to MemoryOperationsHandler
Change-Id: Ic8685e3711cec03d8f83d371fa7152ee095a47a0
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-09-02 08:42:50 +02:00
Dunajski, Bartosz
77e22bd81b Refactor dispatching blit enqueue
Change-Id: Ibe499e4815a16d5884510c6804221d2b74dbffd4
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3020
2019-09-02 07:56:50 +02:00
Mrozek, Michal
0666da693e Improve uncached flag.
- When resource is uncached for surface state and not used in stateless manner
then it doesn't need to flush cache
- Minor cleanup

Change-Id: I4cfe5a6fe3e666200407d9acdd89e6f64b2b3eed
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-30 12:17:27 +02:00
Mrozek, Michal
ae201a47d3 Improve uncached resources handling.
- Change kernel to properly detect true stateless resources
- do not turn of stateless l3 if arg is used in pure stateful manner
- refactor variable names to better reflect what they do
- improve mock kernel with internal to have setKernelArg capabilties

Change-Id: I2cdde04f2144d9b86dc1486126632db0fd7cad49
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-30 10:51:28 +02:00
Mrozek, Michal
a54dcd98b3 Register cache flushes when ISA allocation is destroyed.
- when ISA is being destroyed , check what are the users of it and register
instruction cache flushes there.
- For subsequent enqueue commands this would result in properly flushed
instruction cache.

Change-Id: I3791cd77ee42da9f87508c64a65cdc6238950858
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-28 14:15:19 +02:00
Igor Venevtsev
3371ed12f6 Refactor DrmMemoryManager::freeGraphicsMemoryImpl
- remove default value from synchronousDestroy param in
  DrmMemoryManager::unreference
- unreference BufferObject in synchronous mode  before release
  GPU and CPU memory
- add ULTs

Related-To: NEO-2877

Change-Id: I8065c27923cf4259a0fcd0f6d8d6d5b7c4b810c0
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-08-28 12:30:20 +02:00
Mateusz Jablonski
18982bd016 Move memory for slm window to memory manager
remove redundant methods from MockDevice

Related-To: NEO-3007

Change-Id: I9cc819b9c9118dbb667f5bf87d1bf15787f9b67f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-08-28 12:09:17 +02:00
Mateusz Jablonski
c7c6068d1f Add classes for sub devices concept
Related-To: NEO-3007

Change-Id: I27dd4b91e286ba1b75f4b50bec96d98df37983e1
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-08-27 15:38:10 +02:00
Jobczyk, Lukasz
4503e04083 Align a unified memory pointer during memcpy
Related-To: NEO-3570, NEO-3610

Change-Id: Id4d41da17a28ef512ba4c90bd71f419a24608d88
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-08-27 15:37:41 +02:00
Mateusz Jablonski
7749f28f70 Remove not needed methods from Device.
Change-Id: I179089a4b248ba1ebd6502e001fda18238c4767b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-08-27 09:07:10 +02:00
Maciej Plewka
7a5bc461eb Add residency handler for TBX
Change-Id: I6c01d065ff3372fe7583ed50ed51595ebeb53e54
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-08-27 07:59:47 +02:00
Mrozek, Michal
cb4e5576cb Pass proper dispatch flags.
- add new policy to select L1 caching
- this is when kernel doesn't have any stateless writes

Change-Id: I3948e652797420976159bbfec2c2a154eb9e18ee
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-26 18:15:54 +02:00
Dunajski, Bartosz
aeb84b3e20 y-tiling interface cleanup
Change-Id: If7e5ab7135eaa71d9215c87c2fc46188ffd42b02
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-26 15:00:26 +02:00
Igor Venevtsev
ffe2bd359a Add ULTs for OsAgnosticMemoryManager
Related-To: NEO-2877

Change-Id: Id80fd66ced9d711ff74d85fa48741c95f9f750bb
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-08-23 15:26:27 +02:00
Dunajski, Bartosz
4692bc1289 Update GMM H/V alignment API
Change-Id: I2713b912cd93ae28de6c7ef6a8348107f0902368
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-23 12:15:33 +02:00
Dunajski, Bartosz
d566267025 Revert "Update GMM H/V alignment API"
This reverts commit 5edd2af916.

Change-Id: I4ad950229f14b44a9b56a4b4d52c3b294c2c7088
2019-08-22 16:36:00 +02:00
Dunajski, Bartosz
5edd2af916 Update GMM H/V alignment API
Change-Id: Iceda9befa200ccfac0343921c24cb4a7d36fa68a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-22 11:32:50 +02:00
Dunajski, Bartosz
1518774fe6 Use stateful args programming for aux translation kernels.
Set valid mocs values

Change-Id: I8de2bbdd72b102a1623b9e397485ef52ecca8306
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-14 14:52:46 +02:00
Pawel Wilma
d35c20f430 Collect patch info for scratch/global/constant/private
Related-To: NEO-3342

Change-Id: I0b594219cedf5d13d1eb70514816e8048938772e
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-08-14 13:52:28 +02:00
Filip Hazubski
552a1268eb Refactor blit buffer call
Resolves: NEO-3241

Change-Id: I726135ae55d1e0fcbacd80620e827ee5c7c0c8dc
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-08-09 16:43:40 +02:00
Jim Snow
4360aff03c Move runtime/helpers/aligned_memory.h to core/helpers
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
Change-Id: I15de094c51d4eb18bfff4d17fd34e817b5525fda
2019-08-06 23:56:24 +02:00
Venevtsev, Igor
614104bf37 Remove MMAP allocator from DrmMemoryManager
Related-To: NEO-2877

Change-Id: Iddfadde449b71b2fcfb7d6298db5de014773476d
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-08-05 17:39:21 +02:00
Dunajski, Bartosz
51888bec7e Whitelisted registers cleanup
Change-Id: Ifa704f4bd7c4f0bab3fc8565103af6da07a42ba7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-05 10:31:16 +02:00
Mrozek, Michal
f0d3b47886 Turn on caching if buffers are set as constant args.
- If resources is constant arg it means it will only be read
- Therefore even for read_write buffer we may turn on caching.

Change-Id: Id2c34d4993111bf5c6523a1946464c397db95686
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-07-31 14:56:56 +02:00
Venevtsev, Igor
e721ff1ec3 Add ULT for DrmMemoryManager
- ensure DrmMemoryManager::releaseGpuRange() calls GmmHelper::decanonize()
  before pass gpuAddress to GfxPartition::freeGpuAddressRange()

Related-To: NEO-2877, NEO-3530

Change-Id: I6f6b745a8f9262c6980b9ddd32c70d376fa49726
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-07-30 13:25:03 +02:00
Piotr Fusik
2548bea71d Minor clean-up.
Change-Id: Id1523930fc8aedf85506e254c67f6b1ca8dd020d
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-07-30 11:53:20 +02:00
Daria Hinz
06d14cdcae Checking builtinParams passed to Multidispatch
Change-Id: Idb6c30dc5bb46403cea12acbf5174c6d9ddfbd3e
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2019-07-30 08:21:13 +02:00
Milczarek, Slawomir
2e3f77a3e9 Add wddm interface to get dedicated video memory size
Related-To: NEO-2687

Change-Id: I44b9cfad250c61d5fadcbdd09f68e2751b43a415
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-07-29 14:49:16 +02:00
Venevtsev, Igor
169ec2b21a Add failAllocate32Bit flag to MockMemoryManager
Related-To: NEO-2877

Change-Id: Ifc0461a9131472591b8306840af85d405a82a9eb
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-07-26 15:30:08 +02:00
Dunajski, Bartosz
d9e02697bf Improve MockCsr reset pattern in unit tests
Change-Id: I0e9e13a44455de72d3a7298befa330a18b584788
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-25 01:31:41 +02:00
Dunajski, Bartosz
38556cec29 Allow blocked command stream programming for commands without Kernel
Change-Id: I691a029bd5511c8f710ef1bff8cc5a9feca644f3
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Related-To: NEO-3433
2019-07-24 16:01:34 +02:00
Andrzej Swierczynski
1b7e70a817 Add MediaCompressed flag support for sharings
Change-Id: Ib648b1f0ad2d783249c93f2dba015d36a9d93881
Related-To: NEO-3388
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2019-07-23 11:32:18 +02:00
Dunajski, Bartosz
95c2dcd8b0 Improve obtaining LinearStream during enqueue call
- Move logic to enqueueHandler to cover all scenarios
- Create BlockedCommandsData not only for Kernel enqueue
- KernelOperation cleanup

Change-Id: Ie4a673cbbc986c685996a38ab296444d38e7bbd5
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-07-22 18:52:14 +02:00