This page contains changes for a test release of ROCm. Read the latest Linux release of ROCm documentation for your production environments.

CURAND API supported by HIP#

1. CURAND Data types#

CUDA

A

D

C

R

HIP

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

CURAND_DIRECTION_VECTORS_64_JOEKUO6

HIPRAND_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

6.2.0

CURAND_ORDERING_PSEUDO_DEFAULT

HIPRAND_ORDERING_PSEUDO_DEFAULT

6.2.0

6.2.0

CURAND_ORDERING_PSEUDO_DYNAMIC

11.5

HIPRAND_ORDERING_PSEUDO_DYNAMIC

6.2.0

6.2.0

CURAND_ORDERING_PSEUDO_LEGACY

11.0

HIPRAND_ORDERING_PSEUDO_LEGACY

6.2.0

6.2.0

CURAND_ORDERING_PSEUDO_SEEDED

HIPRAND_ORDERING_PSEUDO_SEEDED

6.2.0

6.2.0

CURAND_ORDERING_QUASI_DEFAULT

HIPRAND_ORDERING_QUASI_DEFAULT

6.2.0

6.2.0

CURAND_POISSON

CURAND_REJECTION

CURAND_RNG_PSEUDO_DEFAULT

HIPRAND_RNG_PSEUDO_DEFAULT

1.5.0

CURAND_RNG_PSEUDO_MRG32K3A

HIPRAND_RNG_PSEUDO_MRG32K3A

1.5.0

CURAND_RNG_PSEUDO_MT19937

HIPRAND_RNG_PSEUDO_MT19937

1.5.0

CURAND_RNG_PSEUDO_MTGP32

HIPRAND_RNG_PSEUDO_MTGP32

1.5.0

CURAND_RNG_PSEUDO_PHILOX4_32_10

HIPRAND_RNG_PSEUDO_PHILOX4_32_10

1.5.0

CURAND_RNG_PSEUDO_XORWOW

HIPRAND_RNG_PSEUDO_XORWOW

1.5.0

CURAND_RNG_QUASI_DEFAULT

HIPRAND_RNG_QUASI_DEFAULT

1.5.0

CURAND_RNG_QUASI_SCRAMBLED_SOBOL32

HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL32

1.5.0

CURAND_RNG_QUASI_SCRAMBLED_SOBOL64

HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL64

1.5.0

CURAND_RNG_QUASI_SOBOL32

HIPRAND_RNG_QUASI_SOBOL32

1.5.0

CURAND_RNG_QUASI_SOBOL64

HIPRAND_RNG_QUASI_SOBOL64

1.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

CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6

HIPRAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6

6.0.0

CURAND_STATUS_ALLOCATION_FAILED

HIPRAND_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

CURAND_STATUS_INITIALIZATION_FAILED

HIPRAND_STATUS_INITIALIZATION_FAILED

1.5.0

CURAND_STATUS_INTERNAL_ERROR

HIPRAND_STATUS_INTERNAL_ERROR

1.5.0

CURAND_STATUS_LAUNCH_FAILURE

HIPRAND_STATUS_LAUNCH_FAILURE

1.5.0

CURAND_STATUS_LENGTH_NOT_MULTIPLE

HIPRAND_STATUS_LENGTH_NOT_MULTIPLE

1.5.0

CURAND_STATUS_NOT_INITIALIZED

HIPRAND_STATUS_NOT_INITIALIZED

1.5.0

CURAND_STATUS_OUT_OF_RANGE

HIPRAND_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

CURAND_STATUS_TYPE_ERROR

HIPRAND_STATUS_TYPE_ERROR

1.5.0

CURAND_STATUS_VERSION_MISMATCH

HIPRAND_STATUS_VERSION_MISMATCH

1.5.0

curandDirectionVectorSet

hiprandDirectionVectorSet_t

6.0.0

curandDirectionVectorSet_t

hiprandDirectionVectorSet_t

6.0.0

curandDirectionVectors32_t

hiprandDirectionVectors32_t

1.5.0

curandDirectionVectors64_t

curandDiscreteDistribution_st

hiprandDiscreteDistribution_st

1.5.0

curandDiscreteDistribution_t

hiprandDiscreteDistribution_t

1.5.0

curandDistributionM2Shift_st

curandDistributionM2Shift_t

curandDistributionShift_st

curandDistributionShift_t

curandDistribution_st

curandDistribution_t

curandGenerator_st

hiprandGenerator_st

1.5.0

curandGenerator_t

hiprandGenerator_t

1.5.0

curandHistogramM2K_st

curandHistogramM2K_t

curandHistogramM2V_st

curandHistogramM2V_t

curandHistogramM2_st

curandHistogramM2_t

curandMethod

curandMethod_t

curandOrdering

hiprandOrdering

6.2.0

6.2.0

curandOrdering_t

hiprandOrdering_t

6.2.0

6.2.0

curandRngType

hiprandRngType_t

1.5.0

curandRngType_t

hiprandRngType_t

1.5.0

curandState

hiprandState

1.8.0

curandStateMRG32k3a

hiprandStateMRG32k3a

1.8.0

curandStateMRG32k3a_t

hiprandStateMRG32k3a_t

1.5.0

curandStateMtgp32

hiprandStateMtgp32

1.8.0

curandStateMtgp32_t

hiprandStateMtgp32_t

1.5.0

curandStatePhilox4_32_10

hiprandStatePhilox4_32_10

1.8.0

curandStatePhilox4_32_10_t

hiprandStatePhilox4_32_10_t

1.8.0

curandStateScrambledSobol32

hiprandStateScrambledSobol32

6.2.0

6.2.0

curandStateScrambledSobol32_t

hiprandStateScrambledSobol32_t

6.2.0

6.2.0

curandStateScrambledSobol64

hiprandStateScrambledSobol64

6.2.0

6.2.0

curandStateScrambledSobol64_t

hiprandStateScrambledSobol64_t

6.2.0

6.2.0

curandStateSobol32

hiprandStateSobol32

1.8.0

curandStateSobol32_t

hiprandStateSobol32_t

1.5.0

curandStateSobol64

hiprandStateSobol64

6.2.0

6.2.0

curandStateSobol64_t

hiprandStateSobol64_t

6.2.0

6.2.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

curandStatus_t

hiprandStatus_t

1.5.0

2. Host API Functions#

CUDA

A

D

C

R

HIP

A

D

C

R

E

curandCreateGenerator

hiprandCreateGenerator

1.5.0

curandCreateGeneratorHost

hiprandCreateGeneratorHost

1.5.0

curandCreatePoissonDistribution

hiprandCreatePoissonDistribution

1.5.0

curandDestroyDistribution

hiprandDestroyDistribution

1.5.0

curandDestroyGenerator

hiprandDestroyGenerator

1.5.0

curandGenerate

hiprandGenerate

1.5.0

curandGenerateLogNormal

hiprandGenerateLogNormal

1.5.0

curandGenerateLogNormalDouble

hiprandGenerateLogNormalDouble

1.5.0

curandGenerateLongLong

curandGenerateNormal

hiprandGenerateNormal

1.5.0

curandGenerateNormalDouble

hiprandGenerateNormalDouble

1.5.0

curandGeneratePoisson

hiprandGeneratePoisson

1.5.0

curandGenerateSeeds

hiprandGenerateSeeds

1.5.0

curandGenerateUniform

hiprandGenerateUniform

1.5.0

curandGenerateUniformDouble

hiprandGenerateUniformDouble

1.5.0

curandGetDirectionVectors32

hiprandGetDirectionVectors32

6.0.0

curandGetDirectionVectors64

hiprandGetDirectionVectors64

6.0.0

curandGetProperty

8.0

curandGetScrambleConstants32

hiprandGetScrambleConstants32

6.0.0

curandGetScrambleConstants64

hiprandGetScrambleConstants64

6.0.0

curandGetVersion

hiprandGetVersion

1.5.0

curandMakeMTGP32Constants

hiprandMakeMTGP32Constants

1.5.0

curandMakeMTGP32KernelState

hiprandMakeMTGP32KernelState

1.5.0

curandSetGeneratorOffset

hiprandSetGeneratorOffset

1.5.0

curandSetGeneratorOrdering

hiprandSetGeneratorOrdering

6.2.0

6.2.0

curandSetPseudoRandomGeneratorSeed

hiprandSetPseudoRandomGeneratorSeed

1.5.0

curandSetQuasiRandomGeneratorDimensions

hiprandSetQuasiRandomGeneratorDimensions

1.5.0

curandSetStream

hiprandSetStream

1.5.0

3. Device API Functions#

CUDA

A

D

C

R

HIP

A

D

C

R

E

__curand_umul

11.5

curand

hiprand

1.5.0

curand_Philox4x32_10

curand_discrete

hiprand_discrete

1.5.0

curand_discrete4

hiprand_discrete4

1.5.0

curand_init

hiprand_init

1.5.0

curand_log_normal

hiprand_log_normal

1.5.0

curand_log_normal2

hiprand_log_normal2

1.5.0

curand_log_normal2_double

hiprand_log_normal2_double

1.5.0

curand_log_normal4

hiprand_log_normal4

1.5.0

curand_log_normal4_double

hiprand_log_normal4_double

1.5.0

curand_log_normal_double

hiprand_log_normal_double

1.5.0

curand_mtgp32_single

curand_mtgp32_single_specific

curand_mtgp32_specific

curand_normal

hiprand_normal

1.5.0

curand_normal2

hiprand_normal2

1.5.0

curand_normal2_double

hiprand_normal2_double

1.5.0

curand_normal4

hiprand_normal4

1.5.0

curand_normal4_double

hiprand_normal4_double

1.5.0

curand_normal_double

hiprand_normal_double

1.5.0

curand_poisson

hiprand_poisson

1.5.0

curand_poisson4

hiprand_poisson4

1.5.0

curand_uniform

hiprand_uniform

1.5.0

curand_uniform2_double

hiprand_uniform2_double

1.5.0

curand_uniform4

hiprand_uniform4

1.5.0

curand_uniform4_double

hiprand_uniform4_double

1.5.0

curand_uniform_double

hiprand_uniform_double

1.5.0

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