# HG changeset patch # User Doug Simon # Date 1385131659 -3600 # Node ID 5465ba05128022e171acb1c53b63cdbd2ca0c44c # Parent b96536453a74cd0735a4d97befb76e710cbfc362 HSAIL: removed AMD GPU detection until a) clashing AMD CPU and GPU vendor ID issue is resolved and b) HSA port is more complete Contributed-by: Eric Caspole diff -r b96536453a74 -r 5465ba051280 src/os_gpu/linux_ptx/vm/gpu_linux.cpp --- a/src/os_gpu/linux_ptx/vm/gpu_linux.cpp Fri Nov 22 01:50:13 2013 +0100 +++ b/src/os_gpu/linux_ptx/vm/gpu_linux.cpp Fri Nov 22 15:47:39 2013 +0100 @@ -81,13 +81,19 @@ tty->print_cr("Found supported nVidia GPU device vendor : 0x%04x device 0x%04x", vendor, device); } break; - } else if (vendor == amd_vendor_id) { - gpu_device_exists = true; - set_target_il_type(gpu::HSAIL); - if (TraceGPUInteraction) { - tty->print_cr("Found supported AMD GPU device vendor : 0x%04x device 0x%04x", vendor, device); - } - break; + /* + * Remove AMD detection until we decide how to detect real HSA hardware. + * In the current form this check does not work correctly on AMD CPU system with + * Nvidia GPU. + * + * } else if (vendor == amd_vendor_id) { + * gpu_device_exists = true; + * set_target_il_type(gpu::HSAIL); + * if (TraceGPUInteraction) { + * tty->print_cr("Found supported AMD GPU device vendor : 0x%04x device 0x%04x", vendor, device); + * } + * break; + */ } } diff -r b96536453a74 -r 5465ba051280 src/share/vm/runtime/thread.cpp --- a/src/share/vm/runtime/thread.cpp Fri Nov 22 01:50:13 2013 +0100 +++ b/src/share/vm/runtime/thread.cpp Fri Nov 22 15:47:39 2013 +0100 @@ -3378,10 +3378,6 @@ // Initialize the os module before using TLS os::init(); - // Probe for existance of supported GPU and initialize it if one - // exists. - gpu::init(); - // Initialize system properties. Arguments::init_system_properties(); @@ -3395,6 +3391,10 @@ jint parse_result = Arguments::parse(args); if (parse_result != JNI_OK) return parse_result; + // Probe for existance of supported GPU and initialize it if one + // exists. + gpu::init(); + os::init_before_ergo(); jint ergo_result = Arguments::apply_ergo();