You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
setvars diagutil vscode for Tools folder (oneapi-src#872)
* setvars diagutil vscode for Tools folder
Added standard text for setvars, diagnostic utility and vs code for the Tools directory.
* Fix merge conflicts
Some files were branched from develop, which created merge conflicts with master. I removed the conflicting files.
Copy file name to clipboardExpand all lines: Tools/Advisor/matrix_multiply_advisor/README.md
+40-13Lines changed: 40 additions & 13 deletions
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,6 @@
1
1
# `Matrix Multiply` Sample
2
-
A sample containing multiple implementations of matrix multiplication code sample and is implemented using the DPC++ language for CPU and GPU.
2
+
A sample containing multiple implementations of matrix multiplication code
3
+
sample and is implemented using the DPC++ language for CPU and GPU.
3
4
4
5
| Optimized for | Description
5
6
|:--- |:---
@@ -11,42 +12,60 @@ A sample containing multiple implementations of matrix multiplication code sampl
11
12
12
13
## Purpose
13
14
14
-
The Matrix Multiplication sample performs basic matrix multiplication. Three versions are provided that use different features of DPC++.
15
+
The Matrix Multiplication sample performs basic matrix multiplication. Three
16
+
versions are provided that use different features of DPC++.
15
17
16
18
## Key Implementation details
17
19
18
-
The basic DPC++ implementation explained in the code includes device selector, buffer, accessor, kernel, and command groups.
19
-
The include folder is located at %ONEAPI_ROOT%\dev-utilities\latest\include on your development system.
20
+
The basic DPC++ implementation explained in the code includes device selector,
21
+
buffer, accessor, kernel, and command groups. The include folder is located at
22
+
%ONEAPI_ROOT%\dev-utilities\latest\include on your development system.
20
23
21
24
## License
22
25
Code samples are licensed under the MIT license. See
23
26
[License.txt](https://github.com/oneapi-src/oneAPI-samples/blob/master/License.txt) for details.
24
27
25
-
Third party program Licenses can be found here: [third-party-programs.txt](https://github.com/oneapi-src/oneAPI-samples/blob/master/third-party-programs.txt)
Running samples in the Intel DevCloud requires you to specify a compute node. For specific instructions, jump to [Run the Matrix Multiply Advisor sample on the DevCloud](#run-matmul-advisor-on-devcloud)
33
+
Running samples in the Intel DevCloud requires you to specify a compute node.
34
+
For specific instructions, jump to [Run the Matrix Multiply Advisor sample on the DevCloud](#run-matmul-advisor-on-devcloud)
30
35
31
-
###Using Visual Studio Code* (Optional)
36
+
## Using Visual Studio Code* (Optional)
32
37
33
-
You can use Visual Studio Code (VS Code) extensions to set your environment, create launch configurations,
34
-
and browse and download samples.
38
+
You can use Visual Studio Code (VS Code) extensions to set your environment,
39
+
create launch configurations, and browse and download samples.
35
40
36
41
The basic steps to build and run a sample using VS Code include:
37
42
- Download a sample using the extension **Code Sample Browser for Intel oneAPI Toolkits**.
38
43
- Configure the oneAPI environment with the extension **Environment Configurator for Intel oneAPI Toolkits**.
39
44
- Open a Terminal in VS Code (**Terminal>New Terminal**).
40
45
- Run the sample in the VS Code terminal using the instructions below.
46
+
- (Linux only) Debug your GPU application with GDB for Intel® oneAPI toolkits using the **Generate Launch Configurations** extension.
41
47
42
-
To learn more about the extensions and how to configure the oneAPI environment, see
43
-
[Using Visual Studio Code with Intel® oneAPI Toolkits](https://software.intel.com/content/www/us/en/develop/documentation/using-vs-code-with-intel-oneapi/top.html).
48
+
To learn more about the extensions, see
49
+
[Using Visual Studio Code with Intel® oneAPI Toolkits](https://www.intel.com/content/www/us/en/develop/documentation/using-vs-code-with-intel-oneapi/top.html).
44
50
45
-
After learning how to use the extensions for Intel oneAPI Toolkits, return to this readme for instructions on how to build and run a sample.
51
+
After learning how to use the extensions for Intel oneAPI Toolkits, return to
52
+
this readme for instructions on how to build and run a sample.
46
53
47
54
## How to Build
48
55
49
-
This sample contains 3 version of matrix multiplication using DPC++:
56
+
> **Note**: If you have not already done so, set up your CLI
57
+
> environment by sourcing the `setvars` script located in
> For more information on environment variables, see Use the setvars Script for [Linux or macOS](https://www.intel.com/content/www/us/en/develop/documentation/oneapi-programming-guide/top/oneapi-development-environment-setup/use-the-setvars-script-with-linux-or-macos.html), or [Windows](https://www.intel.com/content/www/us/en/develop/documentation/oneapi-programming-guide/top/oneapi-development-environment-setup/use-the-setvars-script-with-windows.html).
67
+
68
+
This sample contains three versions of matrix multiplication using DPC++:
50
69
51
70
multiply1 – basic implementation of matrix multiply using DPC++
52
71
multiply1_1 – basic implementation that replaces the buffer store with a local accessor “acc” to reduce memory traffic
@@ -65,6 +84,14 @@ Edit the line in src/multiply.hpp to select the version of the multiply function
65
84
Clean the program
66
85
make clean
67
86
87
+
If an error occurs, you can get more details by running `make` with
88
+
the `VERBOSE=1` argument:
89
+
``make VERBOSE=1``
90
+
For more comprehensive troubleshooting, use the Diagnostics Utility for
91
+
Intel® oneAPI Toolkits, which provides system checks to find missing
Copy file name to clipboardExpand all lines: Tools/ApplicationDebugger/array-transform/README.md
+35-19Lines changed: 35 additions & 19 deletions
Original file line number
Diff line number
Diff line change
@@ -50,23 +50,45 @@ Code samples are licensed under the MIT license. See
50
50
51
51
Third party program Licenses can be found here: [third-party-programs.txt](https://github.com/oneapi-src/oneAPI-samples/blob/master/third-party-programs.txt)
52
52
53
+
## Using Visual Studio Code* (Optional)
54
+
55
+
You can use Visual Studio Code (VS Code) extensions to set your environment,
56
+
create launch configurations, and browse and download samples.
57
+
58
+
The basic steps to build and run a sample using VS Code include:
59
+
- Download a sample using the extension **Code Sample Browser for Intel oneAPI Toolkits**.
60
+
- Configure the oneAPI environment with the extension **Environment Configurator for Intel oneAPI Toolkits**.
61
+
- Open a Terminal in VS Code (**Terminal>New Terminal**).
62
+
- Run the sample in the VS Code terminal using the instructions below.
63
+
- (Linux only) Debug your GPU application with GDB for Intel® oneAPI toolkits using the **Generate Launch Configurations** extension.
64
+
65
+
To learn more about the extensions, see
66
+
[Using Visual Studio Code with Intel® oneAPI Toolkits](https://www.intel.com/content/www/us/en/develop/documentation/using-vs-code-with-intel-oneapi/top.html).
67
+
68
+
After learning how to use the extensions for Intel oneAPI Toolkits, return to
69
+
this readme for instructions on how to build and run a sample.
70
+
53
71
## Building and Running the `array-transform` Program
54
72
55
-
> Note: if you have not already done so, set up your CLI
56
-
> environment by sourcing the setvars script located in
73
+
> **Note**: If you have not already done so, set up your CLI
74
+
> environment by sourcing the `setvars` script located in
>For more information on environment variables, see Use the setvars Script for [Linux or macOS](https://www.intel.com/content/www/us/en/develop/documentation/oneapi-programming-guide/top/oneapi-development-environment-setup/use-the-setvars-script-with-linux-or-macos.html), or [Windows](https://www.intel.com/content/www/us/en/develop/documentation/oneapi-programming-guide/top/oneapi-development-environment-setup/use-the-setvars-script-with-windows.html).
62
84
63
85
### Setup
64
86
65
87
Preliminary setup steps are needed for the debugger to function.
66
88
Please see the setup instructions in the Get Started Guide based on
You can use Visual Studio Code (VS Code) extensions to set your environment, create launch configurations,
97
-
and browse and download samples.
98
-
99
-
The basic steps to build and run a sample using VS Code include:
100
-
- Download a sample using the extension **Code Sample Browser for Intel® oneAPI Toolkits**.
101
-
- Configure the oneAPI environment with the extension **Environment Configurator for Intel® oneAPI Toolkits**.
102
-
- Open a Terminal in VS Code (**Terminal>New Terminal**).
103
-
- Run the sample in the VS Code terminal using the instructions below.
104
-
105
-
To learn more about the extensions and how to configure the oneAPI environment, see
106
-
[Using Visual Studio Code with Intel® oneAPI Toolkits](https://software.intel.com/content/www/us/en/develop/documentation/using-vs-code-with-intel-oneapi/top.html).
107
-
108
-
After learning how to use the Extension Pack for Intel® oneAPI Toolkits, return to this readme for instructions on how to build and run a sample.
109
116
110
117
111
118
### Auto-Attach
@@ -191,6 +198,15 @@ For instructions about starting and using the debugger, please
191
198
see the
192
199
[Get Started Guide (Linux)](https://software.intel.com/en-us/get-started-with-debugging-dpcpp-linux).
193
200
201
+
202
+
If an error occurs, you can get more details by running `make` with
203
+
the `VERBOSE=1` argument:
204
+
``make VERBOSE=1``
205
+
For more comprehensive troubleshooting, use the Diagnostics Utility for
206
+
Intel® oneAPI Toolkits, which provides system checks to find missing
Copy file name to clipboardExpand all lines: Tools/Benchmarks/STREAM/README.md
+47-17Lines changed: 47 additions & 17 deletions
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
1
# STREAM Sample
2
2
3
-
This package contains a modified version of the [Stream Benchmark](http://www.cs.virginia.edu/stream/) implementation using DPC++ for CPU and GPU.
3
+
This package contains a modified version of the [Stream Benchmark](http://www.cs.virginia.edu/stream/) implementation using DPC++ for CPU and GPU.
4
4
5
5
6
6
| Optimized for | Description
7
7
|:--- |:---
8
8
| OS | Linux* Ubuntu* 20.04
9
-
| Hardware | GEN9, Iris-Xe Max
9
+
| Hardware | GEN9, Iris-Xe Max
10
10
| Software | Intel® oneAPI DPC++ Compiler
11
11
| What you will learn | How to benchmark the memory bandwidth using STREAM.
12
12
| Time to complete | 5 minutes
@@ -15,7 +15,7 @@ This package contains a modified version of the [Stream Benchmark](http://www.cs
15
15
## Purpose
16
16
The STREAM sample performs the memory bandwidth benchmark.
17
17
18
-
## Key Implementation Details
18
+
## Key Implementation Details
19
19
This sample contains a STREAM implementation using DPC++ for CPU and GPU and is a variant of the [STREAM](http://www.cs.virginia.edu/stream/) benchmark code. Please review the license terms regarding publishing benchmarks.”
20
20
21
21
## License
@@ -35,45 +35,66 @@ For the original [Stream License]( http://www.cs.virginia.edu/stream/FTP/Code/LI
35
35
3. You are free to publish results obtained from running this
36
36
program, or from works that you derive from this program,
37
37
with the following limitations:
38
-
38
+
39
39
3a. In order to be referred to as "STREAM benchmark results",
40
40
published results must be in conformance to the STREAM
41
41
Run Rules, (briefly reviewed below) published at
42
42
http://www.cs.virginia.edu/stream/ref.html
43
43
and incorporated herein by reference.
44
44
As the copyright holder, John McCalpin retains the
45
45
right to determine conformity with the Run Rules.
46
-
46
+
47
47
3b. Results based on modified source code or on runs not in
48
48
accordance with the STREAM Run Rules must be clearly
49
49
labelled whenever they are published. Examples of
50
50
proper labelling include:
51
-
"tuned STREAM benchmark results"
51
+
"tuned STREAM benchmark results"
52
52
"based on a variant of the STREAM benchmark code"
53
53
Other comparable, clear and reasonable labelling is
54
54
acceptable.
55
-
55
+
56
56
3c. Submission of results to the STREAM benchmark web site
57
57
is encouraged, but not required.
58
58
4. Use of this program or creation of derived works based on this
59
59
program constitutes acceptance of these licensing restrictions.
60
60
5. Absolutely no warranty is expressed or implied.
61
61
***
62
62
63
-
## Building the `STREAM` Program for CPU and GPU
63
+
## Using Visual Studio Code* (Optional)
64
+
65
+
You can use Visual Studio Code (VS Code) extensions to set your environment,
66
+
create launch configurations, and browse and download samples.
64
67
65
-
### On a Linux* System
68
+
The basic steps to build and run a sample using VS Code include:
69
+
- Download a sample using the extension **Code Sample Browser for Intel oneAPI Toolkits**.
70
+
- Configure the oneAPI environment with the extension **Environment Configurator for Intel oneAPI Toolkits**.
71
+
- Open a Terminal in VS Code (**Terminal>New Terminal**).
72
+
- Run the sample in the VS Code terminal using the instructions below.
73
+
- (Linux only) Debug your GPU application with GDB for Intel® oneAPI toolkits using the **Generate Launch Configurations** extension.
66
74
67
-
Perform the following steps:
75
+
To learn more about the extensions, see
76
+
[Using Visual Studio Code with Intel® oneAPI Toolkits](https://www.intel.com/content/www/us/en/develop/documentation/using-vs-code-with-intel-oneapi/top.html).
68
77
69
-
> Note: If you have not already done so, set up your CLI environment by sourcing
70
-
> the setvars script located in the root of your oneAPI installation.
71
-
>
72
-
> Linux (sudo): `source /opt/intel/oneapi/setvars.sh`
73
-
> Linux (user): `~/intel/oneapi/ setvars.sh`
78
+
After learning how to use the extensions for Intel oneAPI Toolkits, return to
79
+
this readme for instructions on how to build and run a sample.
74
80
75
-
1. Build the program using the following `cmake` commands.
76
-
```
81
+
## Building the `STREAM` Program for CPU and GPU
82
+
83
+
### On a Linux* System
84
+
> **Note**: If you have not already done so, set up your CLI
85
+
> environment by sourcing the `setvars` script located in
>For more information on environment variables, see Use the setvars Script for [Linux or macOS](https://www.intel.com/content/www/us/en/develop/documentation/oneapi-programming-guide/top/oneapi-development-environment-setup/use-the-setvars-script-with-linux-or-macos.html), or [Windows](https://www.intel.com/content/www/us/en/develop/documentation/oneapi-programming-guide/top/oneapi-development-environment-setup/use-the-setvars-script-with-windows.html).
95
+
96
+
1. Build the program using the following `cmake` commands.
97
+
```
77
98
$ mkdir build
78
99
$ cd build
79
100
$ cmake ..
@@ -88,6 +109,15 @@ $ make
88
109
make clean
89
110
```
90
111
112
+
113
+
If an error occurs, you can get more details by running `make` with
114
+
the `VERBOSE=1` argument:
115
+
``make VERBOSE=1``
116
+
For more comprehensive troubleshooting, use the Diagnostics Utility for
117
+
Intel® oneAPI Toolkits, which provides system checks to find missing
Copy file name to clipboardExpand all lines: Tools/GPU-Occupancy-Calculator/README.md
+19-9Lines changed: 19 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -2,21 +2,31 @@
2
2
3
3
## Purpose
4
4
5
-
Intel GPU Occupancy Calculator is HTML Web Application to compute GPU Occupancy for GPU/HPC application development.
5
+
Intel GPU Occupancy Calculator is HTML Web Application to compute GPU Occupancy
6
+
for GPU/HPC application development.
6
7
7
8
## Tool Details
8
9
9
-
* Allows user to pick a GPU SKU, input Global Size of HPC application, Work-Group(WG) size, Sub-Group size, Shared Local Memory(SLM) size and barrier usage.
10
-
* Computes Sub-Slice/Dual Sub-Slice (SS/DSS) Theoretical Occupancy based on the inputs.
11
-
* Generates charts for Impact of varying Work-Group size and Impact of varying Shared Local Memory size.
12
-
* Generates a list of all valid Work-Group sizes that can be used and corresponding Occupancy.
13
-
* Generates a list of optimal configuration values for WG, SG and SLM limit that will get 100% Occupancy.
10
+
* Allows user to pick a GPU SKU, input Global Size of HPC application,
11
+
Work-Group(WG) size, Sub-Group size, Shared Local Memory(SLM) size and barrier
12
+
usage.
13
+
* Computes Sub-Slice/Dual Sub-Slice (SS/DSS) Theoretical Occupancy based
14
+
on the inputs.
15
+
* Generates charts for Impact of varying Work-Group size and
16
+
Impact of varying Shared Local Memory size.
17
+
* Generates a list of all valid
18
+
Work-Group sizes that can be used and corresponding Occupancy.
19
+
* Generates a list of optimal configuration values for WG, SG and SLM limit that
20
+
will get 100% Occupancy.
14
21
15
22
## Usage
16
23
* Open Page: [oneapi-src.github.io/oneAPI-samples/Tools/GPU-Occupancy-Calculator/](https://oneapi-src.github.io/oneAPI-samples/Tools/GPU-Occupancy-Calculator/)
17
-
* Select a GPU from the dropdown and change "EU Count" if necessary OR select the option to enter PCI ID for GPU.
18
-
* The tool will load some default values for Global Size, WG size, SG size, SLM size and will compute Occupancy and generate graphs.
19
-
* Change the values of GPU target, Global size, WG size, SG size, SLM size or Barrier usage based on your HPC application to calculate Occupancy and tune application.
24
+
* Select a GPU from the dropdown and change "EU Count" if necessary OR select
25
+
the option to enter PCI ID for GPU.
26
+
* The tool will load some default values for Global Size, WG size, SG size,
27
+
SLM size and will compute Occupancy and generate graphs.
28
+
* Change the values of GPU target, Global size, WG size, SG size, SLM size or
29
+
Barrier usage based on your HPC application to calculate Occupancy and tune application.
0 commit comments