Skip to content

Commit

Permalink
Remove all remaining references to exercise numbers (#380)
Browse files Browse the repository at this point in the history
  • Loading branch information
rafbiels authored Dec 13, 2024
1 parent 4629ba8 commit bb0c8c8
Show file tree
Hide file tree
Showing 50 changed files with 57 additions and 69 deletions.
1 change: 0 additions & 1 deletion Code_Exercises/Advanced_Data_Flow/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_12_temporary_data
add_sycl_executable(Advanced_Data_Flow source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Advanced_Data_Flow solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Advanced_Data_Flow/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 12: Temporary Data
## Temporary Data
---

In this exercise you will learn how to use temporary data and avoid unnecessary
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Asynchronous_Execution/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_09_synchronization
add_sycl_executable(Asynchronous_Execution source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Asynchronous_Execution solution)
Expand Down
10 changes: 6 additions & 4 deletions Code_Exercises/Asynchronous_Execution/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 9: Asynchronous_Execution
## Asynchronous_Execution
---

In this exercise you will learn how to use different techniques for
Expand All @@ -11,8 +11,9 @@ synchronizing commands and data.
### 1.) Waiting on events

Take a look at the vector add applications using the buffer/accessor model in
exercise 6 and the USM model in exercise 8, and familiarize yourself with how
they call `wait` on returned `event`s to synchronize the completion of the work.
the "Data Parallelism" exercise and the USM model in the "Using USM" exercise,
and familiarize yourself with how they call `wait` on returned `event`s to
synchronize the completion of the work.

### 2.) Waiting on queues

Expand All @@ -22,7 +23,8 @@ synchronize instead.
### 3.) Buffer destruction

Take a look at the vector add application using the buffer/accessor mode in
exercise 6 and how it synchronizes on the destruction of the `buffer`s.
the "Data Parallelism" exercise and how it synchronizes on the destruction of
the `buffer`s.

### 4.) Copy back

Expand Down
4 changes: 2 additions & 2 deletions Code_Exercises/Asynchronous_Execution/source.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,12 @@
#include "../helpers.hpp"

void test_usm() {
// Use your code from Exercise 3 to start
// Use your code from the "Data Parallelism" exercise to start
SYCLACADEMY_ASSERT(true);
}

void test_buffer() {
// Use your code from Exercise 3 to start
// Use your code from the "Data Parallelism" exercise to start
SYCLACADEMY_ASSERT(true);
}

Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Coalesced_Global_Memory/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_16_coalesced_global_memory
add_sycl_executable(Coalesced_Global_Memory source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Coalesced_Global_Memory solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Coalesced_Global_Memory/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 16: Coalesced Global Memory
## Coalesced Global Memory
---

In this exercise you will learn how to apply row-major and column-major when
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Coalesced_Global_Memory/source.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@
#include "../helpers.hpp"

int main() {
// Use your code from Exercise 15 to start
// Use your code from the "Image Convolution" exercise to start
SYCLACADEMY_ASSERT(true);
}
1 change: 0 additions & 1 deletion Code_Exercises/Data_Parallelism/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_06_vector_add
add_sycl_executable(Data_Parallelism source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Data_Parallelism solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Data_Parallelism/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 6: Vector Add
## Vector Add

---

Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Data_and_Dependencies/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_10_managing_dependencies
add_sycl_executable(Data_and_Dependencies source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Data_and_Dependencies solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Data_and_Dependencies/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 10: Managing Dependencies
## Managing Dependencies
---

In this exercise you will learn how to create a data dependency data flow graph
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Device_Discovery/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_05_device_selection
add_sycl_executable(Device_Discovery source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Device_Discovery solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Device_Discovery/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 5: Device Selection
## Device Selection

---

Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Enqueueing_a_Kernel/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_02_hello_world
add_sycl_executable(Enqueueing_a_Kernel source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Enqueueing_a_Kernel solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Enqueueing_a_Kernel/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 2: Hello World
## Hello World

---

Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Functors/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 22: Functors
## Functors
---

In this exercise you will learn how to use `functors` instead of lambda
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Handling_Errors/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_04_handling_errors
add_sycl_executable(Handling_Errors source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Handling_Errors solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Handling_Errors/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 4: Handling Errors
## Handling Errors

---

Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Image_Convolution/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,4 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_15_image_convolution
add_sycl_executable(Image_Convolution reference)
2 changes: 1 addition & 1 deletion Code_Exercises/Image_Convolution/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 15: Image Convolution
## Image Convolution
---

In this exercise there is no task, simply familiarize yourself with the image
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/In_Order_Queue/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_11_in_order_queue
add_sycl_executable(In_Order_Queue source_vector_add)
add_sycl_executable(In_Order_Queue source_queue_benchmarking)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
Expand Down
21 changes: 12 additions & 9 deletions Code_Exercises/In_Order_Queue/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 11: In Order Queue
## In Order Queue
---

In this exercise you will learn how to create a fixed data flow using an
Expand All @@ -20,21 +20,24 @@ Performance is poor as kernels cannot execute concurrently. Your goal is to impr

### 1.) In order queue with buffer/accessor model

Using the application from exercise 10 which uses the buffer/accessor model
convert the `queue` to in-order using the `property::queue::in_order` property,
converting the data flow graph to a fixed execution order.
Using the application from the "Data and Dependencies" exercise which uses the
buffer/accessor model convert the `queue` to in-order using the
`property::queue::in_order` property, converting the data flow graph to a fixed
execution order.

Feel free to have the kernel functions execute in any order you like providing
the necessary dependencies described in exercise 10 are still met.
the necessary dependencies described in the "Data and Dependencies" exercise are
still met.

### 2.) In order queue with USM model

Now do the same using the application from exercise 10 which uses the USM model,
again converting the `queue` to in-order, converting the data flow graph to a
fixed execution order.
Now do the same using the application from the "Data and Dependencies" exercise
which uses the USM model, again converting the `queue` to in-order, converting
the data flow graph to a fixed execution order.

Again feel free to have the kernel functions execute in any order you like
providing the necessary dependencies described in exercise 10 are still met.
providing the necessary dependencies described in the "Data and Dependencies"
exercise are still met.

Note that in the USM model when using an in-order `queue` it is no longer
necessary to chain commands using `event`s.
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/In_Order_Queue/source_vector_add.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,6 @@
#include "../helpers.hpp"

int main() {
// Use the Exercise 10 solution to start
// Use the "Data and Dependencies" exercise solution to start
SYCLACADEMY_ASSERT(true);
}
1 change: 0 additions & 1 deletion Code_Exercises/Introduction_to_USM/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_07_usm_selector
add_sycl_executable(Introduction_to_USM source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Introduction_to_USM solution)
Expand Down
4 changes: 2 additions & 2 deletions Code_Exercises/Introduction_to_USM/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 7: USM Selector
## USM Selector
---

In this exercise you will learn how to find a suitable device for using the USM data management model.
Expand All @@ -9,7 +9,7 @@ In this exercise you will learn how to find a suitable device for using the USM

### 1.) Create a device selector

Create a custom device selector as you did in exercise 5.
Create a custom device selector as you did in the "Device Discovery" exercise.

### 2.) Check for USM support

Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Local_Memory_Tiling/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_18_local_memory_tiling
add_sycl_executable(Local_Memory_Tiling source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Local_Memory_Tiling solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Local_Memory_Tiling/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 18: Local Memory Tiling
## Local Memory Tiling
---

In this exercise you will learn how to cache global memory into local memory in
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Local_Memory_Tiling/source.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@
#include "../helpers.hpp"

int main() {
// Use your code from Exercise 17 to start
// Use your code from the "Vectors" exercise to start
SYCLACADEMY_ASSERT(true);
}
1 change: 0 additions & 1 deletion Code_Exercises/Managing_Data/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_03_scalar_add
add_sycl_executable(Managing_Data source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Managing_Data solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/Managing_Data/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 3: Scalar Add
## Scalar Add

---

Expand Down
4 changes: 3 additions & 1 deletion Code_Exercises/Matrix_Transpose/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
## Exercise: Local Memory Matrix Transpose
# SYCL Academy

## Local Memory Matrix Transpose
---

This exercise uses GPU specific features in order to gain good GPU performance.
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/More_SYCL_Features/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_06_vector_add
add_sycl_executable(More_SYCL_Features reduce_naive)
add_sycl_executable(More_SYCL_Features reduce_atomic)
add_sycl_executable(More_SYCL_Features reduce_group_algorithms)
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/Multiple_Devices/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_13_load_balancing
add_sycl_executable(Multiple_Devices source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(Multiple_Devices solution)
Expand Down
9 changes: 5 additions & 4 deletions Code_Exercises/Multiple_Devices/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 13: Load Balancing
## Load Balancing

---

Expand All @@ -19,9 +19,10 @@ Then create a `queue` for each of the two devices.

### 3. ) Split a task across the two queues

Using either the application from exercise 6 using the buffer/accessor model or
the application from exercise 8 with the USM model create an application where
the work is distributed across two devices using the two `queue`s you created.
Using either the application from the "Data Parallelism" exercise with the
buffer/accessor model or the application from the "Using USM" exercise with the
USM model, create an application where the work is distributed across two
devices using the two `queue`s you created.

Remember to create separate `buffer`s for the separate parts of the data being
computed.
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/ND_Range_Kernel/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_14_nd_range_kernel
add_sycl_executable(ND_Range_Kernel source)
if(SYCL_ACADEMY_ENABLE_SOLUTIONS)
add_sycl_executable(ND_Range_Kernel solution)
Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/ND_Range_Kernel/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 14: ND Range Kernel
## ND Range Kernel
---

In this exercise you will learn how to enqueue ND range kernel functions.
Expand Down
1 change: 0 additions & 1 deletion Code_Exercises/OneMKL_gemm/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
see <http://creativecommons.org/licenses/by-sa/4.0/>.
]]

# Exercise exercise_11_onemkl_dgemm
add_sycl_executable(OneMKL_gemm source_onemkl_usm_gemm)
add_sycl_executable(OneMKL_gemm source_onemkl_buffer_gemm)

Expand Down
2 changes: 1 addition & 1 deletion Code_Exercises/OneMKL_gemm/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SYCL Academy

## Exercise 11: Use of oneMKL library
## Use of oneMKL library
---

In this exercise you will learn how to make use of APIs from oneMKL Interfaces library.
Expand Down
Loading

0 comments on commit bb0c8c8

Please sign in to comment.