Commit Graph

363 Commits

Author SHA1 Message Date
Dunajski, Bartosz 12da1b0616 Remove osContextCount parameter from GraphicsAllocation
Change-Id: I23b650e97f107008b1122a1ecea48722fe129863
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-11 15:44:37 +01:00
Dunajski, Bartosz dc181defba Use GpuAddress for TimestampPacket programming
Change-Id: I1303605c33e2e0267a1716e12a0bfcb341fcfbd7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-11 15:31:17 +01:00
Koska, Andrzej e8771e8c2a Preparing the correct signature of WaitForSynchronizationObject
Change-Id: I3689791ab0335009d79a3484379945f8741ba32b
2019-02-08 14:38:31 +01:00
Hoppe, Mateusz cb37f2a779 Add /we4189 switch to CMAKE_CXX_FLAGS for MSVC.
- treat unused local variables warnings as error in Debug

Change-Id: I2da08b72e0f0083d3cdf932fbf92ef4981a88615
2019-02-08 12:06:04 +01:00
Kamil Diedrich 62e56d2398 Disable L3cache when resolve argument
Change-Id: I4bb3a18d67254eef8aa4a0ce6b29401726f0b47e
2019-02-06 15:51:31 +01:00
Jablonski, Mateusz 3a9531201a Add missing tests for internal heap index
Change-Id: If3705ef86c54504c930888829f6e38f88cdbd1ef
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-06 08:33:08 +01:00
Jablonski, Mateusz e095ac834d Windows: use HEAP_INTERNAL in 32bit scenarios
Change-Id: I652727303eec45cd3547bd98bec42f276000d9b4
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-05 19:04:06 +01:00
Mateusz Jablonski 16c3117b09 Fix test for internal heap base address of wddm memory manager
Change-Id: Ia6879ad9637ad38b3d641b0b4522dd1e85b0fb50
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-02-04 19:05:20 +01:00
Mateusz Jablonski fff8be32f4 Dont force system memory for internal allocations
use HEAP_INTERNAL_DEVICE_MEMORY for internal allocations

Change-Id: Id70caa30cd1e9c79df60773227d72b09541e4b77
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-02-01 16:31:34 +01:00
Filip Hazubski 3fe78d263b Update getGraphicsAllocationType
Change-Id: I7613d0d5550d8032b960f86aa117b4baf6b9216f
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-01-31 11:02:35 +01:00
Mateusz Jablonski c04ba163a0 Simplify selecting heap in Wddm::mapGpuVirtualAddressImpl method
Change-Id: Id6eb5b0df1c705b5fadde62d20513fe15edf1e27
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-30 16:38:46 +01:00
Mateusz Jablonski f157943610 Allocate internal allocations through preferred pool
Change-Id: Ib17431ceefc1eb72f86625e0998f679baaa7cb0d
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-30 11:18:15 +01:00
Mateusz Jablonski 8056d7c5f0 Cleanup headers included in wddm.h
Change-Id: Ibb9b84b8f1ea2c69ddd134451b06f0e505c841b4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-29 12:43:29 +01:00
Hoppe, Mateusz c870628d08 Rename SHARED_RESOURCE allocation type to SHARED_RESOURCE_COPY
Change-Id: Ie846450384730171304788bbb1709d7f088036a8
2019-01-28 16:20:35 +01:00
Zdunowski, Piotr ecb204f347 [2/n] Log allocation placement.
Change-Id: I1a523b7b7ed8a3fb199e4a216b5c1dc97b83cd44
2019-01-28 12:45:22 +01:00
Hoppe, Mateusz d7ce6ef8d1 Allocate images through preferred pool call
Change-Id: I79c9c1a0a95a8a3e26ed690530b71ef504cc7ff8
2019-01-25 09:05:25 +01:00
Mateusz Jablonski f90cfb9199 Fix typo: freeGpuVirtualAddres -> freeGpuVirtualAddress
Change-Id: I6cbec2bd4ec5863e2c5df75aa60b3a7a0dbb94c6
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-24 16:08:00 +00:00
Mateusz Jablonski f332bf369e Set allocation's lock state only in lockResource and unlockResource methods
Change-Id: I60f35801287166f5bdb0dfcd31ff0118c56ec22a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-24 15:15:27 +01:00
Mateusz Jablonski b229df3cc4 Remove debug flag EnableMakeResidentOnMapGpuVa
Change-Id: I12063762818ed58861ec80f0d8a798312374d198
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-23 14:43:40 +01:00
Piotr Fusik 40870f9c7d Retry mmap with a smaller size.
Change-Id: If8ea046af789394c1f58be9cc3a2b8100cee214a
2019-01-22 11:04:16 +01:00
Mateusz Jablonski ad3bfd84cb Add functionality to make resident before locking resource
Change-Id: I0963c1edcb43f409e9dd62cb46a0da1f2b05667b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-22 08:28:12 +01:00
Katarzyna Cencelewska 72f17d6435 Add check that Intel OpenGl is used
before return device_id in clGetGlContextInfoKHR
Change-Id: Ic6dce407a1666909d468d89a8576c907abc63b61
2019-01-22 08:10:46 +01:00
Chodor, Jaroslaw e663d51481 Adding support for debug variables translation
Additionally, adding flag to override gdi

Change-Id: I52759aa8c5f1149a34167429289d3f3876cdcb92
2019-01-19 20:12:41 +01:00
Pawel Wilma dcbdbd92b9 Wait for paging frence after calling makeResident() on mapGpuVa
Change-Id: I289c4be891b2d7c1b50a0100cbdde8688f3068d5
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-01-17 10:41:28 +01:00
Zdunowski, Piotr 75a635fdc5 [1/n] Log allocation placement.
Change-Id: I9ab61e10dcb0fcbbaf859c077a64ce7a4f2c213c
2019-01-16 16:46:50 +01:00
Mateusz Jablonski 06600f169b Define GPGPU engines per gen
Change-Id: Ie0e565d11184c5355b5bf09f5b10a567deb5c106
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-15 12:05:19 +01:00
Mrozek, Michal 9cbfa3892d Remove debug flag.
Change-Id: I013e1f27477d67fd33ba6c559dffb26d06a0db8b
2019-01-14 15:19:57 +01:00
Dunajski, Bartosz 8ae7de7b0e Create HardwareContext only when osContext is available
Change-Id: I8bcf2cb20f0e1e6b9da98b477f5be206407a7a57
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-01-13 15:12:07 +01:00
Piotr Fusik 30dd15144c Add debug variable to disable host ptr tracking.
Change-Id: Ifc866e06a4519e7590d40d8ad136147ecc80225d
2019-01-11 12:06:52 +01:00
Dunajski, Bartosz a9470b9f79 Dont restore overrideCommandStreamReceiverCreation at creation time
Change-Id: I17039e501c0cdc84799ae16e7f82e8091cc6fb3a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-01-09 09:25:01 +01:00
Mrozek, Michal acc5e87b40 Change CL_MEM_USE_HOST_PTR buffer allocation scheme.
- Choose BUFFER type if local memory is present.
- add CL_MEM_FORCE_SHARED_PHYSICAL_MEMORY_INTEL for allocations that
require host pointer storage.

Change-Id: Ifd3c74800cd53a2a9bb2171212a47ef5bcffe2a1
2019-01-08 16:24:10 +01:00
Mateusz Jablonski aee69779fa Minor renaming in a scope of multi os context allocations:
shareable -> multiOsContextCapable
resetTaskCount -> releaseUsageInOsContext
resetResidencyTaskCount -> releaseResidencyInOsContext
isUsedByContext -> isUsedByOsContext

Change-Id: If824246a0e393b962bd12f8c63d429a0fcfcda25
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-07 11:42:43 +01:00
Dunajski, Bartosz 8029639898 Pin allocation with specific DrmContextId at creation time
Change-Id: Ic132fb70b1da2cf3b7c70ab899822705adb83edc
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-27 09:35:58 +01:00
Katarzyna Cencelewska 154917a979 Add ULTs for DriverInfoWindows
Change-Id: Id2b4456bdc33e625569eaef6e197101ba63cea7b
2018-12-21 08:45:21 +01:00
Kai Chen 1251ccc3c6 Allocate CPU address for Linux internal 32bit allocator base
The internal 32bit allocator sometimes need CPU address to access
or store data when it is in reduced address space scenario.

Change-Id: I6c0b3f9703ae3e124249b41ad7d81f03ad93ad17
Signed-off-by: Kai Chen <kai.chen@intel.com>
2018-12-21 07:11:48 +01:00
Mateusz Jablonski 1e011f9a08 Allow to allocate shareable graphics allocation
Change-Id: I284b03b001e5b67c344d46f34048803ef9a57314
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-20 20:14:57 +01:00
Mateusz Jablonski c9e667d601 Simplify Memory Manager API [4/4]
- fill AllocationData in one place
- remove allocateGraphicsMemoryForSVM function
- refactor SVM manager tests

Change-Id: I6f4ecd70503da8031cced50ea98a54162fd8e5d3
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-20 09:01:33 +01:00
Hoppe, Mateusz f6790c42cf Refactor Graphics Allocation paths for Images
Change-Id: Ifa3084b18cac95289bbceeaf3669dd31567fbd3e
2018-12-19 13:49:53 +01:00
Maciej Plewka 9e81469d9f Disable debug keys for ults
Change-Id: I7f69a770b21a741b5ff79e735c26d988d2b83aab
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2018-12-19 12:30:03 +01:00
Katarzyna Cencelewska f18532c8c4 Refactor of glcl sharing
new pattern to load gl and wgl functions from dll

Change-Id: I71d7510a210462c09d50e03ce8a444770c017b8d
2018-12-17 23:04:28 +01:00
Mrozek, Michal d1a80db2f2 Use wrapper instead of manual restore.
Change-Id: If394797132d67c7b36a29d42cf6f6d9809baf2c2
2018-12-17 21:44:56 +01:00
Mateusz Jablonski 8ec072d39c Simplify Memory Manager API [3/4]
- remove method allocateGraphicsMemory(size_t size)
- pass allocation type in allocation properties
- set allocation type in allocateGraphicsMemoryInPreferredPool

Change-Id: Ia9296d0ab2f711b7d78aff615cb56b3a246b60ec
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-17 10:42:16 +01:00
Pawel Wilma 5094c630f7 Force resource locking on transfer calls
Add debug variables to force resource locking on memory transfer calls
and to call makeResident() on mapVirtualAddress() call.

Change-Id: Ifa78d951fcb81812b10a98252bd414124dec9c74
2018-12-14 12:25:28 +01:00
Dunajski, Bartosz 010e1a4738 VFE state programming cleanup
Change-Id: I38fb47b00211a1d28244369ac417427ada145f61
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-13 17:44:40 +01:00
Dunajski, Bartosz cfafe943eb Use different DRM Context for each OsContext on Linux
Change-Id: I543df4accdeba6c69b7dcf86d4238d12dafe92fe
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-12 15:08:23 +01:00
Mateusz Jablonski a6be6533ea Simplify Memory Manager API [2/n]
- make AllocationData a protected structure
- use AllocationProperties instead of AllocationFlags
- refactor methods: allocateGraphicsMemory64kb, allocateGraphicsMemoryForSVM
- call AllocateGraphicsMemoryInPreferredPool in AllocateGraphicsMemory
  where there is no host ptr

Change-Id: Ie9ca47b1bccacd00f8486e7d1bf6fb3985e5cb12
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-11 13:12:00 +01:00
Piotr Fusik 0b839722f4 Don't store preemption mode in Wddm.
Change-Id: I6088e5fec65b6910fefb42ec9735181867c44a1b
2018-12-10 14:48:52 +01:00
Dunajski, Bartosz f5508ed2d7 Simplify preemption control on Linux
Change-Id: Ie0896cc8950f7fbb271b710b8bb221eb41ba0445
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-10 13:12:16 +01:00
Mateusz Jablonski c8748b77a0 Simplify memory manager API [1/n]
pass struct with properties to allocate graphics memory methods:
for protected methods use AllocationData
for public methods use AllocationProperties

Change-Id: Ie1c3cb6b5e330bc4adac2ca8b0bf02d30ec76065
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-06 15:09:25 +01:00
Mrozek, Michal 2ca3e4c4e5 Ensure that allocations in 4GB heap have non 0 GPU address to patch.
- That address is used later to deduce that allocation is non null
- If we have address 0 it is incorrectly detected as null ptr on the GPU.

Change-Id: I45e1bb31f1788528327da35bfdcc13f3fa6beec2
2018-12-06 09:06:38 +01:00