Maciej Plewka
832814cefa
Add debug flag to enable calling freeMemory in memory Manager
...
Change-Id: I61a3c6e768bd9a479731f9e3e000069c9b677c33
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-07-01 18:10:48 +02:00
Venevtsev, Igor
165d1e4e55
Use GfxPartition for GPU address range allocations
...
[2/n] - OsAgnosticMemoryManager
Related-To: NEO-2877
Change-Id: I887126362381ac960608a2150fae211631d3cd5b
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-06-25 12:54:20 +02:00
Mateusz Jablonski
d06fcc8599
Dont force system memory for pipe and global surface
...
Related-To: NEO-3127
Change-Id: Iffb1b04401a19043bdb898b7896068bc760f4797
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-19 12:46:30 +02:00
Mrozek, Michal
3a75c4fb71
[7/n] Unified Shared Memory.
...
- Add basic allocation support for shared allocations
- Add kernel support for shared allocations.
Related-To: NEO-3148
Change-Id: Ie0523acc3a444eef6a5aeb6a56a041280df6a02e
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-18 09:17:16 +02:00
Mrozek, Michal
e279804c0c
[6/n] Unified Shared Memory
...
- Move definitions to core folder.
- Add tests for core related code.
Change-Id: I9ae0473f965ba56cbe2f5458160b8a24d06595ae
Related-To: NEO-3148
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-18 07:18:18 +02:00
Mrozek, Michal
dd0d81672b
[4/n] Unified Shared Memory
...
- Add allocation logic for host allocation.
Change-Id: Ic250b2165a050bbff7dea1b33b904d6d66cf8113
Related-To: NEO-3148
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-17 12:40:37 +02:00
Milczarek, Slawomir
5956164451
AubManager to call freeMemory upon cleaning osHandles of host ptr storage
...
Related-To: NEO-3231
Change-Id: I028a5985f1bdffebd673f4b5fead1a314d773b6d
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-06-14 10:30:56 +02:00
Jobczyk, Lukasz
329d940285
Add multiStorageResource flag to AllocationProperties
...
Related-To: NEO-3242
Change-Id: If31adaead389acd3bef6af1931b91396c43b305e
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-06-14 06:59:28 +02:00
Mateusz Hoppe
ff4e668440
Adding GraphicsAllocation::getUsedPageSize()
...
Change-Id: I1e8ebe7d24d0c647e0ce3bc73e662e427acc4212
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-06-13 15:44:10 +02:00
Mrozek, Michal
4188f6dce8
[1/n] Unified Shared Memory
...
- Add Internal Allocation type to differentiate SVM allocs from UM allocs.
- Add API to make internal allocations resident.
- Add API to allocate UM.
Related-To: NEO-3148
Change-Id: I9787891c5a0ffccac45c43bc5fde4ea50f37d703
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-13 14:48:02 +02:00
Mateusz Jablonski
145f5b20e9
Require cpu access for constant surface
...
Related-To: NEO-3234
Change-Id: Ie0ccd3d3fc144400e63123d6c27b228bb7207f33
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-13 14:32:49 +02:00
Krzysztof Gibala
b86d8f060b
Do not force system memory for constant surface
...
Related-To: NEO-3234
Change-Id: I1c78d15840e1071e4d7451f85e2e76ba7bff2ee5
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2019-06-13 08:40:33 +02:00
Dunajski, Bartosz
70f92cf03c
Rename KernelCommandsHelper to HardwareCommandsHelper
...
Change-Id: I0b92a2d74bc96658274e4a02fec0f322e87681b2
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-06-12 13:45:12 +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
Mrozek, Michal
5244030e31
Call ioctl to obtain file handle from prime bo
...
Related-To: NEO-3252
Change-Id: I8d976ae29875db83dd75802e0309cb4438d1332b
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-10 09:06:59 +02:00
Koska, Andrzej
987264bdb4
Removing checkedFragments parameter
...
Change-Id: I2396cc133fbe6737176498c2c81fc1f856cee510
Related-To: NEO-3172
Signed-off-by: Koska, Andrzej <andrzej.koska@intel.com>
2019-06-04 12:07:22 +02:00
Mrozek, Michal
14b8bbb3aa
Add capability to query internal handle from cl_mem.
...
Related-To: NEO-3252
Change-Id: I935c308dfa3f77c6d965df7316fe3fb4c21b112a
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-03 13:40:08 +02:00
Piotr Fusik
c5d4fa93f9
Fix typos.
...
Change-Id: Ic97b7a3ff980aa402a7259ebeccda96e2e35a397
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-05-30 09:58:11 +02:00
Milczarek, Slawomir
17f9cc006d
OsAgnosticMemoryManager to call freeMemory on AubManager
...
Resolves: NEO-3231
Change-Id: I89a3cc9f2a63931c6c87ec70bbedc19716a885c1
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-05-29 18:09:49 +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
Mrozek, Michal
edb78834cb
Move allocateGraphicsMemoryInDevicePool to Os Agnostic memory manager.
...
Change-Id: Ica179986f401b99e61c3485d549790489cbb1fd5
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-05-25 02:12:16 +02:00
Pawel Wilma
b64210d3db
Add local memory usage selector in memory manager
...
Related-To: NEO-2906
Change-Id: I3172e9551b8d06437c273b122dc6e9d529155b5c
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-05-23 11:05:36 +02:00
Mateusz Jablonski
b8fb5e683b
Move basic_math.h and vec.h to core directory
...
Change-Id: I143b7af450ff48d4958b4bc7137b393a2dc0eb64
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-05-14 21:32:55 +02:00
Hoppe, Mateusz
501bc88368
Do not run SVMMemoryAllocator tests if SVM not supported
...
Skip tests:
- SVMMemoryAllocatorTest
- SVMLocalMemoryAllocatorTest
Related-To: NEO-3157
Change-Id: I3f14f71ec3cccaa1925423527cd6bc7ab018f8c5
Signed-off-by: Hoppe, Mateusz <mateusz.hoppe@intel.com>
2019-05-14 12:52:21 +02:00
Hoppe, Mateusz
97245a2ca6
Refactor MemoryManager::allocateGraphicsMemoryInDevicePool
...
- create MemoryAllocation for OsAgnosticMemoryManager so that
freeGraphicsMemory is freeing correct object type
- other memory managers do not go this path
Change-Id: If2ada9b77bb4a41d09f82b79502594e0eda9f11b
Signed-off-by: Hoppe, Mateusz <mateusz.hoppe@intel.com>
2019-05-10 13:14:08 +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
Mateusz Jablonski
cadc461712
Create storage info while getting allocation data
...
Related-To: NEO-3127
Change-Id: I716a1d5624cf34d74bafd8c9ab3f5cc5ded43275
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-05-07 14:17:34 +02:00
Piotr Fusik
92584d8c64
Minor cleanup.
...
Change-Id: I0f345c4fbf49f6464dce7bafd8b8d59347ff2d77
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-04-26 14:34:58 +02:00
Filip Hazubski
fae1d882f8
Add SvmAllocationProperties
...
Change-Id: Ie96aeab5597a1b3f2db8611a8a04597516730ce8
Related-To: NEO-2535
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-04-23 10:30:04 +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
Mateusz Jablonski
6e97a69a2b
Remove allocation type UNDECIDED
...
Resolves: NEO-2733
Change-Id: If6102ca04f557feeedaf702fa0d9f63c79017fe4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-18 15:13:09 +02:00
Mateusz Jablonski
1d42fe169a
Add allocation types for MCS, preemption and shared context image
...
Related-To: NEO-2733
Change-Id: I3e3e4ea6d4fe084c8c32c0e24c537c9131ce1e60
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-17 14:41:01 +02:00
Mateusz Jablonski
74ae06b131
Add new allocation type for internal allocations in system memory
...
Related-To: NEO-2733
Change-Id: I256d414c1e92647469dd2a80f83bdbfc8721cf43
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-17 11:20:50 +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
1e11d8939f
Add new allocation type for device queue's allocatons
...
remove not used mustBeZeroCopy flag
Related-To: NEO-2733
Change-Id: I8b8faf4e2d46249f897a06170dd777193c7f8729
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-16 10:34:18 +02:00
Mateusz Jablonski
ca18ce41a4
Use TAG_BUFFER type for tag allocation
...
sort usages of allocation types in switches
Related-To: NEO-2733
Change-Id: Ie44ea10733af28e9a15c3fcf749e51c29d39a66e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-15 14:19:32 +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
Venevtsev, Igor
56770408ae
GfxPartition always allocates GPU addresses above heap base
...
Related-To: NEO-2877
Change-Id: Id4f57ab2489faf09984a616de78655b399e127a4
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-05 16:19:52 +02:00
Pawel Wilma
37bcc99cd2
Class for local memory bank selection based on usage
...
Related-To: NEO-2906
Change-Id: I8b9cae5191da6344ee8d4f0cf7125f95d0bc6b35
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-04-04 17:21:02 +02:00
Mateusz Jablonski
4e3f0e6ab2
Create storage info in one place
...
Related-To: NEO-2860
Change-Id: Ic37b89f2a80267b499227a8311aabd1fc6fb2754
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-04-04 08:12:15 +02:00
Filip Hazubski
b2e16b7897
Update allocationForCacheFlush method
...
Related-To: NEO-2535
Change-Id: Ia24556814188263e2ebb54b6419feddd5d8ed707
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-04-03 18:07:13 +02:00
Dunajski, Bartosz
2243fc950b
Improve waiting logic in HostPtrManager
...
Change-Id: Ib762a9604ad3d398044f289fa8a1aa4df2b4d37a
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-04-03 08:47:49 +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
Jobczyk, Lukasz
a025dc6985
Reverse logic of creating Memory Manager - part 6
...
-Remove a redundant condition from the MemoryManager constructor
Change-Id: I4b6c56f30a19e77a7a20f68c6d85516aaa52d102
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-04-01 10:27:29 +02:00
Mrozek, Michal
5bb0d8c8ed
Remove type that is not used.
...
Change-Id: I00571ce2f8a1dddbce6645ae753bc99de1ff7a33
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-03-29 12:47:59 +01:00
Mateusz Jablonski
d4c8791359
Disable cpu access for KERNEL_ISA type
...
Change-Id: I630668373ef162eca8f814b34ea014b3e86ea2b8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-28 11:12:46 +01:00
Piotr Fusik
8cf7cea1e9
Simplify bit operations.
...
Change-Id: If1401f32df5ebcb3abf614832152abf029a9c5e6
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-27 17:11:29 +01: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
Mateusz Jablonski
31e6005fa3
Move getNumHandles method to GraphicsAllocation class
...
Change-Id: Id03e93d1f2558b0c2b740e199e335c8e6f00842a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-26 14:41:40 +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
Piotr Fusik
cc13045ddd
Move definitions out of engine_node.h.
...
Change-Id: I18692a444663c11103f8991415b38000c633f24a
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-25 13:22:55 +01:00
Dunajski, Bartosz
83aa28e294
Add unit test for maxOsContextCount
...
Change-Id: I3e2ec2dba101123689248904406dc2fe3785160c
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-03-25 13:19:29 +01:00
Dunajski, Bartosz
a8db48dbca
Refactor Device::getEngine to get Engine by its type
...
Change-Id: I640b32c0d226686e6648d39dd62404f5d507c98f
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-03-25 10:49:37 +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
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
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
b1d82cd87e
Add Local memory to MemoryPool
...
Change-Id: I908d4d99b53ed3ab959bbdc094cc1ae7bdfe2971
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-03-18 16: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
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
25e6494443
Use std::bitset for deviceBitfield.
...
Change-Id: I9078ffbb38967b753980cb1c5ebcab00f5292598
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-14 08:36:01 +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
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
Mateusz Jablonski
c0325b5d19
Don't copy memory to allocation if allocation has no storage
...
Change-Id: I3238bec02e5c1ec5877537318bb563e3d0f3799d
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-12 09:44:17 +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
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
Pawel Wilma
a1bfbcf293
Fix typo for DeviceBitfield
...
Change-Id: I21718950f3d1b17ad507af76762153aefb090615
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-03-12 08:21:14 +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
Piotr Fusik
5c60db1706
Remove dead code.
...
Change-Id: If6c35affea9bfa563ce7ab4e324a2e1d994e83bc
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-08 12:15:13 +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
Piotr Fusik
a2c05a241d
Set allocationType in constructors.
...
Change-Id: I66738be1239acdaf282f813aed46066bc5023112
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-06 16:07:28 +01:00
Dunajski, Bartosz
f24b428cf7
Improve HardwareContextController creation
...
Change-Id: Iba929a2b4fcd993b38dd674be578aad0a481e8de
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-03-06 12:31:20 +01:00
Mateusz Jablonski
7e3b6d2d90
Move definition of maxOsContextCount to engine_node.h
...
Change-Id: I1ed252e9bbf382b449c7751061f9df42ded8b797
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-03-04 15:34:05 +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
Zbigniew Zdanowicz
10a25e405a
Remove debug flag ForceMultiEngineQueue
...
Change-Id: Iabf38999a03be3422c25c12978808731df77a899
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-02-28 16:06:36 +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
Mrozek, Michal
6cb4732abe
Move isl3Capable outside of Graphics Allocation.
...
Change-Id: If9949f0d6d3405dcdeb221cbee1ce30307166c21
2019-02-28 10:48:27 +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
73456d66b3
Add proper type for host ptr allocations.
...
Change-Id: I324b54b415626043cc801ceb7f73547b96018fe0
2019-02-27 10:25:32 +01:00
Piotr Fusik
d79f1afdc2
GraphicsAllocation constructor accepts allocationType and memoryPool.
...
Change-Id: I5044ed26ba0cb0fc9ca7077595f5ab56353ab58c
2019-02-26 13:29:25 +01:00
Piotr Fusik
378bd28bab
Change the signature of MemoryManager::createGraphicsAllocation.
...
Change-Id: Ia82235ff2831fd5b3436d488a5946bb49d63ce91
2019-02-25 16:08:35 +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
4ec5be0c99
Simplify code by removing AllocationOrigin.
...
Change-Id: Ie73cefc1ae1ee846fb9a5ef1054af01cd1867a4d
2019-02-21 16:29:05 +01:00
Jablonski, Mateusz
9e7c30cb06
Choose Standard or Standard64 heap depending on 64KB suitablity of resource
...
Change-Id: I633b1bef1cdef2c5149909c997adc85434bcaf73
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-21 12:18:26 +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
Mrozek, Michal
4139e88982
Allocate command buffers with proper allocation type.
...
Change-Id: I912dd41cf68fa16ab481bb003c4f5ae63f1f04c4
2019-02-20 12:52:45 +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
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
Jablonski, Mateusz
05d02a6fe7
Change DevicesBitfield type to struct
...
Change-Id: I7a005b07737cdd21efc174a2ee2be0f6b7f9068d
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-18 13:57:50 +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
Dunajski, Bartosz
9f6eab0689
Change allocation properties for TIMESTAMP_PACKET_TAG_BUFFER type
...
Change-Id: Ied1c0d4d7ecd27104421a5cde6c79c04c4222265
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-12 10:30:34 +01:00
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
Mrozek, Michal
fe85c1d974
Do not allocate Linear Stream in system memory.
...
Change-Id: I2d9abaab3358907037265214cec80cc84d6b9c0a
2019-02-05 12:07:09 +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
Mateusz Jablonski
ce4a75e121
Require same allocation type when obtaining reusable allocation
...
Change-Id: I829301b83a6214bcfb4fc9f2692f21ae9a002456
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-02-01 16:10:28 +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
Mateusz Jablonski
128bf4552f
Remove debug flag ForceResourceLockOnTransferCalls
...
Unlock locked resoures in freeGraphicsMemory method
Change-Id: I2baae7b7f9d8260f19a4b083849c5bf0d1a764f3
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-25 14:03:29 +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
Filip Hazubski
2d321cb557
Add option to disable caching for a resource
...
Introduce CL_MEM_LOCALLY_UNCACHED_RESOURCE flag that can be used with
clCreateBufferWithPropertiesINTEL()
Change-Id: I9f208f00952cdca7482371ec21cbc57c08435b52
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-01-17 13:32:36 +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
Mateusz Jablonski
b5d9ed77a6
Correct destruction logic of shared allocations
...
wait for all os contexts that used the allocation
when os context is not ready then flush related command stream receiver
Change-Id: I5fb2c16c1d398c59fbd02e32ebbbb9254583244e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-08 14:32:21 +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
Hoppe, Mateusz
a31c446d9f
Allocate non USE_HOST_PTR and non-buffer images in preferred pool.
...
Change-Id: Ia486c7b32932202162d6587d06dc61023e38fff6
2018-12-31 14:37:44 +01:00
Mateusz Jablonski
56eced2faa
Don't allow 32bit allocation for SVM allocation type
...
Change-Id: I2fbae4ce3be956a386bdc22c9b129f37d75c8e8f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-31 10:43:08 +01:00
Hoppe, Mateusz
694b643df1
Add useLocalMemory flag to ImageInfo
...
Change-Id: I664f9e17c0c480c2b7b2b34dcfaefa7929b9ddfe
2018-12-28 13:53:53 +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
Zdanowicz, Zbigniew
3dca095ccf
Add cache flush command after WALKER command
...
Change-Id: I3983dc6c0797047e17cc8189655a22a22e85892b
2018-12-19 13:15:33 +01:00
Mateusz Jablonski
b138ff5750
Minor refactoring related to residency task count
...
Change-Id: I49c9a5b37637e19fa12b7e6d91c352fb78bb117a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-19 11:38:49 +01:00
Dunajski, Bartosz
59e6a7be2a
Allocate timestamp tag buffer in system memory
...
Change-Id: I71cb7678edc073fbb2c55e1a617b04959bcb75d7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-18 08:54:44 +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
Mrozek, Michal
b4256453ed
Ensure that SVM allocations are zero-copy.
...
Change-Id: I20a20af33f95014d74e8101789de2581259c62fa
2018-12-13 11:20:09 +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
Dunajski, Bartosz
c905dad62f
Improve checkGpuUsageAndDestroy method to work with multiple CSRs
...
Change-Id: I7b8325116c90151c6339f95a81880c467e81748f
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-12-11 10:26:50 +01:00
Piotr Fusik
0b839722f4
Don't store preemption mode in Wddm.
...
Change-Id: I6088e5fec65b6910fefb42ec9735181867c44a1b
2018-12-10 14:48:52 +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
43fd32b3ad
Enable aggregating command buffers with multiple osContexts
...
- Store inspectionId for each osContext in GraphicsAllocation
- Pass osContextId to aggregateCommandBuffer and use it to select inspectionId
Change-Id: I2c377ad7577a8c882cc89c1205430cb581c2c0d5
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-12-06 10:11:07 +01:00
Dunajski, Bartosz
b728526c4e
Allow Device creating multiple CSRs [8/n]
...
Use OsContextId instead of DeviceIndex for residency
Change-Id: Ib2367b32b5b3e320252d8254f1042f1c3d497068
2018-12-04 15:36:59 +01:00
Mateusz Jablonski
7747db13e1
Deferred deleter: move to next deletion if current deletion cannot be applied
...
Change-Id: I7067bc2bc74f92518a33ccb9f9dce9b57cc28637
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-03 15:24:35 +01:00
Dunajski, Bartosz
1f7448425d
Allow Device creating multiple CSRs [7/n]
...
Create and initialize all supported Engines
Change-Id: If0adf1a06b5005ef2698cebc6f1aaa6eacf562ec
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-30 15:48:44 +01:00
Dunajski, Bartosz
0131e66a70
Allow Device creating multiple CSRs [6/n]
...
- Introduce default Engine query
- Improve Deferred Deleter usage
- Remove Tag Allocation from Device
Change-Id: Iaa88d8dc0166325acf9a157dcd2217ea408ee285
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-29 16:20:13 +01:00
Mateusz Jablonski
6be8aee45d
Restore deferrable allocation deletion
...
Change-Id: Ie5e87fa6551b7ee33579fcd9487c7e9c3bd4ab95
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-29 07:48:19 +01:00
Piotr Fusik
87bb6afa56
Move stamps allocators from memory manager to CSR.
...
Change-Id: Ib399e462cdddad89fcc470df4c4f0f5e4591a6b2
2018-11-27 14:52:06 +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
Dunajski, Bartosz
7781089740
Allow Device creating multiple CSRs [4/n]
...
- Introduce additional RCS engine
- Set fixed size for Engines array
Change-Id: I06533a425684b64214f956783b07877e6157935b
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-26 09:40:44 +01:00
Mateusz Jablonski
f877d4254b
Revert "Implement deferrable allocation deletion"
...
This reverts commit d961bd8354
.
Change-Id: Ie7d772d57199ea2897e238b2ac289bd60a89e6c6
2018-11-23 14:59:02 +01:00
Mateusz Jablonski
d961bd8354
Implement deferrable allocation deletion
...
Change-Id: I5e99d1bbb920619f63b71573335dc76f19c796a6
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-23 11:28:52 +01:00
Dunajski, Bartosz
706d9f8070
Allow Device creating multiple CSRs [2/n]
...
Create new OsContext per CSR
Change-Id: I8dad7fc1ab450e560f78eba3152b5913791e59a3
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-22 14:29:44 +01:00
Mateusz Jablonski
352450adaa
Pass number of os contexts to Graphics Allocation constructor
...
Mark unshareable allocations
Change-Id: Ie745dc639d8c6b01e2275d29ee1fb4c6343df2bc
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-21 17:38:02 +01:00
Dunajski, Bartosz
af46d88fc1
Allow Device creating multiple CSRs [1/n]
...
Change-Id: Ie5d8d89aa388c608d5464919059c28a054ac9b1e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-21 12:37:25 +01:00
Dunajski, Bartosz
d6870a896b
Reduce tag pool size to 1 for AUBs
...
Change-Id: I3a3513250b10e899795e149bff2739193a725f84
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-20 11:42:32 +01:00
Mateusz Jablonski
66492a53a4
Change type of residency task count to uint32_t
...
Move definitions of objectNotUsed and objectNotResident to GraphicsAllocation
Change-Id: I2aec604a865cc6c975e9d1121028cbdd35c0b18a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-16 16:04:48 +01:00
Dunajski, Bartosz
bd4ea652ec
Make Timestamp allocations OneTimeAubWritable
...
Change-Id: I22e973714e4df1b3a07d8fb45cdab37b28a6433e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-16 15:49:25 +01:00
Mateusz Jablonski
0e0a280803
Create structure UsageInfo for task count and residency task count
...
Change-Id: I0899c88d9e567a09ba46461ae69cf6c80f713e67
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-15 14:07:05 +01:00
Mateusz Jablonski
630a7e1c26
Allow to reuse just completed allocation
...
Change-Id: I7c1ab153178b79348d49209ca09478543d35e197
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-06 22:11:24 +01:00