Commit Graph

461 Commits

Author SHA1 Message Date
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
Katarzyna Cencelewska
3e800d55e6 Add support for dumping cl_cache to specified directory
Change-Id: I782ff17d0d4b17d3d26db543eb7ae222f75ff8a1
2018-11-29 13:59:26 +01:00
Maciej Dziuban
1cd59e927a Store residency status for each osContext separately
Change-Id: I2f17f68dcef6db7b596a69579a435b7ccd24e44b
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-11-29 08:08:25 +01:00
Dunajski, Bartosz
b0de2a11d2 Set OsContext as reference
Change-Id: I3b682fabde9c2ddb2c33a95aef77bf6ce400a21f
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-27 15:32:14 +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
Pawel Wilma
86ecd1a4b8 Memory leak reported for long string debug variables in ULTs
This commit eliminates ULTs memory leaks reported for string debug variables
exceeding small string optimization size by calling shrink_to_fit() method
on string debug variables in DebugManagerStateRestore destructor.

Change-Id: I304c5c5c23c80f01fdf13f38cea5b4eceb18a94f
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2018-11-27 10:07:42 +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
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
Maciej Dziuban
c4239dcd3d Refactor WddmResidencyController methods implementations
- trimResidency
- trimResidencyToBudget
- makeResidentResidencyAllocations

Change-Id: Ibf81e31966c8d8347fd5caf2f6a4bf8fe75fab5f
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-11-21 12:05:37 +01:00
Kai Chen
5f8209af4f Recover some needed test cases in drm_memory_manager_test
Recover some test code in drm_memory_manager_test for checking
MMAP_ALLOCATOR allocation type, mmMockCallCount and munmapMockCallCount.

Change-Id: I043f4f118be7e6bf2334efbbb6f5d8e0d620421a
Signed-off-by: Kai Chen <kai.chen@intel.com>
2018-11-21 08:07:18 +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
Stefanowski, Adam
96d07db545 Move wddm->init from wddmCSR to getDevices
Change-Id: If88f526792596108e038ec05c1d305e9452506f2
2018-11-20 09:40:57 +01:00
Mrozek, Michal
c0f6af1df3 Use maxOsContextCount to initialize trimCandidateList for WDDM allocations.
Change-Id: Icc65d19ed45bb1aa1a3dba4de536cf85ab9b906b
2018-11-19 11:24:16 +01:00
Kai Chen
85b60dff0f Linux GPU address allocator for devices with reduced address space
Code implementation of GPU address allocator for devices with reduced
address space.

Change-Id: Ieb0412c5930fdd71f90741055cf89c0338b01133
Signed-off-by: Kai Chen <kai.chen@intel.com>
2018-11-19 10:20:25 +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
Maciej Dziuban
969d4da811 Cleanup WddmResidencyController related code
- Move trimCallback from WddmMemoryManager
- Refactor lastFenceValue accessors to be less generic

Change-Id: I01b31ccb81a5ecc04d07912061326428b07a59bf
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-11-16 08:34:18 +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
1a89a0103a Register trim callback after creating monitored fence
Change-Id: Ib0510a0aed180c7bfe883a60632fd642664e1085
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-15 12:47:01 +01:00
Dunajski, Bartosz
728932ed44 Pass Drm object to OsContext on Linux
Change-Id: I341925eef9bc892f5c321c668736bb6a3aff38f5
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-15 12:04:03 +01:00
Maciej Dziuban
9bdedc62dd Move residency functions to WddmResidencyController
Change-Id: Ic73a51546b3325515f293808550376fa6b57dec3
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-11-15 11:17:27 +01:00
Mrozek, Michal
3c0a6bd24d Remove residency control from Buffer Object.
- Residency is being controlled by Graphics Allocation.
- Duplicates are now eliminated only for shared resources.

Change-Id: Ib51e2739a07728ae0b94abf6cce2e9981b017111
2018-11-14 08:32:04 +01:00
Maciej Dziuban
5e75027735 Fix WddmResidencyControllerWithGdiTest fixture
Gdi was not mocked during WddmResidencyController creation

Change-Id: I48761d8dd81e52d16b2b2d7f5aad71506383ad6d
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-11-10 01:29:28 +01:00
Maciej Dziuban
b0acc5ecde Move isMemoryBudgetExhausted to WddmResidencyController
Change-Id: Ic9da29ab954835e93cfbcd6690c1764d99939613
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-11-06 23:09:20 +01:00
Mateusz Jablonski
815ae851b7 Graphics Allocation: store task count per context id
Move definition of allocations list method to internal_allocation_storage.cpp

Change-Id: I4c6038df8fd1b9335e8a74edbab33b78f9293d8f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-11-06 12:43:47 +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
Maciej Dziuban
ef02827cd9 Add tests for locking in trimResidency()
Change-Id: Iddbecedae9cf21a4e5232dcac5d145962623e7d6
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-11-05 15:58:06 +01:00
Zdanowicz, Zbigniew
8504b37a08 Add branch prefix to unit_tests/gen_common subdirectory
Change-Id: I7661dbd8a65aaa50c21afb982b23edb9080d6f84
2018-11-01 00:15:04 +01:00
Stefanowski, Adam
c202c95634 Stop creating osInterface in WddmCSR and DrmCSR constructors
Change-Id: Ic8ca21824882dfae5df3fe05c7ec1ff96311f286
2018-10-31 15:01:50 +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
200228b506 Replace cpuPtrAllocated flag with driverAllocatedCpuPointer.
Change-Id: Ic0ce165d0e583701e1128595a3d9dabd0a61a84b
2018-10-31 12:37:20 +01:00
Mrozek, Michal
5b2e16651f Remove alignedSize from WddmAllocation.
Change-Id: I3b610515e4d5db16ce6a604e7e2f4b85b657bef2
2018-10-31 08:30:50 +01:00
Mateusz Jablonski
ead2e2ea6d Move createAllocationForHostPtr method to command stream receiver
Remove not needed includes from command_queue.h

Change-Id: I45963bf005471bd7716d55471474299a15e27b62
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-30 17:49:08 +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
Artur Harasimiuk
6aa9b36a7b DebugVariables cleanup
- small cleanup
- files renaming to match convention

Change-Id: Iff9ed3a509001bcf6f154fc35f6d241ee9a968ae
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2018-10-26 17:55:25 +02:00
Jacek Danecki
ebe851e6d9 fix typo in function name
Change-Id: I629ce616aefa74821ddde9f6e9ab32e50dc8c624
Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
2018-10-26 16:04:12 +02:00
Mateusz Jablonski
d5c9816428 Remove store allocation methods from memory manager
Move setGPUAddress method to WddmAllocation

Change-Id: I91d877c3791e9eff69276e4258e3ce9c3111ca45
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-26 10:53:43 +02:00
Mateusz Jablonski
129380c1a6 Cleanup host ptr manager
Change-Id: I0fc9df41a08255eef8072666c1c5c16806e0f7cf
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-26 08:26:38 +02:00
Mrozek, Michal
e128cb7a7c Make sure that non null handle is returned from registerTimNotificationMock
Change-Id: I8eca792fb6938150fa0629b11e84f94c0a736a56
2018-10-26 06:43:44 +02:00
Filip Hazubski
f5b55c5c7e Remove code duplication from cmd_parse_genX files
Change-Id: I64bb9d8be018ea4da6cb006439c58b1d52100e06
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2018-10-25 18:00:27 +02: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
4aae1a817b Pass Wddm to WddmResidencyController
Change-Id: I2379ffdfb740a869f6d157ed22f40ce509d6bebe
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2018-10-25 17:16:41 +02:00
Mateusz Jablonski
a531751001 Remove ULT code from runtime
Change-Id: I2faf52070f980d031788fc6946df8534d96c639b
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-24 17:45:08 +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
Mrozek, Michal
77b00fa749 Do not execute trim callback if there are no registered contexts.
Change-Id: I9a274281a085cdbeb98a1d495ce9ef9ab897d08a
2018-10-22 18:53:13 +02:00
Mateusz Jablonski
56f67748fd Remove not needed definitions and includes from mock_device.h
Change-Id: I95585f05805ee85577dfa0b981b32f828853af8a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-22 16:30:14 +02:00