Commit Graph

50 Commits

Author SHA1 Message Date
Szymon Morek
d4c1631ac7 performance: don't wait for paging fence on user thread
Related-To: NEO-12197

Currently for new resources user thread must wait before submitting
actual workload. With this commit, instead of waiting on user thread,
request is sent to background ULLS controller thread and additional
semaphore is programmed. ULLS controller will perform actual wait
and signal semaphore when paging fence reaches required value.

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2024-08-07 08:30:51 +02:00
Dominik Dabek
dc26b25169 Revert "fix: ulls controller sleep, windows"
This reverts commit 672cc0ebc7.

Resolves: HSD-18038912878, NEO-11770

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-06-21 14:10:43 +02:00
Dominik Dabek
672cc0ebc7 fix: ulls controller sleep, windows
Request higher resolution for windows periodic timers for ulls
controller sleep.

Allows for controller thread to sleep with granularity of 1ms.

Related-To: NEO-10800

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-06-18 06:28:15 +02:00
Lukasz Jobczyk
4be3230051 fix: Use current fence values when create fence for ULLS
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-04-24 18:19:58 +02:00
Lukasz Jobczyk
64175d8bb6 feature: Add ULLS support for WDDM 2.3
Resolves: NEO-4843

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2024-01-29 15:45:43 +01:00
Zbigniew Zdanowicz
eec553ea6a fix: set ulls ring start state according to returned value from kmd call
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2024-01-10 12:57:34 +01:00
Lukasz Jobczyk
edd6fd5e6c performance: Optimize ULLS start on submit path
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-12-29 15:21:49 +01:00
Compute-Runtime-Validation
1d02f7fdd9 Revert "performance: Optimize ULLS start on submit path"
This reverts commit ea78831e28.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-12-28 01:54:18 +01:00
Lukasz Jobczyk
ea78831e28 performance: Optimize ULLS start on submit path
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-12-27 13:55:30 +01:00
Mateusz Jablonski
de93bc6928 refactor: correct naming of enum class constants 10/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 11:30:39 +01:00
Mateusz Jablonski
c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00
Maciej Plewka
8c8bb23356 fix: update completion fence for previous ring during switch
Related-To: NEO-9330

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-11-27 12:30:01 +01:00
Maciej Plewka
1a364f5c98 fix: add synchronization for updating tag and updating residency in GA
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-11-24 12:12:13 +01:00
Maciej Plewka
560b588cbe fix: Update residency fence value after ring buffer switch
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2023-11-17 20:46:14 +01:00
Katarzyna Cencelewska
fbe61cf547 fix: add kmd wait on cpu when wait on paging fence when needed
add storing of throttle hint value for direct submission

Related-To: NEO-9123
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-11-09 19:22:15 +01:00
Katarzyna Cencelewska
3ad68cb7d6 fix: setting flush stamp to not have zero value
when direct submission and monitor fence is not required then use
current fence value to update flush stamp

Related-To: NEO-9123
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-11-09 08:34:21 +01:00
Katarzyna Cencelewska
06e2fdb2e9 fix: remove copy paste from WddmDirectSubmission methods
instead of use updateTagValueImpl to avoid missing parts

Related-To: NEO-9123
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2023-11-08 08:45:10 +01:00
Zbigniew Zdanowicz
20c3f45998 refactor: add ulls diagnostic flag to select monitor fence input
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-11-06 15:09:36 +01:00
Zbigniew Zdanowicz
e0ce08bb77 fix: detect gpu hang or page fault at direct submission flush to gpu
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-11-06 14:22:02 +01:00
Zbigniew Zdanowicz
7dfd3e5e59 performance: use dedicated flag to dispatch monitor fence
Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-09-21 13:25:06 +02:00
Zbigniew Zdanowicz
a16d8f7b88 refactor: change direct submission interfaces to accept monitor fence
- unify Linux and Windows default settings
- unify override default code
- correct size estimation when fence is required
- call virtual function once for both estimation and dispatch

Related-To: NEO-8395

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2023-09-20 13:17:12 +02:00
Lukasz Jobczyk
e9f199bcad performance: Wait in busy loop with timeout before Gdi sync object
Resolves: NEO-8343

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-09-08 14:40:20 +02:00
Lukasz Jobczyk
d3355411b8 performance: Improve dispatch monitor fence from wait
-update last submitted value while flush monitor fence
-dispatch monitor fence with workload when stalling cmds present

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-08-30 16:15:32 +02:00
Lukasz Jobczyk
7330974116 feature: Enable dispatch monitor fence from wait
Resolves: NEO-8240
Related-To: NEO-8067

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-08-10 09:45:22 +02:00
Compute-Runtime-Validation
8213c2a0cd Revert "feature: Enable dispatch monitor fence from wait"
This reverts commit 4d5b4ef4f1.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2023-08-10 04:25:58 +02:00
Lukasz Jobczyk
4d5b4ef4f1 feature: Enable dispatch monitor fence from wait
Resolves: NEO-8240
Related-To: NEO-8067

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-08-09 09:43:47 +02:00
Lukasz Jobczyk
fc1f45b630 feature: Dispatch monitor fence from wait
Resolves: NEO-8240
Related-To: NEO-8067

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-08-08 16:42:27 +02:00
Igor Venevtsev
e2ad2e8db0 fix: initialize GPU VA for additional synchronization WA
Related-To: NEO-8072

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2023-08-01 11:43:52 +02:00
Lukasz Jobczyk
e70f441f52 fix: Idle gpu before invalidate aux table
Related-To: NEO-8067

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2023-07-05 13:51:27 +02:00
Dominik Dabek
ff2e4f6066 feat: dont wait on fence in ulls switch buffers
Related-To: NEO-7797

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2023-03-28 23:45:56 +02:00
Mateusz Jablonski
43b790957d style: format code using clang-format 15.0.6
Related-To: NEO-7500
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-01-05 10:33:47 +01: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
Artur Harasimiuk
e9be9b64c6 clang-tidy configuration cleanup
Define single .clang-tidy configuration with all used checks and use
NOLINT to selectively silence tool. That way cleanup should be easier.
third_part/ has its own configuration that disables clang-tidy for this
folder.

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-11 14:02:04 +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
4cb46ee15c Refactor direct submission: remove csr from members
create translation layer to obtain needed params

Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-20 17:20:17 +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
Jaroslaw Chodor
53ce391eb8 Fixing gcc warnig in DECLARE_COMMAND_BUFFER
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-06-09 15:51:51 +02:00
Jaroslaw Chodor
d1af8706c0 Changing default for WDDM_LINUX support
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-06-09 03:13:32 +02:00
Jaroslaw Chodor
b80a51e5bf Adding wsl_compute_helper
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-06-07 14:36:21 +02:00
Jaroslaw Chodor
abf0649a5b Improving cpp compliance
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-05-20 00:10:06 +02:00
Pawel Cieslak
fb821f21f5 Cmake format script
Related-To: NEO-1157

Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Lukasz Jobczyk
21e16ff2c5 Add initial implementation of Linux direct submission
Change-Id: I9ee0434897bc3e980b240a8373190f0803e6c102
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-30 10:45:58 +02:00
Lukasz Jobczyk
ff0add74e3 Add alternative residency model on Linux
Related-To: NEO-4732

Change-Id: I79e165d2b647af200ca314e1183ecf05903de644
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-10 12:38:57 +02:00
Zbigniew Zdanowicz
11154bd9a1 Add more data to log in residency and direct submission
Related-To: NEO-4338

Change-Id: I146d6f6caddea540a6d48f86b07ad37d4045269e
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-06 12:37:45 +02:00
Zbigniew Zdanowicz
1b884e3ea9 Add Wddm residency logging to upper layers
Related-To: NEO-4338

Change-Id: Ib36f4c8da5a2ea9d4f81063faa718a29fbc4b8d8
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-03 09:48:38 +02:00
Zbigniew Zdanowicz
49d3c39fae Refactor direct submission
Related-To: NEO-4338

Change-Id: Ic858a9324e5f892532d39c98a4029df9d2a64e46
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-27 12:43:05 +01:00
Piotr Zdunowski
68ec2d9cf7 On windows always request even number of EUs.
Resolves: NEO-3787

Change-Id: I45e8fdca563b3e6bebcd94b9c16202aff61a2357
Signed-off-by: Piotr Zdunowski <piotr.zdunowski@intel.com>
2020-03-23 15:31:00 +01:00
Mateusz Jablonski
7df9945ebe Add absolute include paths
Change-Id: I67a6919bbbff1d30c7d6cdb257b41c87bad51e7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 23:49:12 +01:00
kamdiedrich
e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00