diff options
author | Wade Walker <[email protected]> | 2014-03-08 16:17:36 -0600 |
---|---|---|
committer | Wade Walker <[email protected]> | 2014-03-08 16:17:36 -0600 |
commit | 7a7f87a1fc7419f758ba9b134764ae544fd6d566 (patch) | |
tree | b640a9e29883b46444d6f01334f8e8cacf1a8431 /src | |
parent | 7ab26044167c84fc6386cc179e8a8736d8978c91 (diff) |
Fix crashes due to AMD driver bugs.
programBinariesTest() failure was due to AMD drivers crashing
in clCreateKernelsInProgram() when the program is not built yet,
instead of returning error code CL_INVALID_PROGRAM_EXECUTABLE as they
should.
lowLevelVectorAddTest() failure was apparently due to the AMD drivers
writing past the end of a direct byte buffer in such a way that it made
System.gc() crash when called during teardown (this crash didn't even
dump stack). Making the buffer larger solved the problem.
Diffstat (limited to 'src')
-rw-r--r-- | src/com/jogamp/opencl/CLPlatform.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/com/jogamp/opencl/CLPlatform.java b/src/com/jogamp/opencl/CLPlatform.java index b7b7389c..95e02333 100644 --- a/src/com/jogamp/opencl/CLPlatform.java +++ b/src/com/jogamp/opencl/CLPlatform.java @@ -451,6 +451,12 @@ public class CLPlatform { } /** + * @return true if the vendor is AMD. + */ + public boolean isVendorAMD() { + return getVendor().contains("Advanced Micro Devices"); + } + /** * Returns the ICD suffix. */ @CLProperty("CL_PLATFORM_ICD_SUFFIX_KHR") |