Commit Graph

180 Commits

Author SHA1 Message Date
Mateusz Hoppe 5685b285f3 Extract logging logic from DebugSettingsManager
Change-Id: I0ccc68216c1c3bb23d0389bec17124e09e4f98e1
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-12-13 15:34:45 +01:00
Jobczyk, Lukasz ac0471adc5 Remove padding allocation
Change-Id: I0017640ee22b687af1d85fa10d221d2b3cafed0a
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-12-09 13:39:39 +01:00
Pawel Wilma 632134db30 Disable host ptr tracking for GEN12LP
Related-To: NEO-3661

Change-Id: I1774aad8ef32f294192a9b679cb9f66e4091198c
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-12-06 11:57:32 +01:00
Pawel Wilma baeac08662 Remove unused method obtainGpuAddressIfNeeded()
Change-Id: I0b0ff5c793d31c97f488339dcb75aba617871f88
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-12-04 17:22:43 +01:00
Dunajski, Bartosz dfc50f3a75 Move gmm_helper to core
Change-Id: I31ca317d10697ab884e04f443c8ccfdd6ca9d2ae
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-04 15:25:32 +01:00
Michal Mrozek 83c0f80431 Avoid casting void* to uint64_t.
- Add new wrapper that accepts const void *.

Change-Id: I1cea088b563cf704b6673844b533ce44f388e5fc
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-12-03 11:55:26 +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
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
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
Igor Venevtsev 684d58d2aa Make GraphicsAllocation constructors unambiguous
Related-To: NEO-2941

Change-Id: Iedd16d0dcb4158b5e7832043289e2e6aba1549d5
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-11-06 10:12:26 +01:00
Igor Venevtsev fed673861f Add multiple root devices support to memory manager
Related-To: NEO-2941

Change-Id: If4977c19dbd083f2d1559a40f9b4e911eab4859c
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-10-31 14:30:19 +01:00
Maciej Plewka a1c4283e0c Add method for checking if deferr deleter is enabled
Change-Id: I5949a01ac312669824b8738f4bb7f8aedb2a056b
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-10-15 13:28:14 +02:00
Jobczyk, Lukasz 627c359798 Move Host Ptr Manager to the core dir
Change-Id: I48c521acdcd4b3a78eb539026af5ffa840cf2181
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-30 19:07:09 +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
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
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
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
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 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
Venevtsev, Igor 7dfe57e982 Always initialize SVM heap for Windows 32-bit build
Related-To: NEO-2877

Change-Id: If576f57f8d69dc4ed4da11ede16fbdb2d0fcd286
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-07-22 12:22:40 +02:00
Zbigniew Zdanowicz f01c1d2d49 Add residency mechanism to OS interface
Change-Id: I323ca856d3c901bdc4d5961cdefa42685b53d4d9
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-07-19 13:35:11 +02:00
Venevtsev, Igor 4403796f58 Use GfxPartition for GPU address range allocations
[4/n] - Remove allocator32Bit

Related-To: NEO-2877

Change-Id: I0772a7fe1fda19daa12699c546587bd3cdd84f2c
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-07-08 12:09:07 +02:00
Jobczyk, Lukasz 83ee99ad3d Set supportsMultiStorageResources to true for WddmMemoryManager
Related-To: NEO-3182

Change-Id: Ia263b97394b83686262c06768de86c2ac2a37319
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-07-01 10:47:02 +02:00
Jobczyk, Lukasz 007982b51f Add the supportsMultiStorageResources flag
Related-To: NEO-3182

Change-Id: I618b734b37c5fb983be55b50d89a965eaedc78fe
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-06-10 17:57:49 +02:00
Mateusz Jablonski aa9ed04685 Refactor mapping GPU VA logic in Wddm Memory Manager
Related-To: NEO-2881

Change-Id: I13e7173ab14483f9e67ae4418a93c54e3cd5fd6d
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-07 19:06:39 +02:00
Jaime Arteaga b98b51b0d9 Move ptr.h to core folder
Change-Id: Icf0db7c767b2b1ea44fccc02b135f0f6c1f78c8f
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2019-05-29 00:11:34 -07:00
Mateusz Jablonski bb2defacf4 Rename preferredGpuAddress -> reservedGpuVirtualAddress
Use reservedSizeForGpuVirtualAddress for freeGpuVirtualAddress call

Related-To: NEO-2881

Change-Id: Ieafa6ad33f3f9922cbfa414c7f40b4f3a28e7fc5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-05-28 14:55:44 +02:00
Mrozek, Michal ef19a5312f Add unrecoverable in case of failure.
Change-Id: I886e698727cf239d92acbce592c65186b9bf9169
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-04-24 23:11:24 +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 2ca97d3881 Introduce MemoryManager::getExternalHeapBaseAddress()
Related-To: NEO-2877

Change-Id: I4307224c3be9609f7fc60d7fcb4f91ccdc8a9883
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-16 13:30:10 +02:00
Mateusz Jablonski 2689ec32bd Remove redundant logs
Change-Id: I7b02459ef3cace00d95dc97cdef1a7324cd07414
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-15 15:00:56 +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
Zbigniew Zdanowicz 971cbd55f3 Add new SVM types
Related-To: NEO-2917

Change-Id: Ica127129799c1e617a326a110348c2f70160b15c
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-04-11 15:27:38 +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
Mateusz Hoppe 7a7cb3d33a Set correct AllocationType in createGraphicsAllocationFromSharedHandle
Resolves: NEO-3077

Change-Id: I893544f4bfc19ffa8f49878bc9b44df4820cd619
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-04-08 08:19:55 +02:00
Mateusz Jablonski 3abfb7cb3f WddmMemoryManager: move logic of handling too low host pointer
Check malloc restrictions in method that allocates memory using host ptr

Related-To: NEO-2860

Change-Id: If1471c410d9a68e1ebacc6379682bfe98d0d75fe
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-04 08:04:49 +02:00
Jobczyk, Lukasz 24e17c0330 Initialize wddm in the WddmMemoryManager constructor before DEBUG_BREAK_IF
Change-Id: I96f83af31eacb8939b4e09357775ab5c42cd3618
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-04-03 11:27:32 +02:00
Mateusz Hoppe 5c0c1f77f9 Pass AllocationProperties to createGraphicsAllocationFromSharedHandle()
- only extends interface to MemoryManager

Change-Id: I585d91be95abd50e11eedb53e2acfa3f66491d44
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-04-02 08:55:38 +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
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
Dunajski, Bartosz cbe4e06165 Improve waiting for MemObj completion
Change-Id: I62078224daa21ee1d6f58f1e6dc59e306ae420b6
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-03-25 10:51:32 +01:00
Mateusz Jablonski ee9eb8df83 Release all Gmms
Change-Id: I2227b6a1014fea59053893c9d6330f1c386bbcd2
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-22 12:19:44 +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 e5a40502aa Release memory when allocation created from shared handle fails on map call
Change-Id: Ic2745c32f54ea9a0418ebb4d29cc41f84deb247d
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-19 15:42:20 +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
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