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
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
Piotr Fusik
4ec5be0c99
Simplify code by removing AllocationOrigin.
...
Change-Id: Ie73cefc1ae1ee846fb9a5ef1054af01cd1867a4d
2019-02-21 16:29:05 +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
Zdanowicz, Zbigniew
8e1e874a76
Refactor headers and reorder include order
...
Change-Id: I6b341e2b37e569af7d741bfd7a63804c0b25a4c9
2019-02-14 13:39:01 +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
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
3a9531201a
Add missing tests for internal heap index
...
Change-Id: If3705ef86c54504c930888829f6e38f88cdbd1ef
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com >
2019-02-06 08:33:08 +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
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
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