
Name : AMD Accelerated Parallel Processing The results of querying for all devices on all platforms are: Platform #1ĭevice #1 : Intel(R) Core(TM)2 Duo CPU E8500 3.16GHz The problem I’m having is that I can’t find any way of telling if two devices on different platforms are in-fact the same device.įor example, I have a system that has 3 available platforms (Intel, Nvidia and AMD). Platform Vendor: Advanced Micro Devices, Inc.I would like to be able to automatically use all available devices on any given system. Platform Name: AMD Accelerated Parallel Processing Platform Version: OpenCL 2.1 AMD-APP (2766.5) So please do check running on at least Vega series. I do not observer the same behavior on my other machine with HD6000 series on Crimson driver, though. The problem with this bug is that older drivers (Adrenalin 18.5.2 & 18.9.1) I tried did not have this strange behavior. I just double-checked again - still no luck even after the corrected read buffer size I have attached a reproducible CMake project here for your quick reference I don't see this exact kernel causing an issue with Intel/Nvidia/Qualcomm OpenCL driver compilers. I can repro the bug on AMD RX500/Vega series. However with other types such as int or float this kernel runs fine. When the input array is of type `char`, the kernel will break out of the loop prematurely. If any element in the array `buf0` is greater than the next element, it breaks out of the loop and alters the output value, which the host side checks against.

The kernel checks if input array `buf0` is monotonically increasing.

_kernel void serial_adjacent_find ( const uint size, _global uint * output, _global char * buf0 ) Found a weird behavior in AMD's OpenCL compiler.
