Added architecture layer in the tuning database for better performance on unseen devices

pull/191/head
Cedric Nugteren 2017-09-14 21:27:33 +02:00
parent 14a61d2425
commit 0d13d814c2
72 changed files with 4464 additions and 1920 deletions

View File

@ -1,5 +1,8 @@
Development (next version) Development (next version)
- The tuning database now has defaults per architecture (e.g. NVIDIA Kepler SM3.5, AMD Fiji)
- The tuning database now has a dictionary to translate vendor/device names to a common set
- The tuners can now distinguish between different AMD GPU board names of the same architecture
- The tuners can now use particle-swarm optimisation to search more efficiently (thanks to 'mcian') - The tuners can now use particle-swarm optimisation to search more efficiently (thanks to 'mcian')
- Various minor fixes and enhancements - Various minor fixes and enhancements
- Added non-BLAS routines: - Added non-BLAS routines:

View File

@ -11,6 +11,7 @@ import os
VENDOR_DEFAULT = "default" VENDOR_DEFAULT = "default"
DEVICE_TYPE_DEFAULT = "All" DEVICE_TYPE_DEFAULT = "All"
DEVICE_NAME_DEFAULT = "default" DEVICE_NAME_DEFAULT = "default"
DEVICE_ARCHITECTURE_DEFAULT = "default"
# List of attributes # List of attributes
DEVICE_TYPE_ATTRIBUTES = ["clblast_device_vendor", "clblast_device_type"] DEVICE_TYPE_ATTRIBUTES = ["clblast_device_vendor", "clblast_device_type"]
@ -141,35 +142,45 @@ def print_cpp_database(database, output_dir):
type_database = [s for s in vendor_database if s["clblast_device_type"] == device_type] type_database = [s for s in vendor_database if s["clblast_device_type"] == device_type]
f.write(get_cpp_device_vendor(vendor, device_type)) f.write(get_cpp_device_vendor(vendor, device_type))
# Loops over every device of this vendor-type combination # Loops over every architecture of this vendor-type combination
devices = sorted(set([s["clblast_device_name"] for s in type_database])) architectures = sorted(set([s["clblast_device_architecture"] for s in type_database]))
for device_name in devices: for architecture in architectures:
device_database = [s for s in type_database if s["clblast_device_name"] == device_name] architecture_database = [s for s in type_database if s["clblast_device_architecture"] == architecture]
device_name_quoted = "\"%s\"," % device_name.strip() architecture_string = DEVICE_ARCHITECTURE_DEFAULT if architecture == "" else architecture
device_name_cpp = " { %-50s { " % device_name_quoted f.write(" { \"%s\", {\n" % architecture_string)
f.write(device_name_cpp)
# Collects the parameters for this entry # Loops over every device of this vendor-type combination
parameters = [] devices = sorted(set([s["clblast_device_name"] for s in architecture_database]))
parameter_index = 0 for device_name in devices:
kernels = sorted(set([s["kernel"] for s in device_database])) device_database = [s for s in architecture_database if s["clblast_device_name"] == device_name]
for kernel in kernels: device_name_quoted = "\"%s\"," % device_name.strip()
kernel_database = [s for s in device_database if s["kernel"] == kernel] device_name_cpp = " { %-50s { " % device_name_quoted
f.write(device_name_cpp)
assert len(kernel_database) == 1 # Collects the parameters for this entry
results = kernel_database[0]["results"] parameters = []
parameter_index = 0
kernels = sorted(set([s["kernel"] for s in device_database]))
for kernel in kernels:
kernel_database = [s for s in device_database if s["kernel"] == kernel]
assert len(results) == 1 assert len(kernel_database) == 1
new_parameters = results[0]["parameters"] results = kernel_database[0]["results"]
for parameter_name in sorted(new_parameters):
assert parameter_name == parameter_names[parameter_index]
parameter_value = new_parameters[parameter_name]
parameters.append(str(parameter_value))
parameter_index += 1
# Prints the entry assert len(results) == 1
f.write(", ".join(parameters)) new_parameters = results[0]["parameters"]
f.write(" } },\n") for parameter_name in sorted(new_parameters):
assert parameter_name == parameter_names[parameter_index]
parameter_value = new_parameters[parameter_name]
parameters.append(str(parameter_value))
parameter_index += 1
# Prints the entry
f.write(", ".join(parameters))
f.write(" } },\n")
# Prints the architecture footer
f.write(" } },\n")
# Prints the vendor-type combination footer # Prints the vendor-type combination footer
f.write(" }\n },\n") f.write(" }\n },\n")

View File

@ -12,14 +12,6 @@ import clblast
import bests import bests
def set_default_device(section):
"""Sets the device name and parameters to some default values"""
section["clblast_device_name"] = clblast.DEVICE_NAME_DEFAULT
section["clblast_device_compute_units"] = 0
section["clblast_device_core_clock"] = 0
return section
def set_identifiers(database, group_by_attributes, identifier_name): def set_identifiers(database, group_by_attributes, identifier_name):
"""Sets a group-identifier based on a given set of attributes. Modifies the database but also returns a list of """Sets a group-identifier based on a given set of attributes. Modifies the database but also returns a list of
unique identifiers.""" unique identifiers."""
@ -55,32 +47,56 @@ def get_groups_by_identifier(database, group_identifiers, identifier_name):
return groups return groups
def calculate_defaults(database, verbose): def add_default_sections(database, grouping, verbose, values_dict, condition, enable_warning):
"""Sets defaults for devices of the same type/vendor""" default_sections = []
# Groups the database by kernel, vendor and device type (e.g. AMD GPU) # Groups the database by a certain grouping
group_identifiers = set_identifiers(database, clblast.GROUP_ATTRIBUTES, "group_identifier") group_identifiers = set_identifiers(database, grouping, "group_identifier")
groups = get_groups_by_identifier(database, group_identifiers, "group_identifier") groups = get_groups_by_identifier(database, group_identifiers, "group_identifier")
# Loops over all groups # Loops over all groups
default_sections = {"sections": []}
for group, group_identifier in groups: for group, group_identifier in groups:
# Computes the best parameters # Computes the best parameters
default_parameters = get_common_best_parameters(group, group_identifier, verbose) default_parameters = get_common_best_parameters(group, group_identifier, verbose, enable_warning)
assert len(group) > 0
if condition(group[0]):
# Stores all the section's data # Stores all the section's data
assert len(group) > 0 default_section = {}
default_section = {} for attribute in group[0].keys():
for attribute in group[0].keys(): if attribute != "results" and attribute != "group_identifier":
if attribute != "results" and attribute != "group_identifier": default_section[attribute] = group[0][attribute]
default_section[attribute] = group[0][attribute] default_section["clblast_device_compute_units"] = 0
default_section = set_default_device(default_section) default_section["clblast_device_core_clock"] = 0
default_section["results"] = [{"time": 0.0, "parameters": default_parameters}] for key in values_dict.keys():
default_sections["sections"].append(default_section) default_section[key] = values_dict[key]
default_section["results"] = [{"time": 0.0, "parameters": default_parameters}]
default_sections.append(default_section)
return default_sections
# Groups the database by kernel, vendor and device type (e.g. AMD GPU) - but not by arguments! This is to check for
# mis-matched arguments. def calculate_defaults(database, verbose):
"""Sets defaults for devices of the same type/vendor"""
default_sections = {"sections": []}
# Groups the database by kernel, vendor and device architecture (e.g. AMD GPU "Fiji")
architecture_group = clblast.GROUP_ATTRIBUTES + ["clblast_device_architecture"]
architecture_defaults = add_default_sections(database, architecture_group, verbose,
{"clblast_device_name": clblast.DEVICE_NAME_DEFAULT},
lambda entry: True, enable_warning=False)
# Groups the database by kernel, vendor and device type (e.g. AMD GPU)
device_defaults = add_default_sections(database, clblast.GROUP_ATTRIBUTES, verbose,
{"clblast_device_name": clblast.DEVICE_NAME_DEFAULT,
"clblast_device_architecture": clblast.DEVICE_ARCHITECTURE_DEFAULT},
lambda entry: entry["clblast_device_architecture"] != "",
enable_warning=True)
default_sections["sections"].extend(device_defaults)
# Groups the database by kernel, vendor and device type (e.g. AMD GPU) - but not by arguments!
# This is to check for mis-matched arguments in the database. Note: this is not a check on the
# architecture defaults
attributes = clblast.DEVICE_TYPE_ATTRIBUTES + clblast.KERNEL_ATTRIBUTES + ["kernel"] attributes = clblast.DEVICE_TYPE_ATTRIBUTES + clblast.KERNEL_ATTRIBUTES + ["kernel"]
group_identifiers = set_identifiers(default_sections, attributes, "temp_identifier") group_identifiers = set_identifiers(default_sections, attributes, "temp_identifier")
groups = get_groups_by_identifier(default_sections, group_identifiers, "temp_identifier") groups = get_groups_by_identifier(default_sections, group_identifiers, "temp_identifier")
@ -90,6 +106,9 @@ def calculate_defaults(database, verbose):
assert len(group) == 1 assert len(group) == 1
remove_identifiers(default_sections, "temp_identifier") remove_identifiers(default_sections, "temp_identifier")
# Adds the architecture defaults only after running the above check
default_sections["sections"].extend(architecture_defaults)
# Groups the database by kernel only # Groups the database by kernel only
group_identifiers = set_identifiers(database, clblast.KERNEL_ATTRIBUTES + ["kernel"], "group_identifier") group_identifiers = set_identifiers(database, clblast.KERNEL_ATTRIBUTES + ["kernel"], "group_identifier")
groups = get_groups_by_identifier(database, group_identifiers, "group_identifier") groups = get_groups_by_identifier(database, group_identifiers, "group_identifier")
@ -98,7 +117,8 @@ def calculate_defaults(database, verbose):
for group, group_identifier in groups: for group, group_identifier in groups:
# Computes the best parameters # Computes the best parameters
default_parameters = get_common_best_parameters(group, group_identifier, verbose) default_parameters = get_common_best_parameters(group, group_identifier, verbose,
enable_warning=True)
# Stores all the section's data # Stores all the section's data
assert len(group) > 0 assert len(group) > 0
@ -106,9 +126,12 @@ def calculate_defaults(database, verbose):
for attribute in group[0].keys(): for attribute in group[0].keys():
if attribute != "results" and attribute != "group_identifier": if attribute != "results" and attribute != "group_identifier":
default_section[attribute] = group[0][attribute] default_section[attribute] = group[0][attribute]
default_section = set_default_device(default_section) default_section["clblast_device_name"] = clblast.DEVICE_NAME_DEFAULT
default_section["clblast_device_architecture"] = clblast.DEVICE_ARCHITECTURE_DEFAULT
default_section["clblast_device_vendor"] = clblast.VENDOR_DEFAULT default_section["clblast_device_vendor"] = clblast.VENDOR_DEFAULT
default_section["clblast_device_type"] = clblast.DEVICE_TYPE_DEFAULT default_section["clblast_device_type"] = clblast.DEVICE_TYPE_DEFAULT
default_section["clblast_device_compute_units"] = 0
default_section["clblast_device_core_clock"] = 0
default_section["results"] = [{"time": 0.0, "parameters": default_parameters}] default_section["results"] = [{"time": 0.0, "parameters": default_parameters}]
default_sections["sections"].append(default_section) default_sections["sections"].append(default_section)
@ -143,7 +166,7 @@ def get_parameter_names(section):
return [result["parameters"] for result in section["results"]] return [result["parameters"] for result in section["results"]]
def get_common_best_parameters(group, group_identifier, verbose): def get_common_best_parameters(group, group_identifier, verbose, enable_warning):
"""Sets defaults based on the best values of entries supported by all devices. This might cause a problem in case """Sets defaults based on the best values of entries supported by all devices. This might cause a problem in case
not every device was tuned with the same parameters. In that case it falls back to the above method to retrieve not every device was tuned with the same parameters. In that case it falls back to the above method to retrieve
the smallest best execution time""" the smallest best execution time"""
@ -179,7 +202,8 @@ def get_common_best_parameters(group, group_identifier, verbose):
# Fall back method in case there are no shared entries at all across devices # Fall back method in case there are no shared entries at all across devices
if num_devices_common == 1: if num_devices_common == 1:
print("[database] Warning: No common kernels for: " + str(group_identifier) + " at all") if enable_warning:
print("[database] Warning: No common kernels for: " + str(group_identifier) + " at all")
smallest_best_parameters = get_smallest_best_parameters(group) smallest_best_parameters = get_smallest_best_parameters(group)
if verbose: if verbose:
print("[database] " + str(group_identifier)) print("[database] " + str(group_identifier))

View File

@ -2521,7 +2521,8 @@ StatusCode OverrideParameters(const cl_device_id device, const std::string &kern
// Creates a small custom database based on the provided parameters // Creates a small custom database based on the provided parameters
const auto database_device = database::DatabaseDevice{"default", parameter_values}; const auto database_device = database::DatabaseDevice{"default", parameter_values};
const auto database_vendor = database::DatabaseVendor{database::kDeviceTypeAll, "default", {database_device}}; const auto database_architecture = database::DatabaseArchitecture{"default", {database_device}};
const auto database_vendor = database::DatabaseVendor{database::kDeviceTypeAll, "default", {database_architecture}};
const auto database_entry = database::DatabaseEntry{kernel_name, precision, parameter_names, {database_vendor}}; const auto database_entry = database::DatabaseEntry{kernel_name, precision, parameter_names, {database_vendor}};
const auto database_entries = std::vector<database::DatabaseEntry>{database_entry}; const auto database_entries = std::vector<database::DatabaseEntry>{database_entry};
const auto database = Database(device_cpp, kernel_name, precision, database_entries); const auto database = Database(device_cpp, kernel_name, precision, database_entries);

View File

@ -23,46 +23,46 @@ namespace database {
// ================================================================================================= // =================================================================================================
const DatabaseEntry XaxpyApple = { const DatabaseEntry XaxpyApple = {
"Xaxpy", Precision::kAny, {"VW", "WGS", "WPT"}, { { kDeviceTypeAll, "default", { { "default", { 8, 1, 4 } } } } } "Xaxpy", Precision::kAny, {"VW", "WGS", "WPT"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 8, 1, 4 } } } } } } }
}; };
const DatabaseEntry XdotApple = { const DatabaseEntry XdotApple = {
"Xdot", Precision::kAny, {"WGS1", "WGS2"}, { { kDeviceTypeAll, "default", { { "default", { 1, 1 } } } } } "Xdot", Precision::kAny, {"WGS1", "WGS2"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 1 } } } } } } }
}; };
const DatabaseEntry XgemvApple = { const DatabaseEntry XgemvApple = {
"Xgemv", Precision::kAny, {"WGS1", "WPT1", "UNROLL1"}, { { kDeviceTypeAll, "default", { { "default", { 1, 4, 1 } } } } } "Xgemv", Precision::kAny, {"WGS1", "WPT1", "UNROLL1"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 4, 1 } } } } } } }
}; };
const DatabaseEntry XgemvFastApple = { const DatabaseEntry XgemvFastApple = {
"XgemvFast", Precision::kAny, {"VW2", "WGS2", "WPT2"}, { { kDeviceTypeAll, "default", { { "default", { 1, 1, 1 } } } } } "XgemvFast", Precision::kAny, {"VW2", "WGS2", "WPT2"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 1, 1 } } } } } } }
}; };
const DatabaseEntry XgemvFastRotApple = { const DatabaseEntry XgemvFastRotApple = {
"XgemvFastRot", Precision::kAny, {"VW3", "WGS3", "WPT3"}, { { kDeviceTypeAll, "default", { { "default", { 1, 1, 1 } } } } } "XgemvFastRot", Precision::kAny, {"VW3", "WGS3", "WPT3"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 1, 1 } } } } } } }
}; };
const DatabaseEntry XgerApple = { const DatabaseEntry XgerApple = {
"Xger", Precision::kAny, {"WGS1", "WGS2", "WPT"}, { { kDeviceTypeAll, "default", { { "default", { 64, 1, 2 } } } } } "Xger", Precision::kAny, {"WGS1", "WGS2", "WPT"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 64, 1, 2 } } } } } } }
}; };
const DatabaseEntry XtrsvApple = { const DatabaseEntry XtrsvApple = {
"Xtrsv", Precision::kAny, {"TRSV_BLOCK_SIZE"}, { { kDeviceTypeAll, "default", { { "default", { 32 } } } } } "Xtrsv", Precision::kAny, {"TRSV_BLOCK_SIZE"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 32 } } } } } } }
}; };
const DatabaseEntry XgemmApple = { const DatabaseEntry XgemmApple = {
"Xgemm", Precision::kAny, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, { { kDeviceTypeAll, "default", { { "default", { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1 } } } } } "Xgemm", Precision::kAny, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1 } } } } } } }
}; };
const DatabaseEntry XgemmDirectApple = { const DatabaseEntry XgemmDirectApple = {
"XgemmDirect", Precision::kAny, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, { { kDeviceTypeAll, "default", { { "default", { 1, 1, 1, 1, 1, 0, 0, 1, 1, 1 } } } } } "XgemmDirect", Precision::kAny, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 1, 1, 1, 1, 0, 0, 1, 1, 1 } } } } } } }
}; };
const DatabaseEntry CopyApple = { const DatabaseEntry CopyApple = {
"Copy", Precision::kAny, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, { { kDeviceTypeAll, "default", { { "default", { 1, 1, 1, 1 } } } } } "Copy", Precision::kAny, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 1, 1, 1 } } } } } } }
}; };
const DatabaseEntry PadApple = { const DatabaseEntry PadApple = {
"Pad", Precision::kAny, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, { { kDeviceTypeAll, "default", { { "default", { 1, 1, 1, 1 } } } } } "Pad", Precision::kAny, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 1, 1, 1 } } } } } } }
}; };
const DatabaseEntry TransposeApple = { const DatabaseEntry TransposeApple = {
"Transpose", Precision::kAny, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, { { kDeviceTypeAll, "default", { { "default", { 1, 0, 0, 1 } } } } } "Transpose", Precision::kAny, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 1, 0, 0, 1 } } } } } } }
}; };
const DatabaseEntry PadtransposeApple = { const DatabaseEntry PadtransposeApple = {
"Padtranspose", Precision::kAny, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, { { kDeviceTypeAll, "default", { { "default", { 0, 1, 1 } } } } } "Padtranspose", Precision::kAny, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 0, 1, 1 } } } } } } }
}; };
const DatabaseEntry InvertApple = { const DatabaseEntry InvertApple = {
"Invert", Precision::kAny, {"INTERNAL_BLOCK_SIZE"}, { { kDeviceTypeAll, "default", { { "default", { 16 } } } } } "Invert", Precision::kAny, {"INTERNAL_BLOCK_SIZE"}, { { kDeviceTypeAll, "default", { { "default", { { "default", { 16 } } } } } } }
}; };
// ================================================================================================= // =================================================================================================

View File

@ -86,10 +86,8 @@ Database::Database(const Device &device, const std::string &kernel_name,
const auto device_name = GetDeviceName(device); const auto device_name = GetDeviceName(device);
// Prints the obtained information in verbose mode // Prints the obtained information in verbose mode
#ifdef VERBOSE log_debug("Device type '" + device_type + "'; vendor '" + device_vendor + "'");
printf("[DEBUG] Device type '%s'; vendor '%s'\n", device_type.c_str(), device_vendor.c_str()); log_debug("Device name '" + device_name + "'; architecture '" + device_architecture + "'");
printf("[DEBUG] Device name '%s'; architecture '%s'\n", device_name.c_str(), device_architecture.c_str());
#endif
// Sets the databases to search through // Sets the databases to search through
const auto databases = std::list<std::vector<database::DatabaseEntry>>{overlay, database}; const auto databases = std::list<std::vector<database::DatabaseEntry>>{overlay, database};
@ -172,14 +170,29 @@ database::Parameters Database::SearchVendorAndType(const std::string &target_ven
const std::vector<std::string> &parameter_names) const { const std::vector<std::string> &parameter_names) const {
for (auto &vendor: vendors) { for (auto &vendor: vendors) {
if ((vendor.name == target_vendor) && (vendor.type == target_type)) { if ((vendor.name == target_vendor) && (vendor.type == target_type)) {
log_debug("Found architectures of vendor '" + target_vendor + "' and type '" + target_type + "'");
// Searches the device; if unavailable, searches the architecture; if unavailable returns the // Searches the architecture; if unavailable returns the vendor's default parameters
// vendor's default parameters auto parameters = SearchArchitecture(this_architecture, this_device, vendor.architectures, parameter_names);
auto parameters = SearchDevice(this_device, vendor.devices, parameter_names);
if (parameters.size() != 0) { return parameters; } if (parameters.size() != 0) { return parameters; }
parameters = SearchDevice(this_architecture, vendor.devices, parameter_names); return SearchArchitecture("default", this_device, vendor.architectures, parameter_names);
}
}
return database::Parameters();
}
database::Parameters Database::SearchArchitecture(const std::string &target_architecture,
const std::string &this_device,
const std::vector<database::DatabaseArchitecture> &architectures,
const std::vector<std::string> &parameter_names) const {
for (auto &architecture: architectures) {
if (architecture.name == target_architecture) {
log_debug("Found devices of architecture type '" + target_architecture + "'");
// Searches the device; if unavailable returns the architecture's default parameters
auto parameters = SearchDevice(this_device, architecture.devices, parameter_names);
if (parameters.size() != 0) { return parameters; } if (parameters.size() != 0) { return parameters; }
return SearchDevice("default", vendor.devices, parameter_names); return SearchDevice("default", architecture.devices, parameter_names);
} }
} }
return database::Parameters(); return database::Parameters();
@ -190,6 +203,7 @@ database::Parameters Database::SearchDevice(const std::string &target_device,
const std::vector<std::string> &parameter_names) const { const std::vector<std::string> &parameter_names) const {
for (auto &device: devices) { for (auto &device: devices) {
if (device.name == target_device) { if (device.name == target_device) {
log_debug("Found parameters for device type '" + target_device + "'");
// Sets the parameters accordingly // Sets the parameters accordingly
auto parameters = database::Parameters(); auto parameters = database::Parameters();

View File

@ -64,8 +64,12 @@ class Database {
const Precision this_precision, const Precision this_precision,
const std::vector<database::DatabaseEntry> &db) const; const std::vector<database::DatabaseEntry> &db) const;
database::Parameters SearchDevice(const std::string &target_device, database::Parameters SearchDevice(const std::string &target_device,
const std::vector<database::DatabaseDevice> &devices, const std::vector<database::DatabaseDevice> &devices,
const std::vector<std::string> &parameter_names) const; const std::vector<std::string> &parameter_names) const;
database::Parameters SearchArchitecture(const std::string &target_architecture,
const std::string &this_device,
const std::vector<database::DatabaseArchitecture> &architectures,
const std::vector<std::string> &parameter_names) const;
database::Parameters SearchVendorAndType(const std::string &target_vendor, database::Parameters SearchVendorAndType(const std::string &target_vendor,
const std::string &target_type, const std::string &target_type,
const std::string &this_device, const std::string &this_architecture, const std::string &this_device, const std::string &this_architecture,

View File

@ -38,10 +38,14 @@ struct DatabaseDevice {
const std::string name; const std::string name;
const std::vector<size_t> parameters; // parameter values const std::vector<size_t> parameters; // parameter values
}; };
struct DatabaseArchitecture {
const std::string name;
const std::vector<DatabaseDevice> devices;
};
struct DatabaseVendor { struct DatabaseVendor {
const std::string type; const std::string type;
const std::string name; const std::string name;
const std::vector<DatabaseDevice> devices; const std::vector<DatabaseArchitecture> architectures;
}; };
struct DatabaseEntry { struct DatabaseEntry {
const std::string kernel; const std::string kernel;

View File

@ -22,17 +22,17 @@ const DatabaseEntry KernelSelectionHalf = {
"KernelSelection", Precision::kHalf, {"XGEMM_MIN_INDIRECT_SIZE"}, { "KernelSelection", Precision::kHalf, {"XGEMM_MIN_INDIRECT_SIZE"}, {
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "default", { 1*1*1 } }, { "default", { { "default", { 1*1*1 } } } },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "default", { 1280*1280*1280 } }, { "default", { { "default", { 1280*1280*1280 } } } },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 512*512*512 } }, { "default", { { "default", { 512*512*512 } } } },
} }
}, },
} }
@ -44,22 +44,22 @@ const DatabaseEntry KernelSelectionSingle = {
"KernelSelection", Precision::kSingle, {"XGEMM_MIN_INDIRECT_SIZE"}, { "KernelSelection", Precision::kSingle, {"XGEMM_MIN_INDIRECT_SIZE"}, {
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "default", { 1*1*1 } }, { "default", { { "default", { 1*1*1 } } } },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "default", { 1280*1280*1280 } }, { "default", { { "default", { 1280*1280*1280 } } } },
} }
}, },
{ {
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "default", { 128*128*128} }, { "default", { { "default", { 128*128*128} } } },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 512*512*512 } }, { "default", { { "default", { 512*512*512 } } } },
} }
}, },
} }
@ -71,17 +71,17 @@ const DatabaseEntry KernelSelectionComplexSingle = {
"KernelSelection", Precision::kComplexSingle, {"XGEMM_MIN_INDIRECT_SIZE"}, { "KernelSelection", Precision::kComplexSingle, {"XGEMM_MIN_INDIRECT_SIZE"}, {
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "default", { 1*1*1 } }, { "default", { { "default", { 1*1*1 } } } },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "default", { 1280*1280*1280 } }, { "default", { { "default", { 1280*1280*1280 } } } },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 512*512*512 } }, { "default", { { "default", { 512*512*512 } } } },
} }
}, },
} }
@ -93,17 +93,17 @@ const DatabaseEntry KernelSelectionDouble = {
"KernelSelection", Precision::kDouble, {"XGEMM_MIN_INDIRECT_SIZE"}, { "KernelSelection", Precision::kDouble, {"XGEMM_MIN_INDIRECT_SIZE"}, {
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "default", { 1*1*1 } }, { "default", { { "default", { 1*1*1 } } } },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "default", { 1280*1280*1280 } }, { "default", { { "default", { 1280*1280*1280 } } } },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 512*512*512 } }, { "default", { { "default", { 512*512*512 } } } },
} }
}, },
} }
@ -115,17 +115,17 @@ const DatabaseEntry KernelSelectionComplexDouble = {
"KernelSelection", Precision::kComplexDouble, {"XGEMM_MIN_INDIRECT_SIZE"}, { "KernelSelection", Precision::kComplexDouble, {"XGEMM_MIN_INDIRECT_SIZE"}, {
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "default", { 1*1*1 } }, { "default", { { "default", { 1*1*1 } } } },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "default", { 1280*1280*1280 } }, { "default", { { "default", { 1280*1280*1280 } } } },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 512*512*512 } }, { "default", { { "default", { 512*512*512 } } } },
} }
}, },
} }

View File

@ -14,26 +14,37 @@ const DatabaseEntry CopyHalf = {
"Copy", Precision::kHalf, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, { "Copy", Precision::kHalf, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 16, 8, 4, 4 } }, { "Ellesmere", {
{ "default", { 16, 8, 4, 4 } }, { "AMD Radeon RX 480", { 16, 8, 4, 4 } },
{ "default", { 16, 8, 4, 4 } },
} },
{ "default", {
{ "default", { 16, 8, 4, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 16, 8, 4 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 8, 32, 4, 8 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 16, 8, 4 } },
{ "default", { 8, 32, 4, 8 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 8, 32, 4, 8 } },
{ "default", { 8, 32, 4, 8 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 32, 8, 8, 1 } }, { "default", {
{ "default", { 32, 8, 8, 1 } }, { "QUALCOMM Adreno(TM)", { 32, 8, 8, 1 } },
{ "default", { 32, 8, 8, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16, 8, 4, 4 } }, { "default", {
{ "default", { 16, 8, 4, 4 } },
} },
} }
}, },
} }

View File

@ -14,84 +14,145 @@ const DatabaseEntry CopySingle = {
"Copy", Precision::kSingle, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, { "Copy", Precision::kSingle, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 8, 4, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 16, 8, 2, 1 } }, { "AMD Radeon RX 480", { 8, 8, 4, 8 } },
{ "Ellesmere", { 8, 8, 4, 8 } }, { "default", { 8, 8, 4, 8 } },
{ "Fiji", { 16, 16, 1, 2 } }, } },
{ "Hawaii", { 32, 8, 2, 2 } }, { "Fiji", {
{ "Oland", { 32, 8, 4, 2 } }, { "AMD Radeon R9 Fury X", { 16, 16, 1, 2 } },
{ "Pitcairn", { 8, 16, 4, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 8, 4, 1 } },
{ "Tahiti", { 32, 8, 2, 2 } }, { "default", { 16, 16, 1, 2 } },
{ "Tonga", { 32, 8, 4, 4 } }, } },
{ "Turks", { 8, 8, 4, 2 } }, { "Hawaii", {
{ "default", { 8, 16, 4, 1 } }, { "AMD Radeon R9 290X", { 32, 8, 2, 2 } },
{ "default", { 32, 8, 2, 2 } },
} },
{ "Oland", {
{ "Oland", { 32, 8, 4, 2 } },
{ "default", { 32, 8, 4, 2 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 8, 16, 4, 1 } },
{ "default", { 8, 16, 4, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 32, 8, 2, 2 } },
{ "default", { 32, 8, 2, 2 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 32, 8, 4, 4 } },
{ "default", { 32, 8, 4, 4 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 8, 8, 4, 2 } },
{ "default", { 8, 8, 4, 2 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 16, 8, 2, 1 } },
{ "default", { 16, 8, 2, 1 } },
} },
{ "default", {
{ "default", { 8, 16, 4, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 32, 8, 2, 4 } }, { "default", {
{ "default", { 32, 8, 2, 4 } }, { "Mali-T628", { 32, 8, 2, 4 } },
{ "default", { 32, 8, 2, 4 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 16, 8, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 16, 8, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 16, 8, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 4, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 16, 8, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 16, 8, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 4, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 16, 8, 2 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 16, 8, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 16, 8, 2 } },
{ "default", { 32, 16, 8, 2 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 8, 1 } },
{ "default", { 32, 16, 8, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 8, 8, 2, 1 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 32, 16, 4, 1 } }, { "Intel(R) HD Graphics 530", { 8, 8, 2, 1 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 32, 16, 4, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 32, 16, 4, 1 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 16, 8, 2, 1 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 32, 16, 4, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 16, 8, 4, 8 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 16, 8, 2, 1 } },
{ "Iris", { 16, 8, 1, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 16, 8, 4, 8 } },
{ "Iris Pro", { 32, 8, 4, 4 } }, { "Iris", { 16, 8, 1, 2 } },
{ "default", { 8, 8, 2, 1 } }, { "Iris Pro", { 32, 8, 4, 4 } },
{ "default", { 8, 8, 2, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 8, 1 } }, { "default", {
{ "default", { 32, 8, 8, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 8, 1 } },
{ "default", { 32, 8, 8, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 8, 4, 1 } }, { "SM2.0", {
{ "GeForce GT 650M", { 16, 16, 4, 2 } }, { "GeForce GTX 480", { 8, 8, 4, 1 } },
{ "GeForce GTX 1070", { 8, 16, 4, 1 } }, { "default", { 8, 8, 4, 1 } },
{ "GeForce GTX 1080", { 8, 32, 4, 1 } }, } },
{ "GeForce GTX 480", { 8, 8, 4, 1 } }, { "SM3.0", {
{ "GeForce GTX 670", { 16, 32, 4, 1 } }, { "GRID K520", { 16, 8, 4, 1 } },
{ "GeForce GTX 680", { 32, 16, 4, 1 } }, { "GeForce GT 650M", { 16, 16, 4, 2 } },
{ "GeForce GTX 750", { 32, 8, 2, 2 } }, { "GeForce GTX 670", { 16, 32, 4, 1 } },
{ "GeForce GTX 750 Ti", { 16, 32, 2, 2 } }, { "GeForce GTX 680", { 32, 16, 4, 1 } },
{ "GeForce GTX 980", { 32, 16, 1, 1 } }, { "default", { 8, 16, 4, 1 } },
{ "GeForce GTX TITAN", { 32, 8, 2, 4 } }, } },
{ "GeForce GTX TITAN Black", { 8, 32, 4, 8 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 32, 8, 1, 2 } }, { "GeForce GTX TITAN", { 32, 8, 2, 4 } },
{ "TITAN X (Pascal)", { 8, 32, 4, 1 } }, { "GeForce GTX TITAN Black", { 8, 32, 4, 8 } },
{ "Tesla K20m", { 8, 8, 4, 4 } }, { "Tesla K20m", { 8, 8, 4, 4 } },
{ "Tesla K40m", { 8, 8, 4, 2 } }, { "Tesla K40m", { 8, 8, 4, 2 } },
{ "default", { 8, 32, 4, 1 } }, { "default", { 16, 16, 4, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 8, 2, 2 } },
{ "GeForce GTX 750 Ti", { 16, 32, 2, 2 } },
{ "default", { 32, 8, 2, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 32, 16, 1, 1 } },
{ "GeForce GTX TITAN X", { 32, 8, 1, 2 } },
{ "default", { 32, 16, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 16, 4, 1 } },
{ "GeForce GTX 1080", { 8, 32, 4, 1 } },
{ "TITAN X (Pascal)", { 8, 32, 4, 1 } },
{ "default", { 8, 32, 4, 1 } },
} },
{ "default", {
{ "default", { 8, 32, 4, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 32, 8, 8, 1 } }, { "default", {
{ "default", { 32, 8, 8, 1 } }, { "QUALCOMM Adreno(TM)", { 32, 8, 8, 1 } },
{ "default", { 32, 8, 8, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 8, 4, 4 } }, { "default", {
{ "default", { 32, 8, 4, 4 } },
} },
} }
}, },
} }

View File

@ -14,75 +14,134 @@ const DatabaseEntry CopyComplexSingle = {
"Copy", Precision::kComplexSingle, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, { "Copy", Precision::kComplexSingle, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 8, 8, 1, 1 } }, { "AMD Radeon RX 480", { 16, 16, 1, 4 } },
{ "Ellesmere", { 16, 16, 1, 4 } }, { "default", { 16, 16, 1, 4 } },
{ "Fiji", { 16, 8, 1, 2 } }, } },
{ "Hawaii", { 32, 8, 1, 2 } }, { "Fiji", {
{ "Oland", { 8, 16, 1, 1 } }, { "AMD Radeon R9 Fury X", { 16, 8, 1, 2 } },
{ "Pitcairn", { 8, 8, 1, 2 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } },
{ "Tahiti", { 8, 8, 2, 2 } }, { "default", { 16, 8, 1, 2 } },
{ "Tonga", { 8, 32, 1, 2 } }, } },
{ "Turks", { 32, 8, 4, 1 } }, { "Hawaii", {
{ "default", { 16, 8, 1, 1 } }, { "AMD Radeon R9 290X", { 32, 8, 1, 2 } },
{ "default", { 32, 8, 1, 2 } },
} },
{ "Oland", {
{ "Oland", { 8, 16, 1, 1 } },
{ "default", { 8, 16, 1, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 8, 8, 1, 2 } },
{ "default", { 8, 8, 1, 2 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 8, 8, 2, 2 } },
{ "default", { 8, 8, 2, 2 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 8, 32, 1, 2 } },
{ "default", { 8, 32, 1, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 32, 8, 4, 1 } },
{ "default", { 32, 8, 4, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 8, 8, 1, 1 } },
{ "default", { 8, 8, 1, 1 } },
} },
{ "default", {
{ "default", { 16, 8, 1, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 16, 4, 2 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 16, 16, 8, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 16, 4, 2 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 4, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 16, 16, 8, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 8, 2, 2 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 4, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32, 4, 1 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 8, 2, 2 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32, 4, 1 } },
{ "default", { 32, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 8, 8, 1 } },
{ "default", { 32, 8, 8, 1 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 16, 8, 2, 1 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 16, 16, 2, 2 } }, { "Intel(R) HD Graphics 530", { 16, 8, 2, 1 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 8, 8, 1, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 16, 16, 2, 2 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 8, 32, 2, 4 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 8, 8, 1, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 8, 8, 2, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 8, 32, 2, 4 } },
{ "Iris", { 16, 8, 1, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 8, 8, 2, 1 } },
{ "Iris Pro", { 32, 16, 1, 4 } }, { "Iris", { 16, 8, 1, 2 } },
{ "default", { 16, 8, 1, 2 } }, { "Iris Pro", { 32, 16, 1, 4 } },
{ "default", { 16, 8, 1, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 4, 1 } }, { "default", {
{ "default", { 32, 8, 4, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 4, 1 } },
{ "default", { 32, 8, 4, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 8, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 16, 8, 1, 1 } }, { "GeForce GTX 480", { 16, 16, 1, 1 } },
{ "GeForce GTX 1080", { 32, 8, 1, 2 } }, { "default", { 16, 16, 1, 1 } },
{ "GeForce GTX 480", { 16, 16, 1, 1 } }, } },
{ "GeForce GTX 670", { 16, 8, 1, 1 } }, { "SM3.0", {
{ "GeForce GTX 750", { 16, 8, 1, 2 } }, { "GRID K520", { 16, 8, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 32, 1, 1 } }, { "GeForce GTX 670", { 16, 8, 1, 1 } },
{ "GeForce GTX 980", { 8, 8, 1, 1 } }, { "default", { 16, 8, 1, 1 } },
{ "GeForce GTX TITAN Black", { 16, 8, 1, 1 } }, } },
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } }, { "SM3.5", {
{ "TITAN X (Pascal)", { 8, 16, 2, 1 } }, { "GeForce GTX TITAN Black", { 16, 8, 1, 1 } },
{ "Tesla K20m", { 8, 8, 1, 4 } }, { "Tesla K20m", { 8, 8, 1, 4 } },
{ "Tesla K40m", { 16, 8, 1, 1 } }, { "Tesla K40m", { 16, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } }, { "default", { 16, 8, 1, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 16, 8, 1, 2 } },
{ "GeForce GTX 750 Ti", { 16, 32, 1, 1 } },
{ "default", { 16, 8, 1, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 8, 8, 1, 1 } },
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } },
{ "default", { 16, 8, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 16, 8, 1, 1 } },
{ "GeForce GTX 1080", { 32, 8, 1, 2 } },
{ "TITAN X (Pascal)", { 8, 16, 2, 1 } },
{ "default", { 32, 8, 1, 2 } },
} },
{ "default", {
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 32, 8, 1, 1 } }, { "default", {
{ "default", { 32, 8, 1, 1 } }, { "QUALCOMM Adreno(TM)", { 32, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16, 8, 1, 2 } }, { "default", {
{ "default", { 16, 8, 1, 2 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry CopyDouble = {
"Copy", Precision::kDouble, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, { "Copy", Precision::kDouble, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 32, 8, 1, 4 } }, { "AMD Radeon RX 480", { 32, 8, 1, 4 } },
{ "Fiji", { 16, 8, 1, 2 } }, { "default", { 32, 8, 1, 4 } },
{ "Hawaii", { 32, 8, 1, 2 } }, } },
{ "Oland", { 32, 8, 2, 8 } }, { "Fiji", {
{ "Pitcairn", { 32, 8, 1, 1 } }, { "AMD Radeon R9 Fury X", { 16, 8, 1, 2 } },
{ "Tahiti", { 8, 32, 2, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } },
{ "Tonga", { 8, 32, 2, 4 } }, { "default", { 16, 8, 1, 2 } },
{ "default", { 16, 8, 2, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 32, 8, 1, 2 } },
{ "default", { 32, 8, 1, 2 } },
} },
{ "Oland", {
{ "Oland", { 32, 8, 2, 8 } },
{ "default", { 32, 8, 2, 8 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 32, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 8, 32, 2, 1 } },
{ "default", { 8, 32, 2, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 8, 32, 2, 4 } },
{ "default", { 8, 32, 2, 4 } },
} },
{ "default", {
{ "default", { 16, 8, 2, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 16, 8, 8, 2 } }, { "default", {
{ "default", { 16, 8, 8, 2 } }, { "Mali-T628", { 16, 8, 8, 2 } },
{ "default", { 16, 8, 8, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 32, 8, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 16, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 32, 8, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 16, 8, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 16, 8, 8, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 16, 32, 2, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 16, 8, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 16, 32, 8, 1 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 16, 32, 2, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 16, 8, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 16, 32, 8, 1 } },
{ "default", { 16, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 16, 8, 1 } },
{ "default", { 16, 8, 8, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 8, 8, 8, 1 } }, { "default", {
{ "default", { 8, 8, 8, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 8, 8, 8, 1 } },
{ "default", { 8, 8, 8, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 32, 16, 2, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 8, 4, 1 } }, { "GeForce GTX 480", { 8, 8, 2, 1 } },
{ "GeForce GTX 1080", { 8, 8, 4, 1 } }, { "default", { 8, 8, 2, 1 } },
{ "GeForce GTX 480", { 8, 8, 2, 1 } }, } },
{ "GeForce GTX 670", { 8, 8, 2, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 16, 32, 2, 1 } }, { "GRID K520", { 32, 16, 2, 1 } },
{ "GeForce GTX 750", { 8, 16, 2, 1 } }, { "GeForce GTX 670", { 8, 8, 2, 1 } },
{ "GeForce GTX 750 Ti", { 16, 8, 2, 1 } }, { "GeForce GTX 680", { 16, 32, 2, 1 } },
{ "GeForce GTX 980", { 32, 8, 2, 1 } }, { "default", { 32, 32, 2, 1 } },
{ "GeForce GTX TITAN", { 16, 32, 2, 2 } }, } },
{ "GeForce GTX TITAN Black", { 16, 8, 2, 8 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 32, 16, 1, 1 } }, { "GeForce GTX TITAN", { 16, 32, 2, 2 } },
{ "TITAN X (Pascal)", { 8, 8, 2, 2 } }, { "GeForce GTX TITAN Black", { 16, 8, 2, 8 } },
{ "Tesla K20m", { 8, 8, 2, 1 } }, { "Tesla K20m", { 8, 8, 2, 1 } },
{ "Tesla K40m", { 8, 8, 2, 2 } }, { "Tesla K40m", { 8, 8, 2, 2 } },
{ "default", { 32, 32, 2, 1 } }, { "default", { 32, 16, 2, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 8, 16, 2, 1 } },
{ "GeForce GTX 750 Ti", { 16, 8, 2, 1 } },
{ "default", { 16, 8, 2, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 32, 8, 2, 1 } },
{ "GeForce GTX TITAN X", { 32, 16, 1, 1 } },
{ "default", { 32, 16, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 8, 4, 1 } },
{ "GeForce GTX 1080", { 8, 8, 4, 1 } },
{ "TITAN X (Pascal)", { 8, 8, 2, 2 } },
{ "default", { 8, 8, 4, 1 } },
} },
{ "default", {
{ "default", { 32, 32, 2, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16, 8, 2, 1 } }, { "default", {
{ "default", { 16, 8, 2, 1 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry CopyComplexDouble = {
"Copy", Precision::kComplexDouble, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, { "Copy", Precision::kComplexDouble, {"COPY_DIMX", "COPY_DIMY", "COPY_VW", "COPY_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 8, 16, 1, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 8, 32, 1, 2 } }, { "AMD Radeon RX 480", { 8, 32, 1, 2 } },
{ "Fiji", { 8, 16, 1, 1 } }, { "default", { 8, 32, 1, 2 } },
{ "Hawaii", { 32, 8, 2, 8 } }, } },
{ "Oland", { 8, 16, 1, 1 } }, { "Fiji", {
{ "Pitcairn", { 16, 8, 1, 1 } }, { "AMD Radeon R9 Fury X", { 8, 16, 1, 1 } },
{ "Tahiti", { 8, 16, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 8, 16, 1, 1 } },
{ "Tonga", { 16, 8, 2, 1 } }, { "default", { 8, 16, 1, 1 } },
{ "default", { 8, 16, 1, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 32, 8, 2, 8 } },
{ "default", { 32, 8, 2, 8 } },
} },
{ "Oland", {
{ "Oland", { 8, 16, 1, 1 } },
{ "default", { 8, 16, 1, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 16, 8, 1, 1 } },
{ "default", { 16, 8, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 8, 16, 1, 1 } },
{ "default", { 8, 16, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 8, 2, 1 } },
{ "default", { 16, 8, 2, 1 } },
} },
{ "default", {
{ "default", { 8, 16, 1, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 32, 8, 1, 2 } }, { "default", {
{ "default", { 32, 8, 1, 2 } }, { "Mali-T628", { 32, 8, 1, 2 } },
{ "default", { 32, 8, 1, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 8, 8, 8, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 8, 8, 8, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 16, 2, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 8, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 32, 8, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 16, 2, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 16, 8, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 32, 8, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 16, 8, 4 } },
{ "default", { 16, 8, 8, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 8, 8, 1 } },
{ "default", { 16, 8, 8, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 8, 1 } }, { "default", {
{ "default", { 32, 8, 8, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 8, 1 } },
{ "default", { 32, 8, 8, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 8, 8, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 32, 1, 4 } }, { "GeForce GTX 480", { 16, 8, 1, 1 } },
{ "GeForce GTX 1080", { 8, 8, 1, 1 } }, { "default", { 16, 8, 1, 1 } },
{ "GeForce GTX 480", { 16, 8, 1, 1 } }, } },
{ "GeForce GTX 670", { 16, 8, 1, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 8, 8, 1, 1 } }, { "GRID K520", { 8, 8, 1, 1 } },
{ "GeForce GTX 750", { 32, 8, 1, 1 } }, { "GeForce GTX 670", { 16, 8, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 16, 1, 1 } }, { "GeForce GTX 680", { 8, 8, 1, 1 } },
{ "GeForce GTX 980", { 8, 8, 1, 1 } }, { "default", { 8, 8, 1, 1 } },
{ "GeForce GTX TITAN", { 16, 16, 1, 1 } }, } },
{ "GeForce GTX TITAN Black", { 8, 8, 1, 2 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } }, { "GeForce GTX TITAN", { 16, 16, 1, 1 } },
{ "TITAN X (Pascal)", { 8, 8, 1, 2 } }, { "GeForce GTX TITAN Black", { 8, 8, 1, 2 } },
{ "Tesla K20m", { 8, 8, 1, 2 } }, { "Tesla K20m", { 8, 8, 1, 2 } },
{ "Tesla K40m", { 8, 8, 1, 1 } }, { "Tesla K40m", { 8, 8, 1, 1 } },
{ "default", { 8, 8, 1, 1 } }, { "default", { 8, 8, 1, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 8, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 16, 1, 1 } },
{ "default", { 16, 16, 1, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 8, 8, 1, 1 } },
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 32, 1, 4 } },
{ "GeForce GTX 1080", { 8, 8, 1, 1 } },
{ "TITAN X (Pascal)", { 8, 8, 1, 2 } },
{ "default", { 16, 8, 1, 1 } },
} },
{ "default", {
{ "default", { 8, 8, 1, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16, 8, 1, 1 } }, { "default", {
{ "default", { 16, 8, 1, 1 } },
} },
} }
}, },
} }

View File

@ -19,7 +19,7 @@ const DatabaseEntry InvertHalf = {
"Invert", Precision::kHalf, {"INTERNAL_BLOCK_SIZE"}, { "Invert", Precision::kHalf, {"INTERNAL_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16 } }, { "default", { { "default", { 16 } } } },
} }
}, },
} }
@ -31,7 +31,7 @@ const DatabaseEntry InvertSingle = {
"Invert", Precision::kSingle, {"INTERNAL_BLOCK_SIZE"}, { "Invert", Precision::kSingle, {"INTERNAL_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16 } }, { "default", { { "default", { 16 } } } },
} }
}, },
} }
@ -43,7 +43,7 @@ const DatabaseEntry InvertComplexSingle = {
"Invert", Precision::kComplexSingle, {"INTERNAL_BLOCK_SIZE"}, { "Invert", Precision::kComplexSingle, {"INTERNAL_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16 } }, { "default", { { "default", { 16 } } } },
} }
}, },
} }
@ -55,7 +55,7 @@ const DatabaseEntry InvertDouble = {
"Invert", Precision::kDouble, {"INTERNAL_BLOCK_SIZE"}, { "Invert", Precision::kDouble, {"INTERNAL_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16 } }, { "default", { { "default", { 16 } } } },
} }
}, },
} }
@ -67,7 +67,7 @@ const DatabaseEntry InvertComplexDouble = {
"Invert", Precision::kComplexDouble, {"INTERNAL_BLOCK_SIZE"}, { "Invert", Precision::kComplexDouble, {"INTERNAL_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16 } }, { "default", { { "default", { 16 } } } },
} }
}, },
} }

View File

@ -14,26 +14,37 @@ const DatabaseEntry PadHalf = {
"Pad", Precision::kHalf, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, { "Pad", Precision::kHalf, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 16, 8, 1, 2 } }, { "Ellesmere", {
{ "default", { 16, 8, 1, 2 } }, { "AMD Radeon RX 480", { 16, 8, 1, 2 } },
{ "default", { 16, 8, 1, 2 } },
} },
{ "default", {
{ "default", { 16, 8, 1, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 8, 4, 1 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 8, 32, 2, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 8, 4, 1 } },
{ "default", { 8, 8, 2, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 8, 32, 2, 2 } },
{ "default", { 8, 8, 2, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 16, 8, 4, 2 } }, { "default", {
{ "default", { 16, 8, 4, 2 } }, { "QUALCOMM Adreno(TM)", { 16, 8, 4, 2 } },
{ "default", { 16, 8, 4, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 8, 8, 4, 1 } }, { "default", {
{ "default", { 8, 8, 4, 1 } },
} },
} }
}, },
} }

View File

@ -14,84 +14,145 @@ const DatabaseEntry PadSingle = {
"Pad", Precision::kSingle, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, { "Pad", Precision::kSingle, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 8, 16, 2, 1 } }, { "AMD Radeon RX 480", { 32, 8, 2, 2 } },
{ "Ellesmere", { 32, 8, 2, 2 } }, { "default", { 32, 8, 2, 2 } },
{ "Fiji", { 16, 16, 1, 2 } }, } },
{ "Hawaii", { 32, 8, 1, 4 } }, { "Fiji", {
{ "Oland", { 8, 8, 1, 2 } }, { "AMD Radeon R9 Fury X", { 16, 16, 1, 2 } },
{ "Pitcairn", { 32, 8, 1, 2 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } },
{ "Tahiti", { 32, 8, 1, 2 } }, { "default", { 32, 8, 1, 2 } },
{ "Tonga", { 16, 16, 2, 2 } }, } },
{ "Turks", { 32, 8, 2, 1 } }, { "Hawaii", {
{ "default", { 8, 16, 1, 2 } }, { "AMD Radeon R9 290X", { 32, 8, 1, 4 } },
{ "default", { 32, 8, 1, 4 } },
} },
{ "Oland", {
{ "Oland", { 8, 8, 1, 2 } },
{ "default", { 8, 8, 1, 2 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 32, 8, 1, 2 } },
{ "default", { 32, 8, 1, 2 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 32, 8, 1, 2 } },
{ "default", { 32, 8, 1, 2 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 16, 2, 2 } },
{ "default", { 16, 16, 2, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 32, 8, 2, 1 } },
{ "default", { 32, 8, 2, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 8, 16, 2, 1 } },
{ "default", { 8, 16, 2, 1 } },
} },
{ "default", {
{ "default", { 8, 16, 1, 2 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 32, 8, 1, 4 } }, { "default", {
{ "default", { 32, 8, 1, 4 } }, { "Mali-T628", { 32, 8, 1, 4 } },
{ "default", { 32, 8, 1, 4 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 32, 4, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 16, 4, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 32, 4, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 2, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 16, 4, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 16, 32, 4, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 2, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 16, 4, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 16, 32, 4, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 4, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 16, 4, 4 } },
{ "default", { 32, 8, 4, 2 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 4, 1 } },
{ "default", { 32, 8, 4, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 32, 8, 2, 4 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 32, 8, 2, 4 } }, { "Intel(R) HD Graphics 530", { 32, 8, 2, 4 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 16, 8, 1, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 32, 8, 2, 4 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 16, 8, 4, 1 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 16, 8, 1, 2 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 8, 4, 2 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 16, 8, 4, 1 } },
{ "Iris", { 32, 16, 2, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 8, 4, 2 } },
{ "Iris Pro", { 16, 8, 2, 1 } }, { "Iris", { 32, 16, 2, 1 } },
{ "default", { 32, 8, 4, 2 } }, { "Iris Pro", { 16, 8, 2, 1 } },
{ "default", { 32, 8, 4, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 16, 2, 1 } }, { "default", {
{ "default", { 32, 16, 2, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 16, 2, 1 } },
{ "default", { 32, 16, 2, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 32, 8, 2, 1 } }, { "SM2.0", {
{ "GeForce GT 650M", { 32, 16, 2, 2 } }, { "GeForce GTX 480", { 32, 8, 1, 4 } },
{ "GeForce GTX 1070", { 16, 8, 1, 1 } }, { "default", { 32, 8, 1, 4 } },
{ "GeForce GTX 1080", { 16, 8, 1, 1 } }, } },
{ "GeForce GTX 480", { 32, 8, 1, 4 } }, { "SM3.0", {
{ "GeForce GTX 670", { 32, 8, 2, 2 } }, { "GRID K520", { 32, 8, 2, 1 } },
{ "GeForce GTX 680", { 16, 8, 4, 1 } }, { "GeForce GT 650M", { 32, 16, 2, 2 } },
{ "GeForce GTX 750", { 32, 16, 4, 2 } }, { "GeForce GTX 670", { 32, 8, 2, 2 } },
{ "GeForce GTX 750 Ti", { 16, 8, 4, 1 } }, { "GeForce GTX 680", { 16, 8, 4, 1 } },
{ "GeForce GTX 980", { 16, 8, 1, 1 } }, { "default", { 32, 8, 2, 4 } },
{ "GeForce GTX TITAN", { 32, 8, 2, 1 } }, } },
{ "GeForce GTX TITAN Black", { 32, 8, 1, 2 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 16, 1, 1 } }, { "GeForce GTX TITAN", { 32, 8, 2, 1 } },
{ "TITAN X (Pascal)", { 16, 8, 1, 2 } }, { "GeForce GTX TITAN Black", { 32, 8, 1, 2 } },
{ "Tesla K20m", { 32, 8, 2, 1 } }, { "Tesla K20m", { 32, 8, 2, 1 } },
{ "Tesla K40m", { 32, 8, 1, 1 } }, { "Tesla K40m", { 32, 8, 1, 1 } },
{ "default", { 32, 8, 4, 1 } }, { "default", { 32, 8, 1, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 16, 4, 2 } },
{ "GeForce GTX 750 Ti", { 16, 8, 4, 1 } },
{ "default", { 32, 8, 4, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 8, 1, 1 } },
{ "GeForce GTX TITAN X", { 16, 16, 1, 1 } },
{ "default", { 16, 8, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 16, 8, 1, 1 } },
{ "GeForce GTX 1080", { 16, 8, 1, 1 } },
{ "TITAN X (Pascal)", { 16, 8, 1, 2 } },
{ "default", { 16, 32, 1, 2 } },
} },
{ "default", {
{ "default", { 32, 8, 4, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 32, 8, 2, 1 } }, { "default", {
{ "default", { 32, 8, 2, 1 } }, { "QUALCOMM Adreno(TM)", { 32, 8, 2, 1 } },
{ "default", { 32, 8, 2, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 8, 2, 1 } }, { "default", {
{ "default", { 32, 8, 2, 1 } },
} },
} }
}, },
} }

View File

@ -14,83 +14,144 @@ const DatabaseEntry PadComplexSingle = {
"Pad", Precision::kComplexSingle, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, { "Pad", Precision::kComplexSingle, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 16, 8, 2, 1 } }, { "AMD Radeon RX 480", { 16, 16, 2, 4 } },
{ "Ellesmere", { 16, 16, 2, 4 } }, { "default", { 16, 16, 2, 4 } },
{ "Fiji", { 16, 8, 1, 2 } }, } },
{ "Hawaii", { 32, 8, 1, 2 } }, { "Fiji", {
{ "Oland", { 8, 32, 1, 1 } }, { "AMD Radeon R9 Fury X", { 16, 8, 1, 2 } },
{ "Pitcairn", { 8, 8, 1, 2 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } },
{ "Tahiti", { 16, 16, 1, 1 } }, { "default", { 16, 8, 1, 2 } },
{ "Tonga", { 16, 8, 1, 2 } }, } },
{ "Turks", { 16, 8, 4, 4 } }, { "Hawaii", {
{ "default", { 16, 8, 1, 2 } }, { "AMD Radeon R9 290X", { 32, 8, 1, 2 } },
{ "default", { 32, 8, 1, 2 } },
} },
{ "Oland", {
{ "Oland", { 8, 32, 1, 1 } },
{ "default", { 8, 32, 1, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 8, 8, 1, 2 } },
{ "default", { 8, 8, 1, 2 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 16, 16, 1, 1 } },
{ "default", { 16, 16, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 8, 1, 2 } },
{ "default", { 16, 8, 1, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 16, 8, 4, 4 } },
{ "default", { 16, 8, 4, 4 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 16, 8, 2, 1 } },
{ "default", { 16, 8, 2, 1 } },
} },
{ "default", {
{ "default", { 16, 8, 1, 2 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 32, 8, 1, 4 } }, { "default", {
{ "default", { 32, 8, 1, 4 } }, { "Mali-T628", { 32, 8, 1, 4 } },
{ "default", { 32, 8, 1, 4 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 8, 4, 2 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 2, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 8, 4, 2 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 1, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 2, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 32, 4, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 1, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 8, 2, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 32, 4, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 16, 4, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 8, 2, 4 } },
{ "default", { 32, 8, 4, 2 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 16, 4, 1 } },
{ "default", { 32, 8, 4, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 8, 8, 1, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 8, 1, 1 } }, { "Intel(R) HD Graphics 530", { 8, 8, 1, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 8, 8, 1, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 8, 1, 1 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 32, 8, 1, 1 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 8, 8, 1, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 8, 1, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 32, 8, 1, 1 } },
{ "Iris", { 32, 16, 2, 4 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 8, 1, 1 } },
{ "Iris Pro", { 32, 8, 2, 1 } }, { "Iris", { 32, 16, 2, 4 } },
{ "default", { 32, 8, 1, 4 } }, { "Iris Pro", { 32, 8, 2, 1 } },
{ "default", { 32, 8, 1, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 1, 1 } }, { "default", {
{ "default", { 32, 8, 1, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 16, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 32, 1, 1 } }, { "GeForce GTX 480", { 16, 8, 2, 1 } },
{ "GeForce GTX 1080", { 32, 8, 1, 1 } }, { "default", { 16, 8, 2, 1 } },
{ "GeForce GTX 480", { 16, 8, 2, 1 } }, } },
{ "GeForce GTX 670", { 16, 8, 1, 2 } }, { "SM3.0", {
{ "GeForce GTX 680", { 16, 32, 1, 2 } }, { "GRID K520", { 16, 16, 1, 1 } },
{ "GeForce GTX 750", { 32, 8, 2, 1 } }, { "GeForce GTX 670", { 16, 8, 1, 2 } },
{ "GeForce GTX 750 Ti", { 16, 8, 1, 1 } }, { "GeForce GTX 680", { 16, 32, 1, 2 } },
{ "GeForce GTX 980", { 16, 16, 1, 1 } }, { "default", { 16, 8, 1, 2 } },
{ "GeForce GTX TITAN", { 16, 8, 2, 1 } }, } },
{ "GeForce GTX TITAN Black", { 16, 8, 1, 2 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } }, { "GeForce GTX TITAN", { 16, 8, 2, 1 } },
{ "TITAN X (Pascal)", { 32, 32, 1, 2 } }, { "GeForce GTX TITAN Black", { 16, 8, 1, 2 } },
{ "Tesla K20m", { 32, 8, 1, 2 } }, { "Tesla K20m", { 32, 8, 1, 2 } },
{ "Tesla K40m", { 16, 8, 1, 1 } }, { "Tesla K40m", { 16, 8, 1, 1 } },
{ "default", { 32, 8, 1, 2 } }, { "default", { 16, 8, 1, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 8, 2, 1 } },
{ "GeForce GTX 750 Ti", { 16, 8, 1, 1 } },
{ "default", { 16, 8, 1, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 16, 1, 1 } },
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } },
{ "default", { 16, 16, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 32, 1, 1 } },
{ "GeForce GTX 1080", { 32, 8, 1, 1 } },
{ "TITAN X (Pascal)", { 32, 32, 1, 2 } },
{ "default", { 16, 8, 4, 1 } },
} },
{ "default", {
{ "default", { 32, 8, 1, 2 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 32, 8, 4, 1 } }, { "default", {
{ "default", { 32, 8, 4, 1 } }, { "QUALCOMM Adreno(TM)", { 32, 8, 4, 1 } },
{ "default", { 32, 8, 4, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 8, 1, 1 } }, { "default", {
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry PadDouble = {
"Pad", Precision::kDouble, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, { "Pad", Precision::kDouble, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 8, 32, 2, 1 } }, { "AMD Radeon RX 480", { 8, 32, 2, 1 } },
{ "Fiji", { 8, 16, 1, 2 } }, { "default", { 8, 32, 2, 1 } },
{ "Hawaii", { 32, 8, 1, 2 } }, } },
{ "Oland", { 8, 32, 1, 1 } }, { "Fiji", {
{ "Pitcairn", { 8, 8, 1, 2 } }, { "AMD Radeon R9 Fury X", { 8, 16, 1, 2 } },
{ "Tahiti", { 32, 8, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 8, 1, 1 } },
{ "Tonga", { 32, 8, 4, 1 } }, { "default", { 8, 16, 1, 2 } },
{ "default", { 16, 16, 1, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 32, 8, 1, 2 } },
{ "default", { 32, 8, 1, 2 } },
} },
{ "Oland", {
{ "Oland", { 8, 32, 1, 1 } },
{ "default", { 8, 32, 1, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 8, 8, 1, 2 } },
{ "default", { 8, 8, 1, 2 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 32, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 32, 8, 4, 1 } },
{ "default", { 32, 8, 4, 1 } },
} },
{ "default", {
{ "default", { 16, 16, 1, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 32, 8, 4, 2 } }, { "default", {
{ "default", { 32, 8, 4, 2 } }, { "Mali-T628", { 32, 8, 4, 2 } },
{ "default", { 32, 8, 4, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 8, 4, 2 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 4, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 8, 4, 2 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 16, 2, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 4, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 32, 4, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 16, 2, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32, 4, 1 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 32, 4, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 2, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32, 4, 1 } },
{ "default", { 32, 16, 4, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 2, 1 } },
{ "default", { 32, 16, 4, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 1, 1 } }, { "default", {
{ "default", { 32, 8, 1, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 32, 8, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 8, 1, 1 } }, { "GeForce GTX 480", { 16, 8, 1, 1 } },
{ "GeForce GTX 1080", { 32, 32, 2, 1 } }, { "default", { 16, 8, 1, 1 } },
{ "GeForce GTX 480", { 16, 8, 1, 1 } }, } },
{ "GeForce GTX 670", { 16, 16, 2, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 32, 32, 1, 2 } }, { "GRID K520", { 32, 8, 1, 1 } },
{ "GeForce GTX 750", { 32, 16, 1, 1 } }, { "GeForce GTX 670", { 16, 16, 2, 1 } },
{ "GeForce GTX 750 Ti", { 8, 16, 1, 1 } }, { "GeForce GTX 680", { 32, 32, 1, 2 } },
{ "GeForce GTX 980", { 8, 16, 1, 1 } }, { "default", { 32, 8, 1, 1 } },
{ "GeForce GTX TITAN", { 32, 8, 1, 1 } }, } },
{ "GeForce GTX TITAN Black", { 16, 8, 1, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } }, { "GeForce GTX TITAN", { 32, 8, 1, 1 } },
{ "TITAN X (Pascal)", { 8, 32, 4, 1 } }, { "GeForce GTX TITAN Black", { 16, 8, 1, 1 } },
{ "Tesla K20m", { 32, 8, 1, 1 } }, { "Tesla K20m", { 32, 8, 1, 1 } },
{ "Tesla K40m", { 16, 8, 1, 2 } }, { "Tesla K40m", { 16, 8, 1, 2 } },
{ "default", { 32, 8, 1, 1 } }, { "default", { 32, 8, 1, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 16, 1, 1 } },
{ "GeForce GTX 750 Ti", { 8, 16, 1, 1 } },
{ "default", { 8, 16, 1, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 8, 16, 1, 1 } },
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } },
{ "default", { 16, 8, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 8, 1, 1 } },
{ "GeForce GTX 1080", { 32, 32, 2, 1 } },
{ "TITAN X (Pascal)", { 8, 32, 4, 1 } },
{ "default", { 32, 32, 2, 1 } },
} },
{ "default", {
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 8, 1, 1 } }, { "default", {
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry PadComplexDouble = {
"Pad", Precision::kComplexDouble, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, { "Pad", Precision::kComplexDouble, {"PAD_DIMX", "PAD_DIMY", "PAD_WPTX", "PAD_WPTY"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 16, 8, 1, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 8, 16, 1, 2 } }, { "AMD Radeon RX 480", { 8, 16, 1, 2 } },
{ "Fiji", { 32, 8, 2, 1 } }, { "default", { 8, 16, 1, 2 } },
{ "Hawaii", { 32, 8, 1, 1 } }, } },
{ "Oland", { 8, 16, 2, 1 } }, { "Fiji", {
{ "Pitcairn", { 16, 8, 1, 1 } }, { "AMD Radeon R9 Fury X", { 32, 8, 2, 1 } },
{ "Tahiti", { 8, 16, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 16, 8, 1, 1 } },
{ "Tonga", { 8, 16, 1, 1 } }, { "default", { 32, 8, 2, 1 } },
{ "default", { 8, 16, 1, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 32, 8, 1, 1 } },
{ "default", { 32, 8, 1, 1 } },
} },
{ "Oland", {
{ "Oland", { 8, 16, 2, 1 } },
{ "default", { 8, 16, 2, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 16, 8, 1, 1 } },
{ "default", { 16, 8, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 8, 16, 1, 1 } },
{ "default", { 8, 16, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 8, 16, 1, 1 } },
{ "default", { 8, 16, 1, 1 } },
} },
{ "default", {
{ "default", { 8, 16, 1, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 16, 8, 4, 1 } }, { "default", {
{ "default", { 16, 8, 4, 1 } }, { "Mali-T628", { 16, 8, 4, 1 } },
{ "default", { 16, 8, 4, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 16, 4, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 2, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 16, 4, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 2, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 2, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 16, 32, 4, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 8, 2, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32, 2, 2 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 16, 32, 4, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 2, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32, 2, 2 } },
{ "default", { 32, 8, 2, 2 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 2, 1 } },
{ "default", { 32, 8, 2, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 4, 1 } }, { "default", {
{ "default", { 32, 8, 4, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 4, 1 } },
{ "default", { 32, 8, 4, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 8, 8, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 8, 2, 2 } }, { "GeForce GTX 480", { 16, 8, 1, 1 } },
{ "GeForce GTX 1080", { 8, 8, 1, 1 } }, { "default", { 16, 8, 1, 1 } },
{ "GeForce GTX 480", { 16, 8, 1, 1 } }, } },
{ "GeForce GTX 670", { 32, 8, 1, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 8, 8, 1, 1 } }, { "GRID K520", { 8, 8, 1, 1 } },
{ "GeForce GTX 750", { 8, 8, 1, 1 } }, { "GeForce GTX 670", { 32, 8, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 32, 1, 1 } }, { "GeForce GTX 680", { 8, 8, 1, 1 } },
{ "GeForce GTX 980", { 16, 16, 1, 1 } }, { "default", { 32, 8, 1, 1 } },
{ "GeForce GTX TITAN", { 8, 32, 1, 2 } }, } },
{ "GeForce GTX TITAN Black", { 16, 8, 1, 4 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } }, { "GeForce GTX TITAN", { 8, 32, 1, 2 } },
{ "TITAN X (Pascal)", { 8, 16, 1, 1 } }, { "GeForce GTX TITAN Black", { 16, 8, 1, 4 } },
{ "Tesla K20m", { 8, 8, 1, 2 } }, { "Tesla K20m", { 8, 8, 1, 2 } },
{ "Tesla K40m", { 8, 8, 1, 1 } }, { "Tesla K40m", { 8, 8, 1, 1 } },
{ "default", { 16, 8, 1, 1 } }, { "default", { 16, 32, 1, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 8, 8, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 32, 1, 1 } },
{ "default", { 16, 32, 1, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 16, 1, 1 } },
{ "GeForce GTX TITAN X", { 16, 8, 1, 1 } },
{ "default", { 16, 8, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 8, 2, 2 } },
{ "GeForce GTX 1080", { 8, 8, 1, 1 } },
{ "TITAN X (Pascal)", { 8, 16, 1, 1 } },
{ "default", { 16, 32, 2, 1 } },
} },
{ "default", {
{ "default", { 16, 8, 1, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 8, 1, 1 } }, { "default", {
{ "default", { 32, 8, 1, 1 } },
} },
} }
}, },
} }

View File

@ -14,26 +14,37 @@ const DatabaseEntry PadtransposeHalf = {
"Padtranspose", Precision::kHalf, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, { "Padtranspose", Precision::kHalf, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 0, 16, 4 } }, { "Ellesmere", {
{ "default", { 0, 16, 4 } }, { "AMD Radeon RX 480", { 0, 16, 4 } },
{ "default", { 0, 16, 4 } },
} },
{ "default", {
{ "default", { 0, 16, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 0, 8, 1 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 1, 8, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 0, 8, 1 } },
{ "default", { 0, 8, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 1, 8, 2 } },
{ "default", { 0, 8, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 0, 8, 8 } }, { "default", {
{ "default", { 0, 8, 8 } }, { "QUALCOMM Adreno(TM)", { 0, 8, 8 } },
{ "default", { 0, 8, 8 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 0, 8, 1 } }, { "default", {
{ "default", { 0, 8, 1 } },
} },
} }
}, },
} }

View File

@ -14,83 +14,144 @@ const DatabaseEntry PadtransposeSingle = {
"Padtranspose", Precision::kSingle, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, { "Padtranspose", Precision::kSingle, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 0, 16, 4 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 1, 16, 1 } }, { "AMD Radeon RX 480", { 1, 8, 4 } },
{ "Ellesmere", { 1, 8, 4 } }, { "default", { 1, 8, 4 } },
{ "Fiji", { 0, 16, 2 } }, } },
{ "Hawaii", { 1, 16, 4 } }, { "Fiji", {
{ "Oland", { 0, 16, 4 } }, { "AMD Radeon R9 Fury X", { 0, 16, 2 } },
{ "Pitcairn", { 0, 16, 4 } }, { "AMD Radeon R9 M370X Compute Engine", { 0, 16, 4 } },
{ "Tahiti", { 0, 16, 4 } }, { "default", { 0, 16, 4 } },
{ "Tonga", { 0, 16, 2 } }, } },
{ "Turks", { 1, 16, 1 } }, { "Hawaii", {
{ "default", { 0, 16, 4 } }, { "AMD Radeon R9 290X", { 1, 16, 4 } },
{ "default", { 1, 16, 4 } },
} },
{ "Oland", {
{ "Oland", { 0, 16, 4 } },
{ "default", { 0, 16, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 0, 16, 4 } },
{ "default", { 0, 16, 4 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 0, 16, 4 } },
{ "default", { 0, 16, 4 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 0, 16, 2 } },
{ "default", { 0, 16, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } },
} },
{ "default", {
{ "default", { 0, 16, 4 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 0, 8, 2 } }, { "default", {
{ "default", { 0, 8, 2 } }, { "Mali-T628", { 0, 8, 2 } },
{ "default", { 0, 8, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 0, 16, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 0, 32, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 0, 16, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 0, 32, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 0, 8, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 0, 32, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 8 } },
{ "default", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 0, 32, 1 } },
{ "default", { 0, 8, 8 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 1, 16, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 0, 16, 4 } }, { "Intel(R) HD Graphics 530", { 1, 16, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 16, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 0, 16, 4 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 0, 16, 4 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 16, 2 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 1, 16, 2 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 0, 16, 4 } },
{ "Iris", { 1, 16, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 1, 16, 2 } },
{ "Iris Pro", { 1, 16, 2 } }, { "Iris", { 1, 16, 2 } },
{ "default", { 1, 16, 2 } }, { "Iris Pro", { 1, 16, 2 } },
{ "default", { 1, 16, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 0, 16, 2 } }, { "default", {
{ "default", { 0, 16, 2 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 0, 16, 2 } },
{ "default", { 0, 16, 2 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 32, 2 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 0, 16, 1 } }, { "GeForce GTX 480", { 1, 16, 2 } },
{ "GeForce GTX 1080", { 1, 16, 2 } }, { "default", { 1, 16, 2 } },
{ "GeForce GTX 480", { 1, 16, 2 } }, } },
{ "GeForce GTX 670", { 1, 32, 2 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 16, 2 } }, { "GRID K520", { 1, 32, 2 } },
{ "GeForce GTX 750", { 1, 32, 2 } }, { "GeForce GTX 670", { 1, 32, 2 } },
{ "GeForce GTX 750 Ti", { 1, 32, 2 } }, { "GeForce GTX 680", { 1, 16, 2 } },
{ "GeForce GTX 980", { 0, 16, 1 } }, { "default", { 1, 32, 2 } },
{ "GeForce GTX TITAN", { 1, 16, 2 } }, } },
{ "GeForce GTX TITAN Black", { 1, 32, 2 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 32, 1 } }, { "GeForce GTX TITAN", { 1, 16, 2 } },
{ "TITAN X (Pascal)", { 1, 16, 2 } }, { "GeForce GTX TITAN Black", { 1, 32, 2 } },
{ "Tesla K20m", { 1, 16, 2 } }, { "Tesla K20m", { 1, 16, 2 } },
{ "Tesla K40m", { 1, 32, 2 } }, { "Tesla K40m", { 1, 32, 2 } },
{ "default", { 1, 32, 2 } }, { "default", { 1, 16, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 32, 2 } },
{ "GeForce GTX 750 Ti", { 1, 32, 2 } },
{ "default", { 1, 32, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 0, 16, 1 } },
{ "GeForce GTX TITAN X", { 1, 32, 1 } },
{ "default", { 1, 32, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 0, 16, 1 } },
{ "GeForce GTX 1080", { 1, 16, 2 } },
{ "TITAN X (Pascal)", { 1, 16, 2 } },
{ "default", { 1, 16, 2 } },
} },
{ "default", {
{ "default", { 1, 32, 2 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 0, 8, 2 } }, { "default", {
{ "default", { 0, 8, 2 } }, { "QUALCOMM Adreno(TM)", { 0, 8, 2 } },
{ "default", { 0, 8, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 16, 2 } }, { "default", {
{ "default", { 1, 16, 2 } },
} },
} }
}, },
} }

View File

@ -14,83 +14,144 @@ const DatabaseEntry PadtransposeComplexSingle = {
"Padtranspose", Precision::kComplexSingle, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, { "Padtranspose", Precision::kComplexSingle, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 0, 16, 4 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 1, 16, 1 } }, { "AMD Radeon RX 480", { 0, 8, 4 } },
{ "Ellesmere", { 0, 8, 4 } }, { "default", { 0, 8, 4 } },
{ "Fiji", { 1, 16, 2 } }, } },
{ "Hawaii", { 0, 16, 2 } }, { "Fiji", {
{ "Oland", { 0, 8, 4 } }, { "AMD Radeon R9 Fury X", { 1, 16, 2 } },
{ "Pitcairn", { 0, 8, 4 } }, { "AMD Radeon R9 M370X Compute Engine", { 0, 16, 4 } },
{ "Tahiti", { 0, 16, 2 } }, { "default", { 0, 16, 4 } },
{ "Tonga", { 0, 16, 2 } }, } },
{ "Turks", { 0, 16, 4 } }, { "Hawaii", {
{ "default", { 0, 8, 4 } }, { "AMD Radeon R9 290X", { 0, 16, 2 } },
{ "default", { 0, 16, 2 } },
} },
{ "Oland", {
{ "Oland", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 0, 16, 2 } },
{ "default", { 0, 16, 2 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 0, 16, 2 } },
{ "default", { 0, 16, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 0, 16, 4 } },
{ "default", { 0, 16, 4 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } },
} },
{ "default", {
{ "default", { 0, 8, 4 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 1, 16, 2 } }, { "default", {
{ "default", { 1, 16, 2 } }, { "Mali-T628", { 1, 16, 2 } },
{ "default", { 1, 16, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 8, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 0, 8, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 8, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 0, 8, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 0, 8, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 0, 8, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 8 } },
{ "default", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 0, 8, 4 } },
{ "default", { 0, 8, 8 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 1, 16, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 0, 16, 2 } }, { "Intel(R) HD Graphics 530", { 1, 16, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 16, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 0, 16, 2 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 0, 16, 2 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 16, 2 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 0, 16, 4 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 0, 16, 2 } },
{ "Iris", { 0, 16, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 0, 16, 4 } },
{ "Iris Pro", { 1, 16, 2 } }, { "Iris", { 0, 16, 2 } },
{ "default", { 1, 16, 2 } }, { "Iris Pro", { 1, 16, 2 } },
{ "default", { 1, 16, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 1, 16, 1 } }, { "default", {
{ "default", { 1, 16, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 16, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 16, 1 } }, { "GeForce GTX 480", { 1, 16, 1 } },
{ "GeForce GTX 1080", { 0, 8, 1 } }, { "default", { 1, 16, 1 } },
{ "GeForce GTX 480", { 1, 16, 1 } }, } },
{ "GeForce GTX 670", { 1, 16, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 16, 1 } }, { "GRID K520", { 1, 16, 1 } },
{ "GeForce GTX 750", { 1, 16, 2 } }, { "GeForce GTX 670", { 1, 16, 1 } },
{ "GeForce GTX 750 Ti", { 1, 16, 1 } }, { "GeForce GTX 680", { 1, 16, 1 } },
{ "GeForce GTX 980", { 0, 16, 1 } }, { "default", { 1, 16, 1 } },
{ "GeForce GTX TITAN", { 1, 16, 1 } }, } },
{ "GeForce GTX TITAN Black", { 0, 16, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 32, 1 } }, { "GeForce GTX TITAN", { 1, 16, 1 } },
{ "TITAN X (Pascal)", { 1, 8, 1 } }, { "GeForce GTX TITAN Black", { 0, 16, 1 } },
{ "Tesla K20m", { 0, 16, 1 } }, { "Tesla K20m", { 0, 16, 1 } },
{ "Tesla K40m", { 1, 16, 1 } }, { "Tesla K40m", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } }, { "default", { 0, 16, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 16, 2 } },
{ "GeForce GTX 750 Ti", { 1, 16, 1 } },
{ "default", { 1, 16, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 0, 16, 1 } },
{ "GeForce GTX TITAN X", { 1, 32, 1 } },
{ "default", { 1, 32, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 16, 1 } },
{ "GeForce GTX 1080", { 0, 8, 1 } },
{ "TITAN X (Pascal)", { 1, 8, 1 } },
{ "default", { 1, 8, 1 } },
} },
{ "default", {
{ "default", { 1, 16, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 0, 8, 4 } }, { "default", {
{ "default", { 0, 8, 4 } }, { "QUALCOMM Adreno(TM)", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 8, 2 } }, { "default", {
{ "default", { 1, 8, 2 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry PadtransposeDouble = {
"Padtranspose", Precision::kDouble, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, { "Padtranspose", Precision::kDouble, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 0, 16, 4 } }, { "Ellesmere", {
{ "Ellesmere", { 0, 16, 4 } }, { "AMD Radeon RX 480", { 0, 16, 4 } },
{ "Fiji", { 0, 16, 2 } }, { "default", { 0, 16, 4 } },
{ "Hawaii", { 0, 16, 2 } }, } },
{ "Oland", { 0, 16, 4 } }, { "Fiji", {
{ "Pitcairn", { 0, 8, 4 } }, { "AMD Radeon R9 Fury X", { 0, 16, 2 } },
{ "Tahiti", { 1, 16, 2 } }, { "AMD Radeon R9 M370X Compute Engine", { 0, 16, 4 } },
{ "Tonga", { 0, 8, 2 } }, { "default", { 0, 16, 4 } },
{ "default", { 0, 16, 4 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 0, 16, 2 } },
{ "default", { 0, 16, 2 } },
} },
{ "Oland", {
{ "Oland", { 0, 16, 4 } },
{ "default", { 0, 16, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 16, 2 } },
{ "default", { 1, 16, 2 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 0, 8, 2 } },
{ "default", { 0, 8, 2 } },
} },
{ "default", {
{ "default", { 0, 16, 4 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 0, 16, 2 } }, { "default", {
{ "default", { 0, 16, 2 } }, { "Mali-T628", { 0, 16, 2 } },
{ "default", { 0, 16, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 8, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 0, 64, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 8, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 0, 64, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 8 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 0, 8, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 32, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 8 } },
{ "default", { 1, 8, 4 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 32, 1 } },
{ "default", { 1, 8, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 0, 16, 1 } }, { "default", {
{ "default", { 0, 16, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 0, 16, 1 } },
{ "default", { 0, 16, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 16, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 16, 1 } }, { "GeForce GTX 480", { 1, 16, 1 } },
{ "GeForce GTX 1080", { 0, 8, 1 } }, { "default", { 1, 16, 1 } },
{ "GeForce GTX 480", { 1, 16, 1 } }, } },
{ "GeForce GTX 670", { 1, 16, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 16, 1 } }, { "GRID K520", { 1, 16, 1 } },
{ "GeForce GTX 750", { 1, 16, 2 } }, { "GeForce GTX 670", { 1, 16, 1 } },
{ "GeForce GTX 750 Ti", { 1, 32, 2 } }, { "GeForce GTX 680", { 1, 16, 1 } },
{ "GeForce GTX 980", { 1, 32, 1 } }, { "default", { 1, 16, 1 } },
{ "GeForce GTX TITAN", { 0, 16, 1 } }, } },
{ "GeForce GTX TITAN Black", { 0, 16, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 32, 1 } }, { "GeForce GTX TITAN", { 0, 16, 1 } },
{ "TITAN X (Pascal)", { 0, 8, 1 } }, { "GeForce GTX TITAN Black", { 0, 16, 1 } },
{ "Tesla K20m", { 0, 16, 1 } }, { "Tesla K20m", { 0, 16, 1 } },
{ "Tesla K40m", { 1, 16, 1 } }, { "Tesla K40m", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } }, { "default", { 0, 16, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 16, 2 } },
{ "GeForce GTX 750 Ti", { 1, 32, 2 } },
{ "default", { 1, 32, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 1, 32, 1 } },
{ "GeForce GTX TITAN X", { 1, 32, 1 } },
{ "default", { 1, 32, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 16, 1 } },
{ "GeForce GTX 1080", { 0, 8, 1 } },
{ "TITAN X (Pascal)", { 0, 8, 1 } },
{ "default", { 1, 16, 1 } },
} },
{ "default", {
{ "default", { 1, 16, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 16, 2 } }, { "default", {
{ "default", { 1, 16, 2 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry PadtransposeComplexDouble = {
"Padtranspose", Precision::kComplexDouble, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, { "Padtranspose", Precision::kComplexDouble, {"PADTRA_PAD", "PADTRA_TILE", "PADTRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 0, 8, 4 } }, { "Ellesmere", {
{ "Ellesmere", { 0, 8, 4 } }, { "AMD Radeon RX 480", { 0, 8, 4 } },
{ "Fiji", { 0, 8, 2 } }, { "default", { 0, 8, 4 } },
{ "Hawaii", { 0, 8, 4 } }, } },
{ "Oland", { 0, 8, 4 } }, { "Fiji", {
{ "Pitcairn", { 0, 8, 4 } }, { "AMD Radeon R9 Fury X", { 0, 8, 2 } },
{ "Tahiti", { 0, 8, 2 } }, { "AMD Radeon R9 M370X Compute Engine", { 0, 8, 4 } },
{ "Tonga", { 0, 8, 2 } }, { "default", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
{ "Oland", {
{ "Oland", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 0, 8, 2 } },
{ "default", { 0, 8, 2 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 0, 8, 2 } },
{ "default", { 0, 8, 2 } },
} },
{ "default", {
{ "default", { 0, 8, 4 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 0, 8, 1 } }, { "default", {
{ "default", { 0, 8, 1 } }, { "Mali-T628", { 0, 8, 1 } },
{ "default", { 0, 8, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 8, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 0, 8, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 16, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 8, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 8, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 16, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 8, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 8, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 0, 8, 4 } },
{ "default", { 0, 8, 4 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 8, 4 } },
{ "default", { 0, 8, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 0, 16, 1 } }, { "default", {
{ "default", { 0, 16, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 0, 16, 1 } },
{ "default", { 0, 16, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 16, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 16, 1 } }, { "GeForce GTX 480", { 1, 16, 1 } },
{ "GeForce GTX 1080", { 1, 8, 1 } }, { "default", { 1, 16, 1 } },
{ "GeForce GTX 480", { 1, 16, 1 } }, } },
{ "GeForce GTX 670", { 1, 16, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 32, 1 } }, { "GRID K520", { 1, 16, 1 } },
{ "GeForce GTX 750", { 1, 16, 1 } }, { "GeForce GTX 670", { 1, 16, 1 } },
{ "GeForce GTX 750 Ti", { 1, 8, 2 } }, { "GeForce GTX 680", { 1, 32, 1 } },
{ "GeForce GTX 980", { 0, 16, 1 } }, { "default", { 1, 16, 1 } },
{ "GeForce GTX TITAN", { 1, 16, 1 } }, } },
{ "GeForce GTX TITAN Black", { 0, 16, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 32, 1 } }, { "GeForce GTX TITAN", { 1, 16, 1 } },
{ "TITAN X (Pascal)", { 1, 8, 1 } }, { "GeForce GTX TITAN Black", { 0, 16, 1 } },
{ "Tesla K20m", { 1, 16, 1 } }, { "Tesla K20m", { 1, 16, 1 } },
{ "Tesla K40m", { 1, 16, 1 } }, { "Tesla K40m", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } }, { "default", { 1, 16, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 16, 1 } },
{ "GeForce GTX 750 Ti", { 1, 8, 2 } },
{ "default", { 1, 16, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 0, 16, 1 } },
{ "GeForce GTX TITAN X", { 1, 32, 1 } },
{ "default", { 0, 16, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 16, 1 } },
{ "GeForce GTX 1080", { 1, 8, 1 } },
{ "TITAN X (Pascal)", { 1, 8, 1 } },
{ "default", { 1, 8, 1 } },
} },
{ "default", {
{ "default", { 1, 16, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 0, 8, 2 } }, { "default", {
{ "default", { 0, 8, 2 } },
} },
} }
}, },
} }

View File

@ -14,26 +14,37 @@ const DatabaseEntry TransposeHalf = {
"Transpose", Precision::kHalf, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, { "Transpose", Precision::kHalf, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 4, 0, 1, 8 } }, { "Ellesmere", {
{ "default", { 4, 0, 1, 8 } }, { "AMD Radeon RX 480", { 4, 0, 1, 8 } },
{ "default", { 4, 0, 1, 8 } },
} },
{ "default", {
{ "default", { 4, 0, 1, 8 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 1, 1, 8 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 16, 0, 0, 4 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 1, 1, 8 } },
{ "default", { 8, 1, 0, 8 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 16, 0, 0, 4 } },
{ "default", { 8, 1, 0, 8 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 8, 0, 0, 4 } }, { "default", {
{ "default", { 8, 0, 0, 4 } }, { "QUALCOMM Adreno(TM)", { 8, 0, 0, 4 } },
{ "default", { 8, 0, 0, 4 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 8, 0, 1, 8 } }, { "default", {
{ "default", { 8, 0, 1, 8 } },
} },
} }
}, },
} }

View File

@ -14,84 +14,145 @@ const DatabaseEntry TransposeSingle = {
"Transpose", Precision::kSingle, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, { "Transpose", Precision::kSingle, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 4, 0, 1, 8 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 8, 0, 1, 2 } }, { "AMD Radeon RX 480", { 16, 0, 1, 4 } },
{ "Ellesmere", { 16, 0, 1, 4 } }, { "default", { 16, 0, 1, 4 } },
{ "Fiji", { 16, 0, 1, 2 } }, } },
{ "Hawaii", { 4, 0, 1, 8 } }, { "Fiji", {
{ "Oland", { 8, 0, 1, 4 } }, { "AMD Radeon R9 Fury X", { 16, 0, 1, 2 } },
{ "Pitcairn", { 16, 0, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 4, 0, 1, 8 } },
{ "Tahiti", { 4, 0, 1, 4 } }, { "default", { 8, 0, 1, 2 } },
{ "Tonga", { 8, 1, 1, 2 } }, } },
{ "Turks", { 8, 0, 1, 2 } }, { "Hawaii", {
{ "default", { 8, 0, 1, 2 } }, { "AMD Radeon R9 290X", { 4, 0, 1, 8 } },
{ "default", { 4, 0, 1, 8 } },
} },
{ "Oland", {
{ "Oland", { 8, 0, 1, 4 } },
{ "default", { 8, 0, 1, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 4, 0, 1, 4 } },
{ "default", { 4, 0, 1, 4 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 8, 1, 1, 2 } },
{ "default", { 8, 1, 1, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 8, 0, 1, 2 } },
{ "default", { 8, 0, 1, 2 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 8, 0, 1, 2 } },
{ "default", { 8, 0, 1, 2 } },
} },
{ "default", {
{ "default", { 8, 0, 1, 2 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 8, 0, 1, 4 } }, { "default", {
{ "default", { 8, 0, 1, 4 } }, { "Mali-T628", { 8, 0, 1, 4 } },
{ "default", { 8, 0, 1, 4 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1, 0, 16 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 0, 0, 8 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1, 0, 16 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 0, 1, 8 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 0, 0, 8 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 0, 0, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 0, 1, 8 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 1, 0, 16 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 0, 0, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 4, 0, 0, 8 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 1, 0, 16 } },
{ "default", { 4, 0, 0, 8 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 4, 0, 0, 8 } },
{ "default", { 4, 0, 0, 8 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 16, 0, 1, 4 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 16, 0, 0, 4 } }, { "Intel(R) HD Graphics 530", { 16, 0, 1, 4 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 16, 0, 0, 4 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 16, 0, 0, 4 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 8, 0, 1, 4 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 16, 0, 0, 4 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 16, 0, 1, 2 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 8, 0, 1, 4 } },
{ "Iris", { 8, 1, 0, 4 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 16, 0, 1, 2 } },
{ "Iris Pro", { 16, 1, 0, 4 } }, { "Iris", { 8, 1, 0, 4 } },
{ "default", { 16, 0, 0, 4 } }, { "Iris Pro", { 16, 1, 0, 4 } },
{ "default", { 16, 0, 0, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 16, 1, 1, 1 } }, { "default", {
{ "default", { 16, 1, 1, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 16, 1, 1, 1 } },
{ "default", { 16, 1, 1, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 32, 1, 1, 2 } }, { "SM2.0", {
{ "GeForce GT 650M", { 8, 1, 0, 4 } }, { "GeForce GTX 480", { 16, 1, 0, 2 } },
{ "GeForce GTX 1070", { 8, 0, 1, 4 } }, { "default", { 16, 1, 0, 2 } },
{ "GeForce GTX 1080", { 4, 0, 0, 4 } }, } },
{ "GeForce GTX 480", { 16, 1, 0, 2 } }, { "SM3.0", {
{ "GeForce GTX 670", { 16, 1, 1, 2 } }, { "GRID K520", { 32, 1, 1, 2 } },
{ "GeForce GTX 680", { 16, 1, 1, 2 } }, { "GeForce GT 650M", { 8, 1, 0, 4 } },
{ "GeForce GTX 750", { 4, 0, 0, 8 } }, { "GeForce GTX 670", { 16, 1, 1, 2 } },
{ "GeForce GTX 750 Ti", { 32, 1, 0, 2 } }, { "GeForce GTX 680", { 16, 1, 1, 2 } },
{ "GeForce GTX 980", { 16, 0, 0, 1 } }, { "default", { 16, 1, 1, 2 } },
{ "GeForce GTX TITAN", { 8, 1, 0, 4 } }, } },
{ "GeForce GTX TITAN Black", { 8, 1, 0, 4 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 0, 0, 4 } }, { "GeForce GTX TITAN", { 8, 1, 0, 4 } },
{ "TITAN X (Pascal)", { 8, 0, 0, 4 } }, { "GeForce GTX TITAN Black", { 8, 1, 0, 4 } },
{ "Tesla K20m", { 8, 0, 0, 4 } }, { "Tesla K20m", { 8, 0, 0, 4 } },
{ "Tesla K40m", { 8, 1, 0, 4 } }, { "Tesla K40m", { 8, 1, 0, 4 } },
{ "default", { 8, 1, 0, 4 } }, { "default", { 8, 1, 0, 4 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 4, 0, 0, 8 } },
{ "GeForce GTX 750 Ti", { 32, 1, 0, 2 } },
{ "default", { 32, 1, 0, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 0, 0, 1 } },
{ "GeForce GTX TITAN X", { 16, 0, 0, 4 } },
{ "default", { 32, 1, 0, 2 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 0, 1, 4 } },
{ "GeForce GTX 1080", { 4, 0, 0, 4 } },
{ "TITAN X (Pascal)", { 8, 0, 0, 4 } },
{ "default", { 8, 0, 1, 4 } },
} },
{ "default", {
{ "default", { 8, 1, 0, 4 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 8, 1, 1, 4 } }, { "default", {
{ "default", { 8, 1, 1, 4 } }, { "QUALCOMM Adreno(TM)", { 8, 1, 1, 4 } },
{ "default", { 8, 1, 1, 4 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 8, 0, 1, 4 } }, { "default", {
{ "default", { 8, 0, 1, 4 } },
} },
} }
}, },
} }

View File

@ -14,77 +14,136 @@ const DatabaseEntry TransposeComplexSingle = {
"Transpose", Precision::kComplexSingle, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, { "Transpose", Precision::kComplexSingle, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 4, 1, 1, 4 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 16, 1, 1, 1 } }, { "AMD Radeon RX 480", { 4, 0, 1, 4 } },
{ "Ellesmere", { 4, 0, 1, 4 } }, { "default", { 4, 0, 1, 4 } },
{ "Fiji", { 8, 1, 1, 2 } }, } },
{ "Hawaii", { 16, 0, 1, 1 } }, { "Fiji", {
{ "Oland", { 4, 0, 1, 2 } }, { "AMD Radeon R9 Fury X", { 8, 1, 1, 2 } },
{ "Pitcairn", { 8, 0, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 4, 1, 1, 4 } },
{ "Tahiti", { 16, 0, 1, 1 } }, { "default", { 8, 1, 1, 2 } },
{ "Tonga", { 16, 0, 1, 1 } }, } },
{ "Turks", { 8, 1, 1, 4 } }, { "Hawaii", {
{ "default", { 8, 0, 1, 1 } }, { "AMD Radeon R9 290X", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } },
} },
{ "Oland", {
{ "Oland", { 4, 0, 1, 2 } },
{ "default", { 4, 0, 1, 2 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 8, 0, 1, 1 } },
{ "default", { 8, 0, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 8, 1, 1, 4 } },
{ "default", { 8, 1, 1, 4 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 16, 1, 1, 1 } },
{ "default", { 16, 1, 1, 1 } },
} },
{ "default", {
{ "default", { 8, 0, 1, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 16, 0, 0, 2 } }, { "default", {
{ "default", { 16, 0, 0, 2 } }, { "Mali-T628", { 16, 0, 0, 2 } },
{ "default", { 16, 0, 0, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 0, 1, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 8, 0, 0, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 0, 1, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 0, 0, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 8, 0, 0, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 1, 0, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 0, 0, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 1, 0, 8 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 1, 0, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 0, 0, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 1, 0, 8 } },
{ "default", { 4, 1, 0, 8 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 0, 0, 4 } },
{ "default", { 4, 1, 0, 8 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 16, 1, 1, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 0, 0, 2 } }, { "Intel(R) HD Graphics 530", { 16, 1, 1, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 8, 0, 0, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 0, 0, 2 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 16, 1, 1, 2 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 8, 0, 0, 2 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 16, 1, 0, 2 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 16, 1, 1, 2 } },
{ "Iris", { 8, 0, 0, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 16, 1, 0, 2 } },
{ "Iris Pro", { 16, 1, 0, 2 } }, { "Iris", { 8, 0, 0, 2 } },
{ "default", { 16, 1, 0, 2 } }, { "Iris Pro", { 16, 1, 0, 2 } },
{ "default", { 16, 1, 0, 2 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 1, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 16, 1, 1, 1 } }, { "GeForce GTX 480", { 16, 1, 0, 1 } },
{ "GeForce GTX 1080", { 16, 1, 0, 1 } }, { "default", { 16, 1, 0, 1 } },
{ "GeForce GTX 480", { 16, 1, 0, 1 } }, } },
{ "GeForce GTX 670", { 16, 1, 1, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 16, 1, 1, 1 } }, { "GRID K520", { 16, 1, 1, 1 } },
{ "GeForce GTX 750", { 16, 1, 0, 1 } }, { "GeForce GTX 670", { 16, 1, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 1, 0, 1 } }, { "GeForce GTX 680", { 16, 1, 1, 1 } },
{ "GeForce GTX 980", { 16, 1, 0, 1 } }, { "default", { 16, 1, 1, 1 } },
{ "GeForce GTX TITAN", { 16, 0, 0, 1 } }, } },
{ "GeForce GTX TITAN Black", { 16, 1, 0, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 32, 1, 0, 1 } }, { "GeForce GTX TITAN", { 16, 0, 0, 1 } },
{ "TITAN X (Pascal)", { 8, 1, 0, 2 } }, { "GeForce GTX TITAN Black", { 16, 1, 0, 1 } },
{ "Tesla K20m", { 16, 0, 0, 1 } }, { "Tesla K20m", { 16, 0, 0, 1 } },
{ "Tesla K40m", { 16, 1, 0, 1 } }, { "Tesla K40m", { 16, 1, 0, 1 } },
{ "default", { 16, 1, 0, 1 } }, { "default", { 16, 1, 0, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 16, 1, 0, 1 } },
{ "GeForce GTX 750 Ti", { 16, 1, 0, 1 } },
{ "default", { 16, 1, 0, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 1, 0, 1 } },
{ "GeForce GTX TITAN X", { 32, 1, 0, 1 } },
{ "default", { 32, 1, 0, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 16, 1, 1, 1 } },
{ "GeForce GTX 1080", { 16, 1, 0, 1 } },
{ "TITAN X (Pascal)", { 8, 1, 0, 2 } },
{ "default", { 16, 1, 0, 1 } },
} },
{ "default", {
{ "default", { 16, 1, 0, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 16, 1, 0, 1 } }, { "default", {
{ "default", { 16, 1, 0, 1 } }, { "QUALCOMM Adreno(TM)", { 16, 1, 0, 1 } },
{ "default", { 16, 1, 0, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 8, 1, 1, 2 } }, { "default", {
{ "default", { 8, 1, 1, 2 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry TransposeDouble = {
"Transpose", Precision::kDouble, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, { "Transpose", Precision::kDouble, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 4, 0, 1, 4 } }, { "Ellesmere", {
{ "Ellesmere", { 4, 0, 1, 4 } }, { "AMD Radeon RX 480", { 4, 0, 1, 4 } },
{ "Fiji", { 8, 1, 1, 2 } }, { "default", { 4, 0, 1, 4 } },
{ "Hawaii", { 16, 0, 1, 1 } }, } },
{ "Oland", { 8, 1, 1, 2 } }, { "Fiji", {
{ "Pitcairn", { 4, 0, 1, 2 } }, { "AMD Radeon R9 Fury X", { 8, 1, 1, 2 } },
{ "Tahiti", { 4, 1, 1, 4 } }, { "AMD Radeon R9 M370X Compute Engine", { 4, 0, 1, 4 } },
{ "Tonga", { 4, 0, 1, 4 } }, { "default", { 8, 1, 1, 2 } },
{ "default", { 4, 0, 1, 4 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } },
} },
{ "Oland", {
{ "Oland", { 8, 1, 1, 2 } },
{ "default", { 8, 1, 1, 2 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 4, 0, 1, 2 } },
{ "default", { 4, 0, 1, 2 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 4, 1, 1, 4 } },
{ "default", { 4, 1, 1, 4 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 4, 0, 1, 4 } },
{ "default", { 4, 0, 1, 4 } },
} },
{ "default", {
{ "default", { 4, 0, 1, 4 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 8, 0, 0, 1 } }, { "default", {
{ "default", { 8, 0, 0, 1 } }, { "Mali-T628", { 8, 0, 0, 1 } },
{ "default", { 8, 0, 0, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1, 0, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 0, 0, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1, 0, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 1, 0, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 0, 0, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 1, 0, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 1, 0, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 0, 0, 16 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 1, 0, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 4, 0, 0, 8 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 0, 0, 16 } },
{ "default", { 4, 1, 0, 8 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 4, 0, 0, 8 } },
{ "default", { 4, 1, 0, 8 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 1, 0, 1 } }, { "default", {
{ "default", { 32, 1, 0, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 1, 0, 1 } },
{ "default", { 32, 1, 0, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 1, 1, 2 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 0, 1, 2 } }, { "GeForce GTX 480", { 8, 1, 0, 2 } },
{ "GeForce GTX 1080", { 8, 0, 0, 2 } }, { "default", { 8, 1, 0, 2 } },
{ "GeForce GTX 480", { 8, 1, 0, 2 } }, } },
{ "GeForce GTX 670", { 16, 1, 1, 2 } }, { "SM3.0", {
{ "GeForce GTX 680", { 16, 1, 1, 2 } }, { "GRID K520", { 16, 1, 1, 2 } },
{ "GeForce GTX 750", { 16, 1, 0, 1 } }, { "GeForce GTX 670", { 16, 1, 1, 2 } },
{ "GeForce GTX 750 Ti", { 32, 1, 0, 2 } }, { "GeForce GTX 680", { 16, 1, 1, 2 } },
{ "GeForce GTX 980", { 16, 0, 0, 2 } }, { "default", { 16, 1, 1, 2 } },
{ "GeForce GTX TITAN", { 8, 0, 0, 2 } }, } },
{ "GeForce GTX TITAN Black", { 16, 1, 0, 2 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 32, 1, 0, 1 } }, { "GeForce GTX TITAN", { 8, 0, 0, 2 } },
{ "TITAN X (Pascal)", { 16, 1, 0, 2 } }, { "GeForce GTX TITAN Black", { 16, 1, 0, 2 } },
{ "Tesla K20m", { 16, 1, 0, 2 } }, { "Tesla K20m", { 16, 1, 0, 2 } },
{ "Tesla K40m", { 16, 1, 1, 2 } }, { "Tesla K40m", { 16, 1, 1, 2 } },
{ "default", { 16, 1, 1, 2 } }, { "default", { 16, 1, 0, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 16, 1, 0, 1 } },
{ "GeForce GTX 750 Ti", { 32, 1, 0, 2 } },
{ "default", { 32, 1, 0, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 0, 0, 2 } },
{ "GeForce GTX TITAN X", { 32, 1, 0, 1 } },
{ "default", { 32, 1, 0, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 0, 1, 2 } },
{ "GeForce GTX 1080", { 8, 0, 0, 2 } },
{ "TITAN X (Pascal)", { 16, 1, 0, 2 } },
{ "default", { 8, 1, 0, 2 } },
} },
{ "default", {
{ "default", { 16, 1, 1, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16, 1, 1, 2 } }, { "default", {
{ "default", { 16, 1, 1, 2 } },
} },
} }
}, },
} }

View File

@ -14,57 +14,106 @@ const DatabaseEntry TransposeComplexDouble = {
"Transpose", Precision::kComplexDouble, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, { "Transpose", Precision::kComplexDouble, {"TRA_DIM", "TRA_PAD", "TRA_SHUFFLE", "TRA_WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 4, 1, 1, 2 } }, { "Ellesmere", {
{ "Ellesmere", { 16, 0, 1, 1 } }, { "AMD Radeon RX 480", { 16, 0, 1, 1 } },
{ "Fiji", { 16, 0, 1, 1 } }, { "default", { 16, 0, 1, 1 } },
{ "Hawaii", { 4, 0, 1, 2 } }, } },
{ "Oland", { 16, 0, 1, 1 } }, { "Fiji", {
{ "Pitcairn", { 4, 0, 1, 1 } }, { "AMD Radeon R9 Fury X", { 16, 0, 1, 1 } },
{ "Tahiti", { 16, 0, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 4, 1, 1, 2 } },
{ "Tonga", { 8, 1, 1, 2 } }, { "default", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 4, 0, 1, 2 } },
{ "default", { 4, 0, 1, 2 } },
} },
{ "Oland", {
{ "Oland", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 4, 0, 1, 1 } },
{ "default", { 4, 0, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 16, 0, 1, 1 } },
{ "default", { 16, 0, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 8, 1, 1, 2 } },
{ "default", { 8, 1, 1, 2 } },
} },
{ "default", {
{ "default", { 16, 0, 1, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 8, 0, 0, 1 } }, { "default", {
{ "default", { 8, 0, 0, 1 } }, { "Mali-T628", { 8, 0, 0, 1 } },
{ "default", { 8, 0, 0, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 0, 1, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 0, 0, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 0, 1, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 0, 0, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 0, 0, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 1, 0, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 0, 0, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 0, 1, 8 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 1, 0, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 1, 0, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 0, 1, 8 } },
{ "default", { 4, 0, 0, 8 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 16, 1, 0, 2 } },
{ "default", { 4, 0, 0, 8 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 1, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 0, 0, 1 } }, { "GeForce GTX 480", { 8, 1, 0, 1 } },
{ "GeForce GTX 1080", { 8, 0, 0, 1 } }, { "default", { 8, 1, 0, 1 } },
{ "GeForce GTX 480", { 8, 1, 0, 1 } }, } },
{ "GeForce GTX 670", { 16, 1, 1, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 16, 1, 1, 1 } }, { "GRID K520", { 16, 1, 1, 1 } },
{ "GeForce GTX 750", { 16, 1, 0, 1 } }, { "GeForce GTX 670", { 16, 1, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 1, 0, 1 } }, { "GeForce GTX 680", { 16, 1, 1, 1 } },
{ "GeForce GTX 980", { 32, 1, 0, 1 } }, { "default", { 16, 1, 1, 1 } },
{ "GeForce GTX TITAN", { 16, 1, 0, 1 } }, } },
{ "GeForce GTX TITAN Black", { 16, 0, 0, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 32, 1, 0, 1 } }, { "GeForce GTX TITAN", { 16, 1, 0, 1 } },
{ "TITAN X (Pascal)", { 8, 0, 0, 1 } }, { "GeForce GTX TITAN Black", { 16, 0, 0, 1 } },
{ "Tesla K20m", { 16, 1, 0, 1 } }, { "Tesla K20m", { 16, 1, 0, 1 } },
{ "Tesla K40m", { 16, 1, 0, 1 } }, { "Tesla K40m", { 16, 1, 0, 1 } },
{ "default", { 16, 1, 0, 1 } }, { "default", { 16, 1, 0, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 16, 1, 0, 1 } },
{ "GeForce GTX 750 Ti", { 16, 1, 0, 1 } },
{ "default", { 16, 1, 0, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 32, 1, 0, 1 } },
{ "GeForce GTX TITAN X", { 32, 1, 0, 1 } },
{ "default", { 32, 1, 0, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 0, 0, 1 } },
{ "GeForce GTX 1080", { 8, 0, 0, 1 } },
{ "TITAN X (Pascal)", { 8, 0, 0, 1 } },
{ "default", { 8, 0, 0, 1 } },
} },
{ "default", {
{ "default", { 16, 1, 0, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 16, 1, 1, 1 } }, { "default", {
{ "default", { 16, 1, 1, 1 } },
} },
} }
}, },
} }

View File

@ -14,26 +14,37 @@ const DatabaseEntry XaxpyHalf = {
"Xaxpy", Precision::kHalf, {"VW", "WGS", "WPT"}, { "Xaxpy", Precision::kHalf, {"VW", "WGS", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 4, 128, 4 } }, { "Ellesmere", {
{ "default", { 4, 128, 4 } }, { "AMD Radeon RX 480", { 4, 128, 4 } },
{ "default", { 4, 128, 4 } },
} },
{ "default", {
{ "default", { 4, 128, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 64, 1 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 8, 64, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 64, 1 } },
{ "default", { 8, 64, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 8, 64, 1 } },
{ "default", { 8, 64, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 8, 64, 1 } }, { "default", {
{ "default", { 8, 64, 1 } }, { "QUALCOMM Adreno(TM)", { 8, 64, 1 } },
{ "default", { 8, 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 8, 64, 1 } }, { "default", {
{ "default", { 8, 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,84 +14,145 @@ const DatabaseEntry XaxpySingle = {
"Xaxpy", Precision::kSingle, {"VW", "WGS", "WPT"}, { "Xaxpy", Precision::kSingle, {"VW", "WGS", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 1, 128, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 1, 256, 2 } }, { "AMD Radeon RX 480", { 1, 64, 4 } },
{ "Ellesmere", { 1, 64, 4 } }, { "default", { 1, 64, 4 } },
{ "Fiji", { 4, 64, 1 } }, } },
{ "Hawaii", { 2, 64, 2 } }, { "Fiji", {
{ "Oland", { 1, 128, 1 } }, { "AMD Radeon R9 Fury X", { 4, 64, 1 } },
{ "Pitcairn", { 2, 128, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 1, 128, 1 } },
{ "Tahiti", { 2, 64, 1 } }, { "default", { 4, 64, 1 } },
{ "Tonga", { 1, 256, 8 } }, } },
{ "Turks", { 2, 256, 1 } }, { "Hawaii", {
{ "default", { 2, 256, 1 } }, { "AMD Radeon R9 290X", { 2, 64, 2 } },
{ "default", { 2, 64, 2 } },
} },
{ "Oland", {
{ "Oland", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 2, 128, 1 } },
{ "default", { 2, 128, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 2, 64, 1 } },
{ "default", { 2, 64, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 1, 256, 8 } },
{ "default", { 1, 256, 8 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 2, 256, 1 } },
{ "default", { 2, 256, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 1, 256, 2 } },
{ "default", { 1, 256, 2 } },
} },
{ "default", {
{ "default", { 2, 256, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 4, 256, 1 } }, { "default", {
{ "default", { 4, 256, 1 } }, { "Mali-T628", { 4, 256, 1 } },
{ "default", { 4, 256, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 8, 512, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 512, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 8, 512, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 128, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 512, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 256, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 128, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 1024, 1 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 256, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 128, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 1024, 1 } },
{ "default", { 8, 512, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 128, 1 } },
{ "default", { 8, 512, 1 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 1, 128, 1 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 256, 1 } }, { "Intel(R) HD Graphics 530", { 1, 128, 1 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 64, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 256, 1 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 1, 64, 1 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 64, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 8, 512, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 1, 64, 1 } },
{ "Iris", { 1, 64, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 8, 512, 1 } },
{ "Iris Pro", { 1, 128, 2 } }, { "Iris", { 1, 64, 1 } },
{ "default", { 4, 256, 1 } }, { "Iris Pro", { 1, 128, 2 } },
{ "default", { 4, 256, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 2, 1024, 2 } }, { "default", {
{ "default", { 2, 1024, 2 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 2, 1024, 2 } },
{ "default", { 2, 1024, 2 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 2, 64, 1 } }, { "SM2.0", {
{ "GeForce GT 650M", { 2, 1024, 1 } }, { "GeForce GTX 480", { 2, 128, 1 } },
{ "GeForce GTX 1070", { 1, 64, 4 } }, { "default", { 2, 128, 1 } },
{ "GeForce GTX 1080", { 1, 256, 1 } }, } },
{ "GeForce GTX 480", { 2, 128, 1 } }, { "SM3.0", {
{ "GeForce GTX 670", { 2, 64, 1 } }, { "GRID K520", { 2, 64, 1 } },
{ "GeForce GTX 680", { 1, 128, 1 } }, { "GeForce GT 650M", { 2, 1024, 1 } },
{ "GeForce GTX 750", { 1, 64, 1 } }, { "GeForce GTX 670", { 2, 64, 1 } },
{ "GeForce GTX 750 Ti", { 2, 64, 1 } }, { "GeForce GTX 680", { 1, 128, 1 } },
{ "GeForce GTX 980", { 1, 1024, 1 } }, { "default", { 2, 1024, 1 } },
{ "GeForce GTX TITAN", { 4, 256, 1 } }, } },
{ "GeForce GTX TITAN Black", { 4, 128, 4 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 64, 1 } }, { "GeForce GTX TITAN", { 4, 256, 1 } },
{ "TITAN X (Pascal)", { 4, 128, 1 } }, { "GeForce GTX TITAN Black", { 4, 128, 4 } },
{ "Tesla K20m", { 4, 128, 1 } }, { "Tesla K20m", { 4, 128, 1 } },
{ "Tesla K40m", { 4, 128, 1 } }, { "Tesla K40m", { 4, 128, 1 } },
{ "default", { 4, 1024, 1 } }, { "default", { 4, 256, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 64, 1 } },
{ "GeForce GTX 750 Ti", { 2, 64, 1 } },
{ "default", { 2, 64, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 1, 1024, 1 } },
{ "GeForce GTX TITAN X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 64, 4 } },
{ "GeForce GTX 1080", { 1, 256, 1 } },
{ "TITAN X (Pascal)", { 4, 128, 1 } },
{ "default", { 1, 512, 2 } },
} },
{ "default", {
{ "default", { 4, 1024, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 4, 128, 2 } }, { "default", {
{ "default", { 4, 128, 2 } }, { "QUALCOMM Adreno(TM)", { 4, 128, 2 } },
{ "default", { 4, 128, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 4, 64, 1 } }, { "default", {
{ "default", { 4, 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,83 +14,144 @@ const DatabaseEntry XaxpyComplexSingle = {
"Xaxpy", Precision::kComplexSingle, {"VW", "WGS", "WPT"}, { "Xaxpy", Precision::kComplexSingle, {"VW", "WGS", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 2, 64, 8 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 1, 64, 1 } }, { "AMD Radeon RX 480", { 2, 256, 1 } },
{ "Ellesmere", { 2, 256, 1 } }, { "default", { 2, 256, 1 } },
{ "Fiji", { 1, 128, 2 } }, } },
{ "Hawaii", { 1, 128, 2 } }, { "Fiji", {
{ "Oland", { 1, 128, 1 } }, { "AMD Radeon R9 Fury X", { 1, 128, 2 } },
{ "Pitcairn", { 1, 64, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 2, 64, 8 } },
{ "Tahiti", { 1, 64, 1 } }, { "default", { 2, 64, 8 } },
{ "Tonga", { 1, 256, 8 } }, } },
{ "Turks", { 2, 256, 1 } }, { "Hawaii", {
{ "default", { 1, 128, 1 } }, { "AMD Radeon R9 290X", { 1, 128, 2 } },
{ "default", { 1, 128, 2 } },
} },
{ "Oland", {
{ "Oland", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 1, 256, 8 } },
{ "default", { 1, 256, 8 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 2, 256, 1 } },
{ "default", { 2, 256, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "default", {
{ "default", { 1, 128, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 1, 256, 1 } }, { "default", {
{ "default", { 1, 256, 1 } }, { "Mali-T628", { 1, 256, 1 } },
{ "default", { 1, 256, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1024, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 256, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1024, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 1024, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 256, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 1024, 2 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 1024, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 1024, 1 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 1024, 2 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 2, 1024, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 1024, 1 } },
{ "default", { 8, 1024, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 2, 1024, 1 } },
{ "default", { 8, 1024, 1 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 4, 64, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 64, 1 } }, { "Intel(R) HD Graphics 530", { 4, 64, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 64, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 64, 1 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 1, 64, 1 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 1, 64, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 1, 64, 1 } },
{ "Iris", { 2, 128, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 1 } },
{ "Iris Pro", { 1, 256, 8 } }, { "Iris", { 2, 128, 1 } },
{ "default", { 4, 64, 1 } }, { "Iris Pro", { 1, 256, 8 } },
{ "default", { 4, 64, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 1, 1024, 1 } }, { "default", {
{ "default", { 1, 1024, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 1, 1024, 1 } },
{ "default", { 1, 1024, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 512, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 64, 2 } }, { "GeForce GTX 480", { 1, 256, 1 } },
{ "GeForce GTX 1080", { 2, 64, 1 } }, { "default", { 1, 256, 1 } },
{ "GeForce GTX 480", { 1, 256, 1 } }, } },
{ "GeForce GTX 670", { 1, 256, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 256, 1 } }, { "GRID K520", { 1, 512, 1 } },
{ "GeForce GTX 750", { 1, 512, 1 } }, { "GeForce GTX 670", { 1, 256, 1 } },
{ "GeForce GTX 750 Ti", { 1, 512, 1 } }, { "GeForce GTX 680", { 1, 256, 1 } },
{ "GeForce GTX 980", { 1, 64, 1 } }, { "default", { 1, 256, 1 } },
{ "GeForce GTX TITAN", { 1, 256, 1 } }, } },
{ "GeForce GTX TITAN Black", { 1, 128, 2 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 512, 1 } }, { "GeForce GTX TITAN", { 1, 256, 1 } },
{ "TITAN X (Pascal)", { 2, 512, 1 } }, { "GeForce GTX TITAN Black", { 1, 128, 2 } },
{ "Tesla K20m", { 1, 128, 1 } }, { "Tesla K20m", { 1, 128, 1 } },
{ "Tesla K40m", { 1, 128, 1 } }, { "Tesla K40m", { 1, 128, 1 } },
{ "default", { 1, 256, 1 } }, { "default", { 1, 128, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 512, 1 } },
{ "GeForce GTX 750 Ti", { 1, 512, 1 } },
{ "default", { 1, 512, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 1, 64, 1 } },
{ "GeForce GTX TITAN X", { 1, 512, 1 } },
{ "default", { 1, 512, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 64, 2 } },
{ "GeForce GTX 1080", { 2, 64, 1 } },
{ "TITAN X (Pascal)", { 2, 512, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "default", {
{ "default", { 1, 256, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } }, { "QUALCOMM Adreno(TM)", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 128, 1 } }, { "default", {
{ "default", { 1, 128, 1 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry XaxpyDouble = {
"Xaxpy", Precision::kDouble, {"VW", "WGS", "WPT"}, { "Xaxpy", Precision::kDouble, {"VW", "WGS", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 1, 256, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 2, 64, 4 } }, { "AMD Radeon RX 480", { 2, 64, 4 } },
{ "Fiji", { 2, 64, 4 } }, { "default", { 2, 64, 4 } },
{ "Hawaii", { 1, 64, 2 } }, } },
{ "Oland", { 1, 64, 1 } }, { "Fiji", {
{ "Pitcairn", { 1, 128, 1 } }, { "AMD Radeon R9 Fury X", { 2, 64, 4 } },
{ "Tahiti", { 1, 64, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 1, 256, 1 } },
{ "Tonga", { 1, 128, 4 } }, { "default", { 1, 128, 1 } },
{ "default", { 2, 64, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 1, 64, 2 } },
{ "default", { 1, 64, 2 } },
} },
{ "Oland", {
{ "Oland", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 1, 128, 4 } },
{ "default", { 1, 128, 4 } },
} },
{ "default", {
{ "default", { 2, 64, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 2, 128, 2 } }, { "default", {
{ "default", { 2, 128, 2 } }, { "Mali-T628", { 2, 128, 2 } },
{ "default", { 2, 128, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 64, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 1024, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 64, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 2, 1024, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 1024, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 8, 64, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 2, 1024, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 8, 256, 1 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 8, 64, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 2048, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 8, 256, 1 } },
{ "default", { 8, 64, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 2048, 1 } },
{ "default", { 8, 64, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 2, 512, 1 } }, { "default", {
{ "default", { 2, 512, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 2, 512, 1 } },
{ "default", { 2, 512, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 64, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 64, 8 } }, { "GeForce GTX 480", { 1, 128, 1 } },
{ "GeForce GTX 1080", { 1, 128, 1 } }, { "default", { 1, 128, 1 } },
{ "GeForce GTX 480", { 1, 128, 1 } }, } },
{ "GeForce GTX 670", { 1, 64, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 64, 1 } }, { "GRID K520", { 1, 64, 1 } },
{ "GeForce GTX 750", { 1, 128, 1 } }, { "GeForce GTX 670", { 1, 64, 1 } },
{ "GeForce GTX 750 Ti", { 1, 256, 2 } }, { "GeForce GTX 680", { 1, 64, 1 } },
{ "GeForce GTX 980", { 1, 256, 1 } }, { "default", { 1, 64, 1 } },
{ "GeForce GTX TITAN", { 2, 1024, 1 } }, } },
{ "GeForce GTX TITAN Black", { 2, 128, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 512, 1 } }, { "GeForce GTX TITAN", { 2, 1024, 1 } },
{ "TITAN X (Pascal)", { 2, 512, 1 } }, { "GeForce GTX TITAN Black", { 2, 128, 1 } },
{ "Tesla K20m", { 2, 128, 1 } }, { "Tesla K20m", { 2, 128, 1 } },
{ "Tesla K40m", { 2, 128, 1 } }, { "Tesla K40m", { 2, 128, 1 } },
{ "default", { 1, 128, 1 } }, { "default", { 2, 128, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 128, 1 } },
{ "GeForce GTX 750 Ti", { 1, 256, 2 } },
{ "default", { 1, 128, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 1, 256, 1 } },
{ "GeForce GTX TITAN X", { 1, 512, 1 } },
{ "default", { 1, 512, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 64, 8 } },
{ "GeForce GTX 1080", { 1, 128, 1 } },
{ "TITAN X (Pascal)", { 2, 512, 1 } },
{ "default", { 2, 256, 1 } },
} },
{ "default", {
{ "default", { 1, 128, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 2, 256, 1 } }, { "default", {
{ "default", { 2, 256, 1 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry XaxpyComplexDouble = {
"Xaxpy", Precision::kComplexDouble, {"VW", "WGS", "WPT"}, { "Xaxpy", Precision::kComplexDouble, {"VW", "WGS", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 1, 128, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 1, 128, 1 } }, { "AMD Radeon RX 480", { 1, 128, 1 } },
{ "Fiji", { 1, 64, 1 } }, { "default", { 1, 128, 1 } },
{ "Hawaii", { 2, 64, 1 } }, } },
{ "Oland", { 1, 256, 1 } }, { "Fiji", {
{ "Pitcairn", { 1, 128, 1 } }, { "AMD Radeon R9 Fury X", { 1, 64, 1 } },
{ "Tahiti", { 1, 128, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 1, 128, 1 } },
{ "Tonga", { 1, 64, 1 } }, { "default", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 2, 64, 1 } },
{ "default", { 2, 64, 1 } },
} },
{ "Oland", {
{ "Oland", { 1, 256, 1 } },
{ "default", { 1, 256, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "default", {
{ "default", { 1, 128, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 1, 64, 8 } }, { "default", {
{ "default", { 1, 64, 8 } }, { "Mali-T628", { 1, 64, 8 } },
{ "default", { 1, 64, 8 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1024, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 8, 128, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 1024, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 128, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 8, 128, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 8, 512, 1 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 128, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 8, 1024, 1 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 8, 512, 1 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 256, 1 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 8, 1024, 1 } },
{ "default", { 8, 256, 1 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 1, 256, 1 } },
{ "default", { 8, 256, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 1, 1024, 1 } }, { "default", {
{ "default", { 1, 1024, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 1, 1024, 1 } },
{ "default", { 1, 1024, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 64, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 64, 2 } }, { "GeForce GTX 480", { 1, 128, 1 } },
{ "GeForce GTX 1080", { 1, 256, 1 } }, { "default", { 1, 128, 1 } },
{ "GeForce GTX 480", { 1, 128, 1 } }, } },
{ "GeForce GTX 670", { 1, 256, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 64, 1 } }, { "GRID K520", { 1, 64, 1 } },
{ "GeForce GTX 750", { 1, 1024, 1 } }, { "GeForce GTX 670", { 1, 256, 1 } },
{ "GeForce GTX 750 Ti", { 1, 64, 2 } }, { "GeForce GTX 680", { 1, 64, 1 } },
{ "GeForce GTX 980", { 1, 1024, 1 } }, { "default", { 1, 64, 1 } },
{ "GeForce GTX TITAN", { 1, 64, 4 } }, } },
{ "GeForce GTX TITAN Black", { 1, 128, 4 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 1024, 1 } }, { "GeForce GTX TITAN", { 1, 64, 4 } },
{ "TITAN X (Pascal)", { 1, 256, 2 } }, { "GeForce GTX TITAN Black", { 1, 128, 4 } },
{ "Tesla K20m", { 1, 64, 1 } }, { "Tesla K20m", { 1, 64, 1 } },
{ "Tesla K40m", { 1, 64, 1 } }, { "Tesla K40m", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } }, { "default", { 1, 64, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 1024, 1 } },
{ "GeForce GTX 750 Ti", { 1, 64, 2 } },
{ "default", { 1, 1024, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 1, 1024, 1 } },
{ "GeForce GTX TITAN X", { 1, 1024, 1 } },
{ "default", { 1, 1024, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 64, 2 } },
{ "GeForce GTX 1080", { 1, 256, 1 } },
{ "TITAN X (Pascal)", { 1, 256, 2 } },
{ "default", { 1, 256, 2 } },
} },
{ "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 256, 1 } }, { "default", {
{ "default", { 1, 256, 1 } },
} },
} }
}, },
} }

View File

@ -14,26 +14,37 @@ const DatabaseEntry XdotHalf = {
"Xdot", Precision::kHalf, {"WGS1", "WGS2"}, { "Xdot", Precision::kHalf, {"WGS1", "WGS2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 256, 64 } }, { "Ellesmere", {
{ "default", { 256, 64 } }, { "AMD Radeon RX 480", { 256, 64 } },
{ "default", { 256, 64 } },
} },
{ "default", {
{ "default", { 256, 64 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 32 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 128, 32 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 32 } },
{ "default", { 128, 32 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 128, 32 } },
{ "default", { 128, 32 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 64, 64 } }, { "default", {
{ "default", { 64, 64 } }, { "QUALCOMM Adreno(TM)", { 64, 64 } },
{ "default", { 64, 64 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 128, 64 } }, { "default", {
{ "default", { 128, 64 } },
} },
} }
}, },
} }

View File

@ -14,66 +14,120 @@ const DatabaseEntry XdotSingle = {
"Xdot", Precision::kSingle, {"WGS1", "WGS2"}, { "Xdot", Precision::kSingle, {"WGS1", "WGS2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 128, 32 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 256, 32 } }, { "AMD Radeon RX 480", { 128, 32 } },
{ "Ellesmere", { 128, 32 } }, { "default", { 128, 32 } },
{ "Fiji", { 256, 32 } }, } },
{ "Oland", { 256, 32 } }, { "Fiji", {
{ "Pitcairn", { 128, 32 } }, { "AMD Radeon R9 Fury X", { 256, 32 } },
{ "Tahiti", { 128, 32 } }, { "AMD Radeon R9 M370X Compute Engine", { 128, 32 } },
{ "Tonga", { 64, 32 } }, { "default", { 256, 32 } },
{ "Turks", { 128, 64 } }, } },
{ "default", { 256, 32 } }, { "Oland", {
{ "Oland", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 128, 32 } },
{ "default", { 128, 32 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 128, 32 } },
{ "default", { 128, 32 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 64, 32 } },
{ "default", { 64, 32 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 128, 64 } },
{ "default", { 128, 64 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "default", {
{ "default", { 256, 32 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 32 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1024, 32 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 32 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 64, 128 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1024, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 64, 128 } },
{ "default", { 64, 64 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 32 } },
{ "default", { 64, 64 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 64, 32 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 32 } }, { "Intel(R) HD Graphics 530", { 64, 32 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 64, 32 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 32 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 512, 128 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 64, 32 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 32 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 512, 128 } },
{ "Iris Pro", { 512, 64 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 32 } },
{ "default", { 64, 32 } }, { "Iris Pro", { 512, 64 } },
{ "default", { 64, 32 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 128, 32 } }, { "SM2.0", {
{ "GeForce GT 650M", { 128, 64 } }, { "GeForce GTX 480", { 512, 32 } },
{ "GeForce GTX 1070", { 128, 1024 } }, { "default", { 512, 32 } },
{ "GeForce GTX 1080", { 512, 64 } }, } },
{ "GeForce GTX 480", { 512, 32 } }, { "SM3.0", {
{ "GeForce GTX 670", { 512, 1024 } }, { "GRID K520", { 128, 32 } },
{ "GeForce GTX 680", { 128, 128 } }, { "GeForce GT 650M", { 128, 64 } },
{ "GeForce GTX 750", { 128, 32 } }, { "GeForce GTX 670", { 512, 1024 } },
{ "GeForce GTX 750 Ti", { 64, 32 } }, { "GeForce GTX 680", { 128, 128 } },
{ "GeForce GTX 980", { 256, 32 } }, { "default", { 256, 1024 } },
{ "GeForce GTX TITAN Black", { 512, 64 } }, } },
{ "GeForce GTX TITAN X", { 256, 32 } }, { "SM3.5", {
{ "TITAN X (Pascal)", { 1024, 32 } }, { "GeForce GTX TITAN Black", { 512, 64 } },
{ "Tesla K20m", { 1024, 32 } }, { "Tesla K20m", { 1024, 32 } },
{ "default", { 256, 64 } }, { "default", { 1024, 64 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 128, 32 } },
{ "GeForce GTX 750 Ti", { 64, 32 } },
{ "default", { 128, 32 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 256, 32 } },
{ "GeForce GTX TITAN X", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 128, 1024 } },
{ "GeForce GTX 1080", { 512, 64 } },
{ "TITAN X (Pascal)", { 1024, 32 } },
{ "default", { 1024, 32 } },
} },
{ "default", {
{ "default", { 256, 64 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 128, 64 } }, { "default", {
{ "default", { 128, 64 } }, { "QUALCOMM Adreno(TM)", { 128, 64 } },
{ "default", { 128, 64 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 128, 32 } }, { "default", {
{ "default", { 128, 32 } },
} },
} }
}, },
} }

View File

@ -14,65 +14,119 @@ const DatabaseEntry XdotComplexSingle = {
"Xdot", Precision::kComplexSingle, {"WGS1", "WGS2"}, { "Xdot", Precision::kComplexSingle, {"WGS1", "WGS2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 32 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 256, 256 } }, { "AMD Radeon RX 480", { 256, 32 } },
{ "Ellesmere", { 256, 32 } }, { "default", { 256, 32 } },
{ "Fiji", { 256, 64 } }, } },
{ "Oland", { 128, 32 } }, { "Fiji", {
{ "Pitcairn", { 256, 32 } }, { "AMD Radeon R9 Fury X", { 256, 64 } },
{ "Tahiti", { 64, 32 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 32 } },
{ "Tonga", { 256, 64 } }, { "default", { 256, 64 } },
{ "Turks", { 128, 32 } }, } },
{ "default", { 256, 32 } }, { "Oland", {
{ "Oland", { 128, 32 } },
{ "default", { 128, 32 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 64, 32 } },
{ "default", { 64, 32 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 256, 64 } },
{ "default", { 256, 64 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 128, 32 } },
{ "default", { 128, 32 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 256, 256 } },
{ "default", { 256, 256 } },
} },
{ "default", {
{ "default", { 256, 32 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 64 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1024, 32 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 64 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 64, 32 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1024, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 64, 32 } },
{ "default", { 256, 32 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 32 } },
{ "default", { 256, 32 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 256, 32 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 32 } }, { "Intel(R) HD Graphics 530", { 256, 32 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 32, 32 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 32 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 512, 32 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 32, 32 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 256 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 512, 32 } },
{ "Iris Pro", { 32, 32 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 256 } },
{ "default", { 32, 32 } }, { "Iris Pro", { 32, 32 } },
{ "default", { 32, 32 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 64, 32 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 128, 32 } }, { "GeForce GTX 480", { 512, 32 } },
{ "GeForce GTX 1080", { 128, 64 } }, { "default", { 512, 32 } },
{ "GeForce GTX 480", { 512, 32 } }, } },
{ "GeForce GTX 670", { 256, 32 } }, { "SM3.0", {
{ "GeForce GTX 680", { 128, 64 } }, { "GRID K520", { 64, 32 } },
{ "GeForce GTX 750", { 64, 32 } }, { "GeForce GTX 670", { 256, 32 } },
{ "GeForce GTX 750 Ti", { 64, 32 } }, { "GeForce GTX 680", { 128, 64 } },
{ "GeForce GTX 980", { 256, 64 } }, { "default", { 256, 64 } },
{ "GeForce GTX TITAN Black", { 128, 64 } }, } },
{ "GeForce GTX TITAN X", { 256, 32 } }, { "SM3.5", {
{ "TITAN X (Pascal)", { 256, 32 } }, { "GeForce GTX TITAN Black", { 128, 64 } },
{ "Tesla K20m", { 512, 32 } }, { "Tesla K20m", { 512, 32 } },
{ "default", { 512, 64 } }, { "default", { 128, 32 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 64, 32 } },
{ "GeForce GTX 750 Ti", { 64, 32 } },
{ "default", { 64, 32 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 256, 64 } },
{ "GeForce GTX TITAN X", { 256, 32 } },
{ "default", { 256, 64 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 128, 32 } },
{ "GeForce GTX 1080", { 128, 64 } },
{ "TITAN X (Pascal)", { 256, 32 } },
{ "default", { 128, 128 } },
} },
{ "default", {
{ "default", { 512, 64 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 64, 256 } }, { "default", {
{ "default", { 64, 256 } }, { "QUALCOMM Adreno(TM)", { 64, 256 } },
{ "default", { 64, 256 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 256, 32 } }, { "default", {
{ "default", { 256, 32 } },
} },
} }
}, },
} }

View File

@ -14,46 +14,90 @@ const DatabaseEntry XdotDouble = {
"Xdot", Precision::kDouble, {"WGS1", "WGS2"}, { "Xdot", Precision::kDouble, {"WGS1", "WGS2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 128 } }, { "Ellesmere", {
{ "Ellesmere", { 128, 64 } }, { "AMD Radeon RX 480", { 128, 64 } },
{ "Fiji", { 256, 32 } }, { "default", { 128, 64 } },
{ "Oland", { 256, 32 } }, } },
{ "Pitcairn", { 128, 32 } }, { "Fiji", {
{ "Tahiti", { 256, 32 } }, { "AMD Radeon R9 Fury X", { 256, 32 } },
{ "Tonga", { 128, 64 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 128 } },
{ "default", { 128, 64 } }, { "default", { 256, 32 } },
} },
{ "Oland", {
{ "Oland", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 128, 32 } },
{ "default", { 128, 32 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 128, 64 } },
{ "default", { 128, 64 } },
} },
{ "default", {
{ "default", { 128, 64 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 64, 128 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 512, 64 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 64, 128 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 64, 64 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 512, 64 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 64, 64 } },
{ "default", { 256, 64 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 32 } },
{ "default", { 256, 64 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 128, 32 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 128, 512 } }, { "GeForce GTX 480", { 512, 32 } },
{ "GeForce GTX 1080", { 128, 128 } }, { "default", { 512, 32 } },
{ "GeForce GTX 480", { 512, 32 } }, } },
{ "GeForce GTX 670", { 256, 32 } }, { "SM3.0", {
{ "GeForce GTX 680", { 128, 64 } }, { "GRID K520", { 128, 32 } },
{ "GeForce GTX 750", { 64, 256 } }, { "GeForce GTX 670", { 256, 32 } },
{ "GeForce GTX 750 Ti", { 128, 64 } }, { "GeForce GTX 680", { 128, 64 } },
{ "GeForce GTX 980", { 128, 32 } }, { "default", { 256, 64 } },
{ "GeForce GTX TITAN Black", { 128, 64 } }, } },
{ "GeForce GTX TITAN X", { 256, 32 } }, { "SM3.5", {
{ "TITAN X (Pascal)", { 128, 32 } }, { "GeForce GTX TITAN Black", { 128, 64 } },
{ "Tesla K20m", { 512, 32 } }, { "Tesla K20m", { 512, 32 } },
{ "default", { 128, 128 } }, { "default", { 128, 64 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 64, 256 } },
{ "GeForce GTX 750 Ti", { 128, 64 } },
{ "default", { 64, 256 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 128, 32 } },
{ "GeForce GTX TITAN X", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 128, 512 } },
{ "GeForce GTX 1080", { 128, 128 } },
{ "TITAN X (Pascal)", { 128, 32 } },
{ "default", { 128, 32 } },
} },
{ "default", {
{ "default", { 128, 128 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 128, 64 } }, { "default", {
{ "default", { 128, 64 } },
} },
} }
}, },
} }

View File

@ -14,46 +14,90 @@ const DatabaseEntry XdotComplexDouble = {
"Xdot", Precision::kComplexDouble, {"WGS1", "WGS2"}, { "Xdot", Precision::kComplexDouble, {"WGS1", "WGS2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 32 } }, { "Ellesmere", {
{ "Ellesmere", { 256, 32 } }, { "AMD Radeon RX 480", { 256, 32 } },
{ "Fiji", { 256, 32 } }, { "default", { 256, 32 } },
{ "Oland", { 256, 32 } }, } },
{ "Pitcairn", { 256, 32 } }, { "Fiji", {
{ "Tahiti", { 256, 32 } }, { "AMD Radeon R9 Fury X", { 256, 32 } },
{ "Tonga", { 128, 64 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 32 } },
{ "default", { 256, 32 } }, { "default", { 256, 32 } },
} },
{ "Oland", {
{ "Oland", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 256, 32 } },
{ "default", { 256, 32 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 128, 64 } },
{ "default", { 128, 64 } },
} },
{ "default", {
{ "default", { 256, 32 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 128 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1024, 32 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 128 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1024, 32 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1024, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1024, 32 } },
{ "default", { 128, 32 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 32 } },
{ "default", { 128, 32 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 64, 32 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 128, 64 } }, { "GeForce GTX 480", { 512, 32 } },
{ "GeForce GTX 1080", { 128, 32 } }, { "default", { 512, 32 } },
{ "GeForce GTX 480", { 512, 32 } }, } },
{ "GeForce GTX 670", { 512, 128 } }, { "SM3.0", {
{ "GeForce GTX 680", { 256, 64 } }, { "GRID K520", { 64, 32 } },
{ "GeForce GTX 750", { 256, 32 } }, { "GeForce GTX 670", { 512, 128 } },
{ "GeForce GTX 750 Ti", { 64, 32 } }, { "GeForce GTX 680", { 256, 64 } },
{ "GeForce GTX 980", { 64, 32 } }, { "default", { 128, 128 } },
{ "GeForce GTX TITAN Black", { 128, 32 } }, } },
{ "GeForce GTX TITAN X", { 128, 32 } }, { "SM3.5", {
{ "TITAN X (Pascal)", { 128, 64 } }, { "GeForce GTX TITAN Black", { 128, 32 } },
{ "Tesla K20m", { 128, 32 } }, { "Tesla K20m", { 128, 32 } },
{ "default", { 128, 64 } }, { "default", { 128, 32 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 256, 32 } },
{ "GeForce GTX 750 Ti", { 64, 32 } },
{ "default", { 64, 32 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 64, 32 } },
{ "GeForce GTX TITAN X", { 128, 32 } },
{ "default", { 128, 32 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 128, 64 } },
{ "GeForce GTX 1080", { 128, 32 } },
{ "TITAN X (Pascal)", { 128, 64 } },
{ "default", { 128, 256 } },
} },
{ "default", {
{ "default", { 128, 64 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 256, 32 } }, { "default", {
{ "default", { 256, 32 } },
} },
} }
}, },
} }

View File

@ -14,19 +14,28 @@ const DatabaseEntry XgemmHalf = {
"Xgemm", Precision::kHalf, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, { "Xgemm", Precision::kHalf, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, { "Ellesmere", {
{ "default", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, { "AMD Radeon RX 480", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
{ "default", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
} },
{ "default", {
{ "default", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, { "default", {
{ "default", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
{ "default", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, { "default", {
{ "default", { 32, 2, 8, 8, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
} },
} }
}, },
} }

View File

@ -14,84 +14,145 @@ const DatabaseEntry XgemmSingle = {
"Xgemm", Precision::kSingle, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, { "Xgemm", Precision::kSingle, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 2, 16, 16, 64, 8, 16, 128, 0, 0, 0, 0, 2, 8 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 32, 2, 8, 16, 128, 8, 8, 128, 0, 0, 1, 1, 8, 8 } }, { "AMD Radeon RX 480", { 32, 2, 8, 8, 16, 16, 16, 64, 1, 1, 0, 0, 1, 2 } },
{ "Ellesmere", { 32, 2, 8, 8, 16, 16, 16, 64, 1, 1, 0, 0, 1, 2 } }, { "default", { 32, 2, 8, 8, 16, 16, 16, 64, 1, 1, 0, 0, 1, 2 } },
{ "Fiji", { 32, 2, 16, 16, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, } },
{ "Hawaii", { 16, 2, 16, 32, 128, 32, 8, 64, 1, 1, 1, 1, 4, 2 } }, { "Fiji", {
{ "Oland", { 16, 2, 32, 16, 64, 32, 16, 128, 1, 1, 1, 0, 2, 4 } }, { "AMD Radeon R9 Fury X", { 32, 2, 16, 16, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
{ "Pitcairn", { 16, 2, 16, 8, 32, 16, 16, 128, 0, 0, 1, 0, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 2, 16, 16, 64, 8, 16, 128, 0, 0, 0, 0, 2, 8 } },
{ "Tahiti", { 32, 2, 16, 32, 128, 16, 8, 64, 0, 0, 0, 0, 4, 1 } }, { "default", { 32, 2, 16, 16, 64, 16, 16, 64, 1, 1, 0, 0, 2, 2 } },
{ "Tonga", { 16, 2, 16, 32, 64, 16, 8, 128, 1, 1, 0, 0, 2, 8 } }, } },
{ "Turks", { 32, 2, 8, 8, 64, 8, 8, 64, 0, 0, 0, 0, 4, 4 } }, { "Hawaii", {
{ "default", { 32, 2, 8, 8, 32, 8, 8, 64, 0, 0, 0, 0, 4, 4 } }, { "AMD Radeon R9 290X", { 16, 2, 16, 32, 128, 32, 8, 64, 1, 1, 1, 1, 4, 2 } },
{ "default", { 16, 2, 16, 32, 128, 32, 8, 64, 1, 1, 1, 1, 4, 2 } },
} },
{ "Oland", {
{ "Oland", { 16, 2, 32, 16, 64, 32, 16, 128, 1, 1, 1, 0, 2, 4 } },
{ "default", { 16, 2, 32, 16, 64, 32, 16, 128, 1, 1, 1, 0, 2, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 16, 2, 16, 8, 32, 16, 16, 128, 0, 0, 1, 0, 1, 1 } },
{ "default", { 16, 2, 16, 8, 32, 16, 16, 128, 0, 0, 1, 0, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 32, 2, 16, 32, 128, 16, 8, 64, 0, 0, 0, 0, 4, 1 } },
{ "default", { 32, 2, 16, 32, 128, 16, 8, 64, 0, 0, 0, 0, 4, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 2, 16, 32, 64, 16, 8, 128, 1, 1, 0, 0, 2, 8 } },
{ "default", { 16, 2, 16, 32, 64, 16, 8, 128, 1, 1, 0, 0, 2, 8 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 32, 2, 8, 8, 64, 8, 8, 64, 0, 0, 0, 0, 4, 4 } },
{ "default", { 32, 2, 8, 8, 64, 8, 8, 64, 0, 0, 0, 0, 4, 4 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 32, 2, 8, 16, 128, 8, 8, 128, 0, 0, 1, 1, 8, 8 } },
{ "default", { 32, 2, 8, 16, 128, 8, 8, 128, 0, 0, 1, 1, 8, 8 } },
} },
{ "default", {
{ "default", { 32, 2, 8, 8, 32, 8, 8, 64, 0, 0, 0, 0, 4, 4 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 16, 2, 8, 8, 64, 8, 16, 16, 0, 0, 1, 1, 8, 1 } }, { "default", {
{ "default", { 16, 2, 8, 8, 64, 8, 16, 16, 0, 0, 1, 1, 8, 1 } }, { "Mali-T628", { 16, 2, 8, 8, 64, 8, 16, 16, 0, 0, 1, 1, 8, 1 } },
{ "default", { 16, 2, 8, 8, 64, 8, 16, 16, 0, 0, 1, 1, 8, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 8, 8, 128, 16, 8, 128, 0, 1, 1, 1, 1, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 32, 32, 64, 32, 16, 64, 1, 1, 1, 0, 2, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 8, 8, 128, 16, 8, 128, 0, 1, 1, 1, 1, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 16, 8, 128, 16, 8, 64, 0, 0, 1, 0, 1, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 8, 32, 32, 64, 32, 16, 64, 1, 1, 1, 0, 2, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 32, 8, 128, 8, 8, 128, 1, 1, 1, 1, 2, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 16, 8, 128, 16, 8, 64, 0, 0, 1, 0, 1, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 16, 2, 8, 8, 128, 8, 8, 128, 1, 1, 1, 0, 1, 8 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 32, 8, 128, 8, 8, 128, 1, 1, 1, 1, 2, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 16, 16, 64, 32, 32, 64, 0, 1, 1, 0, 1, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 16, 2, 8, 8, 128, 8, 8, 128, 1, 1, 1, 0, 1, 8 } },
{ "default", { 32, 2, 8, 8, 32, 8, 8, 64, 1, 1, 0, 0, 4, 4 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 16, 16, 64, 32, 32, 64, 0, 1, 1, 0, 1, 2 } },
{ "default", { 32, 2, 8, 8, 32, 8, 8, 64, 1, 1, 0, 0, 4, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 32, 2, 8, 8, 128, 32, 16, 64, 0, 0, 1, 0, 4, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 32, 8, 8, 8, 64, 32, 16, 64, 1, 1, 1, 1, 4, 2 } }, { "Intel(R) HD Graphics 530", { 32, 2, 8, 8, 128, 32, 16, 64, 0, 0, 1, 0, 4, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 16, 2, 16, 8, 32, 8, 16, 128, 1, 1, 1, 1, 2, 4 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 32, 8, 8, 8, 64, 32, 16, 64, 1, 1, 1, 1, 4, 2 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 32, 2, 16, 16, 64, 16, 8, 64, 1, 1, 1, 0, 2, 4 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 16, 2, 16, 8, 32, 8, 16, 128, 1, 1, 1, 1, 2, 4 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 4 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 32, 2, 16, 16, 64, 16, 8, 64, 1, 1, 1, 0, 2, 4 } },
{ "Iris", { 16, 8, 16, 8, 128, 32, 16, 64, 1, 1, 1, 1, 4, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 4 } },
{ "Iris Pro", { 16, 2, 16, 8, 64, 32, 32, 128, 1, 1, 1, 0, 4, 4 } }, { "Iris", { 16, 8, 16, 8, 128, 32, 16, 64, 1, 1, 1, 1, 4, 1 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 4 } }, { "Iris Pro", { 16, 2, 16, 8, 64, 32, 32, 128, 1, 1, 1, 0, 4, 4 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 2, 32, 32, 32, 32, 8, 128, 0, 0, 1, 0, 1, 4 } }, { "default", {
{ "default", { 32, 2, 32, 32, 32, 32, 8, 128, 0, 0, 1, 0, 1, 4 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 2, 32, 32, 32, 32, 8, 128, 0, 0, 1, 0, 1, 4 } },
{ "default", { 32, 2, 32, 32, 32, 32, 8, 128, 0, 0, 1, 0, 1, 4 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 2, 16, 8, 32, 8, 16, 64, 1, 1, 1, 1, 2, 4 } }, { "SM2.0", {
{ "GeForce GT 650M", { 32, 2, 8, 8, 32, 32, 32, 64, 1, 1, 0, 0, 4, 2 } }, { "GeForce GTX 480", { 16, 2, 16, 8, 64, 32, 16, 64, 1, 1, 1, 1, 2, 2 } },
{ "GeForce GTX 1070", { 16, 2, 32, 16, 128, 32, 8, 128, 1, 1, 1, 0, 4, 1 } }, { "default", { 16, 2, 16, 8, 64, 32, 16, 64, 1, 1, 1, 1, 2, 2 } },
{ "GeForce GTX 1080", { 32, 2, 16, 8, 64, 8, 8, 64, 1, 1, 1, 1, 4, 8 } }, } },
{ "GeForce GTX 480", { 16, 2, 16, 8, 64, 32, 16, 64, 1, 1, 1, 1, 2, 2 } }, { "SM3.0", {
{ "GeForce GTX 670", { 16, 2, 8, 8, 64, 16, 16, 64, 1, 1, 1, 0, 2, 4 } }, { "GRID K520", { 16, 2, 16, 8, 32, 8, 16, 64, 1, 1, 1, 1, 2, 4 } },
{ "GeForce GTX 680", { 32, 8, 8, 16, 64, 32, 16, 128, 1, 1, 0, 0, 4, 2 } }, { "GeForce GT 650M", { 32, 2, 8, 8, 32, 32, 32, 64, 1, 1, 0, 0, 4, 2 } },
{ "GeForce GTX 750", { 16, 2, 16, 16, 64, 32, 8, 128, 1, 1, 1, 1, 1, 2 } }, { "GeForce GTX 670", { 16, 2, 8, 8, 64, 16, 16, 64, 1, 1, 1, 0, 2, 4 } },
{ "GeForce GTX 750 Ti", { 16, 2, 16, 16, 128, 32, 8, 64, 1, 1, 0, 1, 8, 2 } }, { "GeForce GTX 680", { 32, 8, 8, 16, 64, 32, 16, 128, 1, 1, 0, 0, 4, 2 } },
{ "GeForce GTX 980", { 16, 2, 16, 16, 64, 16, 8, 128, 1, 1, 1, 0, 4, 8 } }, { "default", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 4 } },
{ "GeForce GTX TITAN", { 16, 8, 32, 16, 64, 8, 8, 64, 1, 1, 1, 0, 2, 2 } }, } },
{ "GeForce GTX TITAN Black", { 16, 2, 16, 8, 64, 16, 16, 64, 1, 1, 1, 0, 4, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 2, 8, 16, 128, 8, 8, 128, 1, 1, 1, 1, 4, 8 } }, { "GeForce GTX TITAN", { 16, 8, 32, 16, 64, 8, 8, 64, 1, 1, 1, 0, 2, 2 } },
{ "TITAN X (Pascal)", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 1 } }, { "GeForce GTX TITAN Black", { 16, 2, 16, 8, 64, 16, 16, 64, 1, 1, 1, 0, 4, 1 } },
{ "Tesla K20m", { 16, 2, 32, 16, 64, 16, 8, 64, 1, 1, 1, 0, 2, 4 } }, { "Tesla K20m", { 16, 2, 32, 16, 64, 16, 8, 64, 1, 1, 1, 0, 2, 4 } },
{ "Tesla K40m", { 16, 8, 16, 8, 64, 16, 16, 128, 1, 1, 1, 0, 2, 4 } }, { "Tesla K40m", { 16, 8, 16, 8, 64, 16, 16, 128, 1, 1, 1, 0, 2, 4 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 2 } }, { "default", { 16, 8, 32, 16, 64, 32, 16, 64, 1, 0, 1, 0, 2, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 16, 2, 16, 16, 64, 32, 8, 128, 1, 1, 1, 1, 1, 2 } },
{ "GeForce GTX 750 Ti", { 16, 2, 16, 16, 128, 32, 8, 64, 1, 1, 0, 1, 8, 2 } },
{ "default", { 32, 2, 8, 8, 64, 32, 32, 64, 0, 0, 0, 0, 2, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 2, 16, 16, 64, 16, 8, 128, 1, 1, 1, 0, 4, 8 } },
{ "GeForce GTX TITAN X", { 16, 2, 8, 16, 128, 8, 8, 128, 1, 1, 1, 1, 4, 8 } },
{ "default", { 16, 2, 16, 16, 128, 16, 8, 128, 1, 1, 1, 0, 4, 8 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 16, 2, 32, 16, 128, 32, 8, 128, 1, 1, 1, 0, 4, 1 } },
{ "GeForce GTX 1080", { 32, 2, 16, 8, 64, 8, 8, 64, 1, 1, 1, 1, 4, 8 } },
{ "TITAN X (Pascal)", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 1 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 1 } },
} },
{ "default", {
{ "default", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 4, 2 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 1 } }, { "default", {
{ "default", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 1 } }, { "QUALCOMM Adreno(TM)", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 1 } },
{ "default", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 2 } }, { "default", {
{ "default", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 2 } },
} },
} }
}, },
} }

View File

@ -14,77 +14,136 @@ const DatabaseEntry XgemmComplexSingle = {
"Xgemm", Precision::kComplexSingle, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, { "Xgemm", Precision::kComplexSingle, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 2, 32, 32, 64, 8, 8, 64, 0, 0, 1, 1, 2, 8 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 32, 2, 8, 8, 32, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, { "AMD Radeon RX 480", { 32, 2, 16, 16, 32, 8, 8, 32, 1, 1, 0, 0, 1, 4 } },
{ "Ellesmere", { 32, 2, 16, 16, 32, 8, 8, 32, 1, 1, 0, 0, 1, 4 } }, { "default", { 32, 2, 16, 16, 32, 8, 8, 32, 1, 1, 0, 0, 1, 4 } },
{ "Fiji", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 1, 2 } }, } },
{ "Hawaii", { 32, 2, 32, 8, 32, 8, 16, 32, 1, 0, 1, 0, 1, 1 } }, { "Fiji", {
{ "Oland", { 32, 2, 16, 8, 32, 32, 32, 128, 1, 0, 0, 1, 2, 4 } }, { "AMD Radeon R9 Fury X", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 1, 2 } },
{ "Pitcairn", { 16, 2, 8, 8, 32, 8, 8, 32, 0, 1, 1, 1, 4, 2 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 2, 32, 32, 64, 8, 8, 64, 0, 0, 1, 1, 2, 8 } },
{ "Tahiti", { 16, 2, 8, 8, 32, 8, 16, 32, 1, 0, 0, 1, 2, 1 } }, { "default", { 32, 2, 8, 8, 16, 32, 32, 32, 1, 1, 0, 0, 1, 1 } },
{ "Tonga", { 16, 2, 32, 8, 64, 16, 32, 64, 1, 1, 1, 0, 2, 1 } }, } },
{ "Turks", { 16, 2, 8, 8, 32, 32, 8, 32, 0, 1, 0, 0, 2, 1 } }, { "Hawaii", {
{ "default", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 1, 2 } }, { "AMD Radeon R9 290X", { 32, 2, 32, 8, 32, 8, 16, 32, 1, 0, 1, 0, 1, 1 } },
{ "default", { 32, 2, 32, 8, 32, 8, 16, 32, 1, 0, 1, 0, 1, 1 } },
} },
{ "Oland", {
{ "Oland", { 32, 2, 16, 8, 32, 32, 32, 128, 1, 0, 0, 1, 2, 4 } },
{ "default", { 32, 2, 16, 8, 32, 32, 32, 128, 1, 0, 0, 1, 2, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 16, 2, 8, 8, 32, 8, 8, 32, 0, 1, 1, 1, 4, 2 } },
{ "default", { 16, 2, 8, 8, 32, 8, 8, 32, 0, 1, 1, 1, 4, 2 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 16, 2, 8, 8, 32, 8, 16, 32, 1, 0, 0, 1, 2, 1 } },
{ "default", { 16, 2, 8, 8, 32, 8, 16, 32, 1, 0, 0, 1, 2, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 2, 32, 8, 64, 16, 32, 64, 1, 1, 1, 0, 2, 1 } },
{ "default", { 16, 2, 32, 8, 64, 16, 32, 64, 1, 1, 1, 0, 2, 1 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 16, 2, 8, 8, 32, 32, 8, 32, 0, 1, 0, 0, 2, 1 } },
{ "default", { 16, 2, 8, 8, 32, 32, 8, 32, 0, 1, 0, 0, 2, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 32, 2, 8, 8, 32, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
{ "default", { 32, 2, 8, 8, 32, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
} },
{ "default", {
{ "default", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 1, 2 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 16, 2, 8, 16, 128, 16, 8, 128, 0, 0, 0, 1, 8, 1 } }, { "default", {
{ "default", { 16, 2, 8, 16, 128, 16, 8, 128, 0, 0, 0, 1, 8, 1 } }, { "Mali-T628", { 16, 2, 8, 16, 128, 16, 8, 128, 0, 0, 0, 1, 8, 1 } },
{ "default", { 16, 2, 8, 16, 128, 16, 8, 128, 0, 0, 0, 1, 8, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 32, 8, 128, 16, 16, 128, 1, 1, 0, 1, 1, 2 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 2, 32, 16, 32, 16, 16, 64, 0, 1, 1, 0, 1, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 32, 8, 128, 16, 16, 128, 1, 1, 0, 1, 1, 2 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 16, 16, 64, 8, 16, 64, 0, 1, 0, 0, 4, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 2, 32, 16, 32, 16, 16, 64, 0, 1, 1, 0, 1, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 8, 8, 128, 16, 32, 128, 0, 0, 0, 0, 1, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 16, 16, 64, 8, 16, 64, 0, 1, 0, 0, 4, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 2, 8, 8, 128, 32, 8, 128, 0, 0, 0, 0, 1, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 8, 8, 128, 16, 32, 128, 0, 0, 0, 0, 1, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 2, 8, 16, 16, 16, 16, 128, 0, 0, 1, 1, 1, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 2, 8, 8, 128, 32, 8, 128, 0, 0, 0, 0, 1, 4 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 32, 0, 0, 0, 0, 4, 2 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 2, 8, 16, 16, 16, 16, 128, 0, 0, 1, 1, 1, 4 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 32, 0, 0, 0, 0, 4, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 16, 8, 8, 16, 64, 32, 8, 32, 0, 0, 0, 0, 2, 1 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 16, 8, 8, 8, 32, 16, 16, 64, 1, 0, 0, 0, 4, 4 } }, { "Intel(R) HD Graphics 530", { 16, 8, 8, 16, 64, 32, 8, 32, 0, 0, 0, 0, 2, 1 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 32, 8, 16, 16, 64, 16, 16, 64, 1, 1, 1, 1, 2, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 16, 8, 8, 8, 32, 16, 16, 64, 1, 0, 0, 0, 4, 4 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 32, 2, 16, 16, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 32, 8, 16, 16, 64, 16, 16, 64, 1, 1, 1, 1, 2, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 2, 16, 16, 64, 16, 16, 64, 0, 0, 0, 0, 4, 2 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 32, 2, 16, 16, 64, 16, 16, 64, 1, 1, 0, 0, 4, 4 } },
{ "Iris", { 32, 8, 32, 16, 64, 8, 16, 64, 1, 0, 1, 0, 1, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 2, 16, 16, 64, 16, 16, 64, 0, 0, 0, 0, 4, 2 } },
{ "Iris Pro", { 16, 2, 8, 8, 32, 32, 8, 32, 1, 1, 1, 1, 1, 1 } }, { "Iris", { 32, 8, 32, 16, 64, 8, 16, 64, 1, 0, 1, 0, 1, 1 } },
{ "default", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 2 } }, { "Iris Pro", { 16, 2, 8, 8, 32, 32, 8, 32, 1, 1, 1, 1, 1, 1 } },
{ "default", { 32, 2, 8, 8, 32, 8, 8, 32, 1, 1, 0, 0, 4, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 2, 32, 32, 32, 32, 16, 128, 1, 0, 0, 0, 1, 4 } }, { "default", {
{ "default", { 32, 2, 32, 32, 32, 32, 16, 128, 1, 0, 0, 0, 1, 4 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 2, 32, 32, 32, 32, 16, 128, 1, 0, 0, 0, 1, 4 } },
{ "default", { 32, 2, 32, 32, 32, 32, 16, 128, 1, 0, 0, 0, 1, 4 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 8, 32, 32, 64, 32, 16, 128, 1, 0, 1, 0, 1, 4 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 16, 2, 16, 16, 128, 16, 16, 64, 1, 1, 1, 1, 2, 4 } }, { "GeForce GTX 480", { 16, 2, 16, 16, 32, 32, 16, 128, 0, 1, 1, 1, 2, 2 } },
{ "GeForce GTX 1080", { 16, 2, 32, 16, 64, 32, 8, 64, 1, 1, 0, 0, 1, 2 } }, { "default", { 16, 2, 16, 16, 32, 32, 16, 128, 0, 1, 1, 1, 2, 2 } },
{ "GeForce GTX 480", { 16, 2, 16, 16, 32, 32, 16, 128, 0, 1, 1, 1, 2, 2 } }, } },
{ "GeForce GTX 670", { 16, 2, 32, 32, 64, 32, 8, 32, 1, 1, 1, 1, 1, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 16, 2, 32, 16, 64, 32, 32, 128, 1, 0, 0, 0, 2, 2 } }, { "GRID K520", { 16, 8, 32, 32, 64, 32, 16, 128, 1, 0, 1, 0, 1, 4 } },
{ "GeForce GTX 750", { 16, 8, 16, 16, 64, 16, 16, 64, 1, 1, 1, 0, 2, 2 } }, { "GeForce GTX 670", { 16, 2, 32, 32, 64, 32, 8, 32, 1, 1, 1, 1, 1, 1 } },
{ "GeForce GTX 750 Ti", { 16, 2, 16, 8, 32, 32, 16, 64, 1, 1, 1, 0, 1, 2 } }, { "GeForce GTX 680", { 16, 2, 32, 16, 64, 32, 32, 128, 1, 0, 0, 0, 2, 2 } },
{ "GeForce GTX 980", { 32, 8, 32, 32, 64, 16, 16, 64, 1, 1, 1, 0, 2, 1 } }, { "default", { 16, 2, 32, 16, 64, 32, 16, 128, 1, 0, 0, 0, 1, 1 } },
{ "GeForce GTX TITAN", { 16, 8, 16, 16, 64, 32, 16, 64, 1, 1, 1, 0, 1, 1 } }, } },
{ "GeForce GTX TITAN Black", { 16, 2, 8, 16, 64, 8, 8, 32, 0, 1, 1, 0, 1, 2 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 2, 8, 8, 64, 8, 8, 32, 1, 0, 1, 1, 1, 4 } }, { "GeForce GTX TITAN", { 16, 8, 16, 16, 64, 32, 16, 64, 1, 1, 1, 0, 1, 1 } },
{ "TITAN X (Pascal)", { 32, 2, 32, 32, 64, 8, 8, 32, 1, 1, 0, 0, 2, 4 } }, { "GeForce GTX TITAN Black", { 16, 2, 8, 16, 64, 8, 8, 32, 0, 1, 1, 0, 1, 2 } },
{ "Tesla K20m", { 32, 2, 8, 16, 64, 8, 16, 64, 1, 0, 0, 0, 1, 4 } }, { "Tesla K20m", { 32, 2, 8, 16, 64, 8, 16, 64, 1, 0, 0, 0, 1, 4 } },
{ "Tesla K40m", { 16, 2, 32, 32, 32, 32, 8, 64, 0, 1, 0, 0, 1, 1 } }, { "Tesla K40m", { 16, 2, 32, 32, 32, 32, 8, 64, 0, 1, 0, 0, 1, 1 } },
{ "default", { 32, 2, 8, 8, 16, 32, 32, 64, 1, 1, 0, 0, 1, 1 } }, { "default", { 32, 2, 16, 16, 128, 8, 8, 64, 0, 1, 0, 1, 8, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 16, 8, 16, 16, 64, 16, 16, 64, 1, 1, 1, 0, 2, 2 } },
{ "GeForce GTX 750 Ti", { 16, 2, 16, 8, 32, 32, 16, 64, 1, 1, 1, 0, 1, 2 } },
{ "default", { 16, 2, 16, 16, 32, 16, 16, 64, 1, 1, 1, 0, 1, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 32, 8, 32, 32, 64, 16, 16, 64, 1, 1, 1, 0, 2, 1 } },
{ "GeForce GTX TITAN X", { 16, 2, 8, 8, 64, 8, 8, 32, 1, 0, 1, 1, 1, 4 } },
{ "default", { 16, 2, 32, 32, 64, 16, 16, 32, 1, 0, 1, 0, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 16, 2, 16, 16, 128, 16, 16, 64, 1, 1, 1, 1, 2, 4 } },
{ "GeForce GTX 1080", { 16, 2, 32, 16, 64, 32, 8, 64, 1, 1, 0, 0, 1, 2 } },
{ "TITAN X (Pascal)", { 32, 2, 32, 32, 64, 8, 8, 32, 1, 1, 0, 0, 2, 4 } },
{ "default", { 32, 2, 16, 16, 32, 16, 16, 64, 1, 1, 0, 0, 2, 4 } },
} },
{ "default", {
{ "default", { 32, 2, 8, 8, 16, 32, 32, 64, 1, 1, 0, 0, 1, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 2, 16, 16, 32, 8, 8, 32, 1, 1, 0, 0, 2, 1 } }, { "default", {
{ "default", { 32, 2, 16, 16, 32, 8, 8, 32, 1, 1, 0, 0, 2, 1 } },
} },
} }
}, },
} }

View File

@ -14,63 +14,114 @@ const DatabaseEntry XgemmDouble = {
"Xgemm", Precision::kDouble, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, { "Xgemm", Precision::kDouble, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 2, 16, 16, 64, 8, 8, 32, 0, 0, 0, 0, 4, 4 } }, { "Ellesmere", {
{ "Ellesmere", { 32, 2, 16, 16, 32, 16, 16, 64, 1, 1, 0, 0, 2, 2 } }, { "AMD Radeon RX 480", { 32, 2, 16, 16, 32, 16, 16, 64, 1, 1, 0, 0, 2, 2 } },
{ "Fiji", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 2, 2 } }, { "default", { 32, 2, 16, 16, 32, 16, 16, 64, 1, 1, 0, 0, 2, 2 } },
{ "Hawaii", { 16, 8, 32, 8, 128, 8, 8, 32, 0, 1, 0, 0, 1, 4 } }, } },
{ "Oland", { 16, 2, 8, 16, 64, 16, 8, 16, 0, 0, 1, 1, 1, 1 } }, { "Fiji", {
{ "Pitcairn", { 32, 2, 32, 16, 64, 8, 16, 32, 0, 0, 0, 0, 1, 2 } }, { "AMD Radeon R9 Fury X", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 2, 2 } },
{ "Tahiti", { 32, 2, 16, 8, 16, 8, 8, 32, 0, 0, 0, 1, 1, 4 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 2, 16, 16, 64, 8, 8, 32, 0, 0, 0, 0, 4, 4 } },
{ "Tonga", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 2, 2 } }, { "default", { 32, 2, 8, 8, 16, 32, 32, 32, 1, 1, 0, 0, 1, 1 } },
{ "default", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 2, 2 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 16, 8, 32, 8, 128, 8, 8, 32, 0, 1, 0, 0, 1, 4 } },
{ "default", { 16, 8, 32, 8, 128, 8, 8, 32, 0, 1, 0, 0, 1, 4 } },
} },
{ "Oland", {
{ "Oland", { 16, 2, 8, 16, 64, 16, 8, 16, 0, 0, 1, 1, 1, 1 } },
{ "default", { 16, 2, 8, 16, 64, 16, 8, 16, 0, 0, 1, 1, 1, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 32, 2, 32, 16, 64, 8, 16, 32, 0, 0, 0, 0, 1, 2 } },
{ "default", { 32, 2, 32, 16, 64, 8, 16, 32, 0, 0, 0, 0, 1, 2 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 32, 2, 16, 8, 16, 8, 8, 32, 0, 0, 0, 1, 1, 4 } },
{ "default", { 32, 2, 16, 8, 16, 8, 8, 32, 0, 0, 0, 1, 1, 4 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 2, 2 } },
{ "default", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 2, 2 } },
} },
{ "default", {
{ "default", { 32, 2, 16, 16, 32, 16, 16, 32, 1, 1, 0, 0, 2, 2 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 32, 2, 8, 8, 64, 8, 8, 16, 0, 1, 1, 0, 8, 2 } }, { "default", {
{ "default", { 32, 2, 8, 8, 64, 8, 8, 16, 0, 1, 1, 0, 8, 2 } }, { "Mali-T628", { 32, 2, 8, 8, 64, 8, 8, 16, 0, 1, 1, 0, 8, 2 } },
{ "default", { 32, 2, 8, 8, 64, 8, 8, 16, 0, 1, 1, 0, 8, 2 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 32, 8, 128, 16, 16, 128, 1, 1, 1, 1, 2, 8 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 2, 32, 16, 128, 16, 16, 64, 0, 1, 1, 0, 1, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 32, 8, 128, 16, 16, 128, 1, 1, 1, 1, 2, 8 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 32, 16, 128, 16, 16, 128, 0, 0, 1, 0, 1, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 2, 32, 16, 128, 16, 16, 64, 0, 1, 1, 0, 1, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 16, 8, 128, 8, 8, 64, 1, 0, 0, 1, 2, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 32, 16, 128, 16, 16, 128, 0, 0, 1, 0, 1, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 2, 16, 8, 128, 8, 8, 128, 1, 0, 0, 0, 2, 8 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 16, 8, 128, 8, 8, 64, 1, 0, 0, 1, 2, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 2, 8, 16, 128, 16, 8, 128, 0, 0, 1, 1, 1, 8 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 2, 16, 8, 128, 8, 8, 128, 1, 0, 0, 0, 2, 8 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 1, 4 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 2, 8, 16, 128, 16, 8, 128, 0, 0, 1, 1, 1, 8 } },
{ "default", { 32, 2, 16, 16, 64, 8, 8, 64, 1, 1, 0, 0, 1, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 8, 16, 16, 16, 16, 128, 0, 0, 1, 0, 1, 4 } }, { "default", {
{ "default", { 32, 8, 8, 16, 16, 16, 16, 128, 0, 0, 1, 0, 1, 4 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 8, 8, 16, 16, 16, 16, 128, 0, 0, 1, 0, 1, 4 } },
{ "default", { 32, 8, 8, 16, 16, 16, 16, 128, 0, 0, 1, 0, 1, 4 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 2, 8, 8, 16, 8, 8, 32, 1, 0, 0, 1, 2, 2 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 16, 2, 8, 16, 32, 8, 8, 64, 0, 0, 1, 1, 2, 8 } }, { "GeForce GTX 480", { 16, 2, 8, 16, 32, 32, 8, 64, 1, 1, 1, 0, 1, 2 } },
{ "GeForce GTX 1080", { 32, 2, 16, 16, 32, 16, 16, 64, 0, 0, 0, 0, 2, 4 } }, { "default", { 16, 2, 8, 16, 32, 32, 8, 64, 1, 1, 1, 0, 1, 2 } },
{ "GeForce GTX 480", { 16, 2, 8, 16, 32, 32, 8, 64, 1, 1, 1, 0, 1, 2 } }, } },
{ "GeForce GTX 670", { 32, 8, 16, 32, 128, 16, 8, 32, 0, 1, 1, 0, 1, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 32, 8, 8, 8, 32, 16, 32, 128, 1, 0, 0, 1, 2, 4 } }, { "GRID K520", { 16, 2, 8, 8, 16, 8, 8, 32, 1, 0, 0, 1, 2, 2 } },
{ "GeForce GTX 750", { 32, 8, 16, 32, 64, 16, 8, 128, 0, 0, 0, 1, 2, 1 } }, { "GeForce GTX 670", { 32, 8, 16, 32, 128, 16, 8, 32, 0, 1, 1, 0, 1, 1 } },
{ "GeForce GTX 750 Ti", { 32, 2, 8, 8, 32, 16, 16, 32, 0, 0, 0, 0, 4, 2 } }, { "GeForce GTX 680", { 32, 8, 8, 8, 32, 16, 32, 128, 1, 0, 0, 1, 2, 4 } },
{ "GeForce GTX 980", { 32, 8, 16, 8, 64, 32, 32, 128, 0, 0, 1, 0, 2, 4 } }, { "default", { 16, 2, 16, 32, 128, 16, 32, 128, 0, 0, 0, 0, 1, 1 } },
{ "GeForce GTX TITAN", { 16, 8, 16, 8, 32, 16, 32, 128, 1, 1, 1, 1, 2, 2 } }, } },
{ "GeForce GTX TITAN Black", { 16, 2, 16, 8, 16, 16, 8, 16, 1, 1, 1, 0, 1, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 16, 8, 16, 16, 16, 16, 16, 16, 0, 0, 0, 0, 1, 1 } }, { "GeForce GTX TITAN", { 16, 8, 16, 8, 32, 16, 32, 128, 1, 1, 1, 1, 2, 2 } },
{ "TITAN X (Pascal)", { 32, 2, 32, 32, 32, 16, 16, 32, 0, 0, 0, 0, 1, 2 } }, { "GeForce GTX TITAN Black", { 16, 2, 16, 8, 16, 16, 8, 16, 1, 1, 1, 0, 1, 1 } },
{ "Tesla K20m", { 16, 2, 32, 8, 32, 16, 16, 64, 1, 0, 0, 0, 1, 1 } }, { "Tesla K20m", { 16, 2, 32, 8, 32, 16, 16, 64, 1, 0, 0, 0, 1, 1 } },
{ "Tesla K40m", { 32, 2, 16, 8, 64, 16, 32, 128, 1, 0, 1, 1, 2, 4 } }, { "Tesla K40m", { 32, 2, 16, 8, 64, 16, 32, 128, 1, 0, 1, 1, 2, 4 } },
{ "default", { 32, 2, 16, 16, 32, 16, 16, 64, 0, 0, 0, 0, 2, 4 } }, { "default", { 16, 2, 16, 8, 16, 16, 16, 128, 1, 0, 0, 0, 1, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 8, 16, 32, 64, 16, 8, 128, 0, 0, 0, 1, 2, 1 } },
{ "GeForce GTX 750 Ti", { 32, 2, 8, 8, 32, 16, 16, 32, 0, 0, 0, 0, 4, 2 } },
{ "default", { 32, 2, 16, 32, 32, 16, 16, 128, 0, 0, 0, 0, 2, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 32, 8, 16, 8, 64, 32, 32, 128, 0, 0, 1, 0, 2, 4 } },
{ "GeForce GTX TITAN X", { 16, 8, 16, 16, 16, 16, 16, 16, 0, 0, 0, 0, 1, 1 } },
{ "default", { 16, 8, 16, 16, 16, 16, 16, 128, 0, 0, 0, 0, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 16, 2, 8, 16, 32, 8, 8, 64, 0, 0, 1, 1, 2, 8 } },
{ "GeForce GTX 1080", { 32, 2, 16, 16, 32, 16, 16, 64, 0, 0, 0, 0, 2, 4 } },
{ "TITAN X (Pascal)", { 32, 2, 32, 32, 32, 16, 16, 32, 0, 0, 0, 0, 1, 2 } },
{ "default", { 32, 2, 16, 16, 32, 16, 16, 64, 0, 0, 0, 0, 2, 4 } },
} },
{ "default", {
{ "default", { 32, 2, 16, 16, 32, 16, 16, 64, 0, 0, 0, 0, 2, 4 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 2, 8, 8, 32, 8, 8, 64, 0, 0, 0, 0, 4, 4 } }, { "default", {
{ "default", { 32, 2, 8, 8, 32, 8, 8, 64, 0, 0, 0, 0, 4, 4 } },
} },
} }
}, },
} }

View File

@ -14,62 +14,113 @@ const DatabaseEntry XgemmComplexDouble = {
"Xgemm", Precision::kComplexDouble, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, { "Xgemm", Precision::kComplexDouble, {"KWG", "KWI", "MDIMA", "MDIMC", "MWG", "NDIMB", "NDIMC", "NWG", "SA", "SB", "STRM", "STRN", "VWM", "VWN"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 8, 8, 16, 32, 16, 16, 32, 0, 0, 1, 1, 2, 2 } }, { "Ellesmere", {
{ "Ellesmere", { 32, 2, 16, 16, 16, 16, 16, 16, 1, 1, 0, 0, 1, 1 } }, { "AMD Radeon RX 480", { 32, 2, 16, 16, 16, 16, 16, 16, 1, 1, 0, 0, 1, 1 } },
{ "Fiji", { 32, 2, 16, 16, 16, 16, 16, 16, 1, 1, 0, 0, 1, 1 } }, { "default", { 32, 2, 16, 16, 16, 16, 16, 16, 1, 1, 0, 0, 1, 1 } },
{ "Hawaii", { 16, 2, 16, 16, 16, 16, 16, 32, 1, 0, 0, 0, 1, 2 } }, } },
{ "Oland", { 16, 2, 16, 8, 16, 16, 32, 128, 0, 0, 0, 0, 1, 4 } }, { "Fiji", {
{ "Pitcairn", { 32, 2, 16, 8, 32, 8, 32, 32, 0, 1, 1, 0, 1, 1 } }, { "AMD Radeon R9 Fury X", { 32, 2, 16, 16, 16, 16, 16, 16, 1, 1, 0, 0, 1, 1 } },
{ "Tahiti", { 16, 2, 16, 8, 16, 8, 8, 16, 0, 0, 1, 0, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 8, 8, 16, 32, 16, 16, 32, 0, 0, 1, 1, 2, 2 } },
{ "Tonga", { 16, 2, 32, 16, 32, 16, 16, 16, 1, 1, 1, 1, 1, 1 } }, { "default", { 32, 2, 16, 16, 32, 8, 8, 32, 0, 0, 0, 0, 2, 4 } },
{ "default", { 32, 2, 16, 16, 16, 16, 16, 16, 1, 1, 0, 0, 1, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 16, 2, 16, 16, 16, 16, 16, 32, 1, 0, 0, 0, 1, 2 } },
{ "default", { 16, 2, 16, 16, 16, 16, 16, 32, 1, 0, 0, 0, 1, 2 } },
} },
{ "Oland", {
{ "Oland", { 16, 2, 16, 8, 16, 16, 32, 128, 0, 0, 0, 0, 1, 4 } },
{ "default", { 16, 2, 16, 8, 16, 16, 32, 128, 0, 0, 0, 0, 1, 4 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 32, 2, 16, 8, 32, 8, 32, 32, 0, 1, 1, 0, 1, 1 } },
{ "default", { 32, 2, 16, 8, 32, 8, 32, 32, 0, 1, 1, 0, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 16, 2, 16, 8, 16, 8, 8, 16, 0, 0, 1, 0, 1, 1 } },
{ "default", { 16, 2, 16, 8, 16, 8, 8, 16, 0, 0, 1, 0, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 2, 32, 16, 32, 16, 16, 16, 1, 1, 1, 1, 1, 1 } },
{ "default", { 16, 2, 32, 16, 32, 16, 16, 16, 1, 1, 1, 1, 1, 1 } },
} },
{ "default", {
{ "default", { 32, 2, 16, 16, 16, 16, 16, 16, 1, 1, 0, 0, 1, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 16, 2, 8, 8, 64, 32, 8, 64, 0, 0, 1, 0, 8, 1 } }, { "default", {
{ "default", { 16, 2, 8, 8, 64, 32, 8, 64, 0, 0, 1, 0, 8, 1 } }, { "Mali-T628", { 16, 2, 8, 8, 64, 32, 8, 64, 0, 0, 1, 0, 8, 1 } },
{ "default", { 16, 2, 8, 8, 64, 32, 8, 64, 0, 0, 1, 0, 8, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 32, 8, 64, 16, 8, 128, 0, 1, 0, 1, 2, 1 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 2, 16, 32, 128, 16, 16, 64, 0, 1, 0, 0, 2, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 16, 2, 32, 8, 64, 16, 8, 128, 0, 1, 0, 1, 2, 1 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 16, 32, 128, 16, 8, 32, 0, 1, 0, 0, 4, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 32, 2, 16, 32, 128, 16, 16, 64, 0, 1, 0, 0, 2, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 8, 8, 128, 8, 16, 128, 0, 0, 0, 1, 1, 8 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 2, 16, 32, 128, 16, 8, 32, 0, 1, 0, 0, 4, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 2, 8, 8, 128, 32, 8, 128, 0, 0, 0, 0, 1, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 32, 2, 8, 8, 128, 8, 16, 128, 0, 0, 0, 1, 1, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 8, 32, 32, 8, 8, 32, 0, 1, 0, 0, 1, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 2, 8, 8, 128, 32, 8, 128, 0, 0, 0, 0, 1, 4 } },
{ "default", { 32, 2, 8, 8, 16, 8, 8, 32, 1, 1, 0, 0, 1, 2 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 32, 8, 8, 32, 32, 8, 8, 32, 0, 1, 0, 0, 1, 2 } },
{ "default", { 32, 2, 8, 8, 16, 8, 8, 32, 1, 1, 0, 0, 1, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 32, 2, 16, 16, 16, 16, 8, 32, 0, 0, 1, 0, 1, 1 } }, { "default", {
{ "default", { 32, 2, 16, 16, 16, 16, 8, 32, 0, 0, 1, 0, 1, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 32, 2, 16, 16, 16, 16, 8, 32, 0, 0, 1, 0, 1, 1 } },
{ "default", { 32, 2, 16, 16, 16, 16, 8, 32, 0, 0, 1, 0, 1, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 32, 8, 16, 16, 16, 8, 16, 64, 1, 0, 1, 1, 1, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 32, 8, 32, 16, 32, 8, 8, 32, 0, 0, 0, 1, 1, 4 } }, { "GeForce GTX 480", { 16, 2, 32, 32, 32, 32, 8, 32, 0, 0, 1, 0, 1, 1 } },
{ "GeForce GTX 1080", { 32, 2, 16, 16, 16, 8, 8, 16, 0, 0, 0, 0, 1, 2 } }, { "default", { 16, 2, 32, 32, 32, 32, 8, 32, 0, 0, 1, 0, 1, 1 } },
{ "GeForce GTX 480", { 16, 2, 32, 32, 32, 32, 8, 32, 0, 0, 1, 0, 1, 1 } }, } },
{ "GeForce GTX 670", { 32, 8, 16, 8, 16, 16, 32, 64, 1, 0, 0, 1, 1, 2 } }, { "SM3.0", {
{ "GeForce GTX 680", { 16, 8, 16, 8, 64, 16, 32, 32, 0, 1, 1, 0, 1, 1 } }, { "GRID K520", { 32, 8, 16, 16, 16, 8, 16, 64, 1, 0, 1, 1, 1, 1 } },
{ "GeForce GTX 750", { 32, 2, 8, 32, 32, 8, 8, 64, 0, 0, 1, 0, 1, 4 } }, { "GeForce GTX 670", { 32, 8, 16, 8, 16, 16, 32, 64, 1, 0, 0, 1, 1, 2 } },
{ "GeForce GTX 750 Ti", { 32, 2, 8, 8, 16, 8, 8, 32, 0, 0, 0, 0, 1, 1 } }, { "GeForce GTX 680", { 16, 8, 16, 8, 64, 16, 32, 32, 0, 1, 1, 0, 1, 1 } },
{ "GeForce GTX 980", { 16, 2, 16, 8, 32, 8, 16, 128, 0, 0, 1, 1, 2, 2 } }, { "default", { 16, 8, 16, 16, 16, 16, 16, 32, 0, 0, 0, 0, 1, 1 } },
{ "GeForce GTX TITAN Black", { 16, 2, 16, 16, 32, 16, 8, 32, 0, 1, 1, 1, 1, 1 } }, } },
{ "GeForce GTX TITAN X", { 32, 8, 16, 16, 128, 16, 16, 32, 0, 0, 1, 0, 1, 1 } }, { "SM3.5", {
{ "TITAN X (Pascal)", { 32, 2, 16, 16, 16, 16, 16, 16, 0, 0, 0, 0, 1, 1 } }, { "GeForce GTX TITAN Black", { 16, 2, 16, 16, 32, 16, 8, 32, 0, 1, 1, 1, 1, 1 } },
{ "Tesla K20m", { 32, 2, 32, 8, 32, 16, 16, 64, 0, 0, 1, 0, 1, 1 } }, { "Tesla K20m", { 32, 2, 32, 8, 32, 16, 16, 64, 0, 0, 1, 0, 1, 1 } },
{ "Tesla K40m", { 16, 8, 8, 8, 32, 32, 16, 32, 0, 0, 1, 0, 1, 1 } }, { "Tesla K40m", { 16, 8, 8, 8, 32, 32, 16, 32, 0, 0, 1, 0, 1, 1 } },
{ "default", { 32, 2, 16, 16, 32, 16, 16, 32, 0, 0, 0, 0, 1, 1 } }, { "default", { 32, 2, 8, 8, 32, 16, 16, 64, 0, 0, 0, 0, 4, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 2, 8, 32, 32, 8, 8, 64, 0, 0, 1, 0, 1, 4 } },
{ "GeForce GTX 750 Ti", { 32, 2, 8, 8, 16, 8, 8, 32, 0, 0, 0, 0, 1, 1 } },
{ "default", { 32, 2, 8, 32, 16, 8, 8, 32, 0, 0, 0, 0, 1, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 16, 2, 16, 8, 32, 8, 16, 128, 0, 0, 1, 1, 2, 2 } },
{ "GeForce GTX TITAN X", { 32, 8, 16, 16, 128, 16, 16, 32, 0, 0, 1, 0, 1, 1 } },
{ "default", { 16, 2, 16, 16, 128, 16, 16, 128, 0, 0, 1, 0, 1, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 32, 8, 32, 16, 32, 8, 8, 32, 0, 0, 0, 1, 1, 4 } },
{ "GeForce GTX 1080", { 32, 2, 16, 16, 16, 8, 8, 16, 0, 0, 0, 0, 1, 2 } },
{ "TITAN X (Pascal)", { 32, 2, 16, 16, 16, 16, 16, 16, 0, 0, 0, 0, 1, 1 } },
{ "default", { 32, 2, 32, 32, 32, 32, 32, 64, 0, 0, 0, 0, 1, 2 } },
} },
{ "default", {
{ "default", { 32, 2, 16, 16, 32, 16, 16, 32, 0, 0, 0, 0, 1, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 2, 32, 32, 32, 8, 8, 32, 1, 1, 0, 0, 1, 1 } }, { "default", {
{ "default", { 32, 2, 32, 32, 32, 8, 8, 32, 1, 1, 0, 0, 1, 1 } },
} },
} }
}, },
} }

View File

@ -14,19 +14,28 @@ const DatabaseEntry XgemmDirectHalf = {
"XgemmDirect", Precision::kHalf, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, { "XgemmDirect", Precision::kHalf, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 8, 32, 8, 8, 32, 1, 1, 1, 1, 32 } }, { "Ellesmere", {
{ "default", { 8, 32, 8, 8, 32, 1, 1, 1, 1, 32 } }, { "AMD Radeon RX 480", { 8, 32, 8, 8, 32, 1, 1, 1, 1, 32 } },
{ "default", { 8, 32, 8, 8, 32, 1, 1, 1, 1, 32 } },
} },
{ "default", {
{ "default", { 8, 32, 8, 8, 32, 1, 1, 1, 1, 32 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } }, { "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "default", {
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
} },
} }
}, },
} }

View File

@ -14,49 +14,88 @@ const DatabaseEntry XgemmDirectSingle = {
"XgemmDirect", Precision::kSingle, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, { "XgemmDirect", Precision::kSingle, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 32 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 8, 8, 16, 8, 8, 1, 0, 2, 2, 32 } }, { "AMD Radeon RX 480", { 2, 8, 8, 32, 32, 1, 1, 2, 1, 32 } },
{ "Ellesmere", { 2, 8, 8, 32, 32, 1, 1, 2, 1, 32 } }, { "default", { 2, 8, 8, 32, 32, 1, 1, 2, 1, 32 } },
{ "Fiji", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } }, } },
{ "Tonga", { 16, 16, 16, 32, 8, 0, 1, 1, 1, 32 } }, { "Fiji", {
{ "Turks", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 16 } }, { "AMD Radeon R9 Fury X", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
{ "default", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } }, { "AMD Radeon R9 M370X Compute Engine", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 32 } },
{ "default", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 16, 16, 32, 8, 0, 1, 1, 1, 32 } },
{ "default", { 16, 16, 16, 32, 8, 0, 1, 1, 1, 32 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 16 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 16 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 8, 8, 16, 8, 8, 1, 0, 2, 2, 32 } },
{ "default", { 8, 8, 16, 8, 8, 1, 0, 2, 2, 32 } },
} },
{ "default", {
{ "default", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 8, 8, 0, 0, 1, 8, 64 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 16, 16, 8, 8, 8, 0, 0, 2, 4, 32 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 8, 8, 0, 0, 1, 8, 64 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 8, 8, 8, 8, 0, 0, 2, 2, 64 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 16, 16, 8, 8, 8, 0, 0, 2, 4, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 8, 8, 8, 8, 0, 0, 2, 2, 64 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } }, { "default", {
{ "Iris Pro", { 2, 16, 16, 8, 8, 1, 1, 2, 4, 32 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } }, { "Iris Pro", { 2, 16, 16, 8, 8, 1, 1, 2, 4, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GeForce GT 650M", { 16, 16, 16, 8, 16, 1, 0, 2, 2, 32 } }, { "SM3.0", {
{ "GeForce GTX 1080", { 16, 16, 8, 16, 8, 1, 1, 1, 1, 32 } }, { "GeForce GT 650M", { 16, 16, 16, 8, 16, 1, 0, 2, 2, 32 } },
{ "GeForce GTX 750 Ti", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } }, { "default", { 16, 16, 16, 8, 16, 1, 0, 2, 2, 32 } },
{ "GeForce GTX TITAN Black", { 2, 8, 8, 16, 16, 1, 1, 4, 2, 32 } }, } },
{ "TITAN X (Pascal)", { 8, 32, 8, 8, 16, 1, 1, 1, 1, 32 } }, { "SM3.5", {
{ "default", { 2, 8, 8, 16, 16, 1, 1, 4, 2, 32 } }, { "GeForce GTX TITAN Black", { 2, 8, 8, 16, 16, 1, 1, 4, 2, 32 } },
{ "default", { 2, 8, 8, 16, 16, 1, 1, 4, 2, 32 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750 Ti", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1080", { 16, 16, 8, 16, 8, 1, 1, 1, 1, 32 } },
{ "TITAN X (Pascal)", { 8, 32, 8, 8, 16, 1, 1, 1, 1, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } },
} },
{ "default", {
{ "default", { 2, 8, 8, 16, 16, 1, 1, 4, 2, 32 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 2, 8, 8, 8, 8, 1, 1, 2, 1, 16 } }, { "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 1, 16 } }, { "QUALCOMM Adreno(TM)", { 2, 8, 8, 8, 8, 1, 1, 2, 1, 16 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 1, 16 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } }, { "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } },
} },
} }
}, },
} }

View File

@ -14,41 +14,72 @@ const DatabaseEntry XgemmDirectComplexSingle = {
"XgemmDirect", Precision::kComplexSingle, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, { "XgemmDirect", Precision::kComplexSingle, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "Fiji", {
{ "ATI Radeon HD 6750M", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } }, { "AMD Radeon R9 Fury X", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
{ "Fiji", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "AMD Radeon R9 M370X Compute Engine", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
{ "Tonga", { 2, 16, 16, 16, 16, 1, 1, 2, 2, 32 } }, { "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
{ "Turks", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 16 } }, } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 2, 2, 32 } }, { "Tonga", {
{ "AMD Radeon R9 380", { 2, 16, 16, 16, 16, 1, 1, 2, 2, 32 } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 2, 2, 32 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 16 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 16 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
} },
{ "default", {
{ "default", { 2, 16, 16, 16, 16, 1, 1, 2, 2, 32 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 8, 8, 0, 0, 4, 4, 32 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 2, 16, 16, 8, 8, 1, 1, 1, 4, 32 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 8, 8, 0, 0, 4, 4, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 8, 8, 16, 8, 1, 1, 2, 1, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 2, 16, 16, 8, 8, 1, 1, 1, 4, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 4, 32 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 8, 8, 16, 8, 1, 1, 2, 1, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 4, 32 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "default", {
{ "Iris Pro", { 2, 16, 16, 8, 8, 1, 1, 2, 2, 32 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "Iris Pro", { 2, 16, 16, 8, 8, 1, 1, 2, 2, 32 } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GeForce GTX 1080", { 8, 8, 16, 16, 8, 1, 1, 2, 2, 32 } }, { "SM3.5", {
{ "GeForce GTX 750 Ti", { 16, 8, 8, 16, 8, 1, 1, 2, 1, 16 } }, { "GeForce GTX TITAN Black", { 2, 8, 8, 16, 16, 1, 1, 1, 1, 16 } },
{ "GeForce GTX TITAN Black", { 2, 8, 8, 16, 16, 1, 1, 1, 1, 16 } }, { "default", { 2, 8, 8, 16, 16, 1, 1, 1, 1, 16 } },
{ "TITAN X (Pascal)", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } }, } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } }, { "SM5.0", {
{ "GeForce GTX 750 Ti", { 16, 8, 8, 16, 8, 1, 1, 2, 1, 16 } },
{ "default", { 16, 8, 8, 16, 8, 1, 1, 2, 1, 16 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1080", { 8, 8, 16, 16, 8, 1, 1, 2, 2, 32 } },
{ "TITAN X (Pascal)", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
{ "default", { 2, 16, 16, 8, 8, 1, 1, 2, 4, 32 } },
} },
{ "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 2, 32, 32, 8, 8, 1, 1, 1, 1, 32 } }, { "default", {
{ "default", { 2, 32, 32, 8, 8, 1, 1, 1, 1, 32 } },
} },
} }
}, },
} }

View File

@ -14,33 +14,59 @@ const DatabaseEntry XgemmDirectDouble = {
"XgemmDirect", Precision::kDouble, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, { "XgemmDirect", Precision::kDouble, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } }, { "Ellesmere", {
{ "Ellesmere", { 8, 16, 16, 8, 16, 1, 1, 2, 1, 32 } }, { "AMD Radeon RX 480", { 8, 16, 16, 8, 16, 1, 1, 2, 1, 32 } },
{ "Fiji", { 16, 8, 8, 8, 16, 1, 1, 1, 1, 16 } }, { "default", { 8, 16, 16, 8, 16, 1, 1, 2, 1, 32 } },
{ "Tonga", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 32 } }, } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "Fiji", {
{ "AMD Radeon R9 Fury X", { 16, 8, 8, 8, 16, 1, 1, 1, 1, 16 } },
{ "AMD Radeon R9 M370X Compute Engine", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
{ "default", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 32 } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 32 } },
} },
{ "default", {
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 8, 8, 1, 1, 4, 4, 32 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 8, 8, 8, 8, 0, 0, 1, 4, 32 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 8, 8, 1, 1, 4, 4, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 8, 8, 8, 8, 1, 1, 4, 4, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 8, 8, 8, 8, 0, 0, 1, 4, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 8, 8, 8, 8, 1, 1, 4, 4, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 4, 2, 32 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GeForce GTX 1080", { 2, 16, 16, 8, 8, 1, 1, 1, 2, 16 } }, { "SM3.5", {
{ "GeForce GTX 750 Ti", { 2, 8, 8, 8, 8, 1, 1, 2, 4, 32 } }, { "GeForce GTX TITAN Black", { 8, 16, 16, 16, 8, 1, 0, 1, 1, 16 } },
{ "GeForce GTX TITAN Black", { 8, 16, 16, 16, 8, 1, 0, 1, 1, 16 } }, { "default", { 8, 16, 16, 16, 8, 1, 0, 1, 1, 16 } },
{ "TITAN X (Pascal)", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 16 } }, } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } }, { "SM5.0", {
{ "GeForce GTX 750 Ti", { 2, 8, 8, 8, 8, 1, 1, 2, 4, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 4, 32 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1080", { 2, 16, 16, 8, 8, 1, 1, 1, 2, 16 } },
{ "TITAN X (Pascal)", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 16 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 16 } },
} },
{ "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 16 } }, { "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 16 } },
} },
} }
}, },
} }

View File

@ -14,33 +14,59 @@ const DatabaseEntry XgemmDirectComplexDouble = {
"XgemmDirect", Precision::kComplexDouble, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, { "XgemmDirect", Precision::kComplexDouble, {"KWID", "MDIMAD", "MDIMCD", "NDIMBD", "NDIMCD", "PADA", "PADB", "VWMD", "VWND", "WGD"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "Ellesmere", {
{ "Ellesmere", { 16, 32, 32, 16, 8, 0, 0, 1, 1, 32 } }, { "AMD Radeon RX 480", { 16, 32, 32, 16, 8, 0, 0, 1, 1, 32 } },
{ "Fiji", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "default", { 16, 32, 32, 16, 8, 0, 0, 1, 1, 32 } },
{ "Tonga", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } }, { "Fiji", {
{ "AMD Radeon R9 Fury X", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
{ "AMD Radeon R9 M370X Compute Engine", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
} },
{ "default", {
{ "default", { 2, 16, 16, 16, 16, 1, 1, 1, 1, 16 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 32, 8, 0, 0, 1, 1, 32 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 16, 16, 8, 8, 0, 0, 2, 1, 32 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 8, 8, 32, 8, 0, 0, 1, 1, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 8, 16, 8, 8, 8, 0, 0, 2, 2, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 16, 16, 8, 8, 0, 0, 2, 1, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 16 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 8, 16, 8, 8, 8, 0, 0, 2, 2, 32 } },
{ "default", { 2, 8, 8, 8, 8, 1, 1, 2, 2, 16 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GeForce GTX 1080", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } }, { "SM3.5", {
{ "GeForce GTX 750 Ti", { 2, 32, 32, 8, 8, 1, 1, 1, 1, 32 } }, { "GeForce GTX TITAN Black", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
{ "GeForce GTX TITAN Black", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } }, { "default", { 2, 8, 8, 8, 8, 1, 1, 1, 1, 8 } },
{ "TITAN X (Pascal)", { 2, 16, 16, 8, 8, 1, 1, 1, 2, 16 } }, } },
{ "default", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } }, { "SM5.0", {
{ "GeForce GTX 750 Ti", { 2, 32, 32, 8, 8, 1, 1, 1, 1, 32 } },
{ "default", { 2, 32, 32, 8, 8, 1, 1, 1, 1, 32 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1080", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
{ "TITAN X (Pascal)", { 2, 16, 16, 8, 8, 1, 1, 1, 2, 16 } },
{ "default", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
} },
{ "default", {
{ "default", { 2, 16, 16, 8, 8, 1, 1, 1, 1, 16 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } }, { "default", {
{ "default", { 2, 8, 8, 8, 8, 1, 1, 1, 2, 16 } },
} },
} }
}, },
} }

View File

@ -14,20 +14,29 @@ const DatabaseEntry XgemvHalf = {
"Xgemv", Precision::kHalf, {"WGS1", "WPT1"}, { "Xgemv", Precision::kHalf, {"WGS1", "WPT1"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 256, 1 } }, { "Ellesmere", {
{ "default", { 256, 1 } }, { "AMD Radeon RX 480", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "default", {
{ "default", { 256, 1 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 64, 1 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 256, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 64, 1 } },
{ "default", { 64, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 256, 1 } },
{ "default", { 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,77 +14,136 @@ const DatabaseEntry XgemvSingle = {
"Xgemv", Precision::kSingle, {"WGS1", "WPT1"}, { "Xgemv", Precision::kSingle, {"WGS1", "WPT1"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 128, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 32, 1 } }, { "AMD Radeon RX 480", { 256, 1 } },
{ "Ellesmere", { 256, 1 } }, { "default", { 256, 1 } },
{ "Fiji", { 128, 1 } }, } },
{ "Hawaii", { 128, 1 } }, { "Fiji", {
{ "Oland", { 128, 1 } }, { "AMD Radeon R9 Fury X", { 128, 1 } },
{ "Pitcairn", { 256, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 128, 1 } },
{ "Tahiti", { 256, 1 } }, { "default", { 128, 1 } },
{ "Tonga", { 128, 2 } }, } },
{ "Turks", { 32, 1 } }, { "Hawaii", {
{ "default", { 128, 1 } }, { "AMD Radeon R9 290X", { 128, 1 } },
{ "default", { 128, 1 } },
} },
{ "Oland", {
{ "Oland", { 128, 1 } },
{ "default", { 128, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 128, 2 } },
{ "default", { 128, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 32, 1 } },
{ "default", { 32, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 32, 1 } },
{ "default", { 32, 1 } },
} },
{ "default", {
{ "default", { 128, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 64, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 64, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 32, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } },
{ "default", { 64, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 4 } },
{ "default", { 64, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 256, 1 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 64, 1 } }, { "Intel(R) HD Graphics 530", { 256, 1 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 64, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 64, 1 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 256, 1 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 64, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 256, 1 } },
{ "Iris", { 64, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 1 } },
{ "Iris Pro", { 128, 1 } }, { "Iris", { 64, 2 } },
{ "default", { 128, 1 } }, { "Iris Pro", { 128, 1 } },
{ "default", { 128, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } },
{ "default", { 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 256, 1 } }, { "SM2.0", {
{ "GeForce GT 650M", { 256, 1 } }, { "GeForce GTX 480", { 64, 1 } },
{ "GeForce GTX 1070", { 128, 1 } }, { "default", { 64, 1 } },
{ "GeForce GTX 1080", { 32, 1 } }, } },
{ "GeForce GTX 480", { 64, 1 } }, { "SM3.0", {
{ "GeForce GTX 670", { 64, 1 } }, { "GRID K520", { 256, 1 } },
{ "GeForce GTX 680", { 256, 1 } }, { "GeForce GT 650M", { 256, 1 } },
{ "GeForce GTX 750", { 256, 1 } }, { "GeForce GTX 670", { 64, 1 } },
{ "GeForce GTX 750 Ti", { 32, 1 } }, { "GeForce GTX 680", { 256, 1 } },
{ "GeForce GTX 980", { 128, 1 } }, { "default", { 256, 1 } },
{ "GeForce GTX TITAN", { 256, 1 } }, } },
{ "GeForce GTX TITAN Black", { 256, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 256, 1 } }, { "GeForce GTX TITAN", { 256, 1 } },
{ "TITAN X (Pascal)", { 32, 1 } }, { "GeForce GTX TITAN Black", { 256, 1 } },
{ "Tesla K20m", { 128, 1 } }, { "Tesla K20m", { 128, 1 } },
{ "Tesla K40m", { 256, 1 } }, { "Tesla K40m", { 256, 1 } },
{ "default", { 256, 1 } }, { "default", { 256, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 256, 1 } },
{ "GeForce GTX 750 Ti", { 32, 1 } },
{ "default", { 256, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 128, 1 } },
{ "GeForce GTX TITAN X", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 128, 1 } },
{ "GeForce GTX 1080", { 32, 1 } },
{ "TITAN X (Pascal)", { 32, 1 } },
{ "default", { 128, 1 } },
} },
{ "default", {
{ "default", { 256, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } }, { "QUALCOMM Adreno(TM)", { 64, 1 } },
{ "default", { 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 128, 1 } }, { "default", {
{ "default", { 128, 1 } },
} },
} }
}, },
} }

View File

@ -14,66 +14,120 @@ const DatabaseEntry XgemvComplexSingle = {
"Xgemv", Precision::kComplexSingle, {"WGS1", "WPT1"}, { "Xgemv", Precision::kComplexSingle, {"WGS1", "WPT1"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 64, 1 } }, { "AMD Radeon RX 480", { 32, 1 } },
{ "Ellesmere", { 32, 1 } }, { "default", { 32, 1 } },
{ "Fiji", { 32, 1 } }, } },
{ "Hawaii", { 64, 1 } }, { "Fiji", {
{ "Oland", { 64, 1 } }, { "AMD Radeon R9 Fury X", { 32, 1 } },
{ "Pitcairn", { 64, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 1 } },
{ "Tahiti", { 64, 1 } }, { "default", { 64, 1 } },
{ "Tonga", { 32, 1 } }, } },
{ "Turks", { 64, 1 } }, { "Hawaii", {
{ "default", { 64, 1 } }, { "AMD Radeon R9 290X", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "Oland", {
{ "Oland", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 32, 1 } },
{ "default", { 32, 1 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "default", {
{ "default", { 64, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 128, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 128, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 128, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 128, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } },
{ "default", { 64, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 4 } },
{ "default", { 64, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 64, 1 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 64, 1 } }, { "Intel(R) HD Graphics 530", { 64, 1 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 128, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 64, 1 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 256, 1 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 128, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 64, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 256, 1 } },
{ "Iris", { 256, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 64, 1 } },
{ "Iris Pro", { 64, 1 } }, { "Iris", { 256, 1 } },
{ "default", { 64, 1 } }, { "Iris Pro", { 64, 1 } },
{ "default", { 64, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } },
{ "default", { 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 256, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 64, 1 } }, { "GeForce GTX 480", { 64, 1 } },
{ "GeForce GTX 1080", { 32, 1 } }, { "default", { 64, 1 } },
{ "GeForce GTX 480", { 64, 1 } }, } },
{ "GeForce GTX 670", { 64, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 64, 1 } }, { "GRID K520", { 256, 1 } },
{ "GeForce GTX 750", { 128, 1 } }, { "GeForce GTX 670", { 64, 1 } },
{ "GeForce GTX 750 Ti", { 32, 1 } }, { "GeForce GTX 680", { 64, 1 } },
{ "GeForce GTX TITAN", { 256, 1 } }, { "default", { 64, 1 } },
{ "GeForce GTX TITAN Black", { 32, 1 } }, } },
{ "TITAN X (Pascal)", { 32, 1 } }, { "SM3.5", {
{ "default", { 64, 1 } }, { "GeForce GTX TITAN", { 256, 1 } },
{ "GeForce GTX TITAN Black", { 32, 1 } },
{ "default", { 256, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 128, 1 } },
{ "GeForce GTX 750 Ti", { 32, 1 } },
{ "default", { 64, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 64, 1 } },
{ "GeForce GTX 1080", { 32, 1 } },
{ "TITAN X (Pascal)", { 32, 1 } },
{ "default", { 64, 1 } },
} },
{ "default", {
{ "default", { 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,56 +14,105 @@ const DatabaseEntry XgemvDouble = {
"Xgemv", Precision::kDouble, {"WGS1", "WPT1"}, { "Xgemv", Precision::kDouble, {"WGS1", "WPT1"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 32, 1 } }, { "AMD Radeon RX 480", { 32, 1 } },
{ "Fiji", { 32, 1 } }, { "default", { 32, 1 } },
{ "Hawaii", { 128, 1 } }, } },
{ "Oland", { 256, 1 } }, { "Fiji", {
{ "Pitcairn", { 256, 1 } }, { "AMD Radeon R9 Fury X", { 32, 1 } },
{ "Tahiti", { 256, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 1 } },
{ "Tonga", { 32, 1 } }, { "default", { 64, 1 } },
{ "default", { 256, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 128, 1 } },
{ "default", { 128, 1 } },
} },
{ "Oland", {
{ "Oland", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 32, 1 } },
{ "default", { 32, 1 } },
} },
{ "default", {
{ "default", { 256, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 64, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 64, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 64, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 128, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 64, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 128, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } },
{ "default", { 64, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 64, 4 } },
{ "default", { 64, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } },
{ "default", { 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 128, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 64, 1 } }, { "GeForce GTX 480", { 256, 1 } },
{ "GeForce GTX 1080", { 32, 1 } }, { "default", { 256, 1 } },
{ "GeForce GTX 480", { 256, 1 } }, } },
{ "GeForce GTX 670", { 128, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 128, 1 } }, { "GRID K520", { 128, 1 } },
{ "GeForce GTX 750", { 64, 1 } }, { "GeForce GTX 670", { 128, 1 } },
{ "GeForce GTX 750 Ti", { 32, 1 } }, { "GeForce GTX 680", { 128, 1 } },
{ "GeForce GTX 980", { 64, 1 } }, { "default", { 128, 1 } },
{ "GeForce GTX TITAN", { 256, 1 } }, } },
{ "GeForce GTX TITAN Black", { 32, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 64, 1 } }, { "GeForce GTX TITAN", { 256, 1 } },
{ "TITAN X (Pascal)", { 32, 1 } }, { "GeForce GTX TITAN Black", { 32, 1 } },
{ "Tesla K20m", { 256, 1 } }, { "Tesla K20m", { 256, 1 } },
{ "Tesla K40m", { 256, 1 } }, { "Tesla K40m", { 256, 1 } },
{ "default", { 128, 1 } }, { "default", { 256, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 64, 1 } },
{ "GeForce GTX 750 Ti", { 32, 1 } },
{ "default", { 64, 1 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 64, 1 } },
{ "GeForce GTX TITAN X", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 64, 1 } },
{ "GeForce GTX 1080", { 32, 1 } },
{ "TITAN X (Pascal)", { 32, 1 } },
{ "default", { 128, 1 } },
} },
{ "default", {
{ "default", { 128, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 128, 1 } }, { "default", {
{ "default", { 128, 1 } },
} },
} }
}, },
} }

View File

@ -14,44 +14,81 @@ const DatabaseEntry XgemvComplexDouble = {
"Xgemv", Precision::kComplexDouble, {"WGS1", "WPT1"}, { "Xgemv", Precision::kComplexDouble, {"WGS1", "WPT1"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 32, 1 } }, { "AMD Radeon RX 480", { 32, 1 } },
{ "Fiji", { 64, 1 } }, { "default", { 32, 1 } },
{ "Hawaii", { 64, 1 } }, } },
{ "Oland", { 256, 1 } }, { "Fiji", {
{ "Pitcairn", { 256, 1 } }, { "AMD Radeon R9 Fury X", { 64, 1 } },
{ "Tahiti", { 256, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 1 } },
{ "Tonga", { 64, 1 } }, { "default", { 64, 1 } },
{ "default", { 64, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "Oland", {
{ "Oland", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 256, 1 } },
{ "default", { 256, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 64, 1 } },
{ "default", { 64, 1 } },
} },
{ "default", {
{ "default", { 64, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 64, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 64, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 64, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 128, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 64, 1 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 128, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 64, 4 } },
{ "default", { 64, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 32, 4 } },
{ "default", { 64, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 64, 1 } },
{ "default", { 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 128, 1 } }, { "SM2.0", {
{ "GeForce GTX 480", { 64, 1 } }, { "GeForce GTX 480", { 64, 1 } },
{ "GeForce GTX 670", { 128, 1 } }, { "default", { 64, 1 } },
{ "default", { 128, 1 } }, } },
{ "SM3.0", {
{ "GRID K520", { 128, 1 } },
{ "GeForce GTX 670", { 128, 1 } },
{ "default", { 128, 1 } },
} },
{ "default", {
{ "default", { 128, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 64, 1 } }, { "default", {
{ "default", { 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,20 +14,29 @@ const DatabaseEntry XgemvFastHalf = {
"XgemvFast", Precision::kHalf, {"VW2", "WGS2", "WPT2"}, { "XgemvFast", Precision::kHalf, {"VW2", "WGS2", "WPT2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 1, 32, 1 } }, { "Ellesmere", {
{ "default", { 1, 32, 1 } }, { "AMD Radeon RX 480", { 1, 32, 1 } },
{ "default", { 1, 32, 1 } },
} },
{ "default", {
{ "default", { 1, 32, 1 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 16, 1 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 4 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 4 } },
{ "default", { 1, 16, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 16, 1 } }, { "default", {
{ "default", { 1, 16, 1 } },
} },
} }
}, },
} }

View File

@ -14,77 +14,136 @@ const DatabaseEntry XgemvFastSingle = {
"XgemvFast", Precision::kSingle, {"VW2", "WGS2", "WPT2"}, { "XgemvFast", Precision::kSingle, {"VW2", "WGS2", "WPT2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 1, 128, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 2, 64, 2 } }, { "AMD Radeon RX 480", { 1, 64, 1 } },
{ "Ellesmere", { 1, 64, 1 } }, { "default", { 1, 64, 1 } },
{ "Fiji", { 1, 64, 2 } }, } },
{ "Hawaii", { 1, 64, 1 } }, { "Fiji", {
{ "Oland", { 1, 64, 1 } }, { "AMD Radeon R9 Fury X", { 1, 64, 2 } },
{ "Pitcairn", { 1, 64, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 1, 128, 1 } },
{ "Tahiti", { 1, 64, 1 } }, { "default", { 2, 256, 2 } },
{ "Tonga", { 1, 16, 4 } }, } },
{ "Turks", { 1, 256, 1 } }, { "Hawaii", {
{ "default", { 1, 64, 1 } }, { "AMD Radeon R9 290X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Oland", {
{ "Oland", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 1, 16, 4 } },
{ "default", { 1, 16, 4 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 1, 256, 1 } },
{ "default", { 1, 256, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 2, 64, 2 } },
{ "default", { 2, 64, 2 } },
} },
{ "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 1, 32, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 128, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 1, 32, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 32, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 128, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 32, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 16, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 64, 4 } },
{ "default", { 4, 128, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 16, 4 } },
{ "default", { 4, 128, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 1, 256, 1 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 2, 32, 2 } }, { "Intel(R) HD Graphics 530", { 1, 256, 1 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 4, 128, 4 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 2, 32, 2 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 1, 64, 2 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 4, 128, 4 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 2, 32, 2 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 1, 64, 2 } },
{ "Iris", { 1, 128, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 2, 32, 2 } },
{ "Iris Pro", { 4, 64, 4 } }, { "Iris", { 1, 128, 2 } },
{ "default", { 2, 256, 2 } }, { "Iris Pro", { 4, 64, 4 } },
{ "default", { 2, 256, 2 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 2, 256, 2 } }, { "SM2.0", {
{ "GeForce GT 650M", { 2, 32, 2 } }, { "GeForce GTX 480", { 1, 128, 1 } },
{ "GeForce GTX 1070", { 1, 256, 1 } }, { "default", { 1, 128, 1 } },
{ "GeForce GTX 1080", { 1, 128, 1 } }, } },
{ "GeForce GTX 480", { 1, 128, 1 } }, { "SM3.0", {
{ "GeForce GTX 670", { 2, 256, 2 } }, { "GRID K520", { 2, 256, 2 } },
{ "GeForce GTX 680", { 1, 128, 1 } }, { "GeForce GT 650M", { 2, 32, 2 } },
{ "GeForce GTX 750", { 1, 256, 1 } }, { "GeForce GTX 670", { 2, 256, 2 } },
{ "GeForce GTX 750 Ti", { 2, 32, 2 } }, { "GeForce GTX 680", { 1, 128, 1 } },
{ "GeForce GTX 980", { 1, 256, 1 } }, { "default", { 2, 128, 2 } },
{ "GeForce GTX TITAN", { 1, 256, 1 } }, } },
{ "GeForce GTX TITAN Black", { 1, 256, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 64, 1 } }, { "GeForce GTX TITAN", { 1, 256, 1 } },
{ "TITAN X (Pascal)", { 1, 64, 1 } }, { "GeForce GTX TITAN Black", { 1, 256, 1 } },
{ "Tesla K20m", { 1, 256, 1 } }, { "Tesla K20m", { 1, 256, 1 } },
{ "Tesla K40m", { 1, 256, 1 } }, { "Tesla K40m", { 1, 256, 1 } },
{ "default", { 1, 256, 1 } }, { "default", { 1, 256, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 1, 256, 1 } },
{ "GeForce GTX 750 Ti", { 2, 32, 2 } },
{ "default", { 2, 64, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 1, 256, 1 } },
{ "GeForce GTX TITAN X", { 1, 64, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 256, 1 } },
{ "GeForce GTX 1080", { 1, 128, 1 } },
{ "TITAN X (Pascal)", { 1, 64, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "default", {
{ "default", { 1, 256, 1 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 1, 64, 4 } }, { "default", {
{ "default", { 1, 64, 4 } }, { "QUALCOMM Adreno(TM)", { 1, 64, 4 } },
{ "default", { 1, 64, 4 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,60 +14,108 @@ const DatabaseEntry XgemvFastComplexSingle = {
"XgemvFast", Precision::kComplexSingle, {"VW2", "WGS2", "WPT2"}, { "XgemvFast", Precision::kComplexSingle, {"VW2", "WGS2", "WPT2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 2, 256, 2 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 1, 128, 1 } }, { "AMD Radeon RX 480", { 1, 64, 1 } },
{ "Ellesmere", { 1, 64, 1 } }, { "default", { 1, 64, 1 } },
{ "Fiji", { 1, 16, 1 } }, } },
{ "Hawaii", { 1, 64, 1 } }, { "Fiji", {
{ "Oland", { 1, 64, 1 } }, { "AMD Radeon R9 Fury X", { 1, 16, 1 } },
{ "Pitcairn", { 1, 64, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 2, 256, 2 } },
{ "Tahiti", { 1, 128, 1 } }, { "default", { 1, 64, 1 } },
{ "Tonga", { 2, 32, 2 } }, } },
{ "Turks", { 1, 16, 1 } }, { "Hawaii", {
{ "default", { 1, 64, 1 } }, { "AMD Radeon R9 290X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Oland", {
{ "Oland", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 2, 32, 2 } },
{ "default", { 2, 32, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 1, 16, 1 } },
{ "default", { 1, 16, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 1, 128, 1 } },
{ "default", { 1, 128, 1 } },
} },
{ "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 64, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 128, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 64, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 2, 128, 2 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 1, 128, 2 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 2, 128, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 16, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 64, 4 } },
{ "default", { 1, 64, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 16, 4 } },
{ "default", { 1, 64, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 2, 128, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 32, 2 } }, { "Intel(R) HD Graphics 530", { 2, 128, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 2, 128, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 1, 32, 2 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 1, 32, 4 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 2, 128, 2 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 1, 32, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 1, 32, 4 } },
{ "Iris", { 1, 64, 1 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 1, 32, 1 } },
{ "Iris Pro", { 4, 128, 4 } }, { "Iris", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } }, { "Iris Pro", { 4, 128, 4 } },
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 256, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 64, 1 } }, { "GeForce GTX 480", { 1, 64, 1 } },
{ "GeForce GTX 480", { 1, 64, 1 } }, { "default", { 1, 64, 1 } },
{ "GeForce GTX 670", { 1, 64, 1 } }, } },
{ "GeForce GTX 680", { 1, 64, 1 } }, { "SM3.0", {
{ "default", { 1, 64, 1 } }, { "GRID K520", { 1, 256, 1 } },
{ "GeForce GTX 670", { 1, 64, 1 } },
{ "GeForce GTX 680", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,56 +14,105 @@ const DatabaseEntry XgemvFastDouble = {
"XgemvFast", Precision::kDouble, {"VW2", "WGS2", "WPT2"}, { "XgemvFast", Precision::kDouble, {"VW2", "WGS2", "WPT2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 1, 256, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 1, 128, 1 } }, { "AMD Radeon RX 480", { 1, 128, 1 } },
{ "Fiji", { 1, 32, 1 } }, { "default", { 1, 128, 1 } },
{ "Hawaii", { 1, 64, 1 } }, } },
{ "Oland", { 1, 64, 1 } }, { "Fiji", {
{ "Pitcairn", { 1, 64, 1 } }, { "AMD Radeon R9 Fury X", { 1, 32, 1 } },
{ "Tahiti", { 1, 64, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 1, 256, 1 } },
{ "Tonga", { 2, 32, 2 } }, { "default", { 1, 256, 1 } },
{ "default", { 1, 64, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Oland", {
{ "Oland", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 2, 32, 2 } },
{ "default", { 2, 32, 2 } },
} },
{ "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 1, 64, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 128, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 1, 64, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 16, 1 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 4, 128, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 16, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 1, 16, 4 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 1, 64, 4 } },
{ "default", { 1, 64, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 1, 16, 4 } },
{ "default", { 1, 64, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 256, 1 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 1, 256, 1 } }, { "GeForce GTX 480", { 1, 64, 1 } },
{ "GeForce GTX 1080", { 1, 32, 2 } }, { "default", { 1, 64, 1 } },
{ "GeForce GTX 480", { 1, 64, 1 } }, } },
{ "GeForce GTX 670", { 1, 128, 1 } }, { "SM3.0", {
{ "GeForce GTX 680", { 1, 128, 1 } }, { "GRID K520", { 1, 256, 1 } },
{ "GeForce GTX 750", { 2, 256, 2 } }, { "GeForce GTX 670", { 1, 128, 1 } },
{ "GeForce GTX 750 Ti", { 1, 32, 2 } }, { "GeForce GTX 680", { 1, 128, 1 } },
{ "GeForce GTX 980", { 1, 64, 1 } }, { "default", { 1, 128, 1 } },
{ "GeForce GTX TITAN", { 1, 256, 1 } }, } },
{ "GeForce GTX TITAN Black", { 1, 256, 1 } }, { "SM3.5", {
{ "GeForce GTX TITAN X", { 1, 128, 1 } }, { "GeForce GTX TITAN", { 1, 256, 1 } },
{ "TITAN X (Pascal)", { 1, 32, 1 } }, { "GeForce GTX TITAN Black", { 1, 256, 1 } },
{ "Tesla K20m", { 1, 128, 1 } }, { "Tesla K20m", { 1, 128, 1 } },
{ "Tesla K40m", { 1, 256, 1 } }, { "Tesla K40m", { 1, 256, 1 } },
{ "default", { 1, 256, 1 } }, { "default", { 1, 256, 1 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 2, 256, 2 } },
{ "GeForce GTX 750 Ti", { 1, 32, 2 } },
{ "default", { 2, 256, 2 } },
} },
{ "SM5.2", {
{ "GeForce GTX 980", { 1, 64, 1 } },
{ "GeForce GTX TITAN X", { 1, 128, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 1, 256, 1 } },
{ "GeForce GTX 1080", { 1, 32, 2 } },
{ "TITAN X (Pascal)", { 1, 32, 1 } },
{ "default", { 1, 256, 1 } },
} },
{ "default", {
{ "default", { 1, 256, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,44 +14,81 @@ const DatabaseEntry XgemvFastComplexDouble = {
"XgemvFast", Precision::kComplexDouble, {"VW2", "WGS2", "WPT2"}, { "XgemvFast", Precision::kComplexDouble, {"VW2", "WGS2", "WPT2"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 1, 256, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 1, 16, 1 } }, { "AMD Radeon RX 480", { 1, 16, 1 } },
{ "Fiji", { 1, 16, 1 } }, { "default", { 1, 16, 1 } },
{ "Hawaii", { 1, 64, 1 } }, } },
{ "Oland", { 1, 256, 1 } }, { "Fiji", {
{ "Pitcairn", { 1, 64, 1 } }, { "AMD Radeon R9 Fury X", { 1, 16, 1 } },
{ "Tahiti", { 1, 64, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 1, 256, 1 } },
{ "Tonga", { 1, 32, 1 } }, { "default", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Oland", {
{ "Oland", { 1, 256, 1 } },
{ "default", { 1, 256, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 1, 32, 1 } },
{ "default", { 1, 32, 1 } },
} },
{ "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 2, 64, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 64, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 2, 64, 4 } },
{ "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 64, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 1, 64, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 1, 16, 2 } }, { "Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz", { 4, 64, 4 } },
{ "default", { 4, 64, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 1, 16, 2 } },
{ "default", { 4, 64, 4 } },
} },
} }
}, },
{ // Intel accelerators { // Intel accelerators
kDeviceTypeAccelerator, "Intel", { kDeviceTypeAccelerator, "Intel", {
{ "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } }, { "Intel(R) Many Integrated Core Acceleration Card", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 1, 128, 1 } }, { "SM2.0", {
{ "GeForce GTX 480", { 1, 64, 1 } }, { "GeForce GTX 480", { 1, 64, 1 } },
{ "GeForce GTX 670", { 1, 64, 1 } }, { "default", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } }, } },
{ "SM3.0", {
{ "GRID K520", { 1, 128, 1 } },
{ "GeForce GTX 670", { 1, 64, 1 } },
{ "default", { 1, 64, 1 } },
} },
{ "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 1, 64, 1 } }, { "default", {
{ "default", { 1, 64, 1 } },
} },
} }
}, },
} }

View File

@ -14,19 +14,28 @@ const DatabaseEntry XgemvFastRotHalf = {
"XgemvFastRot", Precision::kHalf, {"VW3", "WGS3", "WPT3"}, { "XgemvFastRot", Precision::kHalf, {"VW3", "WGS3", "WPT3"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 8, 32, 32 } }, { "Ellesmere", {
{ "default", { 8, 32, 32 } }, { "AMD Radeon RX 480", { 8, 32, 32 } },
{ "default", { 8, 32, 32 } },
} },
{ "default", {
{ "default", { 8, 32, 32 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 8, 128, 32 } }, { "default", {
{ "default", { 8, 128, 32 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 8, 128, 32 } },
{ "default", { 8, 128, 32 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 8, 128, 32 } }, { "default", {
{ "default", { 8, 128, 32 } },
} },
} }
}, },
} }

View File

@ -14,54 +14,93 @@ const DatabaseEntry XgemvFastRotSingle = {
"XgemvFastRot", Precision::kSingle, {"VW3", "WGS3", "WPT3"}, { "XgemvFastRot", Precision::kSingle, {"VW3", "WGS3", "WPT3"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 8, 64, 32 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 8, 128, 16 } }, { "AMD Radeon RX 480", { 8, 32, 32 } },
{ "Ellesmere", { 8, 32, 32 } }, { "default", { 8, 32, 32 } },
{ "Fiji", { 4, 32, 16 } }, } },
{ "Tonga", { 8, 128, 32 } }, { "Fiji", {
{ "Turks", { 8, 128, 16 } }, { "AMD Radeon R9 Fury X", { 4, 32, 16 } },
{ "default", { 8, 32, 32 } }, { "AMD Radeon R9 M370X Compute Engine", { 8, 64, 32 } },
{ "default", { 8, 32, 32 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 8, 128, 32 } },
{ "default", { 8, 128, 32 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 8, 128, 16 } },
{ "default", { 8, 128, 16 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 8, 128, 16 } },
{ "default", { 8, 128, 16 } },
} },
{ "default", {
{ "default", { 8, 32, 32 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 32 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 128, 8 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 32, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 128, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 16, 8 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 32, 32 } },
{ "default", { 8, 32, 32 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 16, 8 } },
{ "default", { 8, 32, 32 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 64, 32 } }, { "default", {
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 4, 64, 16 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 8, 64, 32 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 2, 32, 16 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 4, 64, 16 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 16 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 2, 32, 16 } },
{ "Iris Pro", { 4, 16, 16 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 16 } },
{ "default", { 4, 64, 16 } }, { "Iris Pro", { 4, 16, 16 } },
{ "default", { 4, 64, 16 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GeForce GT 650M", { 8, 32, 16 } }, { "SM3.0", {
{ "GeForce GTX 1080", { 8, 32, 32 } }, { "GeForce GT 650M", { 8, 32, 16 } },
{ "GeForce GTX 750 Ti", { 8, 32, 32 } }, { "default", { 8, 32, 16 } },
{ "GeForce GTX TITAN", { 1, 16, 16 } }, } },
{ "GeForce GTX TITAN Black", { 4, 128, 16 } }, { "SM3.5", {
{ "TITAN X (Pascal)", { 8, 64, 32 } }, { "GeForce GTX TITAN", { 1, 16, 16 } },
{ "default", { 8, 32, 32 } }, { "GeForce GTX TITAN Black", { 4, 128, 16 } },
{ "default", { 1, 16, 16 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750 Ti", { 8, 32, 32 } },
{ "default", { 8, 32, 32 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1080", { 8, 32, 32 } },
{ "TITAN X (Pascal)", { 8, 64, 32 } },
{ "default", { 8, 64, 32 } },
} },
{ "default", {
{ "default", { 8, 32, 32 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 4, 64, 16 } }, { "default", {
{ "default", { 4, 64, 16 } }, { "QUALCOMM Adreno(TM)", { 4, 64, 16 } },
{ "default", { 4, 64, 16 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 8, 32, 32 } }, { "default", {
{ "default", { 8, 32, 32 } },
} },
} }
}, },
} }

View File

@ -14,37 +14,60 @@ const DatabaseEntry XgemvFastRotComplexSingle = {
"XgemvFastRot", Precision::kComplexSingle, {"VW3", "WGS3", "WPT3"}, { "XgemvFastRot", Precision::kComplexSingle, {"VW3", "WGS3", "WPT3"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 8, 16, 16 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 8, 32, 8 } }, { "AMD Radeon RX 480", { 2, 32, 16 } },
{ "Ellesmere", { 2, 32, 16 } }, { "default", { 2, 32, 16 } },
{ "Fiji", { 4, 32, 32 } }, } },
{ "Tonga", { 4, 32, 32 } }, { "Fiji", {
{ "Turks", { 4, 32, 8 } }, { "AMD Radeon R9 Fury X", { 4, 32, 32 } },
{ "default", { 8, 16, 16 } }, { "AMD Radeon R9 M370X Compute Engine", { 8, 16, 16 } },
{ "default", { 8, 16, 16 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 4, 32, 32 } },
{ "default", { 4, 32, 32 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 4, 32, 8 } },
{ "default", { 4, 32, 8 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 8, 32, 8 } },
{ "default", { 8, 32, 8 } },
} },
{ "default", {
{ "default", { 8, 16, 16 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 32 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 32, 8 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 32, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 32, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 4, 16, 16 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 32, 32 } },
{ "default", { 4, 32, 32 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 4, 16, 16 } },
{ "default", { 4, 32, 32 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 2, 16, 16 } }, { "default", {
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 4, 128, 8 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 2, 16, 16 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 4, 32, 8 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 4, 128, 8 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 16 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 4, 32, 8 } },
{ "Iris Pro", { 4, 16, 16 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 4, 64, 16 } },
{ "default", { 2, 32, 8 } }, { "Iris Pro", { 4, 16, 16 } },
{ "default", { 2, 32, 8 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 4, 16, 16 } }, { "default", {
{ "default", { 4, 16, 16 } },
} },
} }
}, },
} }

View File

@ -14,35 +14,61 @@ const DatabaseEntry XgemvFastRotDouble = {
"XgemvFastRot", Precision::kDouble, {"VW3", "WGS3", "WPT3"}, { "XgemvFastRot", Precision::kDouble, {"VW3", "WGS3", "WPT3"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 4, 16, 16 } }, { "Ellesmere", {
{ "Ellesmere", { 4, 16, 16 } }, { "AMD Radeon RX 480", { 4, 16, 16 } },
{ "Fiji", { 4, 32, 32 } }, { "default", { 4, 16, 16 } },
{ "Tonga", { 4, 16, 16 } }, } },
{ "default", { 4, 16, 16 } }, { "Fiji", {
{ "AMD Radeon R9 Fury X", { 4, 32, 32 } },
{ "AMD Radeon R9 M370X Compute Engine", { 4, 16, 16 } },
{ "default", { 4, 16, 16 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 4, 16, 16 } },
{ "default", { 4, 16, 16 } },
} },
{ "default", {
{ "default", { 4, 16, 16 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 32 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 16, 8 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 4, 32, 32 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 32, 32 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 8, 16, 8 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 16, 8 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 4, 32, 32 } },
{ "default", { 8, 32, 32 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 16, 8 } },
{ "default", { 8, 32, 32 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GeForce GTX 1080", { 8, 32, 32 } }, { "SM3.5", {
{ "GeForce GTX 750 Ti", { 4, 32, 16 } }, { "GeForce GTX TITAN", { 1, 16, 16 } },
{ "GeForce GTX TITAN", { 1, 16, 16 } }, { "GeForce GTX TITAN Black", { 1, 16, 16 } },
{ "GeForce GTX TITAN Black", { 1, 16, 16 } }, { "default", { 1, 16, 16 } },
{ "TITAN X (Pascal)", { 8, 32, 32 } }, } },
{ "default", { 4, 32, 16 } }, { "SM5.0", {
{ "GeForce GTX 750 Ti", { 4, 32, 16 } },
{ "default", { 4, 32, 16 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1080", { 8, 32, 32 } },
{ "TITAN X (Pascal)", { 8, 32, 32 } },
{ "default", { 8, 32, 32 } },
} },
{ "default", {
{ "default", { 4, 32, 16 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 4, 16, 16 } }, { "default", {
{ "default", { 4, 16, 16 } },
} },
} }
}, },
} }

View File

@ -14,25 +14,40 @@ const DatabaseEntry XgemvFastRotComplexDouble = {
"XgemvFastRot", Precision::kComplexDouble, {"VW3", "WGS3", "WPT3"}, { "XgemvFastRot", Precision::kComplexDouble, {"VW3", "WGS3", "WPT3"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 4, 32, 16 } }, { "Ellesmere", {
{ "Ellesmere", { 4, 16, 16 } }, { "AMD Radeon RX 480", { 4, 16, 16 } },
{ "Fiji", { 4, 32, 8 } }, { "default", { 4, 16, 16 } },
{ "Tonga", { 4, 16, 8 } }, } },
{ "default", { 8, 32, 16 } }, { "Fiji", {
{ "AMD Radeon R9 Fury X", { 4, 32, 8 } },
{ "AMD Radeon R9 M370X Compute Engine", { 4, 32, 16 } },
{ "default", { 4, 32, 8 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 4, 16, 8 } },
{ "default", { 4, 16, 8 } },
} },
{ "default", {
{ "default", { 8, 32, 16 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 16, 16 } }, { "default", {
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 64, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 2, 16, 16 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 16, 16 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 4, 64, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 16, 16 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 2, 16, 16 } },
{ "default", { 8, 16, 16 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 8, 16, 16 } },
{ "default", { 8, 16, 16 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 4, 16, 16 } }, { "default", {
{ "default", { 4, 16, 16 } },
} },
} }
}, },
} }

View File

@ -14,26 +14,37 @@ const DatabaseEntry XgerHalf = {
"Xger", Precision::kHalf, {"WGS1", "WGS2", "WPT"}, { "Xger", Precision::kHalf, {"WGS1", "WGS2", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "Ellesmere", { 64, 1, 2 } }, { "Ellesmere", {
{ "default", { 64, 1, 2 } }, { "AMD Radeon RX 480", { 64, 1, 2 } },
{ "default", { 64, 1, 2 } },
} },
{ "default", {
{ "default", { 64, 1, 2 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 1, 2 } }, { "default", {
{ "Intel(R) HD Graphics Skylake ULT GT2", { 64, 1, 4 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 1, 2 } },
{ "default", { 4, 8, 2 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 64, 1, 4 } },
{ "default", { 4, 8, 2 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 64, 4, 2 } }, { "default", {
{ "default", { 64, 4, 2 } }, { "QUALCOMM Adreno(TM)", { 64, 4, 2 } },
{ "default", { 64, 4, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 64, 1, 2 } }, { "default", {
{ "default", { 64, 1, 2 } },
} },
} }
}, },
} }

View File

@ -14,72 +14,128 @@ const DatabaseEntry XgerSingle = {
"Xger", Precision::kSingle, {"WGS1", "WGS2", "WPT"}, { "Xger", Precision::kSingle, {"WGS1", "WGS2", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 256, 1, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 16, 16, 4 } }, { "AMD Radeon RX 480", { 64, 4, 2 } },
{ "Ellesmere", { 64, 4, 2 } }, { "default", { 64, 4, 2 } },
{ "Fiji", { 256, 1, 1 } }, } },
{ "Hawaii", { 64, 2, 1 } }, { "Fiji", {
{ "Oland", { 32, 4, 2 } }, { "AMD Radeon R9 Fury X", { 256, 1, 1 } },
{ "Pitcairn", { 64, 1, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 256, 1, 1 } },
{ "Tahiti", { 256, 1, 1 } }, { "default", { 256, 1, 1 } },
{ "Tonga", { 256, 1, 2 } }, } },
{ "Turks", { 64, 4, 2 } }, { "Hawaii", {
{ "default", { 16, 16, 1 } }, { "AMD Radeon R9 290X", { 64, 2, 1 } },
{ "default", { 64, 2, 1 } },
} },
{ "Oland", {
{ "Oland", { 32, 4, 2 } },
{ "default", { 32, 4, 2 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 64, 1, 1 } },
{ "default", { 64, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 256, 1, 1 } },
{ "default", { 256, 1, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 256, 1, 2 } },
{ "default", { 256, 1, 2 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 64, 4, 2 } },
{ "default", { 64, 4, 2 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 16, 16, 4 } },
{ "default", { 16, 16, 4 } },
} },
{ "default", {
{ "default", { 16, 16, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 64, 4, 4 } }, { "default", {
{ "default", { 64, 4, 4 } }, { "Mali-T628", { 64, 4, 4 } },
{ "default", { 64, 4, 4 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 4, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 128, 2, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 32, 4, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 16, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 128, 2, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 4, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 16, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 128, 1, 4 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 4, 4 } },
{ "default", { 128, 8, 4 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 128, 1, 4 } },
{ "default", { 128, 8, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 32, 1, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 2, 2 } }, { "Intel(R) HD Graphics 530", { 32, 1, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 128, 1, 2 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 256, 2, 2 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 64, 1, 4 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 128, 1, 2 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 32, 4, 4 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 64, 1, 4 } },
{ "Iris Pro", { 64, 1, 4 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 32, 4, 4 } },
{ "default", { 32, 4, 2 } }, { "Iris Pro", { 64, 1, 4 } },
{ "default", { 32, 4, 2 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 128, 1, 2 } }, { "SM2.0", {
{ "GeForce GT 650M", { 32, 16, 4 } }, { "GeForce GTX 480", { 256, 1, 4 } },
{ "GeForce GTX 1070", { 512, 1, 1 } }, { "default", { 256, 1, 4 } },
{ "GeForce GTX 1080", { 16, 4, 1 } }, } },
{ "GeForce GTX 480", { 256, 1, 4 } }, { "SM3.0", {
{ "GeForce GTX 670", { 32, 8, 2 } }, { "GRID K520", { 128, 1, 2 } },
{ "GeForce GTX 680", { 128, 1, 4 } }, { "GeForce GT 650M", { 32, 16, 4 } },
{ "GeForce GTX 750", { 64, 16, 4 } }, { "GeForce GTX 670", { 32, 8, 2 } },
{ "GeForce GTX 750 Ti", { 64, 1, 2 } }, { "GeForce GTX 680", { 128, 1, 4 } },
{ "GeForce GTX TITAN", { 32, 4, 2 } }, { "default", { 128, 1, 2 } },
{ "GeForce GTX TITAN Black", { 32, 4, 2 } }, } },
{ "TITAN X (Pascal)", { 512, 2, 1 } }, { "SM3.5", {
{ "default", { 128, 1, 2 } }, { "GeForce GTX TITAN", { 32, 4, 2 } },
{ "GeForce GTX TITAN Black", { 32, 4, 2 } },
{ "default", { 32, 4, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 64, 16, 4 } },
{ "GeForce GTX 750 Ti", { 64, 1, 2 } },
{ "default", { 128, 1, 2 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 512, 1, 1 } },
{ "GeForce GTX 1080", { 16, 4, 1 } },
{ "TITAN X (Pascal)", { 512, 2, 1 } },
{ "default", { 512, 2, 1 } },
} },
{ "default", {
{ "default", { 128, 1, 2 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 128, 1, 2 } }, { "default", {
{ "default", { 128, 1, 2 } }, { "QUALCOMM Adreno(TM)", { 128, 1, 2 } },
{ "default", { 128, 1, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32, 4, 2 } }, { "default", {
{ "default", { 32, 4, 2 } },
} },
} }
}, },
} }

View File

@ -14,71 +14,127 @@ const DatabaseEntry XgerComplexSingle = {
"Xger", Precision::kComplexSingle, {"WGS1", "WGS2", "WPT"}, { "Xger", Precision::kComplexSingle, {"WGS1", "WGS2", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 4, 1 } }, { "Ellesmere", {
{ "ATI Radeon HD 6750M", { 16, 16, 1 } }, { "AMD Radeon RX 480", { 16, 8, 2 } },
{ "Ellesmere", { 16, 8, 2 } }, { "default", { 16, 8, 2 } },
{ "Fiji", { 128, 2, 1 } }, } },
{ "Hawaii", { 64, 1, 2 } }, { "Fiji", {
{ "Oland", { 4, 8, 1 } }, { "AMD Radeon R9 Fury X", { 128, 2, 1 } },
{ "Pitcairn", { 128, 2, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 4, 1 } },
{ "Tahiti", { 64, 2, 1 } }, { "default", { 128, 2, 1 } },
{ "Tonga", { 64, 1, 1 } }, } },
{ "Turks", { 128, 2, 1 } }, { "Hawaii", {
{ "default", { 128, 2, 1 } }, { "AMD Radeon R9 290X", { 64, 1, 2 } },
{ "default", { 64, 1, 2 } },
} },
{ "Oland", {
{ "Oland", { 4, 8, 1 } },
{ "default", { 4, 8, 1 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 128, 2, 1 } },
{ "default", { 128, 2, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 64, 2, 1 } },
{ "default", { 64, 2, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 64, 1, 1 } },
{ "default", { 64, 1, 1 } },
} },
{ "Turks", {
{ "AMD Radeon HD 6770M", { 128, 2, 1 } },
{ "default", { 128, 2, 1 } },
} },
{ "Vancouver", {
{ "ATI Radeon HD 6750M", { 16, 16, 1 } },
{ "default", { 16, 16, 1 } },
} },
{ "default", {
{ "default", { 128, 2, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 128, 1, 1 } }, { "default", {
{ "default", { 128, 1, 1 } }, { "Mali-T628", { 128, 1, 1 } },
{ "default", { 128, 1, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 2, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 256, 1, 4 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 2, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 8, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 256, 1, 4 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 2, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 8, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 512, 4, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 2, 4 } },
{ "default", { 256, 2, 4 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 512, 4, 2 } },
{ "default", { 256, 2, 4 } },
} },
} }
}, },
{ // Intel GPUs { // Intel GPUs
kDeviceTypeGPU, "Intel", { kDeviceTypeGPU, "Intel", {
{ "Intel(R) HD Graphics 530", { 32, 1, 2 } }, { "default", {
{ "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 128, 2, 1 } }, { "Intel(R) HD Graphics 530", { 32, 1, 2 } },
{ "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 512, 1, 1 } }, { "Intel(R) HD Graphics 5500 BroadWell U-Processor GT2", { 128, 2, 1 } },
{ "Intel(R) HD Graphics IvyBridge M GT2", { 256, 1, 2 } }, { "Intel(R) HD Graphics Haswell Ultrabook GT2 Mobile", { 512, 1, 1 } },
{ "Intel(R) HD Graphics Skylake ULT GT2", { 16, 1, 1 } }, { "Intel(R) HD Graphics IvyBridge M GT2", { 256, 1, 2 } },
{ "Iris Pro", { 16, 2, 4 } }, { "Intel(R) HD Graphics Skylake ULT GT2", { 16, 1, 1 } },
{ "default", { 128, 2, 2 } }, { "Iris Pro", { 16, 2, 4 } },
{ "default", { 128, 2, 2 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 64, 4, 2 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 16, 64, 2 } }, { "GeForce GTX 480", { 128, 2, 2 } },
{ "GeForce GTX 1080", { 32, 2, 1 } }, { "default", { 128, 2, 2 } },
{ "GeForce GTX 480", { 128, 2, 2 } }, } },
{ "GeForce GTX 670", { 16, 32, 2 } }, { "SM3.0", {
{ "GeForce GTX 680", { 32, 4, 2 } }, { "GRID K520", { 64, 4, 2 } },
{ "GeForce GTX 750", { 32, 16, 4 } }, { "GeForce GTX 670", { 16, 32, 2 } },
{ "GeForce GTX 750 Ti", { 32, 8, 2 } }, { "GeForce GTX 680", { 32, 4, 2 } },
{ "GeForce GTX TITAN", { 16, 16, 2 } }, { "default", { 64, 2, 2 } },
{ "GeForce GTX TITAN Black", { 16, 16, 2 } }, } },
{ "TITAN X (Pascal)", { 32, 2, 1 } }, { "SM3.5", {
{ "default", { 128, 2, 2 } }, { "GeForce GTX TITAN", { 16, 16, 2 } },
{ "GeForce GTX TITAN Black", { 16, 16, 2 } },
{ "default", { 16, 16, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 32, 16, 4 } },
{ "GeForce GTX 750 Ti", { 32, 8, 2 } },
{ "default", { 32, 16, 4 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 16, 64, 2 } },
{ "GeForce GTX 1080", { 32, 2, 1 } },
{ "TITAN X (Pascal)", { 32, 2, 1 } },
{ "default", { 32, 2, 1 } },
} },
{ "default", {
{ "default", { 128, 2, 2 } },
} },
} }
}, },
{ // QUALCOMM GPUs { // QUALCOMM GPUs
kDeviceTypeGPU, "QUALCOMM", { kDeviceTypeGPU, "QUALCOMM", {
{ "QUALCOMM Adreno(TM)", { 64, 1, 4 } }, { "default", {
{ "default", { 64, 1, 4 } }, { "QUALCOMM Adreno(TM)", { 64, 1, 4 } },
{ "default", { 64, 1, 4 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 64, 2, 2 } }, { "default", {
{ "default", { 64, 2, 2 } },
} },
} }
}, },
} }

View File

@ -14,52 +14,98 @@ const DatabaseEntry XgerDouble = {
"Xger", Precision::kDouble, {"WGS1", "WGS2", "WPT"}, { "Xger", Precision::kDouble, {"WGS1", "WGS2", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 32, 4, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 64, 1, 4 } }, { "AMD Radeon RX 480", { 64, 1, 4 } },
{ "Fiji", { 256, 1, 2 } }, { "default", { 64, 1, 4 } },
{ "Hawaii", { 32, 4, 2 } }, } },
{ "Oland", { 128, 1, 2 } }, { "Fiji", {
{ "Pitcairn", { 64, 1, 1 } }, { "AMD Radeon R9 Fury X", { 256, 1, 2 } },
{ "Tahiti", { 64, 2, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 32, 4, 1 } },
{ "Tonga", { 8, 16, 2 } }, { "default", { 256, 1, 2 } },
{ "default", { 128, 2, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 32, 4, 2 } },
{ "default", { 32, 4, 2 } },
} },
{ "Oland", {
{ "Oland", { 128, 1, 2 } },
{ "default", { 128, 1, 2 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 64, 1, 1 } },
{ "default", { 64, 1, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 64, 2, 1 } },
{ "default", { 64, 2, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 8, 16, 2 } },
{ "default", { 8, 16, 2 } },
} },
{ "default", {
{ "default", { 128, 2, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 64, 4, 1 } }, { "default", {
{ "default", { 64, 4, 1 } }, { "Mali-T628", { 64, 4, 1 } },
{ "default", { 64, 4, 1 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 256, 1, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 512, 16, 1 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 256, 1, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 1, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 512, 16, 1 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 4, 4 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 1, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 512, 8, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 256, 4, 4 } },
{ "default", { 256, 1, 4 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 512, 8, 2 } },
{ "default", { 256, 1, 4 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 128, 8, 2 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 32, 8, 1 } }, { "GeForce GTX 480", { 32, 4, 2 } },
{ "GeForce GTX 1080", { 32, 2, 1 } }, { "default", { 32, 4, 2 } },
{ "GeForce GTX 480", { 32, 4, 2 } }, } },
{ "GeForce GTX 670", { 32, 32, 2 } }, { "SM3.0", {
{ "GeForce GTX 680", { 128, 4, 2 } }, { "GRID K520", { 128, 8, 2 } },
{ "GeForce GTX 750", { 256, 2, 2 } }, { "GeForce GTX 670", { 32, 32, 2 } },
{ "GeForce GTX 750 Ti", { 32, 16, 1 } }, { "GeForce GTX 680", { 128, 4, 2 } },
{ "GeForce GTX TITAN", { 16, 8, 2 } }, { "default", { 128, 8, 2 } },
{ "GeForce GTX TITAN Black", { 32, 4, 2 } }, } },
{ "TITAN X (Pascal)", { 32, 2, 1 } }, { "SM3.5", {
{ "default", { 128, 1, 2 } }, { "GeForce GTX TITAN", { 16, 8, 2 } },
{ "GeForce GTX TITAN Black", { 32, 4, 2 } },
{ "default", { 32, 4, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 256, 2, 2 } },
{ "GeForce GTX 750 Ti", { 32, 16, 1 } },
{ "default", { 16, 8, 1 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 32, 8, 1 } },
{ "GeForce GTX 1080", { 32, 2, 1 } },
{ "TITAN X (Pascal)", { 32, 2, 1 } },
{ "default", { 32, 2, 1 } },
} },
{ "default", {
{ "default", { 128, 1, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 128, 1, 2 } }, { "default", {
{ "default", { 128, 1, 2 } },
} },
} }
}, },
} }

View File

@ -14,52 +14,98 @@ const DatabaseEntry XgerComplexDouble = {
"Xger", Precision::kComplexDouble, {"WGS1", "WGS2", "WPT"}, { "Xger", Precision::kComplexDouble, {"WGS1", "WGS2", "WPT"}, {
{ // AMD GPUs { // AMD GPUs
kDeviceTypeGPU, "AMD", { kDeviceTypeGPU, "AMD", {
{ "AMD Radeon R9 M370X Compute Engine", { 64, 1, 1 } }, { "Ellesmere", {
{ "Ellesmere", { 8, 16, 1 } }, { "AMD Radeon RX 480", { 8, 16, 1 } },
{ "Fiji", { 64, 4, 2 } }, { "default", { 8, 16, 1 } },
{ "Hawaii", { 128, 1, 1 } }, } },
{ "Oland", { 16, 16, 2 } }, { "Fiji", {
{ "Pitcairn", { 64, 4, 1 } }, { "AMD Radeon R9 Fury X", { 64, 4, 2 } },
{ "Tahiti", { 32, 4, 1 } }, { "AMD Radeon R9 M370X Compute Engine", { 64, 1, 1 } },
{ "Tonga", { 16, 4, 1 } }, { "default", { 64, 4, 2 } },
{ "default", { 32, 4, 1 } }, } },
{ "Hawaii", {
{ "AMD Radeon R9 290X", { 128, 1, 1 } },
{ "default", { 128, 1, 1 } },
} },
{ "Oland", {
{ "Oland", { 16, 16, 2 } },
{ "default", { 16, 16, 2 } },
} },
{ "Pitcairn", {
{ "AMD Radeon R9 270X", { 64, 4, 1 } },
{ "default", { 64, 4, 1 } },
} },
{ "Tahiti", {
{ "AMD Radeon HD 7970", { 32, 4, 1 } },
{ "default", { 32, 4, 1 } },
} },
{ "Tonga", {
{ "AMD Radeon R9 380", { 16, 4, 1 } },
{ "default", { 16, 4, 1 } },
} },
{ "default", {
{ "default", { 32, 4, 1 } },
} },
} }
}, },
{ // ARM GPUs { // ARM GPUs
kDeviceTypeGPU, "ARM", { kDeviceTypeGPU, "ARM", {
{ "Mali-T628", { 64, 2, 4 } }, { "default", {
{ "default", { 64, 2, 4 } }, { "Mali-T628", { 64, 2, 4 } },
{ "default", { 64, 2, 4 } },
} },
} }
}, },
{ // Intel CPUs { // Intel CPUs
kDeviceTypeCPU, "Intel", { kDeviceTypeCPU, "Intel", {
{ "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 4, 4 } }, { "default", {
{ "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 512, 4, 2 } }, { "Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz", { 128, 4, 4 } },
{ "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 8, 4 } }, { "Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz", { 512, 4, 2 } },
{ "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 512, 2, 2 } }, { "Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz", { 256, 8, 4 } },
{ "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 256, 1, 2 } }, { "Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz", { 512, 2, 2 } },
{ "default", { 256, 2, 2 } }, { "Intel(R) Core(TM) i7-5930K CPU @ 3.50GHz", { 256, 1, 2 } },
{ "default", { 256, 2, 2 } },
} },
} }
}, },
{ // NVIDIA GPUs { // NVIDIA GPUs
kDeviceTypeGPU, "NVIDIA", { kDeviceTypeGPU, "NVIDIA", {
{ "GRID K520", { 16, 8, 2 } }, { "SM2.0", {
{ "GeForce GTX 1070", { 8, 128, 1 } }, { "GeForce GTX 480", { 64, 2, 2 } },
{ "GeForce GTX 1080", { 8, 4, 1 } }, { "default", { 64, 2, 2 } },
{ "GeForce GTX 480", { 64, 2, 2 } }, } },
{ "GeForce GTX 670", { 8, 16, 2 } }, { "SM3.0", {
{ "GeForce GTX 680", { 8, 16, 1 } }, { "GRID K520", { 16, 8, 2 } },
{ "GeForce GTX 750", { 8, 32, 4 } }, { "GeForce GTX 670", { 8, 16, 2 } },
{ "GeForce GTX 750 Ti", { 32, 8, 2 } }, { "GeForce GTX 680", { 8, 16, 1 } },
{ "GeForce GTX TITAN", { 32, 4, 2 } }, { "default", { 16, 8, 2 } },
{ "GeForce GTX TITAN Black", { 16, 16, 2 } }, } },
{ "TITAN X (Pascal)", { 4, 8, 1 } }, { "SM3.5", {
{ "default", { 16, 8, 2 } }, { "GeForce GTX TITAN", { 32, 4, 2 } },
{ "GeForce GTX TITAN Black", { 16, 16, 2 } },
{ "default", { 32, 4, 2 } },
} },
{ "SM5.0", {
{ "GeForce GTX 750", { 8, 32, 4 } },
{ "GeForce GTX 750 Ti", { 32, 8, 2 } },
{ "default", { 32, 1, 4 } },
} },
{ "SM6.1", {
{ "GeForce GTX 1070", { 8, 128, 1 } },
{ "GeForce GTX 1080", { 8, 4, 1 } },
{ "TITAN X (Pascal)", { 4, 8, 1 } },
{ "default", { 8, 4, 1 } },
} },
{ "default", {
{ "default", { 16, 8, 2 } },
} },
} }
}, },
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 64, 2, 2 } }, { "default", {
{ "default", { 64, 2, 2 } },
} },
} }
}, },
} }

View File

@ -19,7 +19,7 @@ const DatabaseEntry XtrsvHalf = {
"Xtrsv", Precision::kHalf, {"TRSV_BLOCK_SIZE"}, { "Xtrsv", Precision::kHalf, {"TRSV_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32 } }, { "default", { { "default", { 32 } } } },
} }
}, },
} }
@ -31,7 +31,7 @@ const DatabaseEntry XtrsvSingle = {
"Xtrsv", Precision::kSingle, {"TRSV_BLOCK_SIZE"}, { "Xtrsv", Precision::kSingle, {"TRSV_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32 } }, { "default", { { "default", { 32 } } } },
} }
}, },
} }
@ -43,7 +43,7 @@ const DatabaseEntry XtrsvComplexSingle = {
"Xtrsv", Precision::kComplexSingle, {"TRSV_BLOCK_SIZE"}, { "Xtrsv", Precision::kComplexSingle, {"TRSV_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32 } }, { "default", { { "default", { 32 } } } },
} }
}, },
} }
@ -55,7 +55,7 @@ const DatabaseEntry XtrsvDouble = {
"Xtrsv", Precision::kDouble, {"TRSV_BLOCK_SIZE"}, { "Xtrsv", Precision::kDouble, {"TRSV_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32 } }, { "default", { { "default", { 32 } } } },
} }
}, },
} }
@ -67,7 +67,7 @@ const DatabaseEntry XtrsvComplexDouble = {
"Xtrsv", Precision::kComplexDouble, {"TRSV_BLOCK_SIZE"}, { "Xtrsv", Precision::kComplexDouble, {"TRSV_BLOCK_SIZE"}, {
{ // Default { // Default
kDeviceTypeAll, "default", { kDeviceTypeAll, "default", {
{ "default", { 32 } }, { "default", { { "default", { 32 } } } },
} }
}, },
} }

View File

@ -123,6 +123,14 @@ constexpr auto kBufScalar = "Scalar";
// ================================================================================================= // =================================================================================================
inline void log_debug(const std::string &log_string) {
#ifdef VERBOSE
printf("[DEBUG] %s\n", log_string.c_str());
#endif
}
// =================================================================================================
// Converts a regular or complex type to it's base type (e.g. float2 to float) // Converts a regular or complex type to it's base type (e.g. float2 to float)
template <typename T> struct BaseType { using Type = T; }; template <typename T> struct BaseType { using Type = T; };
template <> struct BaseType<float2> { using Type = float; }; template <> struct BaseType<float2> { using Type = float; };