ViennaCL - The Vienna Computing Library
1.6.1
Free open-source GPU-accelerated linear algebra and solver library.
hawaii.hpp
Go to the documentation of this file.
1
#ifndef VIENNACL_DEVICE_SPECIFIC_BUILTIN_DATABASE_DEVICES_GPU_AMD_VOLCANIC_ISLANDS_HPP_
2
#define VIENNACL_DEVICE_SPECIFIC_BUILTIN_DATABASE_DEVICES_GPU_AMD_VOLCANIC_ISLANDS_HPP_
3
4
#include "
viennacl/device_specific/templates/matrix_product_template.hpp
"
5
6
#include "
viennacl/device_specific/templates/row_wise_reduction_template.hpp
"
7
8
#include "
viennacl/device_specific/templates/reduction_template.hpp
"
9
10
#include "
viennacl/device_specific/templates/matrix_axpy_template.hpp
"
11
12
#include "
viennacl/device_specific/templates/vector_axpy_template.hpp
"
13
14
#include "
viennacl/device_specific/forwards.h
"
15
#include "
viennacl/device_specific/builtin_database/common.hpp
"
16
17
namespace
viennacl
{
18
namespace
device_specific{
19
namespace
builtin_database{
20
namespace
devices{
21
namespace
gpu{
22
namespace
amd{
23
namespace
volcanic_islands
{
24
namespace
hawaii{
25
26
inline
void
add_8B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'T'>
,
char_to_type<'T'>
)
27
{
28
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(1,8,16,32,4,1,4,
FETCH_FROM_LOCAL
,
FETCH_FROM_LOCAL
,16,16));
29
}
30
31
inline
void
add_8B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'T'>
,
char_to_type<'N'>
)
32
{
33
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(1,8,16,32,4,1,4,
FETCH_FROM_LOCAL
,
FETCH_FROM_LOCAL
,16,16));
34
}
35
36
inline
void
add_8B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'N'>
,
char_to_type<'T'>
)
37
{
38
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(2,8,8,8,6,1,6,
FETCH_FROM_LOCAL
,
FETCH_FROM_LOCAL
,8,8));
39
}
40
41
inline
void
add_8B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'N'>
,
char_to_type<'N'>
)
42
{
43
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(1,16,16,16,2,1,8,
FETCH_FROM_LOCAL
,
FETCH_FROM_LOCAL
,16,16));
44
}
45
46
inline
void
add_4B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'T'>
,
char_to_type<'T'>
)
47
{
48
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(1,1,2,64,8,2,4,
FETCH_FROM_GLOBAL_CONTIGUOUS
,
FETCH_FROM_GLOBAL_STRIDED
,0,0));
49
}
50
51
inline
void
add_4B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'T'>
,
char_to_type<'N'>
)
52
{
53
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(1,16,16,16,2,1,4,
FETCH_FROM_LOCAL
,
FETCH_FROM_LOCAL
,16,16));
54
}
55
56
inline
void
add_4B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'N'>
,
char_to_type<'T'>
)
57
{
58
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(2,16,16,16,6,1,6,
FETCH_FROM_LOCAL
,
FETCH_FROM_LOCAL
,16,16));
59
}
60
61
inline
void
add_4B
(
database_type<matrix_product_template::parameters_type>
& db,
char_to_type<'N'>
,
char_to_type<'N'>
)
62
{
63
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_product_template::parameters_type
(1,64,64,4,2,4,8,
FETCH_FROM_GLOBAL_STRIDED
,
FETCH_FROM_LOCAL
,64,4));
64
}
65
66
inline
void
add_8B
(
database_type<row_wise_reduction_template::parameters_type>
& db,
char_to_type<'T'>
)
67
{
68
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
row_wise_reduction_template::parameters_type
(1,1,128,512,
FETCH_FROM_GLOBAL_STRIDED
));
69
}
70
71
inline
void
add_8B
(
database_type<row_wise_reduction_template::parameters_type>
& db,
char_to_type<'N'>
)
72
{
73
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
row_wise_reduction_template::parameters_type
(8,32,8,32768,
FETCH_FROM_GLOBAL_STRIDED
));
74
}
75
76
inline
void
add_4B
(
database_type<row_wise_reduction_template::parameters_type>
& db,
char_to_type<'T'>
)
77
{
78
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
row_wise_reduction_template::parameters_type
(1,1,128,4096,
FETCH_FROM_GLOBAL_STRIDED
));
79
}
80
81
inline
void
add_4B
(
database_type<row_wise_reduction_template::parameters_type>
& db,
char_to_type<'N'>
)
82
{
83
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
row_wise_reduction_template::parameters_type
(4,32,8,32768,
FETCH_FROM_GLOBAL_STRIDED
));
84
}
85
86
inline
void
add_8B
(
database_type<reduction_template::parameters_type>
& db)
87
{
88
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
reduction_template::parameters_type
(1,256,128,
FETCH_FROM_GLOBAL_STRIDED
));
89
}
90
91
inline
void
add_4B
(
database_type<reduction_template::parameters_type>
& db)
92
{
93
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
reduction_template::parameters_type
(1,128,512,
FETCH_FROM_GLOBAL_STRIDED
));
94
}
95
96
inline
void
add_8B
(
database_type<matrix_axpy_template::parameters_type>
& db)
97
{
98
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_axpy_template::parameters_type
(1,64,2,16,16,
FETCH_FROM_GLOBAL_STRIDED
));
99
}
100
101
inline
void
add_4B
(
database_type<matrix_axpy_template::parameters_type>
& db)
102
{
103
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
matrix_axpy_template::parameters_type
(1,64,4,4,64,
FETCH_FROM_GLOBAL_STRIDED
));
104
}
105
106
inline
void
add_8B
(
database_type<vector_axpy_template::parameters_type>
& db)
107
{
108
db.
add_8B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
vector_axpy_template::parameters_type
(1,64,8192,
FETCH_FROM_GLOBAL_STRIDED
));
109
}
110
111
inline
void
add_4B
(
database_type<vector_axpy_template::parameters_type>
& db)
112
{
113
db.
add_4B
(
amd_id
, CL_DEVICE_TYPE_GPU,
ocl::volcanic_islands
,
"Hawaii"
,
vector_axpy_template::parameters_type
(1,256,32768,
FETCH_FROM_GLOBAL_STRIDED
));
114
}
115
116
}
117
}
118
}
119
}
120
}
121
}
122
}
123
}
124
#endif
viennacl::device_specific::builtin_database::database_type
Definition:
common.hpp:44
viennacl::device_specific::builtin_database::devices::gpu::amd::volcanic_islands::hawaii::add_4B
void add_4B(database_type< matrix_product_template::parameters_type > &db, char_to_type<'T'>, char_to_type<'T'>)
Definition:
hawaii.hpp:46
matrix_product_template.hpp
viennacl::ocl::volcanic_islands
Definition:
device_utils.hpp:67
viennacl
Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
Definition:
cpu_ram.hpp:29
viennacl::device_specific::builtin_database::database_type::add_8B
database_type< ParamT > & add_8B(vendor_id_type p0, device_type p1, ocl::device_architecture_family p2, device_name_type p3, ParamT const &p5)
Definition:
common.hpp:83
viennacl::device_specific::FETCH_FROM_GLOBAL_STRIDED
Definition:
template_base.hpp:50
common.hpp
viennacl::device_specific::builtin_database::database_type::add_4B
database_type< ParamT > & add_4B(vendor_id_type p0, device_type p1, ocl::device_architecture_family p2, device_name_type p3, ParamT const &p5)
Definition:
common.hpp:76
viennacl::ocl::amd_id
Definition:
device_utils.hpp:50
matrix_axpy_template.hpp
viennacl::device_specific::char_to_type
Definition:
forwards.h:249
forwards.h
Forwards declaration.
vector_axpy_template.hpp
viennacl::device_specific::FETCH_FROM_LOCAL
Definition:
template_base.hpp:49
viennacl::device_specific::builtin_database::devices::gpu::amd::volcanic_islands::hawaii::add_8B
void add_8B(database_type< matrix_product_template::parameters_type > &db, char_to_type<'T'>, char_to_type<'T'>)
Definition:
hawaii.hpp:26
row_wise_reduction_template.hpp
viennacl::device_specific::FETCH_FROM_GLOBAL_CONTIGUOUS
Definition:
template_base.hpp:51
viennacl::device_specific::template_base::parameters_type
Definition:
template_base.hpp:57
reduction_template.hpp
viennacl::device_specific::template_base_impl< row_wise_reduction_template, row_wise_reduction_parameters >::parameters_type
row_wise_reduction_parameters parameters_type
Definition:
template_base.hpp:527
viennacl
device_specific
builtin_database
devices
gpu
amd
volcanic_islands
hawaii.hpp
Generated on Thu Nov 20 2014 15:15:30 for ViennaCL - The Vienna Computing Library by
1.8.8