|
QUDA
v1.1.0
A library for QCD on GPUs
|
Namespaces | |
| detail | |
Classes | |
| struct | array |
| struct | array< T, 1 > |
| struct | array< T, 0 > |
| struct | coalesced_ptr |
| struct | static_gcd |
| struct | static_gcd< 0, v > |
| struct | static_gcd< u, 0 > |
| struct | static_mod_inverse |
| struct | static_mod_inverse_helper |
| struct | static_mod_inverse_helper< false, a, m, r > |
| struct | counting_array |
| struct | counting_array< array< T, s > > |
| struct | counting_array< array< T, 1 > > |
| struct | sum_array |
| struct | sum_array< array< T, s > > |
| struct | sum_array< array< T, 1 > > |
| struct | static_log |
| struct | static_log< 1 > |
| struct | static_log< 0 > |
| struct | is_power_of_two |
| struct | is_odd |
| struct | value_if |
| struct | value_if< false, T, Then, Else > |
| struct | value_identity |
| struct | inverse |
| struct | null_type |
| struct | cons_c |
| struct | static_range |
| struct | static_range< f, f > |
| struct | enable_if |
| struct | enable_if< false, T > |
| struct | size_multiple_power_of_two |
Functions | |
| template<typename T > | |
| __device__ enable_if< detail::use_shfl< T >::value, T >::type | load_warp_contiguous (const T *src) |
| template<typename T > | |
| __device__ enable_if< detail::use_direct< T >::value, T >::type | load_warp_contiguous (const T *src) |
| template<typename T > | |
| __device__ enable_if< detail::use_shfl< T >::value >::type | store_warp_contiguous (const T &data, T *dest) |
| template<typename T > | |
| __device__ enable_if< detail::use_direct< T >::value >::type | store_warp_contiguous (const T &data, T *dest) |
| template<typename T > | |
| __device__ T | load (const T *src) |
| template<typename T > | |
| __device__ void | store (const T &data, T *dest) |
| template<int i, typename T , int m> | |
| __host__ __device__ T & | get (array< T, m > &src) |
| template<int i, typename T , int m> | |
| __host__ __device__ T | get (const array< T, m > &src) |
| template<typename T > | |
| __host__ __device__ array< T, 0 > | make_array () |
| template<typename T > | |
| __host__ __device__ array< T, 1 > | make_array (T a0) |
| template<typename T > | |
| __host__ __device__ array< T, 2 > | make_array (T a0, T a1) |
| template<typename T > | |
| __host__ __device__ array< T, 3 > | make_array (T a0, T a1, T a2) |
| template<typename T > | |
| __host__ __device__ array< T, 4 > | make_array (T a0, T a1, T a2, T a3) |
| template<typename T > | |
| __host__ __device__ array< T, 5 > | make_array (T a0, T a1, T a2, T a3, T a4) |
| template<typename T > | |
| __host__ __device__ array< T, 6 > | make_array (T a0, T a1, T a2, T a3, T a4, T a5) |
| template<typename T > | |
| __host__ __device__ array< T, 7 > | make_array (T a0, T a1, T a2, T a3, T a4, T a5, T a6) |
| template<typename T > | |
| __host__ __device__ array< T, 8 > | make_array (T a0, T a1, T a2, T a3, T a4, T a5, T a6, T a7) |
| template<typename T > | |
| __host__ __device__ array< T, 9 > | make_array (T a0, T a1, T a2, T a3, T a4, T a5, T a6, T a7, T a8) |
| template<typename T > | |
| __host__ __device__ array< T, 10 > | make_array (T a0, T a1, T a2, T a3, T a4, T a5, T a6, T a7, T a8, T a9) |
| template<typename T , int s> | |
| __host__ __device__ array< T, s > | make_array (T cary[s]) |
| template<typename T , int s> | |
| __host__ __device__ void | make_carray (const array< T, s > &ary, T result[s]) |
| template<int s, typename T , typename I > | |
| __device__ trove::array< T, s > | load_array_warp_contiguous (const T *src, const I &idx) |
| template<int s, typename T , typename I > | |
| __device__ trove::array< T, s > | load_array (const T *src, const I &idx) |
| template<int s, typename T , typename I > | |
| __device__ void | store_array_warp_contiguous (T *dest, const I &idx, const trove::array< T, s > &src) |
| template<int s, typename T , typename I > | |
| __device__ void | store_array (T *dest, const I &idx, const trove::array< T, s > &src) |
| template<typename Array > | |
| __host__ __device__ void | warp_store (const Array &t, typename Array::head_type *ptr, int offset, int stride=32) |
| template<typename Array > | |
| __host__ __device__ Array | warp_load (const typename Array::head_type *ptr, int offset, int stride=32) |
| template<typename Array > | |
| __host__ __device__ Array | warp_load (const volatile typename Array::head_type *ptr, int offset, int stride=32) |
| template<typename Array > | |
| __host__ __device__ void | uncoalesced_store (const Array &t, typename Array::head_type *ptr, int stride=1) |
| template<typename Array > | |
| __host__ __device__ void | uncoalesced_store (const Array &t, volatile typename Array::head_type *ptr, int stride=1) |
| template<typename T > | |
| std::ostream & | operator<< (std::ostream &strm, const array< T, 1 > &ary) |
| template<typename T , int s> | |
| std::ostream & | operator<< (std::ostream &strm, const array< T, s > &ary) |
| template<typename T , int i> | |
| __host__ __device__ array< T, i > | rotate (const array< T, i > &t, int a) |
| template<int i> | |
| __device__ void | c2r_compute_indices (array< int, i > &indices, int &rotation) |
| template<typename T , int i> | |
| __device__ void | c2r_warp_transpose (array< T, i > &src, const array< int, i > &indices, int rotation) |
| template<typename T , int i> | |
| __device__ void | c2r_warp_transpose (array< T, i > &src) |
| template<int i> | |
| __device__ void | r2c_compute_indices (array< int, i > &indices, int &rotation) |
| template<typename T , int i> | |
| __device__ void | r2c_warp_transpose (array< T, i > &src, const array< int, i > &indices, int rotation) |
| template<typename T , int i> | |
| __device__ void | r2c_warp_transpose (array< T, i > &src) |
| template<typename T , int s> | |
| __host__ __device__ T | sum (const array< T, s > &a) |
| __device__ bool | warp_converged () |
| __device__ void trove::c2r_compute_indices | ( | array< int, i > & | indices, |
| int & | rotation | ||
| ) |
Definition at line 611 of file transpose.h.
| __device__ void trove::c2r_warp_transpose | ( | array< T, i > & | src | ) |
Definition at line 632 of file transpose.h.
| __device__ void trove::c2r_warp_transpose | ( | array< T, i > & | src, |
| const array< int, i > & | indices, | ||
| int | rotation | ||
| ) |
Definition at line 621 of file transpose.h.
| __host__ __device__ T& trove::get | ( | array< T, m > & | src | ) |
| __host__ __device__ T trove::get | ( | const array< T, m > & | src | ) |
| __device__ T trove::load | ( | const T * | src | ) |
| __device__ trove::array<T, s> trove::load_array | ( | const T * | src, |
| const I & | idx | ||
| ) |
| __device__ trove::array<T, s> trove::load_array_warp_contiguous | ( | const T * | src, |
| const I & | idx | ||
| ) |
| __device__ enable_if<detail::use_shfl<T>::value, T>::type trove::load_warp_contiguous | ( | const T * | src | ) |
| __device__ enable_if<detail::use_direct<T>::value, T>::type trove::load_warp_contiguous | ( | const T * | src | ) |
| __host__ __device__ array<T, 0> trove::make_array | ( | ) |
| __host__ __device__ array<T, 1> trove::make_array | ( | T | a0 | ) |
| __host__ __device__ array<T, 2> trove::make_array | ( | T | a0, |
| T | a1 | ||
| ) |
| __host__ __device__ array<T, 3> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2 | ||
| ) |
| __host__ __device__ array<T, 4> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2, | ||
| T | a3 | ||
| ) |
| __host__ __device__ array<T, 5> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2, | ||
| T | a3, | ||
| T | a4 | ||
| ) |
| __host__ __device__ array<T, 6> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2, | ||
| T | a3, | ||
| T | a4, | ||
| T | a5 | ||
| ) |
| __host__ __device__ array<T, 7> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2, | ||
| T | a3, | ||
| T | a4, | ||
| T | a5, | ||
| T | a6 | ||
| ) |
| __host__ __device__ array<T, 8> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2, | ||
| T | a3, | ||
| T | a4, | ||
| T | a5, | ||
| T | a6, | ||
| T | a7 | ||
| ) |
| __host__ __device__ array<T, 9> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2, | ||
| T | a3, | ||
| T | a4, | ||
| T | a5, | ||
| T | a6, | ||
| T | a7, | ||
| T | a8 | ||
| ) |
| __host__ __device__ array<T, 10> trove::make_array | ( | T | a0, |
| T | a1, | ||
| T | a2, | ||
| T | a3, | ||
| T | a4, | ||
| T | a5, | ||
| T | a6, | ||
| T | a7, | ||
| T | a8, | ||
| T | a9 | ||
| ) |
| __host__ __device__ array<T, s> trove::make_array | ( | T | cary[s] | ) |
| __host__ __device__ void trove::make_carray | ( | const array< T, s > & | ary, |
| T | result[s] | ||
| ) |
| std::ostream& trove::operator<< | ( | std::ostream & | strm, |
| const array< T, 1 > & | ary | ||
| ) |
Definition at line 35 of file print_array.h.
| std::ostream& trove::operator<< | ( | std::ostream & | strm, |
| const array< T, s > & | ary | ||
| ) |
Definition at line 41 of file print_array.h.
| __device__ void trove::r2c_compute_indices | ( | array< int, i > & | indices, |
| int & | rotation | ||
| ) |
Definition at line 646 of file transpose.h.
| __device__ void trove::r2c_warp_transpose | ( | array< T, i > & | src | ) |
Definition at line 666 of file transpose.h.
| __device__ void trove::r2c_warp_transpose | ( | array< T, i > & | src, |
| const array< int, i > & | indices, | ||
| int | rotation | ||
| ) |
Definition at line 655 of file transpose.h.
| __device__ void trove::store | ( | const T & | data, |
| T * | dest | ||
| ) |
| __device__ void trove::store_array | ( | T * | dest, |
| const I & | idx, | ||
| const trove::array< T, s > & | src | ||
| ) |
| __device__ void trove::store_array_warp_contiguous | ( | T * | dest, |
| const I & | idx, | ||
| const trove::array< T, s > & | src | ||
| ) |
| __device__ enable_if<detail::use_shfl<T>::value>::type trove::store_warp_contiguous | ( | const T & | data, |
| T * | dest | ||
| ) |
| __device__ enable_if<detail::use_direct<T>::value>::type trove::store_warp_contiguous | ( | const T & | data, |
| T * | dest | ||
| ) |
| __host__ __device__ T trove::sum | ( | const array< T, s > & | a | ) |
| __host__ __device__ void trove::uncoalesced_store | ( | const Array & | t, |
| typename Array::head_type * | ptr, | ||
| int | stride = 1 |
||
| ) |
| __host__ __device__ void trove::uncoalesced_store | ( | const Array & | t, |
| volatile typename Array::head_type * | ptr, | ||
| int | stride = 1 |
||
| ) |
| __host__ __device__ Array trove::warp_load | ( | const typename Array::head_type * | ptr, |
| int | offset, | ||
| int | stride = 32 |
||
| ) |
| __host__ __device__ Array trove::warp_load | ( | const volatile typename Array::head_type * | ptr, |
| int | offset, | ||
| int | stride = 32 |
||
| ) |