Commit Graph

52 Commits

Author SHA1 Message Date
Compute-Runtime-Validation
64d3f95410 Revert "Allow for zebin rebuild when IR is present"
This reverts commit 2ae3f3e521.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-04-06 23:17:22 +02:00
Krystian Chmielewski
2ae3f3e521 Allow for zebin rebuild when IR is present
Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
2022-04-05 10:25:06 +02:00
Kacper Nowak
b62675290f Refactor source level debugger notification in OCL. [2/2]
Refactor source level debugger notification about debug data in OCL
(build/link path).
- Share common code
- Remove unnecessary function(s)
- Zebin-related ULTs refactor

Related-To: NEO-6644
Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-02-17 21:40:05 +01:00
Compute-Runtime-Validation
c5c3e865f0 Revert "Fail build program on PVC with stateful accesses"
This reverts commit 9466113cef.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-02-14 18:55:14 +01:00
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
Kacper Nowak
741ee49c9a Refactor source level debugger notification in OCL. [1/n]
Refactor source level debugger notification in OCL path - in build()
cl_program method. It fixes confusing debug data creation (mixed
legacy/zebin path) and thus incorrect kernel notification about debug
data.

Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
Related-To: NEO-6644
2022-02-10 17:47:05 +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
Kacper Nowak
fc224202d6 Create debug zebin in OCL
This commit adds debug zebin creation in OCL.
- Added returning debug zebin in build/linking paths in OCL if
corresponding device binary format was detected.
- Refactored getZebinSegments() method - added common ctor for both
L0/OCL paths

Signed-off-by: Kacper Nowak <kacper.nowak@intel.com>
2022-01-17 14:27:23 +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
Mateusz Hoppe
b11d7cd7b0 Add debug key for compiler internal options injection
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-11-23 15:41:11 +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
b1df167632 Move enable_product.inl to shared
extract api agnostic validators to shared
remove not needed opencl includes from neo shared


Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-12 22:02:16 +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
Artur Harasimiuk
a63b9b1273 move common files to shared/
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-27 11:10:20 +02:00
Maciej Plewka
b663fe775c Process debug data for gtpin part 2
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-06-16 11:45:07 +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
Mateusz Hoppe
ffc310858a Add DebugVariable to control opt-disable when debugger is used
Resolves: NEO-5760

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-04-19 16:41:14 +02: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
c83087ea72 Correct generating extensions list for compiler in Program
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-12-03 18:58:19 +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
Filip Hazubski
59b74a8ea3 Do not provide -cl-feature option to the compiler
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-11-17 18:17:34 +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
21aa8388bc Correct program binary type when building program
Related-To: NEO-5001
Change-Id: Ib2915e85ab5dfaf6de146710709c7cd062c88b39
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-11-03 10:30:50 +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
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
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
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
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
Jaroslaw Chodor
63fe52b6e0 Reuse old build options only for native binary
Change-Id: I484616a22c85f8a321e51002b7f9d0c990ee7b5a
2020-10-05 21:06:34 +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
Jaroslaw Chodor
746cf7fd33 Reuse old build options if new ones are NULL
Change-Id: I435e7ec8554b0429dcf4f6f8d9d4fd80e70b68c6
2020-10-04 16:54:02 +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
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
chmielew
3e8f05d702 remove kernelHeader from HeapInfo
Change-Id: Ic2d441df15a7f75b5f3ef41d484969148e59715f
2020-05-28 03:59:49 -07: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
38f53cab8a Add type alias for spec const values map
Change-Id: I77c006f3b3953b108091914fec1f7ba040c7590b
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-23 12:11:44 +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
Mateusz Hoppe
97d9d35ab7 Move SourceLevelDebugger to shared
Change-Id: I8c8e1c69414833908519ceea8fc30362222f01c9
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-03-09 12:33:43 +01:00
Mateusz Hoppe
67c39d2c52 Refactor SourceLevelDebugger
Change-Id: I5d34b43e822ffa5bdbcf0bef7d4d15baf0534252
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-03-09 09:18:50 +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
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