Jobczyk, Lukasz
e42e952d21
Reverse logic of creating Memory Manager - part 5
...
-Remove a Drm* parameter from the DrmMemoryManager constructor
Change-Id: Idb6faccdbb512691a8b14f86cdd935d1a8374a23
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com >
2019-03-26 10:47:03 +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
Stefanowski, Adam
16aee8cc46
[2/n] Move Hardware Info to Execution Environment
...
- remove hwInfo from the csr functions where it was passed as a parameter,
now csr functions have access to hwInfo by Execution Environment
Change-Id: I756ae63d9728c9c963571147bab97f9e1c15797b
Signed-off-by: Adam Stefanowski <adam.stefanowski@intel.com >
2019-03-22 10:08:26 +01:00
Liwei Wang
ca4b47f7f4
Add support of GPU preemption (v1.00).
...
https://github.com/intel/compute-runtime/pull/119
Change-Id: I3134d62b66751c8621b80002373a7a9b198e044e
2019-03-22 08:49:11 +01:00
Mateusz Hoppe
432591a88a
Adding MemoryInfo to Drm
...
- call queryMemoryInfo on Drm::create()
Change-Id: Ib0532894f271bd4ab3dcbb281d0bddf2a01d4afe
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2019-03-20 15:04:43 +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 Hoppe
832c620dc1
Return error code from handleRemainingRequests
...
Change-Id: Iea47322546f86870720a7ede553a6dd45cb09908
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2019-03-20 10:03:34 +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
Piotr Fusik
429487fad0
Add constructor parameter to select low priority context.
...
Change-Id: Ieb3fa008a2f1b54052e393516038c88f00944fa0
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com >
2019-03-18 15:09:59 +01:00
Mateusz Hoppe
16e1a05375
Test for DrmMemoryManager allocateGraphicsMemoryInDevicePool
...
Change-Id: If04321fc1045d01c0001e27eed8b2a128b830f25
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2019-03-14 19:25:15 +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
Mateusz Hoppe
a2835490b1
Support for handling remaining ioctl requests in DrmMock
...
Change-Id: I5672bcaa746f70c77be85a47e0dcaf59aec6023d
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2019-03-13 04:54:35 +01:00
Mateusz Hoppe
573d2e0eec
Add enableLocalMemory param to DrmMemoryManager ctor
...
- add linux dll tests for createMemoryManager()
Change-Id: I6e111e7a480d895a8520507af6b6a699f9dca160
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2019-03-12 22:22:37 +01:00
Mateusz Hoppe
568b6c839e
Move DrmMemoryManager fixtures to header
...
Change-Id: I9e8a9f9cb6e27a7b28a4a50a4bd42640bd6ca628
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2019-03-12 16:10:18 +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
Stefanowski, Adam
341fcfc091
[1/n] Move Hardware Info to Execution Environment
...
- remove gmm_environment_fixture
- remove hwInfo parameter from ExecutionEnvironment methods
Change-Id: Ieb0f9b5b89191fbbaf7676685c77644d42d69c26
Signed-off-by: Adam Stefanowski <adam.stefanowski@intel.com >
2019-03-12 08:39:26 +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
Jobczyk, Lukasz
878fd43a1a
Reverse logic of creating Memory Manager - part 1
...
-remove CSR::createMemoryManager method
-create MM from platform before creating devices
Change-Id: I0e7f091c53b0e60ae7101e82a305253af626330e
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com >
2019-03-08 09:47:29 +01:00
Mrozek, Michal
06a7d8c32e
Decouple Buffer Object and Exec Objects Storage.
...
Change-Id: Id47c071372959d43ccf3034917f2a5c39b707b38
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com >
2019-03-06 13:18:13 +01:00
Mrozek, Michal
28279bddd5
Decouple residency from Buffer Object.
...
Change-Id: I0c3413d9c53aecd814e84d588bdea15e34b7320d
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com >
2019-03-05 15:14:43 +01:00
Dunajski, Bartosz
86dabbf6d5
Improve OsContext construction
...
Change-Id: Ibf9293344cc5c0ae1b2cc011e87d9e3626f3a066
2019-03-01 08:35:38 +01:00
Mateusz Jablonski
6fb28dd828
Refactor GraphicsAllocation class
...
move most of members to protected section
merge related members into structs
Change-Id: Ief2e092aa5e61ca6f13308f9d9b1937ea6c913b4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com >
2019-02-28 14:09:11 +01:00
Piotr Fusik
e11b7675d5
WddmAllocation constructor accepts allocationType.
...
Change-Id: I1e561b11e78dd942e04f3b029739921d0929ceed
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com >
2019-02-28 11:59:16 +01:00
Piotr Fusik
8febabfbd6
DrmAllocation constructor accepts allocationType.
...
Change-Id: I6a6457948ada7eb59537d17b966278d114f802c6
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com >
2019-02-27 16:58:22 +01:00
Mrozek, Michal
fca7b4e044
Remove Drm32Bit allocator.
...
- not used anymore.
Change-Id: Ibb7da1758feb67224ac0b172c72f45c2f1c229d9
2019-02-27 14:28:16 +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
Mateusz Hoppe
d5d177dd58
Override AllocateGraphicsMemoryInDevicePool in DrmMemoryManager
...
Change-Id: I54da682ecb055e71af0968872ddb0ec7726c3adc
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com >
2019-02-27 10:05:46 +01:00
Zdunowski, Piotr
842fb5dadc
[4/n] Log allocation placement.
...
Change-Id: I300be5f09b6ee77aa89584a6bddf4c7e57aa54f1
2019-02-26 10:21:42 +01:00
Piotr Fusik
378bd28bab
Change the signature of MemoryManager::createGraphicsAllocation.
...
Change-Id: Ia82235ff2831fd5b3436d488a5946bb49d63ce91
2019-02-25 16:08:35 +01:00
dongwonk
b44d434a89
limited GPU range is used for external 32bit allocation
...
Change-Id: I494ad97fb1ddfa7b3c6b2e7cef2ae04fba571ba0
Signed-off-by: dongwonk <dongwon.kim@intel.com >
2019-02-21 16:26:49 -08:00
dongwonk
56972935ad
graphic memory allocation with alignment in limited Range heap
...
Change-Id: Iccfb0fdc2f161e30bfdd26154110185277f176f5
Signed-off-by: dongwonk <dongwon.kim@intel.com >
2019-02-21 10:10:47 -08:00
Piotr Fusik
4ec5be0c99
Simplify code by removing AllocationOrigin.
...
Change-Id: Ie73cefc1ae1ee846fb9a5ef1054af01cd1867a4d
2019-02-21 16:29:05 +01:00
Mrozek, Michal
a1d4c07f45
Simplify DRM allocation constructors.
...
Change-Id: I2c477ce85f4748f0637451a405f7949aa829ba81
2019-02-21 12:06:01 +01:00
Mrozek, Michal
45a0ceecfb
Clean drm interfaces.
...
- all driver allocations are using SoftPin
- remove unneeded methods.
- remove unneeded members.
- remove unneeded code paths.
Change-Id: I3369c0a4d37727210b5a26271d25537ca5218bd4
2019-02-20 16:11:19 +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
dongwonk
fb993d6107
limited range and internal 32bit allocators with correct base and size
...
correct add 1 to the current size, gpuRange as gpuRange
only specifies the end address of the pool, not the actual
size, which causes alignment issue of all the offsets of
allocated objects. Also, a page was added in the beginning
of the limited range memory pool to avoid the base address
of it to be 0x0 that is interpreted as invalid address by
heap allocator (This makes the size reduced by pageSize)
Internal 32bit allocator is also initialized in proper way
with corrected base address.
v2: added 'givenMemoryManagerLimimedRangeAllocator' unit
test
v3: adjust size to be freed when DrmMemoryManager instance
is destroyed to 4GB
v4: - defined external 32bit allocator for limited Range
allocation case.
- softpinning object on the correct GPU address
Change-Id: Idaa0206d4133a1476cceb5a48ff8c8528742c76a
Signed-off-by: dongwonk <dongwon.kim@intel.com >
2019-02-17 19:19:52 +01:00
dongwonk
c2f5fccfd0
DrmAllocation with correct pair of cpu address and gpu address
...
correct mapping of cpu and gpu address in memory allocation
in case of NonSVM. Also, used only aligned address since offset
is already calculated and written to "allocationOffset".
gpuBaseAddress is programmed with 0 instead of base address of
heap because it represents GPU's address space.
v2: add allocationOffset to the aligned address in allocation
data to point to exact starting address of buffer in two
NonSVM allocation unit tests
Change-Id: I32ef512de64a13459b7c132672f837c5cb210ada
Signed-off-by: dongwonk <dongwon.kim@intel.com >
2019-02-15 19:03:26 +01:00
dongwonk
0240f239ad
check if the whole object region is in 32Bit address space boundary
...
checks the address + size of buffer object to determine
whether the object is located within 32bit address space
boundary.
v2: changed end year to 2019 in ther license term
v3: added unit test for checking of flag when size of
bo is given.
v4: two different unit tests are created to cover two
different case separately
Change-Id: Ie2df6025fc116aca679dcfe88d858ff240278c39
Signed-off-by: dongwonk <dongwon.kim@intel.com >
2019-02-15 16:15:06 +01:00
Dunajski, Bartosz
958d931cd9
Allow to create HardwareContextController for multiple Devices
...
Change-Id: Ib066c937809536196182ca87359c487570cc2e89
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com >
2019-02-14 16:00:00 +01:00
Zdanowicz, Zbigniew
8e1e874a76
Refactor headers and reorder include order
...
Change-Id: I6b341e2b37e569af7d741bfd7a63804c0b25a4c9
2019-02-14 13:39:01 +01:00
Piotr Fusik
f014f27370
Support the EnableLocalMemory debug variable in CSR.
...
Change-Id: I902b06ab0b4a3df477d12804ba74b2727d8863f6
2019-02-12 13:09:23 +01:00
Piotr Fusik
6882cf09c1
Avoid manual memory management.
...
Change-Id: Id29d9ec366e338d519aad5353a15a44ecf5998e4
2019-02-12 09:14:51 +01:00
Kamil Diedrich
62e56d2398
Disable L3cache when resolve argument
...
Change-Id: I4bb3a18d67254eef8aa4a0ce6b29401726f0b47e
2019-02-06 15:51:31 +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
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
Piotr Fusik
40870f9c7d
Retry mmap with a smaller size.
...
Change-Id: If8ea046af789394c1f58be9cc3a2b8100cee214a
2019-01-22 11:04:16 +01:00
Zdunowski, Piotr
75a635fdc5
[1/n] Log allocation placement.
...
Change-Id: I9ab61e10dcb0fcbbaf859c077a64ce7a4f2c213c
2019-01-16 16:46:50 +01:00