2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-19 04:22:09 +00:00

38 Commits

Author SHA1 Message Date
Matt Borland
bbb8eee1d6 Add GPU support to expint
Add SYCL testing of expint

Add markers to forward decls

Add CUDA testing of expint

Fix static variable usage under NVRTC

Add NVRTC testing

Add configurable definition of complex

Add function aliases

Add GPU support to gegenbauer polynomials

Add SYCL testing of gegenbauer

Add NVCC testing of gegenbauer

Add NVRTC testing of gegenbauer

Add GPU support for hankel

Add SYCL testing of hankel

Add NVCC testing of cyl_hankel_1

Add comprehensive NVCC testing

Add NVRTC testing of cyl and sph hankel

Update docs

Fix writing cuda::std::complex<T> to stdout

Add GPU support to hermite

Add SYCL testing of hermite

Add CUDA testing of hermite

Add NVRTC testing of hermite

Add markers to hermite docs
2024-09-17 15:24:02 -04:00
Matt Borland
1324401c92 Add GPU support to airy functions
Add SYCL testing of ariy functions

Add CUDA testing of airy functions

Add NVRTC testing of airy functions

Add GPU support to ellint rc

Add GPU support to ellint rd

Add GPU support to ellint rf

Add GPU support to ellint rg

Add GPU support to ellint rj

Add GPU support to ellint d

Add GPU support to ellint_1

Markup forward and add ellint_3 return type def for NVRTC platform

Add CUDA testing of ellint 1

NVRTC fixes

Add NVRTC testing of ellint_1

Add GPU support to ellint_2

Add CUDA testing of ellint_2

Fix NVRTC errors

Add NVRTC testing of ellint_2

Add GPU support to atanh

Add GPU support to ellint_3

Add NVRTC testing of ellint_3

Add CUDA testing of ellint_3

Replace use of static const char*

Add SYCL testing of ellint_1

Add SYCL testing of ellint 2 with slight tolerance bump

Remove recursion from ellint_rj

Add ellint_d CUDA testing

Add NVRTC testing of ellint_d

Add SYCL testing of ellint_d

Remove SYCL ellint_3 support

Update docs

Add GPU support to jacobi zeta

Add CUDA testing of jacobi zeta

Add NVRTC testing of jacobi zeta

Add SYCL testing of jacobi zeta

Add GPU support to heuman_lambda

Add NVRTC testing of heuman lambda

Add CUDA testing of heuman_lambda

Add SYCL testing of heuman lambda

Add markers to docs

Add marker for CUDA only functions in the docs
2024-09-16 14:04:14 -04:00
Matt Borland
b5214b5935 Add device only impl
Add function for device only impl

Fix function signatures

Fix arrays

Add basic test for compilation

Allow serial implementation to be run on host under NVCC

Add verification steps

Add arrays of levels coefficient sizes

Cleanup test set

Add double test set

Add structure for the doubles support

Save space by using pointer to different size arrays rather than 2d

Separate the double precision weights into their own arrays

Remove stray call to std::abs

Add NVRTC testing

Add documentation section

Add device function signature for sinh_sinh_integrate

Add float coefficients

Add double coeffs

Add device specific impl

Add sinh_sinh CUDA testing

Add sinh_sinh NVRTC testing
2024-09-12 10:25:17 -04:00
Matt Borland
e9cd6c96fd Add GPU support to normal dist
Add SYCL testing of normal dist

Add CUDA testing of normal dist

Add NVRTC testing of normal dist

NVRTC fixes

Move headers for NVRTC support

Add GPU support to inverse gaussian dist

Add NVRTC testing of inverse Gaussian dist

Add CUDA testing of inverse gaussian dist

Add SYCL testing of inverse gaussian dist

Add GPU support to lognormal dist

Add SYCL testing of lognormal dist

Add CUDA testing of lognormal dist

Add nvrtc testing of lognormal dist

Add GPU support to negative binomial dist

Avoid float_prior on GPU platform

Add NVRTC testing of negative binomial dist

Fix ambiguous use of nextafter

Add CUDA testing of negative binomial dist

Fix float_prior workaround

Add SYCL testing of negative binomial dist

Add GPU support to non_central_beta dist

Add SYCL testing of nc beta dist

Add CUDA testing of nc beta dist

Enable generic dist handling on GPU

Add GPU support to brent_find_minima

Add NVRTC testing of nc beta dist

Add utility header

Replace non-functional macro with new function

Add GPU support to non central chi squared dist

Add SYCL testing of non central chi squared dist

Add missing macro definition

Markup generic quantile finder

Add CUDA testing of non central chi squared dist

Add NVRTC testing of non central chi squared dist

Add GPU support to the non-central f dist

Add SYCL testing of ncf

Add CUDA testing of ncf dist

Add NVRTC testing of ncf dist

Add GPU support to students_t dist

Add SYCL testing of students_t dist

Add CUDA testing of students_t

Add NVRTC testing of students_t dist

Workaround for header cycle

Add GPU support to pareto dist

Add SYCL testing of pareto dist

Add CUDA testing of pareto dist

Add NVRTC testing of pareto dist

Add missing header

Add GPU support to poisson dist

Add SYCL testing of poisson dist

Add CUDA testing of poisson dist

Add NVRTC testing of poisson dist

Add forward decl for NVRTC platform

Add GPU support to rayleigh dist

Add CUDA testing of rayleigh dist

Add SYCL testing of rayleigh dist

Add NVRTC testing of rayleigh dist

Add GPU support to triangular dist

Add SYCL testing of triangular dist

Add NVRTC testing of triangular dist

Add CUDA testing of triangular dist

Add GPU support to the uniform dist

Add CUDA testing of uniform dist

Add SYCL testing of uniform dist

Add NVRTC testing of uniform dist

Fix missing header

Add markers to docs
2024-09-06 12:10:18 -04:00
Matt Borland
d01893d215 Add GPU markers to fisher f dist
Add SYCL testing of fisher f dist

Add CUDA fisher f dist testing

Add NVRTC fisher f dist testing

Add GPU support to gamma dist

Add SYCL testing of gamma dist

Add CUDA gamma dist testing

Add NVRTC gamma dist testing

Reduce number of threads per block since it can crash CI

Add GPU support to the geometric dist

Add SYCL testing of geometric dist

Add cuda::std::tie

Add GPU support to inv_discrete_quantile

Add CUDA testing of geometric dist

Add NVRTC testing of geometric dist

Add SYCL testing of inverse_chi_squared dist

Adjust tol

Add NVRTC inverse chi squared dist testing

Add CUDA inverse chi squared dist testing

Add GPU support to inverse gamma dist

Add SYCL testing to inverse gamma dist

Add NVRTC testing of inverse gamma dist

Add CUDA testing of inverse gamma dist
2024-09-04 11:07:17 -04:00
Matt Borland
adf8abd346 Apply GPU markers to ibeta_inv_ab
Remove NVRTC workaround

Apply GPU markers to ibeta_inverse

Apply GPU markers to t_dist_inv

Fix warning suppression

Add dispatch function and remove workaround

Move disabling block

Make binomial GPU enabled

Add SYCL testing of ibeta

Add SYCL testing of ibeta_inv

Add SYCL testing of ibeta_inv_ab

Add SYCL testing of full beta suite

Add makers to fwd decls

Add special forward decls for NVRTC

Add betac nvrtc testing

Add betac CUDA testing

Add ibeta CUDA testing

Add ibeta NVRTC testing

Add ibetac NVRTC testing

Add ibeta_derviative testing to nvrtc

Add ibeta_derivative CUDA testing

Add cbrt policy overload for NVRTC

Fix NVRTC definition of BOOST_MATH_IF_CONSTEXPR

Add ibeta_inv and ibetac_inv NVRTC testing

Fix make pair helper on device

Add CUDA testing of ibeta_inv* and ibetac_inv*

Move location so that it also works on NVRTC

Add NVRTC testing of ibeta_inv* and ibetac_inv*

Fixup test sets since they ignore the policy

Make the beta dist GPU compatible

Add beta dist SYCL testing

Add beta dist CUDA testing

Add beta dist NVRTC testing
2024-08-30 13:46:01 -04:00
Matt Borland
e4a01104d0 GPU Batch 7
Fix igamma_large support on device

Add GPU support to toms748

Add GPU support to igamma_inv

Add GPU markers to gamma_inva

Add GPU Markers to lgamma_small

Remove STL usage from gamma

Remove NVRTC workaround

Fix fraction use of STL headers

Mark gamma functions in fwd

Disable declval on all GPU platforms

Disable more unneeded code on device

Add forward decl for NVRTC tgamma

Disable unneeded items for all GPU

Change workaround for missing overloads

Rearrange definition location

Add include path to cuda now that workaround is removed

Fix NVRTC incompatibility with recursion and forward decls

Add tgamma_ratio CUDA and NVRTC testing

Fix NVRTC handling of gamma_p_derivative

Add gamma_p_derivative CUDA and NVRTC testing

Remove recursion from gamma_incomplete_imp

Add SYCL testing of igamma, igamma_inv, and igamma_inva

Ignore literal-range warnings

Remove use of static const char* for function name

Fix missing CUDA header

Remove calls under NVRTC to fwd decl

Add more nvrtc workarounds

Use builtin erfc instead of header cycle

Add CUDA and NVRTC testing of gamma_p_inv

Adjust tolerances

Add GPU support to chi squared dist

Fix static local variable

Add chi squared dist SYCL testing

Add chi squared dist CUDA testing

Add chi squared dist NVRTC testing

Add GPU support to weibull dist

Add weibull dist SYCL testing

Add weibull dist CUDA testing

Add weibull dist NVRTC testing
2024-08-27 15:32:21 -04:00
Matt Borland
047c206c30 Add bessel GPU support
Add GPU support to bessel_i0

Add CUDA and NVRTC testing

Add GPU support to bessel_i1

Add CUDA and NVRTC testing of bessel_i1

Add tgamma1pm1 NVRTC impl

Add GPU support to iconv

Add GPU test to bessel_ik

Add SYCL testing of complete bessel_i

Add GPU support to bessel_j0

Ignore BOOST_MATH_INSTRUMENT_VARIABLE on NVRTC

Add bessel J0 CUDA and NVRTC testing

Add GPU support to bessel_j1

Add bessel j1 CUDA and NVRTC testing

Add GPU support to bessel jn and jy

Add SYCL bessel j testing

Add bessel_k0 GPU support

Add bessel_k0 CUDA and NVRTC testing

Add GPU support to bessel_k1

Add bessel_k1 CUDA and NVRTC testing

Add GPU support to bessel_kn

Add bessel_kn CUDA and NVRTC testing

Add SYCL testing of complete bessel_k

Make newton-rhapson GPU compatible

Make the completed bessel functions GPU compatible

Add SYCL bessel y testing

Apply changes for non-empty policy on CUDA

Add NVCC cyl_bessel_i testing

Add GPU support to sinc

Add GPU support to series functions

Add GPU support to bessel_jy_zero

Add array helper type

Make hypot GPU safe

Make bessel_yX GPU capable

Add bessel_y0 and bessel_y1 CUDA testing

Add nvrtc testing of bessel_y0 and bessel_y1

Fix macros

Add missing header

Add missing header

Markup iconv

Add iround for NVRTC

Add tgamma1pm1 with policy overload for NVRTC

Disable header

Fix factorial support for CUDA platforms

Add definition of bessel traits

Add cyl_bessel_i NVRTC testing

Fix cyl_bessel_jy warnings

Fix CUDA forward declarations

Fix maybe-unused variable warning

Add CUDA cyl_bessel_j testing

Add sign overload for lgamma

Fix warnings

Add NVRTC cyl_bessel_j testing

Add NVCC sph_bessel testing

Add NVRTC testing of sph_bessel

Add NVRTC testing of cyl_bessel_k

Add NVCC testing of cyl_bessel_k

Add NVCC testing of cyl_neumann

Add NVRTC cyl_neumann testing

Add NVRTC sph_neumann testing

Add NVCC sph_neumann testing
2024-08-20 16:52:06 -04:00
Matt Borland
b57dfe4e70 Add trigamma NVRTC testing 2024-08-16 09:38:26 -04:00
Matt Borland
993eee29af Add beta NVRTC testing 2024-08-16 09:38:13 -04:00
Matt Borland
4822f21fb6 Add modf NVRTC testing 2024-08-16 09:37:16 -04:00
Matt Borland
42ccc22fa3 Add saspoint5 NVRTC testing 2024-08-15 11:09:27 -04:00
Matt Borland
92a08fdd4d Add mapairy dist NVRTC testing 2024-08-15 11:09:14 -04:00
Matt Borland
97c8e9efd7 Add logistic dist NVRTC testing 2024-08-15 11:09:00 -04:00
Matt Borland
43c80b509c Add laplace dist NVRTC testing 2024-08-15 11:08:46 -04:00
Matt Borland
9c3f6af185 Add landau dist NVRTC testing 2024-08-15 11:08:35 -04:00
Matt Borland
537e68fd7d Add holtsmark dist NVRTC testing 2024-08-15 11:08:22 -04:00
Matt Borland
069edffc6d Add extreme value dist NVRTC testing 2024-08-15 11:07:53 -04:00
Matt Borland
baa1bf3623 Add exponential dist NVRTC testing 2024-08-15 11:07:38 -04:00
Matt Borland
fb9d2fe974 Add cauchy dist NVRTC testing 2024-08-15 11:07:24 -04:00
Matt Borland
98d6a594b0 Add bernoulli dist NVRTC testing 2024-08-15 11:07:04 -04:00
Matt Borland
c47ac631ff Add testing of the arcsine dist 2024-08-15 11:06:47 -04:00
Matt Borland
d0e156bb7e Add NVRTC digamma tests 2024-08-14 10:26:57 -04:00
Matt Borland
993d92dc66 Add erfc_inv NVRTC testing 2024-08-14 10:25:57 -04:00
Matt Borland
6c4b56c9be Add erf_inv NVRTC testing 2024-08-14 10:25:52 -04:00
Matt Borland
463699e8ca Add erfc NVRTC testing 2024-08-14 10:25:37 -04:00
Matt Borland
666564bddd Add erf NVRTC testing 2024-08-14 10:25:32 -04:00
Matt Borland
375d316aac Add sin_pi NVRTC testing 2024-08-14 10:25:20 -04:00
Matt Borland
dac34c5853 Add cos_pi NVRTC testing 2024-08-14 10:25:08 -04:00
Matt Borland
d7197803c8 Add NVRTC log1p testing 2024-08-12 15:09:54 -04:00
Matt Borland
6c91a22d7b Add NVRTC expm1 testing 2024-08-12 15:09:35 -04:00
Matt Borland
2877f2bc8b Add trunc NVRTC testing 2024-08-12 15:09:24 -04:00
Matt Borland
ae3ea6f201 Add testing of round on NVRTC 2024-08-12 15:08:40 -04:00
Matt Borland
5a0da08bc8 Add fpclassify testing 2024-08-08 08:45:56 -04:00
Matt Borland
b7f1eab738 Add NVRTC cbrt tests 2024-08-08 08:44:12 -04:00
Matt Borland
ea23ddc588 Expand testing 2024-08-08 08:44:02 -04:00
Matt Borland
135208b3a6 Expand testing 2024-08-07 08:00:40 -04:00
Matt Borland
88c36d3fef Add Jamfile 2024-08-06 13:58:26 -04:00