AMD OpenCL driver: 1) detects Intel CPU 2) lists same type of GPU with different OpenCL version -


my workstation configuration:

  • intel(r) xeon(r) cpu e5-2609 v2 @ 2.50ghz (x2)
  • amd firepro w9100 (x2)

operating system:

  • windows server 2012 r2 standard

i use lwjgl's opencl demo (link) list platforms , devices.

problem 1)

after installing amd drivers on workstation amd accelerated parallel processing platform list intel(r) xeon(r) cpu e5-2609 v2 @ 2.50ghz device. (3rd device listed amd platform)

i tested same code both amd , intel opencl driver , intel's own implementation faster it's own hardware. (no surprise there)

anyway don't want intel device listen under amd platform.

problem 2)

my 2 identical amd firepro w9100 (device 1 , 2 under amd platform) listed different level of opencl support.

what cause problem, , more importantly how can make 2nd card use 2.0 opencl driver?

opencl demo results:

new platform: [0x7ffe51b57b60]     cl_platform_profile = full_profile     cl_platform_version = opencl 2.0 amd-app (1642.5)     cl_platform_name = amd accelerated parallel processing     cl_platform_vendor = advanced micro devices, inc.     cl_platform_extensions = cl_khr_icd cl_khr_d3d10_sharing cl_khr_d3d11_sharing cl_khr_dx9_media_sharing cl_amd_event_callback cl_amd_offline_devices      cl_platform_icd_suffix_khr = amd       ** new device: [0x1087bd0]     opencl 2.0 - extensions: cl_amd_device_attribute_query cl_amd_fp64 cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_amd_printf cl_amd_vec3 cl_ext_atomic_counters_32 cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_fp64 cl_khr_gl_event cl_khr_gl_sharing cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_image2d_from_buffer cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir      cl_device_type = 4     cl_device_vendor_id = 4098     cl_device_max_compute_units = 44     cl_device_max_work_item_dimensions = 3     cl_device_max_work_group_size = 256     cl_device_max_clock_frequency = 930     cl_device_address_bits = 64     cl_device_available = true     cl_device_compiler_available = true     cl_device_name = hawaii     cl_device_vendor = advanced micro devices, inc.     cl_driver_version = 1642.5 (vm)     cl_device_profile = full_profile     cl_device_version = opencl 2.0 amd-app (1642.5)     cl_device_extensions = cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_ext_atomic_counters_32 cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_d3d10_sharing cl_khr_d3d11_sharing cl_khr_dx9_media_sharing cl_khr_image2d_from_buffer cl_khr_spir cl_khr_subgroups cl_khr_gl_event cl_khr_depth_images      cl_device_opencl_c_version = opencl c 2.0           sub buffer destructed: 17348816         buffer destructed (2): 16864864         buffer destructed (1): 16864864      ** new device: [0x10851e0]     opencl 1.2 - extensions: cl_amd_device_attribute_query cl_amd_fp64 cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_amd_printf cl_amd_vec3 cl_ext_atomic_counters_32 cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp64 cl_khr_gl_event cl_khr_gl_sharing cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_image2d_from_buffer cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir      cl_device_type = 4     cl_device_vendor_id = 4098     cl_device_max_compute_units = 44     cl_device_max_work_item_dimensions = 3     cl_device_max_work_group_size = 256     cl_device_max_clock_frequency = 930     cl_device_address_bits = 64     cl_device_available = true     cl_device_compiler_available = true     cl_device_name = hawaii     cl_device_vendor = advanced micro devices, inc.     cl_driver_version = 1642.5 (vm)     cl_device_profile = full_profile     cl_device_version = opencl 1.2 amd-app (1642.5)     cl_device_extensions = cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_ext_atomic_counters_32 cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_d3d10_sharing cl_khr_d3d11_sharing cl_khr_dx9_media_sharing cl_khr_image2d_from_buffer cl_khr_spir cl_khr_gl_event      cl_device_opencl_c_version = opencl c 1.2           sub buffer destructed: 17348816         buffer destructed (2): 16864864         buffer destructed (1): 16864864      ** new device: [0x5ddfe790]     opencl 1.2 - extensions: cl_amd_device_attribute_query cl_amd_fp64 cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_amd_printf cl_amd_vec3 cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp64 cl_khr_gl_event cl_khr_gl_sharing cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir      cl_device_type = 2     cl_device_vendor_id = 4098     cl_device_max_compute_units = 8     cl_device_max_work_item_dimensions = 3     cl_device_max_work_group_size = 1024     cl_device_max_clock_frequency = 2500     cl_device_address_bits = 64     cl_device_available = true     cl_device_compiler_available = true     cl_device_name =       intel(r) xeon(r) cpu e5-2609 v2 @ 2.50ghz     cl_device_vendor = genuineintel     cl_driver_version = 1642.5 (sse2,avx)     cl_device_profile = full_profile     cl_device_version = opencl 1.2 amd-app (1642.5)     cl_device_extensions = cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_ext_device_fission cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_d3d10_sharing cl_khr_spir cl_khr_gl_event      cl_device_opencl_c_version = opencl c 1.2          -trying exec native kernel-         kernel exec argument: 1337, should 1337         event callback status: cl_complete          empty native kernel avg exec time: 28.8072us          sub buffer destructed: 17348816         buffer destructed (2): 16864864         buffer destructed (1): 16864864  ------------------------- new platform: [0x5db27010]     cl_platform_profile = full_profile     cl_platform_version = opencl 1.2      cl_platform_name = intel(r) opencl     cl_platform_vendor = intel(r) corporation     cl_platform_extensions = cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_3d_image_writes cl_intel_exec_by_local_thread cl_khr_spir cl_khr_fp64     cl_platform_icd_suffix_khr = intel       ** new device: [0x5db1e8f0]     opencl 1.2 - extensions: cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir      cl_device_type = 2     cl_device_vendor_id = 32902     cl_device_max_compute_units = 8     cl_device_max_work_item_dimensions = 3     cl_device_max_work_group_size = 8192     cl_device_max_clock_frequency = 2500     cl_device_address_bits = 64     cl_device_available = true     cl_device_compiler_available = true     cl_device_name =       intel(r) xeon(r) cpu e5-2609 v2 @ 2.50ghz     cl_device_vendor = intel(r) corporation     cl_driver_version = 5.0.0.57     cl_device_profile = full_profile     cl_device_version = opencl 1.2 (build 57)     cl_device_extensions = cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_3d_image_writes cl_intel_exec_by_local_thread cl_khr_spir cl_khr_fp64      cl_device_opencl_c_version = opencl c 1.2          -trying exec native kernel-         kernel exec argument: 1337, should 1337         event callback status: cl_complete          empty native kernel avg exec time: 9.5031us          sub buffer destructed: 1574991568         buffer destructed (2): 1563032880         buffer destructed (1): 1563032880 

1) in regkeys (under local_machine/software/krono/vendors or software/amd). these things controlled regkeys. i'm not sure amd uses though. 2) make sure both cards have same driver version. otherwise amd driver allows 1 2.0 device on machine due potential coherence issues between devices. 2.0 devices supposed have svm support cores, i'm not sure happens coherence across devices.


Comments

Popular posts from this blog

Process 'command 'F:\android-sdk\build-tools\21.1.2\aapt.exe'' finished with non-zero exit value 1 -

apache - setting document root in antoher partition on ubuntu -

java - Updating to mongo 3.0 -