Commit Graph

107 Commits

Author SHA1 Message Date
Fabian Zwolinski 65c73a690f Introduce Online, Offline, Disabled DebuggingModes
This change allows to set DebuggingMode via
ZET_ENABLE_PROGRAM_DEBUGGING env var
0: Disabled
1: Online
2: Offline

Related-To: NEO-7630
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2023-03-17 09:31:17 +01:00
Mateusz Hoppe e62c5e25d5 refactor: change debugging enabled to debugging mode
Related-To: NEO-7630

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-03-15 13:41:41 +01:00
Cencelewska, Katarzyna c274309d7b wa: add dummy blits before command MI_FLUSH_DW
to guarantee that all subblt got complete for previous copy
affect xe hpg

temporary changes under flag ForceDummyBlitWa

Related-To: NEO-7450

Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-03-09 10:40:35 +01:00
Spruit, Neil R 86e739e9dc feature: Relaxed Virtual Memory reservation with pStart
Related-To: LOCI-3871

- Relaxed the Virtual Memory Reservation to allow pStart and not fail if
the pStart value is not obtained.
- Moves checks on pStart to the user to check and determine if they want
to re-reserve or use the address allocated.
- Changed reserveGpuAddress to use unit64_t type to allow internal
address range structure assignment without cast.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-03-08 08:06:50 +01:00
Cencelewska, Katarzyna 50da32ffb1 wa: add dummy blits before command MI_ARB_CHECK
to guarantee that all subblt got complete for previous copy
affect xe hpg

Related-To: NEO-7450

Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-03-07 10:21:05 +01:00
Neil Spruit 2aaebddb37 Revert "Heap allocation allow base address and growable addresses"
This reverts commit 44ec497b1a.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-02-15 18:34:40 +01:00
Spruit, Neil R 44ec497b1a feature: Allow for Allocating a base address in the heap and grow an allocation
Related-To: LOCI-3871

- Enabled allocation of specified base address in the targeted heap.
- Enabled virtual memory reservations to grow by allocating at the start
of the heap vs the end of the heap.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2023-02-15 08:13:38 +01:00
Kamil Kopryk 2484c7ceb2 refactor: rename hw_helper files to gfx_core_helper files
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-02-01 19:37:51 +01:00
Kamil Kopryk 445706361d refactor: don't use global ProductHelper 14/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2023-01-27 14:51:12 +01:00
Mateusz Hoppe ee499d689b fix(zebin): fix module load/unload events while debugging
- do not trigger incorrect / spurious events from internal modules
for debugger
- do not register Elf for internal modules

Related-To: NEO-7605

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2023-01-04 19:12:30 +01:00
Mateusz Hoppe c52f966fdf fix(zebin): register zebin's debug elf only once
- minimize memory use
- enhance performance of debug

Resolves: NEO-7585


Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-12-27 15:49:05 +01:00
Kamil Kopryk 929e03ad8a Refactor: don't use global ProductHelper getter in shared files 1/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-27 12:53:43 +01:00
Warchulski, Jaroslaw f275eea6ec Cleanup includes 14
Cleaned up files:
shared/source/device/device.h

Related-To: NEO-5548

Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-12-23 10:46:34 +01:00
Kamil Kopryk d4cfdd05b2 Pass productHelper to disableL3CacheForDebug function
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-20 09:34:48 +01:00
Kamil Kopryk 232b886056 Rename HwInfoConfig to ProductHelper
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-14 14:39:52 +01:00
Kamil Kopryk 03b687881f Rename HwHelper -> GfxCoreHelper
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-12-09 10:29:06 +01:00
Warchulski, Jaroslaw be647d42d9 Cleanup includes 12
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-12-07 13:14:15 +01:00
Warchulski, Jaroslaw c10aa90815 Cleanup includes 11
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-12-06 12:25:30 +01:00
Spruit, Neil R d81b0b14a1 L0 Virtual Memory Reservation support
- Enable support for L0 Virtual Memory reservation on Linux and Windows.
- Excludes support for Linux to allow pStart option

Related-To: LOCI-3397, LOCI-1543

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2022-12-01 00:55:19 +01:00
Yates, Brandon 4bd5765a06 L0 Debug - Fix imm cmdlist mode on windows
Single Address Space SBA programming was using incorrect BB
level and not loading GPR15

Related-to: NEO-7517
Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-11-25 20:37:14 +01:00
Yates, Brandon 6541f283c7 Remove DebuggerDisableSingleAddressSbaTracking
All problems with single address space mode have
been resolved and this Debug Key is no longer needed.

Related-to: NEO-7191

Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-11-15 14:15:19 +01:00
Kamil Kopryk 211cc8552a Move hwHelper ownership to RootDeviceEnvironment 4/n
Related-To: NEO-6853
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>

UseRootDeviceEnvironment getHelper<CoreHelper> for:
- isLocalMemoryEnabled
- getSipKernelType
- is1MbAlignmentSupported
2022-11-15 08:23:53 +01:00
Warchulski, Jaroslaw 6cbb3cfb05 Cleanup includes 3
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-11-07 14:52:31 +01:00
Brandon Yates 76ef0bfb0a L0debug - Canonize SBA in single address space mode
Signed-off-by: Brandon Yates<brandon.yates@intel.com>
2022-11-03 21:58:06 +01:00
Compute-Runtime-Validation 49c828e481 Revert "L0debug - Canonize SBA in single address space mode"
This reverts commit f067145137.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-11-03 09:41:50 +01:00
Yates, Brandon f067145137 L0debug - Canonize SBA in single address space mode
Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-11-02 09:37:12 +01:00
Yates, Brandon 3fced92766 L0 debugger - decanonize SDI address before adding to buffer
Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-10-17 20:22:17 +02:00
Maciej Bielski 0d0d6a300e Debugger: simplify captureStateBaseAddress()
So far captureStateBaseAddress() was a wrapper around
programSbaTrackingCommands(), doing an additional checking before
calling the latter. The checking is apparently no longer relevant, so
unify the distinction and remove part of the code which is no longer
needed.

In practice, keep the captureStateBaseAddress() while moving the body of
programSbaTrackingCommands() into it. This imposes lower diff-impact
onto the class hierarchy. Remove the second function. Simplify the
caller which had to distinct these two functions previously.

Related-To: NEO-6774
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2022-09-13 17:08:31 +02:00
Mateusz Hoppe 75b117b82f L0Debug - fixes for ZE AFFINITY MASK
- pass correct deviceIndex when notifying cmdQs
- fix allocating debug surface - single tile allocation when single
bit set in storageInfo

Related-To: NEO-6980

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-31 11:43:19 +02:00
Mateusz Hoppe ee8af85341 L0Debug fixes for multi tile devices
- notify module allocation for (sub)device used to create module,
makeResident called within (sub)device contexts
- access ISA with vmHandle specific to device index

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-31 10:58:28 +02:00
Igor Venevtsev d40173e47a L0Debug Win: Always generate module create/destroy events
We have to always generate module create/destroy events to give
debugger a chance to insert bp, read/write debuggee memory  etc
even there is no debug data was generated. In this case ELF will not be
reported to debugger, just ISA GpuVA

Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-08-24 14:58:30 +02:00
Igor Venevtsev 4cb9ad5d55 Debugger L0 Win: implement module destroy event
Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-07-28 15:55:40 +02:00
Kamil Kopryk d4d54f5093 Cleanup includes
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-07-25 09:58:38 +02:00
Mateusz Hoppe 4da6f65d1a L0Debug - Notify cmdQueue create for subdevices
- PROCESS ENTRY triggered for first cmdQ created

Related-To: NEO-5784
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-22 16:08:41 +02:00
Compute-Runtime-Validation 5199ea257d Revert "L0Debug - Notify cmdQueue create for subdevices"
This reverts commit ebcb3faad2.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-21 18:50:20 +02:00
Mateusz Hoppe ebcb3faad2 L0Debug - Notify cmdQueue create for subdevices
- PROCESS ENTRY triggered for first cmdQ created

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-20 15:13:06 +02:00
Igor Venevtsev 547dd59272 Debugger L0 Win: Implement CREATE_DEBUG_DATA/MODULE_CREATE events handling
Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-07-20 13:20:50 +02:00
Yates, Brandon e55cd5961b Add debug key to disable SBA tracking commands in single address space
DebuggerDisableSingleAddressSbaTracking defaults to false

Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-07-20 08:34:48 +02:00
Jitendra Sharma 4a8a93af96 Debugger L0 Win - Generate Proc Entry/Exit events
Related-To: NEO-7117

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2022-07-18 12:32:57 +02:00
Artur Harasimiuk 6cb44ae0d9 includes refactor
use gen specific hw_cmds instead of all-in-one

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-07-08 17:02:19 +02:00
Mateusz Hoppe 673bf3b553 Move DebuggerL0 to shared
Related-To: NEO-7075

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-06-23 10:05:45 +02:00
Compute-Runtime-Validation c45ddab1c3 Revert "Move DebuggerL0 to shared"
This reverts commit 7eba4db2e7.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-06-22 04:38:32 +02:00
Mateusz Hoppe 7eba4db2e7 Move DebuggerL0 to shared
Related-To: NEO-7075

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-06-21 17:10:46 +02:00
Mateusz Hoppe 5911515ed0 Refactor debugger code
- helper sets all SbaAddresses for debugger in
EncodeStateBaseAddress<GfxFamily>::setSbaAddressesForDebugger()
- change DebuggerL0::captureStateBaseAddress() to take
LinearStream
- move getSbaTrackingCommandsSize() to Debugger class

Related-To: NEO-6845

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-04-21 13:04:34 +02:00
Mateusz Hoppe 6d87dccd03 Add debug variable to enable source level debugger
- new flag ExperimentalEnableSourceLevelDebugger that
allows communication with debugger library

Related-To: NEO-6514

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-12-10 13:18:21 +01:00
Mateusz Hoppe 438611be09 Disable FusedEus when debugger is used
Related-To: NEO-5961

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-06-22 13:03:38 +02:00
Zbigniew Zdanowicz 902cce597a Add new functionality to load SIP from file
Related-To: NEO-5718

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-04-23 13:48:26 +02:00
macabral 720ba46548 Register kernel Elf for debugging purpose
Signed-off-by: macabral <matias.a.cabral@intel.com>
2020-12-01 17:16:14 +01:00
Mateusz Hoppe b384bda99a Exclude internally used cmdLists and cmdQs from debugging
Related-To: NEO-5241

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-17 12:17:34 +01:00
Mateusz Hoppe ac3b65ba82 Refactor isDebuggerActive
- use it for SourceLevelDebugger only

Change-Id: I130219a13d6baa1f72c5b35295afd6efa4bf37fa
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-29 12:21:18 +01:00
Mateusz Hoppe 75710fead9 Enhance SBA tracking
Related-To: NEO-4637

Change-Id: I0cd0cf17bac332f1a00c10a324f94e91fe031c0a
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-24 14:54:02 +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
Mateusz Hoppe a77f1de8a1 Track StateBaseAddresses from cmdQ and cmdList
Related-To: NEO-4637

Change-Id: Ia4b187df5f28fadf032ff24acb7ab32b05d0d261
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-30 15:09:53 +02:00
Mateusz Hoppe 5de52badbe Setup surface state for debugSurface at offset zero
Related-To: NEO-4767

Change-Id: I5be24712795f18865037ea5d3b42604579027969
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-23 16:26:23 +02:00
Mateusz Hoppe 68847ef942 Create L0 debugger object
Related-To: NEO-4713

Change-Id: I9d10019bbe6e8514ce10bdd729a64ea233bf91b0
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-19 15:46:52 +02:00
Mateusz Hoppe 0e76e9db66 Unify Debugger::create methods and link to shared library
- OCL and L0 can share this method

Change-Id: Ice9488281a5c2a26ea09310319243880a6aa0682
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-19 08:26:18 +02:00
kamdiedrich e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00