Stan Math Library
4.9.0
Automatic Differentiation
|
#include <stan/math/opencl/buffer_types.hpp>
#include <stan/math/opencl/kernel_cl.hpp>
#include <stan/math/opencl/matrix_cl.hpp>
#include <stan/math/opencl/matrix_cl_view.hpp>
#include <stan/math/opencl/opencl_context.hpp>
#include <stan/math/opencl/value_type.hpp>
#include <stan/math/opencl/scalar_type.hpp>
#include <stan/math/opencl/kernels/pack.hpp>
#include <stan/math/opencl/kernels/unpack.hpp>
#include <stan/math/opencl/err/check_opencl.hpp>
#include <stan/math/opencl/err/check_triangular.hpp>
#include <stan/math/prim/meta.hpp>
#include <stan/math/prim/fun/Eigen.hpp>
#include <stan/math/prim/fun/vec_concat.hpp>
#include <CL/opencl.hpp>
#include <algorithm>
#include <iostream>
#include <type_traits>
#include <vector>
Go to the source code of this file.
Namespaces | |
namespace | stan |
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation from C or the boost::math::lgamma implementation. | |
namespace | stan::math |
Matrices and templated mathematical functions. | |
Functions | |
template<typename T , require_st_arithmetic< T > * = nullptr> | |
matrix_cl< scalar_type_t< T > > | stan::math::to_matrix_cl (T &&src) |
Copies the source Eigen matrix, std::vector or scalar to the destination matrix that is stored on the OpenCL device. | |
template<typename T_ret , typename T , require_eigen_t< T_ret > * = nullptr, require_matrix_cl_t< T > * = nullptr, require_st_same< T_ret, T > * = nullptr> | |
auto | stan::math::from_matrix_cl (const T &src) |
Copies the source matrix that is stored on the OpenCL device to the destination Eigen matrix. | |
template<typename T_ret , typename T , require_all_kernel_expressions_t< T > * = nullptr, require_not_matrix_cl_t< T > * = nullptr> | |
auto | stan::math::from_matrix_cl (const T &src) |
Copies result of a kernel generator expression to the specified destination type. | |
template<typename T_dst , typename T , require_arithmetic_t< T > * = nullptr, require_same_t< T_dst, T > * = nullptr> | |
T_dst | stan::math::from_matrix_cl (const matrix_cl< T > &src) |
Copy A 1 by 1 source matrix from the Device to the host. | |
template<typename T , require_all_kernel_expressions_t< T > * = nullptr> | |
auto | stan::math::from_matrix_cl (const T &src) |
Copies the source kernel generator expression or matrix that is stored on the OpenCL device to the destination Eigen matrix. | |
template<typename T , require_matrix_cl_t< T > * = nullptr> | |
auto | stan::math::packed_copy (const T &src) |
Packs the square flat triangular matrix on the OpenCL device and copies it to the std::vector. | |
template<matrix_cl_view matrix_view, typename Vec , typename Vec_scalar = scalar_type_t<Vec>, require_vector_vt< std::is_arithmetic, Vec > * = nullptr> | |
matrix_cl< Vec_scalar > | stan::math::packed_copy (Vec &&src, int rows) |
Copies the packed triangular matrix from the source std::vector to an OpenCL buffer and unpacks it to a flat matrix on the OpenCL device. | |
template<typename T , require_matrix_cl_t< T > * = nullptr> | |
plain_type_t< T > | stan::math::copy_cl (const T &src) |
Copies the source matrix to the destination matrix. | |