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
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
Piotr Fusik
0b839722f4
Don't store preemption mode in Wddm.
...
Change-Id: I6088e5fec65b6910fefb42ec9735181867c44a1b
2018-12-10 14:48:52 +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
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
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
Mrozek, Michal
8bec1906ec
Remove alignedCpuPtr from WddmAllocation
...
- also switch to make_unique in wddm memory manager functions.
Change-Id: I2f7cf412a993040439466f1971d935fb8429ce7c
2018-10-31 14:07:39 +01:00
Mrozek, Michal
5b2e16651f
Remove alignedSize from WddmAllocation.
...
Change-Id: I3b610515e4d5db16ce6a604e7e2f4b85b657bef2
2018-10-31 08:30:50 +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
Maciej Dziuban
7fe0a0df06
Delete OsContext from FenceData
...
This decoupling is needed to move makeResidentResidencyAllocations into
WddmResidencyController, where we have only contextId, not the context itself
Change-Id: I0d79f1dc7a51fa6b1d713deb6e9003aa2b7be1d4
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-10-23 09:17:09 +02:00
Maciej Dziuban
ac2c2763ab
Add osContextsCount argument to WddmAllocation's constructors
...
The argument is not anywhere yet, this is just a preparation
step for future change.
Change-Id: I5a441352cb5cf10d1a0ff31933041ff9521d0307
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-10-18 17:19:50 +02:00
Dunajski, Bartosz
2cd411227c
Improve PageTableManager creation
...
Change-Id: If359c76ae880fb2e1f56fc561aca761530787b5e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-10-03 22:37:05 +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
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
Pawel Wilma
01fa11ba4d
Additional Wddm context flags
...
Change-Id: I6f0bfd721e4840f44414da49ebbb7df3539e5588
2018-09-14 10:11:04 +02:00
Venevtsev, Igor
ed4e1e9c3e
Add enableLocalMemory param to WddmMemoryManger constructor
...
Change-Id: I89299c01f11565ab57a8421573a287c9a2e77b6e
2018-09-11 19:04:59 +02:00
Hoppe, Mateusz
cfa8035836
Add localMemorySupported member to MemoryManager
...
- extend constructor to take new flag
- extend ExecutionEnvironment createMemoryManager with new flag
- only OsAgnosticMemoryManager changes in this step
Change-Id: I1dae4fd79fe28fd87e42b237600dc216c94b597e
2018-09-07 12:04:21 +02:00
Mrozek, Michal
ac2a2de3be
Enhance ResidencyData to work with multiple OsContext
...
- Add new method updateCompletionData to register completion fence and context
- remove obsolete methods and fields
- for trimming choose default 0 OsContext
Change-Id: I0f6c7af9499a454a70ad1c5b0fa2766416eba297
2018-09-07 09:09:58 +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
02611dc953
Retrun valid status on createAllocation64k fail
...
Change-Id: Iaaed107c995a79125236196b6a956696dfe20875
2018-08-28 19:57:19 +02:00
Mateusz Jablonski
7cecedae45
Unit tests: Move initialization of Wddm to fixture's SetUp
...
Change-Id: I3d3fa30d5aebf4069c1726a21f537a3d40799793
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-08-24 14:31:27 +02:00
Mateusz Jablonski
9ac3529c6b
Remove template parameter from Wddm methods
...
Change-Id: Icd700c7215184d4c0f9564c61868a1f9f29a75e5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-08-23 16:37:31 +02:00
Mateusz Jablonski
deaaa908a4
Extract Os Context from Wddm and WddmInterface
...
Change-Id: I13a52fc466a14f4bd28876d3c47884dc596f2b58
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-08-23 09:07:57 +02:00
Mrozek, Michal
931ed38a57
[3/n] Wddm Cleanup.
...
- remove different flavors of Wddm
- rename files for better meaning
- remove unnecessary files
- remove unnecessary methods
Change-Id: I73a35e186a9a99169260bb157958ff795b36e20d
2018-08-16 10:07:24 +02:00
Mrozek, Michal
6c5875f805
[2/n] Initialize Wddm interface in Wddm init.
...
Change-Id: If7184e64df54b4e6840970fec67cb5bc11909b7c
2018-08-14 11:02:27 +02:00
Mrozek, Michal
d51c7ccdd4
[1/n] Move different wddm functions to dedicated helper.
...
- This is first phase of moving wddm specific internals to Wddm
Interface helper
- Instead of having 2 different wddm classes driver will route interface
specific functions to dedicated helper
- Helper will be initialized when interface version will be known,
therefore we would not need to initialize wddm multiple times
Change-Id: Ic71788ccb2f8a71bf2f3f3c2a04117f16417d85e
2018-08-14 09:08:25 +02:00
Mrozek, Michal
ae9134233d
OsInterface cleanup.
...
- OsInterface is now a part of execution environment
- it is created when getDevice is being called
- move ownership of wddm from Wddm Memory manager to OSInterface
- reuse osInterface on Linux in Command Stream Receiver
- currently OsInterface is not reused upon command stream receiver creation
on Windows this will change in further commits.
- make enumAdapters non static function
Change-Id: I10f36c01e6729f48653e3b5c11cbc32e811ce754
2018-08-10 14:25:53 +02:00
Mateusz Jablonski
56557ca3a3
Unit tests: Initialize gmm before wddm initialization
...
Change-Id: I751bd93248aa78731b9591f494eafcd12d3e6d82
2018-07-20 15:47:15 +02:00
Hoppe, Mateusz
407227959a
Add memoryPool to GraphicsAllocation
...
- new ExtendableEnum struct that serves as enum but can
be extended with values
- decrease dependencies on graphics_allocation.h header -
use forward class declaration when possible
- memoryPool indicates what kind of memory is allocated
for a given GraphicsAllocation
Change-Id: I7a707c28dc4544cc73abc5f0ed5263ba5be17452
2018-07-17 20:10:33 +02:00
Dunajski, Bartosz
a8ce3ca00a
Wddm: Use GMM allocation size during map GPU VA
...
Change-Id: Ie10898db7c539ce5025ab4a6d658d6e593e94c50
2018-07-13 08:03:57 +02:00
Mateusz Jablonski
94dbdb602d
Add instance of gmm helper to execution environment
...
Change-Id: I1b044611fbad91fbb681ba233938f41502f29056
2018-07-06 08:48:19 +02:00
Dunajski, Bartosz
e26d67cde3
Aux surface programming for Buffers [1/n]: Gmm interface improvement
...
Change-Id: I984b8ebee27808a236217e82bb4e910550d624c4
2018-07-03 13:00:08 +02:00
Mrozek, Michal
815151cb94
Simplify memory manager interfaces.
...
- Remove one function that routes to another function.
Change-Id: I44c17bf51abaf3aebf0692086de0f38e0693ab59
2018-06-29 15:39:10 +02:00
Dunajski, Bartosz
e18e9fb94e
Move static methods from Gmm to new GmmHelper class
...
Change-Id: I84fbe94f0e1072324164086b456c71a46ae5040c
2018-06-27 16:46:09 +02:00
Mrozek, Michal
e47344ec0e
Add debug flag CreateMultipleDevices.
...
- This flag allows to create multiple devices from the same GPU
Change-Id: I4b80e4759543ca4559549b2d26c5ddef241f9ebb
2018-06-20 18:33:32 +02:00
Dunajski, Bartosz
3a369ad500
Improve Wddm creation
...
Pick interface version basing on Ftr flag
Change-Id: I09880610922a6d451fc6f414a4fa5857449bc0f4
2018-06-14 09:06:40 +02:00
Dunajski, Bartosz
71b844f522
Wddm interface [7/n]: Add 2.3 interface with HW queue support
...
Change-Id: Ia0e829b8616b7060e39170aea0f1d2f123d73399
2018-05-24 10:26:58 +02:00
Dunajski, Bartosz
430f6def75
Wddm interface [5/n]: cmake improvements to find all existing source files
...
Change-Id: I2f3f004b964f472085a1f036b40f0552489ac288
2018-05-16 14:57:14 +02:00