Commit Graph

289 Commits

Author SHA1 Message Date
Fabian Zwolinski
0966651a78 Create and implement WSL handle refreshing
Additionally rename createResourceInfo overload to decodeResourceInfo.
createResourceInfo(GMM_RESOURCE_INFO *, GMM_RESOURCE_INFO) does not
create a new ResourceInfo, but decodes one on the basis of the provided
existing gmmResourceInfo.

Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-06-14 08:43:35 +02:00
Dominik Dabek
cdfe2ce8ad Feature: Flag for device usm allocation reusing
With flag enabled, when app calls freeSVMAlloc on device usm allocation,
don't free it immediately but save it,
and try to use it on subsequent allocations.

This allocation cache will be trimmed if an allocation fails.

Related-To: NEO-6893

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-06-13 20:02:52 +02:00
Krzysztof Gibala
c229ace4df Adjust GmmHelper to be HW aware
Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-13 18:33:06 +02:00
Katarzyna Cencelewska
c59c4b2957 Add hwInfo as argument to method getSupportedDeviceFeatureCapabilities
set proper value in method isMatrixMultiplyAccumulateSupported to be
consistent with support of extension *matrix_multiply_accumulate*

Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-06-13 15:03:43 +02:00
Daniel Chabrowski
6e3d373ef6 Move tests to shared
Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-06-13 13:05:46 +02:00
Compute-Runtime-Validation
cca1dbecbc Revert "Ocloc: New AOT approach implementation"
This reverts commit a44f1b43aa.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-06-12 21:27:08 +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
Daria Hinz
a44f1b43aa Ocloc: New AOT approach implementation
Ocloc will handle any new values that may be
passed to the -device argument.

Supported acronyms are available under cmd:
ocloc compile --help

Supported patterns:
- device acronym
- release acronym
- family acronym
- version (major.minor.revision)

Fatbinary will no longer handle major.minor.revision variances,
only acronyms allowed.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-06-10 09:24:13 +02:00
Bartosz Dunajski
39c1c4d530 Remove virtual padding support
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-08 12:42:44 +02:00
John Falkowski
620bb970f4 Resubmit fix for task count hang
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2022-06-07 16:28:17 +02:00
Daniel Chabrowski
c303c218be Add missing pragma once in header files
Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-06-07 16:19:11 +02:00
Bartosz Dunajski
9e1c9ec95e Use MMAP_OFFSET ioctl to lock BufferObject
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-07 11:12:31 +02:00
Krzysztof Gibala
81899c4477 Add canonized gpuAddress to GraphicsAllocation constructor
Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-06 18:17:36 +02:00
Mateusz Jablonski
2a4c68dc38 Remove not needed dependencies from device_imp.h
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-02 18:35:34 +02:00
Baj, Tomasz
9529f21182 Fix missing handle in external memory
Related-To: NEO-6757

Signed-off-by: Baj, Tomasz <tomasz.baj@intel.com>
2022-06-02 16:05:46 +02:00
Krzysztof Gibala
dc1fe7d59a Change MemoryPool to enum class
Use enum class for MemoryPool in GraphicsAllocation
This change will ensure that GA is constructed in the proper way

- Rename namespace for isSystemMemoryPool method
- Add method getMemoryPoolString for logging actual pool which is in used
- Remove wrong pattern in GraphicsAllocation constructor

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-02 12:46:15 +02:00
Krzysztof Gibala
e146a8e8ca Correct wrong constructor pattern in GraphicsAllocation
Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-06-01 18:06:56 +02:00
Igor Venevtsev
dc2e1dfdb0 L0 Debugger Win - add initial event handling
Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-05-31 13:27:06 +02:00
ocldev
af745fb1df dependencies update
Signed-off-by: ocldev <ocldev@intel.com>
2022-05-28 09:48:40 +02:00
Igor Venevtsev
8c165a6f41 L0 Debugger Windows - implement debugger attach/detach
Related-To: NEO-6718

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-05-27 16:25:56 +02:00
Filip Hazubski
35d1f2e341 Add debug flag to control programming of thread arbitration policy with SCM
Related-To: NEO-6801

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-05-27 11:35:41 +02:00
Jaime Arteaga
359e848dbe Revert "Fix for task count hang issue"
This reverts commit 340ba8bf56.

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-05-25 20:34:00 +02:00
Yates, Brandon
adc51c1b47 Set context debuggable when debugging is enabled
Related-to: NEO-6896
Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-05-24 16:45:32 +02:00
Mateusz Jablonski
f8983a8ecf test: Move linux specific tests to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-23 19:21:50 +02:00
John Falkowski
340ba8bf56 Fix for task count hang issue
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2022-05-18 19:35:12 +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
Mateusz Jablonski
de465b1e6c Move drm wrappers to a separate file
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-17 17:58:19 +02:00
Katarzyna Cencelewska
96e1eb7467 Move variables baseDieRev and baseDieA0Masked from xe_hpc to pvc
Pvc specific variables should be located in pvc struct

Related-To: NEO-6738
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-05-17 12:19:16 +02:00
Dominik Dabek
5dcdf53d12 Fix: enable split taskcount from wait only on dg2
Related-To: NEO-6948

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2022-05-13 14:30:16 +02:00
Mateusz Jablonski
3c18744d10 Create a wrapper for drm_i915_gem_execbuffer2
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-12 17:58:16 +02:00
Patryk Wrobel
9b2ad0c5df Detect GPU hangs in flushBcsTask()
This change introduces detection of GPU hangs in flushBcsTask()
function. The new code has been covered with ULTs.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-05-12 16:17:16 +02:00
Mateusz Jablonski
268393d776 Create wrapper for drm_i915_gem_exec_object2
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-12 13:14:27 +02:00
Katarzyna Cencelewska
0b68fdbe52 Move isCooperativeEngineSupported to HwInfoConfig
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-05-12 12:10:23 +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
Fabian Zwolinski
7bb3bcbc05 Read resource info from internal represenation for WSL
Related-To: LOCI-3037
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-05-11 11:57:23 +02:00
Mateusz Jablonski
943ad0e1eb style: skip redundant unique_ptr::get function
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-10 13:22:40 +02:00
Jaime Arteaga
3f26f45c10 Add support for IPC handles with implicit scaling
When using implicit scaling, device allocations may have
more than one internal allocation created internally. In that case,
a separate dma-buf handle per internal allocation needs to be
exported.

So introduced two driver experimental extensions to export and
import more than one IPC handle:

- zexMemGetIpcHandles
- zexMemOpenIpcHandles

Related-To: LOCI-2919

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-05-09 00:38:17 +02:00
Maciej Plewka
0a16dc6c47 Fix multi thread usage of external host alloc
This is fixed reupload of this commit after auto revert
With this commit OpenCL will track if external host memory is used from
few threads and will secure to update task count in all threads before
destroing allocation.

Resolves: NEO-6807

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-05-05 13:32:15 +02:00
Compute-Runtime-Validation
00a1a14652 Revert "Fix multi thread usage of external host alloc"
This reverts commit 54eee2a88b.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-04-28 17:42:07 +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
Krzysztof Gibala
9b778863b4 Store GmmHelper in Gmm class
Store GmmHelper in Gmm class instead of GmmClientContext

Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-04-27 15:45:49 +02:00
Filip Hazubski
3900c9d24a Report to StreamProperties whether large grf should be programmed with SCM
Add helper method to UnitTestHelper to query programmed grf values.

Related-To: NEO-6659

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-04-27 13:20:14 +02:00
Maciej Plewka
54eee2a88b Fix multi thread usage of external host alloc
With this commit OpenCL will track if external host memory is used from
few threads and will secure to update task count in all threads before
destroing allocation.

Resolves: NEO-6807

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-04-26 15:31:24 +02:00
Bartosz Dunajski
192ffa4c26 Add support for allocating RT globals
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-25 17:56:09 +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
Bartosz Dunajski
06fa316a75 Assign pat_index to BO during creation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-21 13:25:13 +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 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
Kamil Kopryk
10be59cb15 Improve isIpSamplingSupported helper
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6738
2022-04-20 17:02:20 +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