Jobczyk, Lukasz
ee1854bfe8
Reverse logic of creating Memory Manager - part 4
...
-Remove a redundant parameter from WddmMemoryManager constructor
Change-Id: Ied9118d136e7d1f3e93b1bb6ce0e29d748bdbe01
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com >
2019-03-25 16:14:51 +01:00
Jobczyk, Lukasz
9ecb3193af
Reverse logic of creating Memory Manager - part 3
...
-Move a Device::getEnabled64kbPages method's logic
to the Memory Manager constructor
Change-Id: Ide88898000e5817a79f9a6ad5dfc9d680bec0533
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com >
2019-03-25 14:42:16 +01:00
Mateusz Jablonski
6abc3f7d9b
Add logic to create wddm allocation with many handles
...
Change-Id: I1eeffddf7108183ad867d2b05d313f0cf6941c01
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2019-03-21 11:28:55 +01:00
Mateusz Jablonski
5367440fab
Refactor Wddm map gpu address method
...
Change-Id: I9d3d8675bf80af4079e25b84ba6e09b7883c9e28
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2019-03-20 08:40:47 +01:00
Mateusz Jablonski
13f9f3a929
Prepare for refactor map methods of wddm
...
Change-Id: I33249d9a097d717ab2eb5801eaa17154f68ffdce
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2019-03-18 13:26:28 +01:00
Zbigniew Zdanowicz
8e743cc1bd
Refactor Wddm interface of mapping GPU VA
...
Change-Id: Ic807dfb17fd0ab664af281db757e48b0cc424fcb
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2019-03-15 07:50:53 +01:00
Zbigniew Zdanowicz
cdb52400c4
Add new functions reserving address range to Memory Manager
...
Change-Id: I947203c24495c9e5a206b95bb0c69440824586b6
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com >
2019-03-14 15:06:11 +01:00
Piotr Fusik
ec72787b98
Remove MemoryManager::allocateGraphicsMemoryForHostPtr.
...
Change-Id: I629f2299a183fc135135dbaff89216b966554a95
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com >
2019-03-12 15:51:32 +01:00
Maciej Dziuban
79d0878e64
Wait for resource not being used in freeGraphicsMemory
...
Change-Id: I201d914569fc0cf6f9eb616d456a670b0b8741ab
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2019-03-11 12:18:38 +01:00
Mateusz Jablonski
3f690e1758
Dont unlock/evict wddm allocations during releasing memory
...
Change-Id: Ib934867886a883a22fde2f0c03e16338dc215e65
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2019-03-11 10:20:09 +01:00
Mateusz Jablonski
03527f496d
Cleanup Wddm interface 1/n
...
pass const D3DKMT_HANDLE * to makeResident/evict/destroyAllocation calls
remove gpuPtr from WddmAllocation
Change-Id: Ia5ca162946a2d893d4f56c37f8027eab02af90b0
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2019-03-05 17:28:29 +01:00
Mateusz Jablonski
5b2d13765a
Move logic of copying ISA to separated method
...
Change-Id: I2c5fd3004fa41ed1bf1cf3d54741756f546f6941
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2019-03-04 09:21:15 +01:00
Dunajski, Bartosz
86dabbf6d5
Improve OsContext construction
...
Change-Id: Ibf9293344cc5c0ae1b2cc011e87d9e3626f3a066
2019-03-01 08:35:38 +01:00
Piotr Fusik
426a7b6efe
Pass by const reference.
...
Change-Id: I68dc9d2a77da8cc7f81759c4e72d32e2e7f71a1d
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com >
2019-02-28 14:12:13 +01:00
Filip Hazubski
8b57d28116
clang-format: enable sorting includes
...
Include files are now grouped and sorted in following order:
1. Header file of the class the current file implements
2. Project files
3. Third party files
4. Standard library
Change-Id: If31af05652184169f7fee1d7ad08f1b2ed602cf0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com >
2019-02-27 11:50:07 +01:00
Piotr Fusik
378bd28bab
Change the signature of MemoryManager::createGraphicsAllocation.
...
Change-Id: Ia82235ff2831fd5b3436d488a5946bb49d63ce91
2019-02-25 16:08:35 +01:00
Piotr Fusik
75edea81bb
Virtual address space partitioning on Linux [2/n]
...
Move selectHeap from Wddm to MemoryManager.
Set DrmAllocation::origin.
Change-Id: I5d412e35d524d1f31174893b9ce1d3b1e98eee96
2019-02-20 14:43:08 +01:00
Dunajski, Bartosz
64fbfb21bf
Improve iterating over existing CommandStreamReceivers
...
Change-Id: I12a10852d43c625ec5521ae91918fcb12e1a6aec
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2019-02-19 11:48:56 +01:00
Jablonski, Mateusz
e74b31691c
Remove redundant parameter of createWddmAllocation method
...
Change-Id: I1c1014eacbdee4ab6b83ea7d7b5257f25f2b46dd
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com >
2019-02-14 07:33:45 +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
Hoppe, Mateusz
d7ce6ef8d1
Allocate images through preferred pool call
...
Change-Id: I79c9c1a0a95a8a3e26ed690530b71ef504cc7ff8
2019-01-25 09:05:25 +01: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
Piotr Fusik
30dd15144c
Add debug variable to disable host ptr tracking.
...
Change-Id: Ifc866e06a4519e7590d40d8ad136147ecc80225d
2019-01-11 12:06:52 +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
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
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
Maciej Dziuban
969d4da811
Cleanup WddmResidencyController related code
...
- Move trimCallback from WddmMemoryManager
- Refactor lastFenceValue accessors to be less generic
Change-Id: I01b31ccb81a5ecc04d07912061326428b07a59bf
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-11-16 08:34:18 +01:00
Maciej Dziuban
9bdedc62dd
Move residency functions to WddmResidencyController
...
Change-Id: Ic73a51546b3325515f293808550376fa6b57dec3
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-11-15 11:17:27 +01:00
Maciej Dziuban
b0acc5ecde
Move isMemoryBudgetExhausted to WddmResidencyController
...
Change-Id: Ic9da29ab954835e93cfbcd6690c1764d99939613
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-11-06 23:09:20 +01:00
Maciej Dziuban
42b2ed6a90
Register trimCallback with WddmResidencyController as Context
...
Change-Id: Ibc34aac17e79df3a3096c29c34506039e2c5bdcc
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-11-05 17:43:20 +01:00
Maciej Dziuban
dc4de3c31b
Move trimResidency functions to WddmResidencyController
...
Change-Id: I046fd34d5336b767ed38eda31e58e4a35ceee5f8
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-10-29 12:19:50 +01:00
Maciej Dziuban
bd431edb46
Return trimCallbackHandle from register method instead of storing in Wddm
...
Change-Id: Iddfb6a926311480e355d52e5bf3e6379ec96f7a9
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-10-25 17:17:52 +02:00
Maciej Dziuban
de5ed6509f
Move WddmResidencyController to OsContext
...
Change-Id: If27d52617dec9b290b7eccc7cb4a6ae5037d7112
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-10-18 10:59:52 +02:00
Maciej Dziuban
9399215931
Unregister trim callback
...
Change-Id: Ia6592d259a573cbc7161443945d03f6a83e88181
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-10-16 16:55:15 +02:00
Maciej Dziuban
07e03af67e
Extract trimCandidatesList to WddmResidencyController
...
Change-Id: I8938ee79975caf9cb09f7183c87452dc94a6b3e6
2018-10-09 00:55:10 +02:00
Maciej Dziuban
b2dd8a9a1d
Create WddmResidencyController to encapsulate basic residency data
...
Change-Id: I6dd94405ca5ea3a13b137c1e0ead72e615d36e00
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-10-08 15:11:58 +02:00
Maciej Dziuban
bc4700a193
Add OsContext argument to MemoryManager::makeNonResidentEvictionAllocations
...
OsContext has to propagate through following calls first:
- WddmCommandStreamReceiver<GfxFamily>::processEviction
- CommandStreamReceiver::makeSurfacePackNonResident
Change-Id: I7559c7406b2860c51905c9961cec251fac231b08
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-10-05 01:28:31 +02:00
Mateusz Jablonski
b602cd2bb8
Pass execution environment to memory manager
...
Change-Id: If43cf9d1353b4cbc02ea269fb9105c01cc4e0876
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2018-10-03 22:12:26 +02:00
Maciej Dziuban
ea9e7bea31
Change MemoryManager::lastPeriodicTrimFenceValue to a vector
...
Also start registering OsContext to MemoryManager in
WddmMemoryManagerResidencyTest along with some cleanup in fixture's SetUp
Change-Id: I3f6763ae0cd9bf638cdc5dbbfbc60dfb0fd0ef05
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-09-28 06:33:12 +02:00
Maciej Dziuban
9804bddd46
Change makeResidentResidencyAllocations argument to a reference
...
Change-Id: I7e8a73fdbe5371e29a53ec34201eddb42cb7f20a
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-09-25 11:34:16 +02:00
Artur Harasimiuk
40146291ad
Update copyright headers
...
Updating files modified in 2018 only. Older files remain with old style
copyright header
Change-Id: Ic99f2e190ad74b4b7f2bd79dd7b9fa5fbe36ec92
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com >
2018-09-20 18:02:35 +02:00
Maciej Dziuban
da5a292e54
Delegate MemoryManager residency and eviction calls through CSR
...
MemoryManager::getEvictonAllocations()
MemoryManager::pushAllocationForEviction()
MemoryManager::clearEvictionAllocations()
MemoryManager::clearResidencyAllocations()
Change-Id: Iaa3051965bc9dfc09384e2bd5e9e0c372b5e722a
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com >
2018-09-14 08:18:04 +02:00
Venevtsev, Igor
ed4e1e9c3e
Add enableLocalMemory param to WddmMemoryManger constructor
...
Change-Id: I89299c01f11565ab57a8421573a287c9a2e77b6e
2018-09-11 19:04:59 +02:00
Mrozek, Michal
df41112b6a
Do not wait on CPU for fence.
...
- If allocation is passed for destruction it means that it is ready to
be destroyed, there is no need to wait for tag.
Change-Id: I6b85ed62250aca8ee6293956b6178ce19bdb1f30
2018-09-07 06:56:38 +02:00
Pawel Wilma
4a12deea2b
Add support for reduced GPU address space
...
Change-Id: I9ebbc8c51039bb533b44c6b80e717e1489a20a43
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com >
2018-09-03 13:51:36 +02:00
Venevtsev, Igor
f6743ced2a
Remove reuseBO from createGraphicsAllocationFromSharedHandle
...
Change-Id: Ia7af1cdd8e3986b8af7c542032d2767303865382
2018-09-03 13:38:19 +02:00
Mateusz Jablonski
92bfd2e3d2
Move OsContext to Device
...
Change-Id: I030b65372fbdc075423d22720e9da34ac65b8e68
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2018-09-03 10:42:26 +02:00
Dunajski, Bartosz
512978768e
Pass renderCompressed information to GMM for 64kb allocations
...
Change-Id: I56302055c028e919bceeb3333557cab7451e1d09
2018-07-23 11:28:43 +02:00
Hoppe, Mateusz
f125c8ff45
Add allocateGraphicsMemoryInDevicePool
...
- do not always expect failures in tests with failure injections
there is retry mechanism for some cases
Change-Id: If7589d2dacc41216d2f3b08f861209bbab179615
2018-07-20 13:00:00 +02:00