CURAND API supported by#

1. CURAND Data types#

CUDA

A

D

C

R

HIP

A

D

C

R

E

ROC

A

D

C

R

E

CURAND_3RD

CURAND_BINARY_SEARCH

CURAND_CHOOSE_BEST

CURAND_DEFINITION

CURAND_DEVICE_API

CURAND_DIRECTION_VECTORS_32_JOEKUO6

HIPRAND_DIRECTION_VECTORS_32_JOEKUO6

6.0.0

ROCRAND_DIRECTION_VECTORS_32_JOEKUO6

6.0.0

CURAND_DIRECTION_VECTORS_64_JOEKUO6

HIPRAND_DIRECTION_VECTORS_64_JOEKUO6

6.0.0

ROCRAND_DIRECTION_VECTORS_64_JOEKUO6

6.0.0

CURAND_DISCRETE_GAUSS

CURAND_FAST_REJECTION

CURAND_HITR

CURAND_ITR

CURAND_KNUTH

CURAND_M1

CURAND_M2

CURAND_ORDERING_PSEUDO_BEST

HIPRAND_ORDERING_PSEUDO_BEST

6.2.0

ROCRAND_ORDERING_PSEUDO_BEST

5.5.0

CURAND_ORDERING_PSEUDO_DEFAULT

HIPRAND_ORDERING_PSEUDO_DEFAULT

6.2.0

ROCRAND_ORDERING_PSEUDO_DEFAULT

5.5.0

CURAND_ORDERING_PSEUDO_DYNAMIC

11.5

HIPRAND_ORDERING_PSEUDO_DYNAMIC

6.2.0

ROCRAND_ORDERING_PSEUDO_DYNAMIC

5.5.0

CURAND_ORDERING_PSEUDO_LEGACY

11.0

HIPRAND_ORDERING_PSEUDO_LEGACY

6.2.0

ROCRAND_ORDERING_PSEUDO_LEGACY

5.5.0

CURAND_ORDERING_PSEUDO_SEEDED

HIPRAND_ORDERING_PSEUDO_SEEDED

6.2.0

ROCRAND_ORDERING_PSEUDO_SEEDED

5.5.0

CURAND_ORDERING_QUASI_DEFAULT

HIPRAND_ORDERING_QUASI_DEFAULT

6.2.0

ROCRAND_ORDERING_QUASI_DEFAULT

5.5.0

CURAND_POISSON

CURAND_REJECTION

CURAND_RNG_PSEUDO_DEFAULT

HIPRAND_RNG_PSEUDO_DEFAULT

1.5.0

ROCRAND_RNG_PSEUDO_DEFAULT

1.5.0

CURAND_RNG_PSEUDO_MRG32K3A

HIPRAND_RNG_PSEUDO_MRG32K3A

1.5.0

ROCRAND_RNG_PSEUDO_MRG32K3A

1.5.0

CURAND_RNG_PSEUDO_MT19937

HIPRAND_RNG_PSEUDO_MT19937

1.5.0

ROCRAND_RNG_PSEUDO_MT19937

5.5.0

CURAND_RNG_PSEUDO_MTGP32

HIPRAND_RNG_PSEUDO_MTGP32

1.5.0

ROCRAND_RNG_PSEUDO_MTGP32

1.5.0

CURAND_RNG_PSEUDO_PHILOX4_32_10

HIPRAND_RNG_PSEUDO_PHILOX4_32_10

1.5.0

ROCRAND_RNG_PSEUDO_PHILOX4_32_10

1.5.0

CURAND_RNG_PSEUDO_XORWOW

HIPRAND_RNG_PSEUDO_XORWOW

1.5.0

ROCRAND_RNG_PSEUDO_XORWOW

1.5.0

CURAND_RNG_QUASI_DEFAULT

HIPRAND_RNG_QUASI_DEFAULT

1.5.0

ROCRAND_RNG_QUASI_DEFAULT

1.5.0

CURAND_RNG_QUASI_SCRAMBLED_SOBOL32

HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL32

1.5.0

ROCRAND_RNG_QUASI_SCRAMBLED_SOBOL32

5.4.0

CURAND_RNG_QUASI_SCRAMBLED_SOBOL64

HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL64

1.5.0

ROCRAND_RNG_QUASI_SCRAMBLED_SOBOL64

5.4.0

CURAND_RNG_QUASI_SOBOL32

HIPRAND_RNG_QUASI_SOBOL32

1.5.0

ROCRAND_RNG_QUASI_SOBOL32

1.5.0

CURAND_RNG_QUASI_SOBOL64

HIPRAND_RNG_QUASI_SOBOL64

1.5.0

ROCRAND_RNG_QUASI_SOBOL64

4.5.0

CURAND_RNG_TEST

HIPRAND_RNG_TEST

1.5.0

CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6

HIPRAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6

6.0.0

ROCRAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6

6.0.0

CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6

HIPRAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6

6.0.0

ROCRAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6

6.0.0

CURAND_STATUS_ALLOCATION_FAILED

HIPRAND_STATUS_ALLOCATION_FAILED

1.5.0

ROCRAND_STATUS_ALLOCATION_FAILED

1.5.0

CURAND_STATUS_ARCH_MISMATCH

HIPRAND_STATUS_ARCH_MISMATCH

1.5.0

CURAND_STATUS_DOUBLE_PRECISION_REQUIRED

HIPRAND_STATUS_DOUBLE_PRECISION_REQUIRED

1.5.0

ROCRAND_STATUS_DOUBLE_PRECISION_REQUIRED

1.5.0

CURAND_STATUS_INITIALIZATION_FAILED

HIPRAND_STATUS_INITIALIZATION_FAILED

1.5.0

CURAND_STATUS_INTERNAL_ERROR

HIPRAND_STATUS_INTERNAL_ERROR

1.5.0

ROCRAND_STATUS_INTERNAL_ERROR

1.5.0

CURAND_STATUS_LAUNCH_FAILURE

HIPRAND_STATUS_LAUNCH_FAILURE

1.5.0

ROCRAND_STATUS_LAUNCH_FAILURE

1.5.0

CURAND_STATUS_LENGTH_NOT_MULTIPLE

HIPRAND_STATUS_LENGTH_NOT_MULTIPLE

1.5.0

ROCRAND_STATUS_LENGTH_NOT_MULTIPLE

1.5.0

CURAND_STATUS_NOT_INITIALIZED

HIPRAND_STATUS_NOT_INITIALIZED

1.5.0

ROCRAND_STATUS_NOT_CREATED

1.5.0

CURAND_STATUS_OUT_OF_RANGE

HIPRAND_STATUS_OUT_OF_RANGE

1.5.0

ROCRAND_STATUS_OUT_OF_RANGE

1.5.0

CURAND_STATUS_PREEXISTING_FAILURE

HIPRAND_STATUS_PREEXISTING_FAILURE

1.5.0

CURAND_STATUS_SUCCESS

HIPRAND_STATUS_SUCCESS

1.5.0

ROCRAND_STATUS_SUCCESS

1.5.0

CURAND_STATUS_TYPE_ERROR

HIPRAND_STATUS_TYPE_ERROR

1.5.0

ROCRAND_STATUS_TYPE_ERROR

1.5.0

CURAND_STATUS_VERSION_MISMATCH

HIPRAND_STATUS_VERSION_MISMATCH

1.5.0

ROCRAND_STATUS_VERSION_MISMATCH

1.5.0

curandDirectionVectorSet

hiprandDirectionVectorSet_t

6.0.0

rocrand_direction_vector_set

6.0.0

curandDirectionVectorSet_t

hiprandDirectionVectorSet_t

6.0.0

rocrand_direction_vector_set

6.0.0

curandDirectionVectors32_t

hiprandDirectionVectors32_t

1.5.0

curandDirectionVectors64_t

hiprandDirectionVectors64_t

6.0.0

curandDiscreteDistribution_st

hiprandDiscreteDistribution_st

1.5.0

rocrand_discrete_distribution_st

1.5.0

curandDiscreteDistribution_t

hiprandDiscreteDistribution_t

1.5.0

rocrand_discrete_distribution

1.5.0

curandDistributionM2Shift_st

curandDistributionM2Shift_t

curandDistributionShift_st

curandDistributionShift_t

curandDistribution_st

curandDistribution_t

curandGenerator_st

hiprandGenerator_st

1.5.0

rocrand_generator_base_type

1.5.0

curandGenerator_t

hiprandGenerator_t

1.5.0

rocrand_generator

1.5.0

curandHistogramM2K_st

curandHistogramM2K_t

curandHistogramM2V_st

curandHistogramM2V_t

curandHistogramM2_st

curandHistogramM2_t

curandMethod

curandMethod_t

curandOrdering

hiprandOrdering

6.2.0

rocrand_ordering

5.5.0

curandOrdering_t

hiprandOrdering_t

6.2.0

rocrand_ordering

5.5.0

curandRngType

hiprandRngType_t

1.5.0

rocrand_rng_type

1.5.0

curandRngType_t

hiprandRngType_t

1.5.0

rocrand_rng_type

1.5.0

curandState

hiprandState

1.8.0

curandStateMRG32k3a

hiprandStateMRG32k3a

1.8.0

rocrand_device::mrg32k3a_engine

1.5.0

curandStateMRG32k3a_t

hiprandStateMRG32k3a_t

1.5.0

rocrand_state_mrg32k3a

1.5.0

curandStateMtgp32

hiprandStateMtgp32

1.8.0

rocrand_device::mtgp32_engine

1.5.0

curandStateMtgp32_t

hiprandStateMtgp32_t

1.5.0

rocrand_state_mtgp32

1.5.0

curandStatePhilox4_32_10

hiprandStatePhilox4_32_10

1.8.0

rocrand_device::philox4x32_10_engine

1.5.0

curandStatePhilox4_32_10_t

hiprandStatePhilox4_32_10_t

1.8.0

rocrand_state_philox4x32_10

1.5.0

curandStateScrambledSobol32

hiprandStateScrambledSobol32

6.2.0

rocrand_device::scrambled_sobol32_engine<false>

5.4.0

curandStateScrambledSobol32_t

hiprandStateScrambledSobol32_t

6.2.0

rocrand_state_scrambled_sobol32

5.4.0

curandStateScrambledSobol64

hiprandStateScrambledSobol64

6.2.0

rocrand_device::scrambled_sobol64_engine<false>

5.4.0

curandStateScrambledSobol64_t

hiprandStateScrambledSobol64_t

6.2.0

rocrand_state_scrambled_sobol64

5.4.0

curandStateSobol32

hiprandStateSobol32

1.8.0

rocrand_device::sobol32_engine<false>

1.5.0

curandStateSobol32_t

hiprandStateSobol32_t

1.5.0

rocrand_state_sobol32

1.5.0

curandStateSobol64

hiprandStateSobol64

6.2.0

rocrand_device::sobol64_engine<false>

4.5.0

curandStateSobol64_t

hiprandStateSobol64_t

6.2.0

rocrand_state_sobol64

4.5.0

curandStateXORWOW

hiprandStateXORWOW

1.8.0

curandStateXORWOW_t

hiprandStateXORWOW_t

1.5.0

curandState_t

hiprandState_t

1.5.0

curandStatus

hiprandStatus

1.5.0

rocrand_status

1.5.0

curandStatus_t

hiprandStatus_t

1.5.0

rocrand_status

1.5.0

2. Host API Functions#

CUDA

A

D

C

R

HIP

A

D

C

R

E

ROC

A

D

C

R

E

curandCreateGenerator

hiprandCreateGenerator

1.5.0

rocrand_create_generator

1.5.0

curandCreateGeneratorHost

hiprandCreateGeneratorHost

1.5.0

rocrand_create_generator_host_blocking

6.2.0

curandCreatePoissonDistribution

hiprandCreatePoissonDistribution

1.5.0

rocrand_create_poisson_distribution

1.5.0

curandDestroyDistribution

hiprandDestroyDistribution

1.5.0

rocrand_destroy_discrete_distribution

1.5.0

curandDestroyGenerator

hiprandDestroyGenerator

1.5.0

rocrand_destroy_generator

1.5.0

curandGenerate

hiprandGenerate

1.5.0

rocrand_generate

1.5.0

curandGenerateLogNormal

hiprandGenerateLogNormal

1.5.0

rocrand_generate_log_normal

1.5.0

curandGenerateLogNormalDouble

hiprandGenerateLogNormalDouble

1.5.0

rocrand_generate_log_normal_double

1.5.0

curandGenerateLongLong

hiprandGenerateLongLong

5.5.0

rocrand_generate_long_long

5.4.0

curandGenerateNormal

hiprandGenerateNormal

1.5.0

rocrand_generate_normal

1.5.0

curandGenerateNormalDouble

hiprandGenerateNormalDouble

1.5.0

rocrand_generate_normal_double

1.5.0

curandGeneratePoisson

hiprandGeneratePoisson

1.5.0

rocrand_generate_poisson

1.5.0

curandGenerateSeeds

hiprandGenerateSeeds

1.5.0

rocrand_initialize_generator

1.5.0

curandGenerateUniform

hiprandGenerateUniform

1.5.0

rocrand_generate_uniform

1.5.0

curandGenerateUniformDouble

hiprandGenerateUniformDouble

1.5.0

rocrand_generate_uniform_double

1.5.0

curandGetDirectionVectors32

hiprandGetDirectionVectors32

6.0.0

rocrand_get_direction_vectors32

6.0.0

curandGetDirectionVectors64

hiprandGetDirectionVectors64

6.0.0

rocrand_get_direction_vectors64

6.0.0

curandGetProperty

8.0

curandGetScrambleConstants32

hiprandGetScrambleConstants32

6.0.0

rocrand_get_scramble_constants32

6.0.0

curandGetScrambleConstants64

hiprandGetScrambleConstants64

6.0.0

rocrand_get_scramble_constants64

6.0.0

curandGetVersion

hiprandGetVersion

1.5.0

rocrand_get_version

1.5.0

curandMakeMTGP32Constants

hiprandMakeMTGP32Constants

1.5.0

rocrand_make_constant

1.5.0

curandMakeMTGP32KernelState

hiprandMakeMTGP32KernelState

1.5.0

rocrand_make_state_mtgp32

1.5.0

curandSetGeneratorOffset

hiprandSetGeneratorOffset

1.5.0

rocrand_set_offset

1.5.0

curandSetGeneratorOrdering

hiprandSetGeneratorOrdering

6.2.0

rocrand_set_ordering

5.5.0

curandSetPseudoRandomGeneratorSeed

hiprandSetPseudoRandomGeneratorSeed

1.5.0

rocrand_set_seed

1.5.0

curandSetQuasiRandomGeneratorDimensions

hiprandSetQuasiRandomGeneratorDimensions

1.5.0

rocrand_set_quasi_random_generator_dimensions

1.5.0

curandSetStream

hiprandSetStream

1.5.0

rocrand_set_stream

1.5.0

3. Device API Functions#

CUDA

A

D

C

R

HIP

A

D

C

R

E

ROC

A

D

C

R

E

__curand_umul

11.5

curand

hiprand

1.5.0

rocrand

1.5.0

curand_Philox4x32_10

curand_discrete

hiprand_discrete

1.5.0

rocrand_discrete

1.5.0

curand_discrete4

hiprand_discrete4

1.5.0

rocrand_discrete4

1.5.0

curand_init

hiprand_init

1.5.0

rocrand_init

1.5.0

curand_log_normal

hiprand_log_normal

1.5.0

rocrand_log_normal

1.5.0

curand_log_normal2

hiprand_log_normal2

1.5.0

rocrand_log_normal2

1.5.0

curand_log_normal2_double

hiprand_log_normal2_double

1.5.0

rocrand_log_normal_double2

1.5.0

curand_log_normal4

hiprand_log_normal4

1.5.0

rocrand_log_normal4

1.5.0

curand_log_normal4_double

hiprand_log_normal4_double

1.5.0

rocrand_log_normal_double4

1.5.0

curand_log_normal_double

hiprand_log_normal_double

1.5.0

rocrand_log_normal_double

1.5.0

curand_mtgp32_single

curand_mtgp32_single_specific

curand_mtgp32_specific

curand_normal

hiprand_normal

1.5.0

rocrand_normal

1.5.0

curand_normal2

hiprand_normal2

1.5.0

rocrand_normal2

1.5.0

curand_normal2_double

hiprand_normal2_double

1.5.0

rocrand_normal_double2

1.5.0

curand_normal4

hiprand_normal4

1.5.0

rocrand_normal4

1.5.0

curand_normal4_double

hiprand_normal4_double

1.5.0

rocrand_normal_double4

1.5.0

curand_normal_double

hiprand_normal_double

1.5.0

rocrand_normal_double

1.5.0

curand_poisson

hiprand_poisson

1.5.0

rocrand_poisson

1.5.0

curand_poisson4

hiprand_poisson4

1.5.0

rocrand_poisson4

1.5.0

curand_uniform

hiprand_uniform

1.5.0

rocrand_uniform

1.5.0

curand_uniform2_double

hiprand_uniform2_double

1.5.0

rocrand_uniform_double2

1.5.0

curand_uniform4

hiprand_uniform4

1.5.0

rocrand_uniform4

1.5.0

curand_uniform4_double

hiprand_uniform4_double

1.5.0

rocrand_uniform_double4

1.5.0

curand_uniform_double

hiprand_uniform_double

1.5.0

rocrand_uniform_double

1.5.0

*A - Added; D - Deprecated; C - Changed; R - Removed; E - Experimental