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
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
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
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
* Make the library modular usable.
* Fix -Wundef warnings
* Switch to library requirements instead of source. As source puts extra source in install targets.
* Add missing NO_LIB usage requirements.
* Remove boost-root relative include path.
* Add missing import-search for cconfig/predef checks.
* Add requires-b2 check to top-level build file.
* Sync upstream.
* Fix typo in test framework reference.
* Bump B2 require to 5.2
* Update copyright dates.
* Move inter-lib dependencies to a project variable and into the build targets.
* Switch to /boost/test//included target for header only mode of Boost.Test.
* Adjust doc build to avoid boost-root references.
* Update build deps.
* Fix project props not applying to the no_eh.obj compile.
* Update build deps.
* Add missing import-search.
* Fix float128_type checks to actually disable tests. Problem was that build is a non-free feature. Which can't be acquired through a usage requirement.
* 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
* Fix policy macro definition for MSVC platforms
* Don't add quadmath lib for has_128bit_floatmax_t check. It was accidentally copy+pasted.
* Fix incorrect name for float128 type check that caused it to not apear.
---------
Co-authored-by: Matt Borland <matt@mattborland.com>
* Add landau distribution
* Add landau limit test case
* Add landau document
* Landau integration testing.
Hook up tests to Jamfile.
Hook up docs by adding to dist_reference.qbk.
Add std::float64_t tests.
Hook up concept tests in instantiate.hpp.
Add to distributions.hpp
Update static_asserts with better error messages.
Add header inclusion test in dist_landau_incl_test.cpp (and fix resulting errors)
* Add missing #include.
* More Landau test fixes.
* Fix C++23 stdfloat test names.
* Final (doc) update to Landau.
---------
Co-authored-by: tk-yoshimura <yoshimura8192@gmail.com>
Through a combination of silly mistakes, I missed a pile of race conditions in the OpenMP threading.
Switch to C++ threading. Note that this change requires serial generation of trial vectors.
Hopefully I can figure out to parallelize the generation of trial vectors to reduce the serial section a la Ahmdahl's law,
while simultaneously keeping thread sanitizer happy.