|
|
template<typename F , typename D > |
| __device__ constexpr bool | graphite::ops::takes_vertices () |
| |
|
template<typename F , typename D , typename VertexPointers , typename ParameterBlocks , typename Observation , typename ConstraintData , typename ErrorVector , std::size_t... Is> |
| __device__ void | graphite::ops::call_error_fn (VertexPointers &vertices, ParameterBlocks ¶meters, Observation &local_obs, ConstraintData &local_data, ErrorVector &local_error, std::index_sequence< Is... >) |
| |
|
template<typename T , typename S , size_t I, size_t N, typename M , size_t E, typename F , typename VT , std::size_t... Is> |
| __global__ void | graphite::ops::compute_error_kernel_autodiff (const M *obs, T *error, const typename F::ConstraintDataType *constraint_data, const size_t *active_ids, const size_t *ids, const size_t *hessian_ids, const size_t num_threads, VT args, S *jacs, const uint8_t *active_state, std::index_sequence< Is... >) |
| |
|
template<typename T , typename S , typename F , typename VT , std::size_t... Is> |
| void | graphite::ops::launch_kernel_autodiff (F *f, std::array< const size_t *, F::get_num_vertices()> &hessian_ids, VT &verts, std::array< S *, F::get_num_vertices()> &jacs, const size_t num_factors, StreamPool &streams, std::index_sequence< Is... >) |
| |
|
template<typename T , typename S , typename F > |
| void | graphite::ops::compute_error_autodiff (F *f, StreamPool &streams) |
| |
|
template<typename T , size_t N, typename M , size_t E, typename F , typename VT , std::size_t... Is> |
| __global__ void | graphite::ops::compute_error_kernel (const M *obs, T *error, const typename F::ConstraintDataType *constraint_data, const size_t *active_ids, const size_t *ids, const size_t num_threads, VT args, std::index_sequence< Is... >) |
| |
|
template<typename T , typename F > |
| void | graphite::ops::compute_error (F *f) |
| |