Commit Graph

133 Commits

Author SHA1 Message Date
Dunajski, Bartosz
89b96e5e8f Introduce initial implementation of DirectSubmission relaxed ordering mode.
Initial implementation of task store section

Related-To: NEO-7458

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-11-17 12:23:29 +01:00
Mateusz Hoppe
f19abda0e2 Set root device index in OsContext
- correclty choose default engine context accounting for root device
index and  subdevices bitfield

Related-To: NEO-7516

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-11-16 23:02:19 +01:00
Mateusz Jablonski
4882f51721 Cleanup includes in mock_device.h
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-11-16 17:22:44 +01:00
Lukasz Jobczyk
5011046a17 Add sfence when stop ring buffer
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-11-09 20:02:03 +01:00
Dunajski, Bartosz
67af920281 Unify programming of ending commands in direct submission path
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-11-07 10:56:36 +01:00
Zbigniew Zdanowicz
87822f94e2 Replace virtual method call for DC flush with stored bool value 2/n
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2022-10-12 09:43:01 +02:00
Dunajski, Bartosz
2102117e12 Fix data race for TLB flush check
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-31 12:27:48 +02:00
Dunajski, Bartosz
595cfebaef Refactor PIPE_CONTROL programming
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-08-23 13:55:25 +02:00
Rafal Maziejuk
5e58104f5a Add flag to control prefetcher disabling behaviour
Certain platforms might not require prefetcher to
be disabled in direct submission. This change
provides a way to control that behaviour.

Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-7218
2022-08-16 16:01:30 +02:00
Mateusz Jablonski
6a46e8f0ca Correct method names in device and module fixtures
correct naming in derived classes

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-12 10:40:56 +02:00
Mateusz Jablonski
e6fc458d4b Add a struct for test fixtures with correct method naming convention
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-11 12:55:52 +02:00
Warchulski, Jaroslaw
aed890a219 Move files between shared/test/unit_test and /common (fixtures, helpers, mocks)
unit_test/fixtures/mock_aub_center_fixture.h -> common/fixtures
unit_test/helpers/raii_hw_helper.h -> common/helpers
unit_test/helpers/static_size3.h -> common/helpers
unit_test/helpers/ult_limits.h -> common/helpers
unit_test/memory_manager/mock_prefetch_manager.h -> common/memory_manager
common/mocks/mock_aub_stream.h -> unit_test/mocks
common/mocks/mock_csr_simulated_common_hw.h -> unit_test/mocks
common/mocks/mock_direct_submission_diagnostic_collector.h -> unit_test/mocks
common/mocks/mock_lrca_helper.h -> unit_test/mocks
common/mocks/mock_tbx_stream.h -> unit_test/mocks
common/mocks/linux/mock_os_context_linux.h -> unit_test/mocks/linux
common/mocks/windows/mock_wddm_direct_submission.h -> unit_test/mocks/windows

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-11 12:53:19 +02:00
Warchulski, Jaroslaw
54dc2f2000 CMake: don't include shared/test/unit_test when shared tests are skipped 2/n
Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-10 11:19:08 +02:00
Lukasz Jobczyk
ba244634b3 Set the default value of the controller timeout divisor to 1
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-08-05 09:52:58 +02:00
Mateusz Jablonski
db2d1a53b9 Cleanup includes in drm_memory_manager.h
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-26 20:53:21 +02:00
Dunajski, Bartosz
a3903c385e Remove HW types from synchronization interface
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2022-07-25 13:59:26 +02:00
Lukasz Jobczyk
880464da77 Apply additional synchronization WA to DG2 ULLS
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-07-06 13:37:56 +02:00
Artur Harasimiuk
4bdd8860a1 test.h refactor
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-07-04 18:20:07 +02:00
Artur Harasimiuk
a701e28ca5 DrmMM fixtures refactor
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-06-27 22:50:56 +02:00
Artur Harasimiuk
4673a98074 includes simplification
use HW specific header instead generic one

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-06-24 22:07:18 +02:00
Lukasz Jobczyk
9761098733 Track ccs count per subdevice in direct submission controller
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-06-20 11:52:01 +02:00
Lukasz Jobczyk
24ff26c396 Allocate new ring buffer if all are in use
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-06-10 12:45:49 +02:00
Lukasz Jobczyk
921f76eea0 Calculate timeout using CCSes count
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-05-25 11:44:11 +02:00
Lukasz Jobczyk
d440d26c69 Ensure sleep is called in direct submission controller
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-05-24 14:25:24 +02:00
Lukasz Jobczyk
888c935efb Do not wait for completion in direct submission controller
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-05-19 11:12:42 +02:00
Daniel Chabrowski
7463e1970b Cleanup headers
Make TUs and headers self-contained, remove unused headers

Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-05-18 11:42:06 +02:00
Artur Harasimiuk
3f04769f07 style: configure readability-identifier-naming.FunctionCase
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-17 20:55:56 +02:00
Lukasz Jobczyk
d63a044e60 Add infrastructure to request ULLS restart
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-05-11 14:33:30 +02:00
Krzysztof Gibala
1c366d1ec0 Refactor: Change canonize method accessing point
Accessing canonize method as a member of GmmHelper class object

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-05-09 14:16:31 +02:00
Mateusz Jablonski
ffd1c430b1 feature: use completion fence value from direct submission when available
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-28 15:38:11 +02:00
Mateusz Jablonski
4a5f1b9358 refactor: extract common logic for waiting on user fences in Drm
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-25 17:34:23 +02:00
Mateusz Jablonski
03185f7111 feature direct submission: use tag allocation as a completion fence
use tag allocation address as a completion address in exec call
wait for completion value before destroying drm direct submission

Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-25 13:30:55 +02:00
Mateusz Jablonski
b5b8762faf refactor direct submission: Pass command stream receiver to ctor
Related-To: NEO-6643

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-19 23:02:55 +02:00
Bartosz Dunajski
fc4eaa1894 Refactor passing GlobalFenceAllocation to DirectSubmission
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-07 16:08:07 +02:00
Bartosz Dunajski
db9c0d1103 Refactor and enable MI_MEM_FENCE programming for DirectSubmission dispatch
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-07 12:53:56 +02:00
Bartosz Dunajski
6e9c890890 Enable sfence instruction programming for DirectSubmission dispatch
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-06 14:24:04 +02:00
Bartosz Dunajski
779bca39a7 Debug flag to add sfence instruction prior to DirectSubmission dispatch
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-01 15:53:03 +02:00
Filip Hazubski
586e8510de Remove unneeded include
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-26 09:55:25 +01:00
Mateusz Jablonski
3ac0581f2e Add debug flags to read back cmd/ring buffer before unblocking semaphore
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-25 20:36:29 +01:00
Lukasz Jobczyk
e870643c41 Adapt direct submission controller to implicit scaling
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-03-18 18:33:36 +01:00
Bartosz Dunajski
c6e27bdc18 Enable prepatcher DirectSubmission WA
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-10 20:23:11 +01:00
Bartosz Dunajski
79fedd59e4 Add BB_START prepatching WA - disabled by default
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-10 17:05:53 +01:00
Bartosz Dunajski
e24322f266 Debug flag to control MI_ARB_CHECK prefetcher
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-10 12:50:05 +01:00
Bartosz Dunajski
4b0d986876 Move AllocationType enum out of GraphicsAllocation class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-02-04 17:49:09 +01:00
Fabian Zwolinski
44ebe800df Move MockWddm body to WddmMock
This commit cleans the code after previously removed GMock from the
MockWddm(GmockWddm) class by merging MockWddm class into WddmMock.

Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-01-12 16:08:46 +01:00
Zbigniew Zdanowicz
b6da6471f2 Add notify parameter to direct submission post sync operations
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-23 17:35:48 +01:00
Filip Hazubski
9a450d1b74 Pass hwInfo to appendMiFlushDw
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-22 15:22:47 +01:00
Mateusz Jablonski
66bf806018 Remove magic number from set/getBatchBufferStartAddressGraphicsaddress methods
rename methods to set/getBatchBufferStartAddress

Related-To: NEO-6466
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-12-16 19:03:01 +01:00
Artur Harasimiuk
9d063f29d2 refactor support of other architectures
- cmake refactor to disable ld.gold and ld.lld usage when cross-compiling
- skip some ULTs when CPU feature is not available

Related-To: NEO-6017
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-12-16 12:54:51 +01:00
Mateusz Jablonski
527806b3ed Use full path to include test.h 2/n
fix files in shared

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-12-15 13:09:50 +01:00