Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.4)
cmake_minimum_required (VERSION 3.5)
set (CMAKE_CXX_COMPILER "icpx")
project (matrix_mul LANGUAGES CXX)

Expand Down
300 changes: 204 additions & 96 deletions Tools/ApplicationDebugger/guided_matrix_mult_BadBuffers/README.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,10 @@ int main() {
q.memcpy(&c_back[0], dev_c, M*P * sizeof(float));

q.wait();

sycl::free(dev_a, q);
sycl::free(dev_b, q);
sycl::free(dev_c, q);
}

int result;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,10 @@ int main() {
q.memcpy(&c_back[0], dev_c, M*P * sizeof(float));

q.wait();

sycl::free(dev_a, q);
sycl::free(dev_b, q);
sycl::free(dev_c, q);
}

int result;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.4)
cmake_minimum_required (VERSION 3.5)
set (CMAKE_CXX_COMPILER "icpx")
project (matrix_mul LANGUAGES CXX)

Expand Down
82 changes: 41 additions & 41 deletions Tools/ApplicationDebugger/guided_matrix_mult_Exceptions/README.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,10 @@ int main() {
q.memcpy(&c_back[0], dev_c, M*P * sizeof(float));

q.wait();

sycl::free(dev_a, q);
sycl::free(dev_b, q);
sycl::free(dev_c, q);
}

int result;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,10 @@ int main() {
q.memcpy(&c_back[0], dev_c, M*P * sizeof(float));

q.wait();

sycl::free(dev_a, q);
sycl::free(dev_b, q);
sycl::free(dev_c, q);
}

int result;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,10 @@ int main() {
q.memcpy(&c_back[0], dev_c, M*P * sizeof(float));

q.wait();

sycl::free(dev_a, q);
sycl::free(dev_b, q);
sycl::free(dev_c, q);
}

int result;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.4)
cmake_minimum_required (VERSION 3.5)
set (CMAKE_CXX_COMPILER "icpx")
project (matrix_mul LANGUAGES CXX)

Expand Down
460 changes: 357 additions & 103 deletions Tools/ApplicationDebugger/guided_matrix_mult_InvalidContexts/README.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,23 @@ int main() {
// Initialize the device queue with the default selector. The device queue is
// used to enqueue kernels. It encapsulates all states needed for execution.
{
queue q(default_selector_v);
property_list propList = property_list{property::queue::enable_profiling()};

std::vector<sycl::device> devices = sycl::device::get_devices();
cout << "Devices:" << std::endl;

Comment on lines +68 to +70
for (size_t index = 0; index < devices.size(); index++){
std::string device_name = devices[index].get_info<sycl::info::device::name>();
std::string device_driver = devices[index].get_info<sycl::info::device::driver_version>();
std::string sycl_version = devices[index].get_info<sycl::info::device::version>();
std::string vendor = devices[index].get_info<sycl::info::device::vendor>();
std::string backend = devices[index].get_info<sycl::info::device::backend_version>();
std::cout << " [" << index << "] " << device_name << ", " << sycl_version << " [" << device_driver
<< "] " << backend << ", " << vendor << std::endl;
}

// Be very specific about the device to use.
queue q(devices[0]);

cout << "Computing" << "\n";
cout << "Device: " << q.get_device().get_info<info::device::name>() << "\n";
Expand All @@ -76,7 +92,11 @@ int main() {
// Create 2D buffers for matrices, buffer c is bound with host memory c_back
float * dev_a = sycl::malloc_device<float>(M*N, q);
float * dev_b = sycl::malloc_device<float>(N*P, q);
device selected_device = device(default_selector_v);
#ifdef BAD_FREE
device selected_device = devices[0];
#else
device selected_device = devices[1];
#endif
context devicecontext(selected_device);
queue q2(devicecontext, selected_device);
float * dev_c = sycl::malloc_device<float>(M*P, q2);
Expand Down Expand Up @@ -131,6 +151,13 @@ int main() {
q.memcpy(&c_back[0], dev_c, M*P * sizeof(float));

q.wait();
sycl::free(dev_a, q);
sycl::free(dev_b, q);
#ifdef BAD_FREE
sycl::free(dev_c, q);
#else
sycl::free(dev_c, q2);
#endif
}

int result;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,19 @@ int main() {
{
property_list propList = property_list{property::queue::enable_profiling()};

std::vector<sycl::device> devices = sycl::device::get_devices();
cout << "Devices:" << std::endl;

for (size_t index = 0; index < devices.size(); index++){
std::string device_name = devices[index].get_info<sycl::info::device::name>();
std::string device_driver = devices[index].get_info<sycl::info::device::driver_version>();
std::string sycl_version = devices[index].get_info<sycl::info::device::version>();
std::string vendor = devices[index].get_info<sycl::info::device::vendor>();
std::string backend = devices[index].get_info<sycl::info::device::backend_version>();
std::cout << " [" << index << "] " << device_name << ", " << sycl_version << " [" << device_driver
<< "] " << backend << ", " << vendor << std::endl;
}

queue q(default_selector_v);

cout << "Computing" << "\n";
Expand Down Expand Up @@ -130,6 +143,10 @@ int main() {
q.memcpy(&c_back[0], dev_c, M*P * sizeof(float));

q.wait();

sycl::free(dev_a, q);
sycl::free(dev_b, q);
sycl::free(dev_c, q);
}

int result;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.4)
cmake_minimum_required (VERSION 3.5)
set (CMAKE_CXX_COMPILER "icpx")
project (matrix_mul LANGUAGES CXX)

Expand Down
Loading