Skip to content
CUSL: CUDA port of GNU Scientific Library (GSL)
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

CUSL: A CUDA port of the GNU Scientific Library

Port of some routines of the GNU Scientific Library (GSL) to CUDA.



Available functions

  • gsl_ran_dir_3d => sphere.cuh/cu_ran_dir_3d

cu_sf_bessel_K0_scaled_e cu_sf_bessel_K1_scaled_e gsl_sf_bessel_Kn

  • gsl_ran_chisq


gsl_sf_lnfact_e gsl_sf_fact_e: factorial gsl_ran_gamma_double: Gamma distribution

cu_sf_psi_int_e: Digamma (Psi) function

cu_poly_eval: polynomial evaluation


describe tests of consistency between GSL results and CUSL

Work needed: TODO

  • cu_ran_dir_3d test
  • further tests of distribution of vectors from cu_ran_dir_3d, comparison with GSL. Since we do not have the same RNG available in the GPU and GSL, we cannot test random vectors for the same random numbers
  • test cu_sf_bessel_Kn
  • cu_ran_chisq: check if distribution is correct and matches GSL
  • error checking like GSL: I removed all calls to gsl_sf_result to simplify things, so there is very little automatic error checking in the CUDA routines available here
You can’t perform that action at this time.