From a23cd8d13a27fe7cea81cc8960e4b36bef023515 Mon Sep 17 00:00:00 2001 From: Cedric Nugteren Date: Sat, 16 Sep 2017 21:26:38 +0200 Subject: [PATCH] Updated README with proper AMD device names; fixed device look-up for names of length 50+ --- README.md | 22 +++++++++++----------- src/database/database.cpp | 6 ++++-- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index b647f4da..e8db38d2 100644 --- a/README.md +++ b/README.md @@ -109,7 +109,7 @@ For all of CLBlast's APIs, it is possible to optionally set an OS environmental Using the tuners (optional) ------------- -The CLBlast library is already tuned for the most commonly used OpenCL devices and it's gradually being extended to other devices as well. For unseen devices CLBlast will make use of common-best tuning values for similar devices (e.g. AMD GPUs), so performance might still be decent. The current release of CLBlast is tuned for devices with the following `CL_DEVICE_NAME` values: +The CLBlast library is already tuned for the most commonly used OpenCL devices and it's gradually being extended to other devices as well. For unseen devices CLBlast will make use of common-best tuning values for similar architectures (e.g. AMD Fiji) or in general similar devices (e.g. AMD GPUs), so performance might still be decent. The current release of CLBlast is tuned for the following devices: * NVIDIA GPUs: - GRID K520 @@ -129,16 +129,15 @@ The CLBlast library is already tuned for the most commonly used OpenCL devices a - Tesla K20m - Tesla K40m * AMD GPUs: - - AMD Radeon R9 M370X Compute Engine - - ATI Radeon HD 6750M - - Ellesmere - - Fiji - - Hawaii - - Oland - - Pitcairn - - Tahiti - - Tonga - - Turks + - Radeon HD 6750M + - Radeon HD 6770M + - Radeon HD 7970 + - Radeon R9 270X + - Radeon R9 290X + - Radeon R9 M370X + - Radeon R9 380 + - Radeon RX 480 + - Radeon R9 Fury X * Intel GPUs: - HD Graphics 530 - HD Graphics 5500 BroadWell U-Processor GT2 @@ -154,6 +153,7 @@ The CLBlast library is already tuned for the most commonly used OpenCL devices a - Core i7-3770K - Core i7-4790K - Core i7-5930K + - Core i7-6770HQ * Other devices: - ARM Mali-T628 GPU - Qualcomm Adreno 330 GPU diff --git a/src/database/database.cpp b/src/database/database.cpp index 4187ffe3..64306c7b 100644 --- a/src/database/database.cpp +++ b/src/database/database.cpp @@ -199,8 +199,10 @@ database::Parameters Database::SearchDevice(const std::string &target_device, const std::vector ¶meter_names) const { for (auto &device: devices) { const auto device_name = CharArrayToString(device.name); - if (device_name == target_device) { - log_debug("Found parameters for device type '" + target_device + "'"); + // Cuts off 'target_device' string at 50 since the database cuts off as well + const auto target_device_cut_off = (target_device.length() > 50) ? target_device.substr(0, 50) : target_device; + if (device_name == target_device_cut_off) { + log_debug("Found parameters for device type '" + target_device_cut_off + "'"); // Sets the parameters accordingly auto parameters = database::Parameters();