Mrozek, Michal
d6dd229543
Fail create allocation if map is unsuccessful.
...
- This way we will fail whenever mapping is unsuccessful instead of creating
Graphics Allocation that is in undefined state.
Change-Id: I50358d4564cd3fba0f6d05ab47cbbbaffbd9ce1c
2019-06-18 15:29:56 +02:00
Mateusz Jablonski
394be1aabe
Move updating wddm paging fence value to separated method
...
Related-To: NEO-2881
Change-Id: If051c5f11b7ffbca52407d6ac883f15c4633c5bb
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-06 10:12:50 +02:00
Mateusz Jablonski
a6bcdfe9de
Move definition of Wddm::configureDeviceAddressSpace to separated file
...
Related-To: NEO-3155
Change-Id: I1c459384a0285358620a5624655261858b0313ba
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-04 10:54:01 +02:00
Zbigniew Zdanowicz
e2906fcdf1
Move interlockedMax to core helpers
...
Change-Id: I5496ea963e68e0ef1e107c860112b7123d38aa81
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-05-28 17:38:17 +02:00
Dunajski, Bartosz
0f87e9aa1a
Rename HardwareInfo members
...
Change-Id: I85f56b677bafdd75dd958b488522393fc18b68af
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-09 09:13:55 +02:00
Dunajski, Bartosz
bb80d327c7
Move HardwareInfo ownership to ExecutionEnvironment [1/n]
...
Change-Id: I5e5b4cc45947a8841282c7d431fb69d9c397a2d4
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-05-08 16:11:01 +02:00
Venevtsev, Igor
f77cd94cd5
[1/n] Use GfxPartition for 32-bit allocations - WddmMemoryManager
...
Related-To: NEO-2877
Change-Id: Ie3d94f68d5c9958b0b7bade600b964b778aeb4cf
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-18 16:41:38 +02:00
Venevtsev, Igor
3a008fafc6
Revert "[1/n] Use GfxPartition for 32-bit allocations - WddmMemoryManager"
...
This reverts commit 2bb451e76d922861673e052f5f889658ac7db15f.
Change-Id: I1deada59a291a96ef88c8b9b4f2b28861ad27347
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-12 20:59:40 +02:00
Venevtsev, Igor
fac6ddaebc
[1/n] Use GfxPartition for 32-bit allocations - WddmMemoryManager
...
Related-To: NEO-2877
Change-Id: I13621bc984e8bb92bea82c07044d9a40bc9ca550
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-10 12:58:26 +02:00
Maciej Plewka
9e52684f5b
Change namespace from OCLRT to NEO
...
Change-Id: If965c79d70392db26597aea4c2f3b7ae2820fe96
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-26 15:48:19 +01:00
Piotr Fusik
db9afd06cd
Remove EngineInstanceT.
...
Change-Id: I08543b5f4ef5e91e6beb8390d448e53702cd9dac
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-20 10:56:22 +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
Venevtsev, Igor
ddf3aa186d
Use HEAP_STANDARD for Limited-range allocations
...
Change-Id: I8b35cda2b5542e98a83021b4ce1c9f5118e6697d
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-03-19 10:18:21 +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
Mateusz Jablonski
395e79fee8
Add support for many GMMs in Graphics Allocation
...
Change-Id: I955b8dd50b502f91700c5529d0a0a291632aa157
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-13 15:44:45 +01:00
Venevtsev, Igor
74f1896c03
Expose GfxPartition to shared MemoryManager
...
Change-Id: I039e463f90e88c0ed8e9505cc770c373420ff567
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-03-12 09:25:50 +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
5b22a50b28
Allow to create WddmAllocation with multiple handles
...
Change-Id: Iac9df91b08a6ce610b985586dfb6b5f63dc668cb
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-07 13:29:00 +01:00
Mateusz Jablonski
e721f7c08c
Cleanup Wddm interface 3/3
...
don't pass the entire WddmAllocation when only handle is needed
Change-Id: I208a64c81767589a2ac8aba0e717d54426209ecd
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-06 10:03:38 +01:00
Mateusz Jablonski
4605a48170
Cleanup Wddm interface 2/n
...
don't pass the entire WddmAllocation to createAllocation methods
Change-Id: Ibd4c684a362edbe3b2c520b73b71246fed5a9399
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-06 09:30:14 +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
Dunajski, Bartosz
0939743874
Pass OsContextWin object during Wddm context creation
...
Change-Id: Iba8d801bb6af4e9d28681caddb9c487500a42c8c
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-03-04 09:11:59 +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
Mrozek, Michal
ce77425428
Add support for reserveGpuVirtualAddress.
...
Change-Id: I068df0dd3b2064cdb93be1c4408eeb86ff264d2f
2019-02-26 12:01:17 +01:00
Katarzyna Cencelewska
edb3e14147
Fix for enum's name
...
change lowercase 'b' for uppercase 'B'
Change-Id: I35f973bc7966e9d5b9f38d4e4a370215e80012ac
2019-02-22 11:59:17 +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
Jablonski, Mateusz
ed6381a66a
Use HEAP_STANDARD64Kb when cpu access is required
...
Change-Id: I3a451b618f1b72836cd640ed510e874cf2d60624
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-19 10:36:15 +01:00
Piotr Fusik
9af011809f
Make HeapIndex and GraphicsAllocation::origin not specific to Windows.
...
Change-Id: Ie5a26b45c0b5eff0daf047361d8c992bd3c65ba7
2019-02-18 08:47:49 +01:00
Mateusz Jablonski
0e55fe0801
Fix lock usage in wddm
...
Change-Id: I3532b97a1b57747621e106b03263bfb070b7b05a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-02-08 13:05:09 +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
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
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
Hoppe, Mateusz
c59bf5a6ea
Do not debugBreak when createAllocation fails with GRAPHICS_NO_VIDEO_MEMORY
...
- this path is handled with host_ptr copy
Change-Id: If3f2c49f3c43262e018a43aff9f1b538daefc577
2019-02-01 09:33:22 +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
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
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
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
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
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
Piotr Fusik
0b839722f4
Don't store preemption mode in Wddm.
...
Change-Id: I6088e5fec65b6910fefb42ec9735181867c44a1b
2018-12-10 14:48:52 +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
Mrozek, Michal
09f3f4e856
Move heap32[0] to heap32[3].
...
Change-Id: Icea6eef5646894283725e29ce7ee930284af2673
2018-12-03 09:32:36 +01:00
Dunajski, Bartosz
2d77b86e70
Allow Device creating multiple CSRs [5/n]
...
- Move Engine type to OsContext
- Move OsContext to CSR
- Improve EngineMapper logic
- CompletionStamp cleanup
Change-Id: I935cb7169c8c48cd09837e20e3da06f6dd3437b9
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-27 14:25:04 +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
f374696f1d
Move MonitoredFence to WddmResidencyController
...
Change-Id: Iac99e7d730fda26d13feed56d5e4c50adf115e51
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-10-24 09:35:42 +02:00