Kamil Kopryk
9466113cef
Fail build program on PVC with stateful accesses
...
Related-To: NEO-6075
After this change driver will fail clBuildProgram/zeModuleCreate api calls
whenever stateful access is discovered on PVC.
This is required since in this case allocation greater than 4GB
will not work.
If user still wants to use stateful addressing mode,
-cl-opt-smaller-than-4GB-buffers-only / -ze-opt-smaller-than-4GB-buffers-only
build option should be passed as build option, but then user can not use
bufers greater than 4GB.
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-02-14 13:44:22 +01:00
Krystian Chmielewski
d49c5d6185
OCL: Set target device product family
...
In OCL product family of target device is not set
which leads to a fail on validating target device in
ZEBin path.
This change adds function that sets all
necessary fields based on provided hardware info.
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-02-08 16:49:28 +01:00
Kacper Nowak
306775f7f1
Refactor debugData and debugDataSize in OCL.
...
This commits moves debugData and debugDataSize to buildInfos vector (per
root device).
- debug data is now stored per device instead of per cl_program
- added creation of debug data (incl. debug zebin) and its returning in
clGetProgramInfo (CL_PROGRAM_DEBUG_INFO_INTEL).
Related-To: NEO-6463
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-01-28 14:03:21 +01:00
Katarzyna Cencelewska
97765cd39f
Remove device enqueue part 7
...
- mainly remove BlockKernelManager and ReflectionSurfaceHelper
Related-To: NEO-6559
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2022-01-19 10:41:57 +01:00
Kamil Kopryk
0a4554ab23
Simplify internal options initialization
...
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075
2022-01-13 11:03:04 +01:00
Patryk Wrobel
3599e7aeda
Add warning when device binary had to be recompiled
...
Introduced a new warning, which is printed to build log, when the
binary needs to be recompiled. Added a new flag -Wno-recompiled-from-ir
to allow suppression of that message. Removed a bug related to memcpy_s
from ModuleBuildLogImp::getString() and aligned it with specification.
Related-To: NEO-5819
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2021-12-23 16:13:59 +01:00
Compute-Runtime-Validation
b7cee61bde
Revert "Fail build program in shared system USM + stateful access case"
...
This reverts commit 0ad8afc0b3
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-12-07 01:00:59 +01:00
Kamil Kopryk
0ad8afc0b3
Fail build program in shared system USM + stateful access case
...
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075
After this change driver will fail clBuildProgram/zeModuleCreate api calls
whenever stateful access is discovered and device has shared system usm caps
enabled.This is required since in this case allocation greater than 4GB
will not work.
If user still wants to use stateful addressing mode,
-cl-opt-smaller-than-4GB-buffers-only / -ze-opt-smaller-than-4GB-buffers-only
build option should be passed as build option, but then user can not use
buffers greater than 4GB.
2021-12-06 15:10:16 +01:00
Compute-Runtime-Validation
faea7915c2
Revert "Fail build program in shared system USM + statefull access case OCL"
...
This reverts commit 9dabc2db0c
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-11-05 20:31:47 +01:00
Kamil Kopryk
9dabc2db0c
Fail build program in shared system USM + statefull access case OCL
...
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075
2021-11-05 14:55:05 +01:00
Mateusz Jablonski
21ef249961
Move ocl extensions logic to shared
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-04 17:38:15 +01:00
Filip Hazubski
28b37aea72
Correct handling unique_ptr in functions
...
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-10-21 18:17:14 +02:00
Bartosz Dunajski
5856c283c5
Remove HardwareCapabilities struct
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-12 07:25:06 +02:00
Bartosz Dunajski
e096bf881e
Fix assigning SubDevices to Program
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-06 15:31:22 +02:00
Zbigniew Zdanowicz
25c71a6c13
Move kernel info to shared directory
...
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-09-29 23:49:49 +02:00
Rafal Maziejuk
82f27e882d
Refactor Gen12LP helpers
...
Signed-off-by: Rafal Maziejuk <rafal.maziejuk@intel.com>
Related-To: NEO-4541
2021-09-27 14:07:37 +02:00
Bartosz Dunajski
0345d9f707
Improve queries with number of SubDevices
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-09-01 14:01:57 +02:00
Bartosz Dunajski
92000bd75b
Improve Device getter to support EngineInstanced Device with single Engine
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-31 15:50:23 +02:00
Bartosz Dunajski
cb91474b1a
Improve getDevice methods
...
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-08-26 14:45:00 +02:00
lgotszal
3bd4bca911
Copyright header update
...
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).
Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
Sebastian Luzynski
95ba83c7e1
Fix ocl program creation on multi device contexts
...
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
Related-To: NEO-5734
2021-05-10 12:30:09 +02:00
Krystian Chmielewski
41f3bd00ff
Remove PatchTokens from KernelInfo
...
Use KernelDescriptor instead of patchTokens stored in KernelInfo's
patchInfo.
Removed: SPatchMediaInterfaceDescriptorLoad, SPatchAllocateLocalSurface,
SPatchMediaVFEState(slot 0), SPatchMediaVFEState(slot 1),
SPatchInterfaceDescriptorData, SPatchSamplerStateArray,
SPatchBindingTableState, SPatchDataParameterBuffer,
SPatchDataParameterStream, SPatchThreadPayload,
SPatchKernelAttributesInfo, SPatchAllocateStatelessPrivateSurface,
SPatchAllocateSyncBuffer,
SPatchAllocateStatelessConstantMemorySurfaceWithInitialization,
SPatchAllocateStatelessGlobalMemorySurfaceWithInitialization,
SPatchAllocateSystemThreadSurface.
Related-To: NEO-4729
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2021-03-09 17:09:13 +01:00
Mateusz Hoppe
4191dfdb43
Prepend -s option when -cmc is not used
...
Related-To: NEO-5582
- "-s filename" is added to build options
based on filename returned from debugger
- when "-cmc" is passed as first option, do not
modify user options.
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-03-01 18:17:25 +01:00
Filip Hazubski
65aecc84f1
Add __IMAGE_SUPPORT__ option for compilation
...
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-01-19 16:21:57 +01:00
Mateusz Jablonski
077ae2726e
Correct storing KernelInfos in multi device programs
...
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-01 16:15:37 +01:00
Mateusz Jablonski
2ee1d569c5
Store KernelInfo per root device in Program
...
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-01 11:38:23 +01:00
Maciej Plewka
ded70b803d
Use common compile bindless flag
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-11-27 14:28:55 +01:00
Mateusz Jablonski
33a487e2cc
Create structure for per root device members in Kernel
...
make private surface per root device
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-18 17:36:05 +01:00
Maciej Plewka
28de4068c9
Read bindless offset from patch token
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-11-18 17:04:00 +01:00
Filip Hazubski
0c51499679
Provide -ocl-version option when compiling with ocloc
...
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-11-18 14:27:39 +01:00
Mateusz Jablonski
61d61e8b1c
Remove Program::pDevice
...
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-10 11:25:41 +01:00
Mateusz Jablonski
0aec0bdde4
Store program binary type per device
...
Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-04 15:01:11 +01:00
Mateusz Jablonski
e39af42137
Allow sub devices to reuse build status from root device
...
create DeviceBuildInfo struct for per-device info in program
Related-To: NEO-5001
Change-Id: I4048f3dd34240a4f937cc4a05935cba4f40a1872
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-03 14:44:47 +01:00
Mateusz Jablonski
75d1ebb811
Use all devices when building program
...
remove Program::internalOptions
internal options are calculated separately in compile, link and build methods
Related-To: NEO-5001
Change-Id: I85ea2d64c72edb9b0e3f23244b59b9af20e2d357
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-02 19:37:55 +01:00
Mateusz Jablonski
430cca3f4c
Use all passed devices when linking program
...
Related-To: NEO-5001
Change-Id: I3944375023b9cb3322df83e6e042ba8be2bd762c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-30 10:24:16 +01:00
Jaroslaw Chodor
345e56a151
Zebin improvements
...
* cleaning-up per-thread buffer size calculations
* fixing default slm alignment to 16
* adding scratch space slots
* renaming slm addressing mode
* adding support for zeinfo version
Change-Id: I0450353788b8488a685976d7f1dd26a44360383c
2020-10-29 16:33:21 +01:00
Mateusz Jablonski
20f4786423
Use all passed devices when compiling program
...
Related-To: NEO-5001
Change-Id: I852c6e57fb7c450ee4dae2d5ff59a206397b2390
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-29 16:02:23 +01:00
Mateusz Jablonski
4be05409a3
Handle program's callbacks on API level
...
Related-To: NEO-5001
Change-Id: Ic73601f874a972c9c3fe6cc1a04edd5d7915f16e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-29 11:28:02 +01:00
Mateusz Jablonski
609f97d752
Don't rebuild non built-in program when RebuildPrecompiledKernels is set
...
Related-To: NEO-5224
Change-Id: I8956900473732245961289ac6681d25b4684381e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-28 14:13:44 +01:00
Mateusz Jablonski
62709a6ddc
Store build status per cl device in program
...
Related-To: NEO-5001
Change-Id: I7d9521cb45324d89ec11f39f8b857cf1554340eb
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-27 12:00:42 +01:00
Bartosz Dunajski
1926ef8319
is_simt_thread token support
...
Change-Id: I8cee6ff26229f0f492ba0d1e5e61d6e46e0c2486
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-10-21 14:14:43 +02:00
Mateusz Jablonski
4122554b71
Fix max root device index in Program's ctor
...
Related-To: NEO-5001
Change-Id: If3b86a51df478222f47a30c9254466dea0710ec4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-20 17:10:14 +02:00
Mateusz Jablonski
52feced02b
Correct exposing devices from program created with source
...
Related-To: NEO-5001
Change-Id: I15dd7480ecd8dc5cf2e4347cd06837ea573ecd95
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-20 16:18:30 +02:00
Krystian Chmielewski
9f08a60a20
KernelInfo Refactor
...
Using kernelDescriptor.kernelMetadata.kernelName instead of
kernelInfo.name
Change-Id: I11f5721d8072a3beccb573cec4bea56cf14cf0f9
2020-10-20 13:18:09 +02:00
Mateusz Jablonski
f7dcafc295
Pass ClDeviceVector to Program's ctor
...
Related-To: NEO-5001
Change-Id: Ie0e4395fd3ed9a5df81c7075ef039092a0687b9c
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-19 18:47:11 +02:00
Mateusz Jablonski
b77f9bf8d1
Remove Program::setDevice
...
device should be passed to constructor
Related-To: NEO-5001
Change-Id: If4c64ec405bdd3beaccc7c09644e22fc98a02249
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-12 20:22:45 +02:00
Maciej Plewka
2ebee73e4b
Unify bindless debug flags
...
Change-Id: I6a9313722eed01b935707e93cad532adddcc78af
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-10-09 14:49:50 +02:00
Mateusz Jablonski
fc090f74c6
Store device binary per root device in program
...
Related-To: NEO-5001
Change-Id: I9834f6894625031c734c68ebf210e6042c470ec7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-10-08 19:05:04 +02:00
Filip Hazubski
60430d79ee
Update OpenCL C features reporting to the compiler
...
Pass features also with -cl-ext option.
Change-Id: I1a1c68b655a2108be51c7d57be771591ee0b14e7
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-05 10:27:30 +02:00
Bartosz Dunajski
55bd544402
Lazy evaluate arguments of printDebugStrings(...) function
...
Change-Id: Ie44e109fd9235c5df32fb90b9e6fc6058e558a99
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-25 18:38:58 +02:00
Filip Hazubski
d1e0768cf5
Remove unused code
...
Change-Id: I342f58dc72a6ed5a9b9d9d30d5c43a109da5ff5b
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-09-21 11:42:54 +02:00
Mateusz Jablonski
1f240862ce
Move surface allocations from Program to BuildInfo
...
Related-To: NEO-5001
Change-Id: Icf011698fc166285d049b052d59c709c7419e105
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-09-16 12:01:46 +02:00
Filip Hazubski
d889c599b2
Correct callback API functions
...
Add implementation to clSetProgramReleaseCallback and
clSetContextDestructorCallback functions.
Resolves: NEO-4962, NEO-5051
Change-Id: Iad6fffc663665a3cf16b96aa90065140cf8c5477
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-09-08 14:08:50 +02:00
Kamil Kopryk
145fd87f5d
Revert "Add adjustPlatformCoreFamilyForIgc helper"
...
This reverts commit 8fffdcc111
.
Change-Id: I0415b004ef0a1465bc2658cadc66f21a99302eca
2020-09-08 07:36:26 +02:00
Mateusz Jablonski
9394f5755e
Create structure for per root device build info in program
...
define build log per root device
Related-To: NEO-5001
Change-Id: Id507485e7f2bdd4e0d96948450da49a9f67dd2a8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-26 13:16:30 +02:00
Mateusz Hoppe
856a2f7be7
Add debugData to packedBinary
...
Change-Id: Id6e3fe6b6b2da383f042d66c9638ccec6989ca71
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-25 13:24:14 +02:00
Mateusz Jablonski
45665ae236
Remove dummy constructor for Program
...
Related-To: NEO-5001
Change-Id: I0a99b297a6a910a8a4e8c0bfcc8da2833755e187
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-08-21 19:24:20 +02:00
Kamil Kopryk
8fffdcc111
Add adjustPlatformCoreFamilyForIgc helper
...
Change-Id: Ic372e76c1024ca9e585bef15fab29827d33122f3
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4865
2020-08-13 17:31:13 +02:00
Jaroslaw Chodor
321f649854
Zebin support
...
Change-Id: I1e426ee2c5174fd0a4c51c1644cda467c2b88881
2020-08-07 11:48:41 +02:00
Andrzej Swierczynski
77f50e5444
Always pass device bitfield to AllocationProperties in constructor
...
Related-To: NEO-4722
Change-Id: Ie2475bf92a3189bcb9073bec5bf5af709e597c5d
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-07-13 09:00:10 +02:00
Filip Hazubski
45f0bc56bc
Add options when building the program
...
Report "-ocl-version=300" when OCL 3.0 is enabled.
Report "-cl-feature=" with list of supported features.
Related-To: NEO-4368
Change-Id: I9aee559ed53541a0f0c1a2a004926d9d29a53d94
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-06-18 18:54:50 +02:00
Filip Hazubski
41fef1c71e
Enable Opencl 3.0 support on TGLLP
...
Related-To: NEO-4368
Change-Id: I59e015ee28d29eab4aaf8781ac1ffb3a9cde4d09
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-05-21 14:09:52 +02:00
Mateusz Hoppe
a13c1e642d
Handle debug data when using native binaries
...
- fix for debugger when programs are created from
binaries
Change-Id: I31bbb941c4f4aff577aa5393b3e09e9a97b868ae
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-04-15 17:20:08 +02:00
Filip Hazubski
fe851da327
Rename device directory
...
device directory is renamed to cl_device.
Related-To: NEO-3938
Change-Id: I96794c82632d042da6814550597d805df7bb6436
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-24 14:35:21 +01:00
Lukasz Jobczyk
ab7a846514
Pass only updated spec const values
...
Change-Id: Idc9720fb700e7ce9745872e08038b31836300a38
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-20 13:44:37 +01:00
Filip Hazubski
3b149b69a7
Remove duplicated fields from ClDeviceInfo
...
Related-To: NEO-3938
Change-Id: Ic13d69eaf2ba54794f82d78b058c960f27a6c29d
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-17 08:58:34 +01:00
Filip Hazubski
475d4614a7
Update Program constructor
...
Change-Id: Ic1420d5ffa6e82d0e8ebbc9e65a98805bda3cc6c
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-03-13 21:34:56 +01:00
Lukasz Jobczyk
fe0f259eaa
Pass proper spec const values to IGC
...
Change-Id: Id02f6fca1ce3ab603ac8b539ecb8ae5383276473
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-12 13:42:59 +01:00
Lukasz Jobczyk
a77209f5b7
Receive spec consts from proper program source
...
Change-Id: I1e0ca9d2948190011fc1c75f24bdd8c3bb372daf
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-09 15:12:15 +01:00
Mateusz Jablonski
7cf57e04f9
Move builtins and compiler interface to RootDeviceEnvironment
...
Resolves: NEO-4355
Change-Id: Id1a3365673165d775a60a7e0a3f463e1b8f5a496
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-05 13:22:22 +01:00
Lukasz Jobczyk
ab3ae5fea7
Copy specialization constant value
...
Change-Id: I5bee6ef3e5d48d42194df690860fdd6ef6b90246
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-05 12:51:55 +01:00
Mateusz Jablonski
9dbeeea18f
Clang-format: restore sorting includes
...
Change-Id: I34eb993b562c77f56d8fbd51a02ee266c1f76678
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 10:22:30 +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
Mateusz Jablonski
370424a1e0
Change core inlcudes
...
Change-Id: Iaec903af420f0a92f7d86e484c83300fb9c531ad
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 18:46:50 +01:00
kamdiedrich
d015d3633f
Add absolute path to include
...
Change-Id: Ib0782b4ab8d9a26ec358ecfb57721f4fe8d51b06
2020-02-23 08:47:49 +01:00
kamdiedrich
fa8e720f9e
Reorganization directory structure [1/n]
...
Change-Id: Id1a94577437a4826a32411869f516fec20314ec0
2020-02-22 21:56:09 +01:00