Commit Graph

54 Commits

Author SHA1 Message Date
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
Bartosz Dunajski 52b00a11b0 Remove LSH from CommandQueue
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-07-19 08:47:02 +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
Bartosz Dunajski 61b2ee45cd Use LogicalStateHelper to encode SystemMemoryFence
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-24 13:29:58 +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 d63a044e60 Add infrastructure to request ULLS restart
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2022-05-11 14:33:30 +02:00
Artur Harasimiuk a6490062a9 fix code issues reported by clang 14
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-04-29 10:43:34 +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 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
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
Bartosz Dunajski 08e3853982 Debug flag to add extra MI_MEM_FENCE for DirectSubmission
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-30 16:07:25 +02: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
Mateusz Jablonski 3792481d33 XeHPC Implicit scaling: put command/ring/semaphore buffer to first memory bank
In direct submission scenario command/ring/semaphore buffer allocations
are placed in the same memory bank to ensure that their memory is updated in
correct order

Related-To: NEO-6698
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-21 08:10:50 +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
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
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
Zbigniew Zdanowicz 3e1023fa1a Unify memory layout for all multi tile post sync operations
Related-To: NEO-6262

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-02 18:00:40 +01:00
Lukasz Jobczyk cc13d60f1d Add debug key to print direct submission ring buffer
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-11-23 14:08:52 +01:00
Zbigniew Zdanowicz 7ea0a11c0a Unify programming of partition registers
Related-To: NEO-6262


Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-18 16:52:51 +01:00
Zbigniew Zdanowicz 76b8f6296f Move noop programming to dedicated encoder
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-18 10:28:56 +01:00
Lukasz Jobczyk d1a9b8e600 Fix task count update from wait on blitter direct submission
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-11-16 12:35:05 +01:00
Zbigniew Zdanowicz 60805cdbcf Fix direct submission wait on multi tile device using single tile context
Related-To: NEO-6244

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-10-28 14:01:58 +02:00
Zbigniew Zdanowicz f0d32ed5f7 Fix multi tile synchronization in direct submission
Related-To: NEO-6244

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-10-13 16:13:20 +02:00
Zbigniew Zdanowicz 7b95dc4be4 Add partitioned post sync for completion fence of direct submission
Related-To: NEO-6244

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-10-12 14:57:29 +02:00
Mateusz Hoppe f2eb7f3aea Fix DirectSubmission residency handling
- allocations should be resident within OsContext

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-09-03 16:57:42 +02:00
Lukasz Jobczyk 8d60fb2a07 Refactor tag update for stop ring buffer
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-08-27 15:13:20 +02:00
Lukasz Jobczyk 4d2764eb0d Refactor direct submission per product files
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-08-23 19:13:30 +02:00
Lukasz Jobczyk 1638554a49 Add direct submission termination mechanism
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-08-20 13:57:28 +02:00
Lukasz Jobczyk dbf9198186 Flush tlb on BCS direct submission
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-07-30 16:26:47 +02:00
Zbigniew Zdanowicz 0e5ca243e2 Add notify enable parameter to post sync commands
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-06-17 19:22:51 +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
Lukasz Jobczyk e653699267 Disable monitor fence in Drm ULLS by default
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-04-20 13:10:22 +02:00
Lukasz Jobczyk 83a1a52bdc Flush tlb only when new resource is bound
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-04-15 12:11:13 +02:00
Michal Mrozek 76a9ccc095 Do not flush caches in ULLS submissions by default.
Change-Id: I4a1c96c597eef8b85e4e43e90cdc4779765eb72b
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-09-23 09:46:08 +02:00
Zbigniew Zdanowicz ba4dd9f866 Fix position of commands in diagnostic mode of direct submission
Related-To: NEO-4338

Change-Id: I439e5f66a351108625b7add5cda65c9887278632
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-08-19 17:04:53 +02:00
Lukasz Jobczyk 5bb73abfde Handle prefetching properly
Resolves: NEO-4338

Change-Id: I909e655efed22560049ed8eb7e9c41054824751c
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-08-18 13:54:40 +02:00
Lukasz Jobczyk c2a4835943 Add wait mechanism to drm direct submission
Related-To: NEO-4338

Change-Id: Ibef00cb774fc0564f95b3b6ba8c0934798a5957e
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-08-07 13:05:40 +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
Zbigniew Zdanowicz 14f4d5c5b9 Fix delayed first execution in diagnostic mode of direct submission
Related-To: NEO-4338

Change-Id: I68cce6ac66946f1cd0af9328231ccfbc2910c3c4
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-05-29 07:57:07 +02:00
Mateusz Jablonski 0c404bc880 Pass device bitfield to allocation properties when creating mem obj
Related-To: NEO-4484
Change-Id: I961e9122591dc7293e37d5c1ca58cbcd649ee653
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-16 15:01:37 +02:00
Zbigniew Zdanowicz 5e98368dad Remove RMW access patterns from functions programming on gfx memory
Related-To: NEO-4338

Change-Id: I8fe555525f937e75c5439702b328c734af9af1f9
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-09 18:49:30 +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 f096d71a75 Add diagnostic mode to direct submission
Related-To: NEO-4338

Change-Id: Ibcdc1b6a1762827337e4ff5364a972702130195a
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-02 17:50:59 +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
Zbigniew Zdanowicz 4bc680477c Improve Wddm Residency logging
Related-To: NEO-4338

Change-Id: I5fefa1da6188befe27928b6bbfcc7bac89a6aef2
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-25 11:58:59 +01:00
Zbigniew Zdanowicz f423679de9 Add minor fixes to Direct Submission
Change-Id: Idfa23e6663e4b188fe1e54ab89b7e11c97e9550c
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-24 06:53:29 +01:00