Sophie

Sophie

distrib > Mageia > 5 > x86_64 > media > nonfree-updates > by-pkgid > fd8445e7e4d58b8cfe6e0150bd441ee1 > files > 1268

nvidia-cuda-toolkit-devel-6.5.14-6.1.mga5.nonfree.x86_64.rpm

<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-us" xml:lang="en-us">
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
      <meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>
      <meta name="copyright" content="(C) Copyright 2005"></meta>
      <meta name="DC.rights.owner" content="(C) Copyright 2005"></meta>
      <meta name="DC.Type" content="cppModule"></meta>
      <meta name="DC.Title" content="Host API"></meta>
      <meta name="abstract" content=""></meta>
      <meta name="description" content=""></meta>
      <meta name="DC.Format" content="XHTML"></meta>
      <meta name="DC.Identifier" content="group__HOST"></meta>
      <link rel="stylesheet" type="text/css" href="../common/formatting/commonltr.css"></link>
      <link rel="stylesheet" type="text/css" href="../common/formatting/site.css"></link>
      <title>cuRAND :: CUDA Toolkit Documentation</title>
      <!--[if lt IE 9]>
      <script src="../common/formatting/html5shiv-printshiv.min.js"></script>
      <![endif]-->
      <script type="text/javascript" charset="utf-8" src="../common/scripts/tynt/tynt.js"></script>
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.min.js"></script>
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.ba-hashchange.min.js"></script>
      <script type="text/javascript" charset="utf-8" src="../common/formatting/jquery.scrollintoview.min.js"></script>
      <script type="text/javascript" src="../search/htmlFileList.js"></script>
      <script type="text/javascript" src="../search/htmlFileInfoList.js"></script>
      <script type="text/javascript" src="../search/nwSearchFnt.min.js"></script>
      <script type="text/javascript" src="../search/stemmers/en_stemmer.min.js"></script>
      <script type="text/javascript" src="../search/index-1.js"></script>
      <script type="text/javascript" src="../search/index-2.js"></script>
      <script type="text/javascript" src="../search/index-3.js"></script>
      <link rel="canonical" href="http://docs.nvidia.com/cuda/curand/index.html"></link>
      <link rel="stylesheet" type="text/css" href="../common/formatting/qwcode.highlight.css"></link>
   </head>
   <body>
      
      <header id="header"><span id="company">NVIDIA</span><span id="site-title">CUDA Toolkit Documentation</span><form id="search" method="get" action="search">
            <input type="text" name="search-text"></input><fieldset id="search-location">
               <legend>Search In:</legend>
               <label><input type="radio" name="search-type" value="site"></input>Entire Site</label>
               <label><input type="radio" name="search-type" value="document"></input>Just This Document</label></fieldset>
            <button type="reset">clear search</button>
            <button id="submit" type="submit">search</button></form>
      </header>
      <div id="site-content">
         <nav id="site-nav">
            <div class="category closed"><a href="../index.html" title="The root of the site.">CUDA Toolkit
                  v6.5</a></div>
            <div class="category"><a href="index.html" title="cuRAND">cuRAND</a></div>
            <ul>
               <li>
                  <div class="section-link"><a href="introduction.html#introduction">Introduction</a></div>
               </li>
               <li>
                  <div class="section-link"><a href="compatibility-and-versioning.html#compatibility-and-versioning">1.&nbsp;Compatibility and Versioning</a></div>
               </li>
               <li>
                  <div class="section-link"><a href="host-api-overview.html#host-api-overview">2.&nbsp;Host API Overview</a></div>
                  <ul>
                     <li>
                        <div class="section-link"><a href="host-api-overview.html#generator-types">2.1.&nbsp;Generator Types</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="host-api-overview.html#generator-options">2.2.&nbsp;Generator Options</a></div>
                        <ul>
                           <li>
                              <div class="section-link"><a href="host-api-overview.html#seed">2.2.1.&nbsp;Seed</a></div>
                           </li>
                           <li>
                              <div class="section-link"><a href="host-api-overview.html#offset">2.2.2.&nbsp;Offset</a></div>
                           </li>
                           <li>
                              <div class="section-link"><a href="host-api-overview.html#order">2.2.3.&nbsp;Order</a></div>
                           </li>
                        </ul>
                     </li>
                     <li>
                        <div class="section-link"><a href="host-api-overview.html#return-values">2.3.&nbsp;Return Values</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="host-api-overview.html#generation-functions">2.4.&nbsp;Generation Functions</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="host-api-overview.html#host-api-example">2.5.&nbsp;Host API Example</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="host-api-overview.html#static-library">2.6.&nbsp;Static Library support</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="host-api-overview.html#performance-notes2">2.7.&nbsp;Performance Notes</a></div>
                     </li>
                  </ul>
               </li>
               <li>
                  <div class="section-link"><a href="device-api-overview.html#device-api-overview">3.&nbsp;Device API Overview</a></div>
                  <ul>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#pseudorandom-sequences">3.1.&nbsp;Pseudorandom Sequences</a></div>
                        <ul>
                           <li>
                              <div class="section-link"><a href="device-api-overview.html#bit-generation-1">3.1.1.&nbsp;Bit Generation with XORWOW and MRG32k3a generators</a></div>
                           </li>
                           <li>
                              <div class="section-link"><a href="device-api-overview.html#bit-generation-2">3.1.2.&nbsp;Bit Generation with the MTGP32 generator</a></div>
                           </li>
                           <li>
                              <div class="section-link"><a href="device-api-overview.html#bit-generation-3">3.1.3.&nbsp;Bit Generation with Philox_4x32_10 generator</a></div>
                           </li>
                           <li>
                              <div class="section-link"><a href="device-api-overview.html#distributions">3.1.4.&nbsp;Distributions</a></div>
                           </li>
                        </ul>
                     </li>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#quasirandom-sequences">3.2.&nbsp;Quasirandom Sequences</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#skip-ahead">3.3.&nbsp;Skip-Ahead</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#device-api-for-discrete-distributions">3.4.&nbsp;Device API for discrete distributions</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#performance-notes">3.5.&nbsp;Performance Notes</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#device-api-example">3.6.&nbsp;Device API Examples</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#thrust-and-curand-example">3.7.&nbsp;Thrust and cuRAND Example</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="device-api-overview.html#poisson-api-example">3.8.&nbsp;Poisson API Example</a></div>
                     </li>
                  </ul>
               </li>
               <li>
                  <div class="section-link"><a href="testing.html#testing">4.&nbsp;Testing</a></div>
               </li>
               <li>
                  <div class="section-link"><a href="modules.html#modules">5.&nbsp;Modules</a></div>
                  <ul>
                     <li>
                        <div class="section-link"><a href="group__HOST.html#group__HOST">5.1.&nbsp;Host API</a></div>
                     </li>
                     <li>
                        <div class="section-link"><a href="group__DEVICE.html#group__DEVICE">5.2.&nbsp;Device API</a></div>
                     </li>
                  </ul>
               </li>
               <li>
                  <div class="section-link"><a href="bibliography.html#bibliography">A.&nbsp;Bibliography</a></div>
               </li>
               <li>
                  <div class="section-link"><a href="acknowledgements.html#acknowledgements">B.&nbsp;Acknowledgements</a></div>
               </li>
               <li>
                  <div class="section-link"><a href="notices-header.html#notices-header">Notices</a></div>
                  <ul></ul>
               </li>
            </ul>
         </nav>
         <div id="resize-nav"></div>
         <nav id="search-results">
            <h2>Search Results</h2>
            <ol></ol>
         </nav>
         
         <div id="contents-container">
            <div id="breadcrumbs-container">
               <div id="breadcrumbs"><a href="modules.html" shape="rect">&lt; Previous</a> | <a href="group__DEVICE.html" shape="rect">Next &gt;</a></div>
               <div id="release-info">cuRAND
                  (<a href="../../pdf/CURAND_Library.pdf">PDF</a>)
                  -
                  
                  v6.5
                  (<a href="https://developer.nvidia.com/cuda-toolkit-archive">older</a>)
                  -
                  Last updated August 1, 2014
                  -
                  <a href="mailto:cudatools@nvidia.com?subject=CUDA Toolkit Documentation Feedback: cuRAND">Send Feedback</a>
                  -
                  <span class="st_facebook"></span><span class="st_twitter"></span><span class="st_linkedin"></span><span class="st_reddit"></span><span class="st_slashdot"></span><span class="st_tumblr"></span><span class="st_sharethis"></span></div>
            </div>
            <article id="contents">
               <div class="topic reference apiRef apiPackage cppModule" id="group__HOST"><a name="group__HOST" shape="rect">
                     <!-- --></a><h2 class="topictitle2 cppModule">5.1.&nbsp;Host API</h2>
                  <div class="section">
                     <p></p>
                  </div>
                  <h3 class="fake_sectiontitle member_header">Functions</h3>
                  <dl class="members">
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g56ff2b3cf7e28849f73a1e22022bcbfd" shape="rect">curandCreateGenerator</a> (  curandGenerator_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, curandRngType_t<span>&nbsp;</span><span class="keyword keyword apiItemName">rng_type</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Create new random number generator. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g35b6e9396d5b54b52ba9053496ad4ff4" shape="rect">curandCreateGeneratorHost</a> (  curandGenerator_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, curandRngType_t<span>&nbsp;</span><span class="keyword keyword apiItemName">rng_type</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Create new host CPU random number generator. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g83483578a1f9644f7d58d67e75e1fa30" shape="rect">curandCreatePoissonDistribution</a> (  double <span>&nbsp;</span><span class="keyword keyword apiItemName">lambda</span>, curandDiscreteDistribution_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">discrete_distribution</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Construct the histogram array for a Poisson distribution. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g5cebdf1502aff5a5fe46db29aa8cfaeb" shape="rect">curandDestroyDistribution</a> (  curandDiscreteDistribution_t<span>&nbsp;</span><span class="keyword keyword apiItemName">discrete_distribution</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Destroy the histogram array for a discrete distribution (e.g. Poisson). </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g8d82c56e2b869fef4f9929a775ee18d0" shape="rect">curandDestroyGenerator</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Destroy an existing generator. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gf18b3cbdf0b7d9e2335bada92610adac" shape="rect">curandGenerate</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned int*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate 32-bit pseudo or quasirandom numbers. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g3569cc960eb1a31357752fc813e21f49" shape="rect">curandGenerateLogNormal</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, float*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate log-normally distributed floats. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g300c31530c8b461ca89f1e0232a6f05f" shape="rect">curandGenerateLogNormalDouble</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, double*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate log-normally distributed doubles. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gd8e23d144e88b8e638139db05ff798b3" shape="rect">curandGenerateLongLong</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned long long*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate 64-bit quasirandom numbers. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gb9280e447ef04e1dec4611720bd0eb69" shape="rect">curandGenerateNormal</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, float*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate normally distributed doubles. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g046759ff9b6bf8dafc9eaae04917dc8e" shape="rect">curandGenerateNormalDouble</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, double*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate normally distributed doubles. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g425c7c13db4444e6150d159bb1417f05" shape="rect">curandGeneratePoisson</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned int*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">lambda</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate Poisson-distributed unsigned ints. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g8a04d1c44aad303089f056dd085d9b12" shape="rect">curandGenerateSeeds</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Setup starting states. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g5df92a7293dc6b2e61ea481a2069ebc2" shape="rect">curandGenerateUniform</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, float*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate uniformly distributed floats. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gbb08f0268f05c9d87eac2b4a2cf7fc24" shape="rect">curandGenerateUniformDouble</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, double*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Generate uniformly distributed doubles. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1g36fcf5198a04ab9621bcdaede091385b" shape="rect">curandGetDirectionVectors32</a> (  curandDirectionVectors32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">vectors</span>, curandDirectionVectorSet_t<span>&nbsp;</span><span class="keyword keyword apiItemName">set</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Get direction vectors for 32-bit quasirandom number generation. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gf13191d9e79c73f77d87bb3462011cf1" shape="rect">curandGetDirectionVectors64</a> (  curandDirectionVectors64_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">vectors</span>, curandDirectionVectorSet_t<span>&nbsp;</span><span class="keyword keyword apiItemName">set</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Get direction vectors for 64-bit quasirandom number generation. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gc461ed26556febb8e6a401b608089b77" shape="rect">curandGetScrambleConstants32</a> (  unsigned int**<span>&nbsp;</span><span class="keyword keyword apiItemName">constants</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Get scramble constants for 32-bit scrambled Sobol' . </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gcb9e8febfe871bb5c9212d35f93fc9f7" shape="rect">curandGetScrambleConstants64</a> (  unsigned long long**<span>&nbsp;</span><span class="keyword keyword apiItemName">constants</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Get scramble constants for 64-bit scrambled Sobol' . </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1ga8887f51c309a3e3f2541399a774f14d" shape="rect">curandGetVersion</a> (  int*<span>&nbsp;</span><span class="keyword keyword apiItemName">version</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Return the version number of the library. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gb21ba987f85486e552797206451b0939" shape="rect">curandSetGeneratorOffset</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned long long<span>&nbsp;</span><span class="keyword keyword apiItemName">offset</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Set the absolute offset of the pseudo or quasirandom number generator. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gf1aa05715d726f94002d03237405fc5d" shape="rect">curandSetGeneratorOrdering</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, curandOrdering_t<span>&nbsp;</span><span class="keyword keyword apiItemName">order</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Set the ordering of results of the pseudo or quasirandom number generator. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gbcd2982aa3d53571b8ad12d8188b139b" shape="rect">curandSetPseudoRandomGeneratorSeed</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned long long<span>&nbsp;</span><span class="keyword keyword apiItemName">seed</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Set the seed value of the pseudo-random number generator. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gd00db3478a788b5823038481495bb6ab" shape="rect">curandSetQuasiRandomGeneratorDimensions</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned int <span>&nbsp;</span><span class="keyword keyword apiItemName">num_dimensions</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Set the number of dimensions. </span></dd>
                     <dt><span class="member_type">curandStatus_t CURANDAPI&nbsp;</span><span class="member_name"><a href="#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" shape="rect">curandSetStream</a> (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, cudaStream_t<span>&nbsp;</span><span class="keyword keyword apiItemName">stream</span> ) </span></dt>
                     <dd class="shortdesc"><span></span><span class="desc">Set the current stream for CURAND kernel launches. </span></dd>
                  </dl>
                  <div class="description">
                     <h3 class="sectiontitle">Enumerations</h3>
                     <dl class="description">
                        <dt class="description"><a name="group__HOST_1g60d34e2eadf8aa70831a695bd0333e44" id="group__HOST_1g60d34e2eadf8aa70831a695bd0333e44" shape="rect">
                              <!-- --></a><span>enum <a href="group__HOST.html" title="" shape="rect">HOST</a>::<a href="group__HOST.html#group__HOST_1g60d34e2eadf8aa70831a695bd0333e44" shape="rect">curandDirectionVectorSet</a> [inherited] </span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>CURAND choice of direction vector set </p>
                           </div>
                           <div class="enum-members">
                              <h6 class="enumerator_header">
                                 Values
                                 
                              </h6>
                              <dl class="enumerator">
                                 <dt><span class="enum-member-name-def">CURAND_DIRECTION_VECTORS_32_JOEKUO6 = <span class="ph ph apiData">101</span></span></dt>
                                 <dd>Specific set of 32-bit direction vectors generated from polynomials recommended by S. Joe and F. Y. Kuo, for up to 20,000
                                    dimensions. 
                                 </dd>
                                 <dt><span class="enum-member-name-def">CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 = <span class="ph ph apiData">102</span></span></dt>
                                 <dd>Specific set of 32-bit direction vectors generated from polynomials recommended by S. Joe and F. Y. Kuo, for up to 20,000
                                    dimensions, and scrambled. 
                                 </dd>
                                 <dt><span class="enum-member-name-def">CURAND_DIRECTION_VECTORS_64_JOEKUO6 = <span class="ph ph apiData">103</span></span></dt>
                                 <dd>Specific set of 64-bit direction vectors generated from polynomials recommended by S. Joe and F. Y. Kuo, for up to 20,000
                                    dimensions. 
                                 </dd>
                                 <dt><span class="enum-member-name-def">CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 = <span class="ph ph apiData">104</span></span></dt>
                                 <dd>Specific set of 64-bit direction vectors generated from polynomials recommended by S. Joe and F. Y. Kuo, for up to 20,000
                                    dimensions, and scrambled. 
                                 </dd>
                              </dl>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g2e3407c5fd20b3c1a3c215d2fcdeef55" id="group__HOST_1g2e3407c5fd20b3c1a3c215d2fcdeef55" shape="rect">
                              <!-- --></a><span>enum <a href="group__HOST.html" title="" shape="rect">HOST</a>::<a href="group__HOST.html#group__HOST_1g2e3407c5fd20b3c1a3c215d2fcdeef55" shape="rect">curandOrdering</a> [inherited] </span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>CURAND ordering of results in memory </p>
                           </div>
                           <div class="enum-members">
                              <h6 class="enumerator_header">
                                 Values
                                 
                              </h6>
                              <dl class="enumerator">
                                 <dt><span class="enum-member-name-def">CURAND_ORDERING_PSEUDO_BEST = <span class="ph ph apiData">100</span></span></dt>
                                 <dd>Best ordering for pseudorandom results. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_ORDERING_PSEUDO_DEFAULT = <span class="ph ph apiData">101</span></span></dt>
                                 <dd>Specific default 4096 thread sequence for pseudorandom results. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_ORDERING_PSEUDO_SEEDED = <span class="ph ph apiData">102</span></span></dt>
                                 <dd>Specific seeding pattern for fast lower quality pseudorandom results. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_ORDERING_QUASI_DEFAULT = <span class="ph ph apiData">201</span></span></dt>
                                 <dd>Specific n-dimensional ordering for quasirandom results. </dd>
                              </dl>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1ge4d4f19934ced528dd541ff1dafbb0db" id="group__HOST_1ge4d4f19934ced528dd541ff1dafbb0db" shape="rect">
                              <!-- --></a><span>enum <a href="group__HOST.html" title="" shape="rect">HOST</a>::<a href="group__HOST.html#group__HOST_1ge4d4f19934ced528dd541ff1dafbb0db" shape="rect">curandRngType</a> [inherited] </span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>CURAND generator types </p>
                           </div>
                           <div class="enum-members">
                              <h6 class="enumerator_header">
                                 Values
                                 
                              </h6>
                              <dl class="enumerator">
                                 <dt><span class="enum-member-name-def">CURAND_RNG_TEST = <span class="ph ph apiData">0</span></span></dt>
                                 <dd></dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_PSEUDO_DEFAULT = <span class="ph ph apiData">100</span></span></dt>
                                 <dd>Default pseudorandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_PSEUDO_XORWOW = <span class="ph ph apiData">101</span></span></dt>
                                 <dd>XORWOW pseudorandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_PSEUDO_MRG32K3A = <span class="ph ph apiData">121</span></span></dt>
                                 <dd>MRG32k3a pseudorandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_PSEUDO_MTGP32 = <span class="ph ph apiData">141</span></span></dt>
                                 <dd>Mersenne Twister MTGP32 pseudorandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_PSEUDO_MT19937 = <span class="ph ph apiData">142</span></span></dt>
                                 <dd>Mersenne Twister MT19937 pseudorandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_PSEUDO_PHILOX4_32_10 = <span class="ph ph apiData">161</span></span></dt>
                                 <dd>PHILOX-4x32-10 pseudorandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_QUASI_DEFAULT = <span class="ph ph apiData">200</span></span></dt>
                                 <dd>Default quasirandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_QUASI_SOBOL32 = <span class="ph ph apiData">201</span></span></dt>
                                 <dd>Sobol32 quasirandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 = <span class="ph ph apiData">202</span></span></dt>
                                 <dd>Scrambled Sobol32 quasirandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_QUASI_SOBOL64 = <span class="ph ph apiData">203</span></span></dt>
                                 <dd>Sobol64 quasirandom generator. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 = <span class="ph ph apiData">204</span></span></dt>
                                 <dd>Scrambled Sobol64 quasirandom generator. </dd>
                              </dl>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gb94a31d5c165858c96b6c18b70644437" id="group__HOST_1gb94a31d5c165858c96b6c18b70644437" shape="rect">
                              <!-- --></a><span>enum <a href="group__HOST.html" title="" shape="rect">HOST</a>::<a href="group__HOST.html#group__HOST_1gb94a31d5c165858c96b6c18b70644437" shape="rect">curandStatus</a> [inherited] </span></dt>
                        <dd class="description">
                           <div class="section">
                              <p>CURAND function call status types </p>
                           </div>
                           <div class="enum-members">
                              <h6 class="enumerator_header">
                                 Values
                                 
                              </h6>
                              <dl class="enumerator">
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_SUCCESS = <span class="ph ph apiData">0</span></span></dt>
                                 <dd>No errors. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_VERSION_MISMATCH = <span class="ph ph apiData">100</span></span></dt>
                                 <dd>Header file and linked library version do not match. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_NOT_INITIALIZED = <span class="ph ph apiData">101</span></span></dt>
                                 <dd>Generator not initialized. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_ALLOCATION_FAILED = <span class="ph ph apiData">102</span></span></dt>
                                 <dd>Memory allocation failed. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_TYPE_ERROR = <span class="ph ph apiData">103</span></span></dt>
                                 <dd>Generator is wrong type. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_OUT_OF_RANGE = <span class="ph ph apiData">104</span></span></dt>
                                 <dd>Argument out of range. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_LENGTH_NOT_MULTIPLE = <span class="ph ph apiData">105</span></span></dt>
                                 <dd>Length requested is not a multple of dimension. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_DOUBLE_PRECISION_REQUIRED = <span class="ph ph apiData">106</span></span></dt>
                                 <dd>GPU does not have double precision required by MRG32k3a. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_LAUNCH_FAILURE = <span class="ph ph apiData">201</span></span></dt>
                                 <dd>Kernel launch failure. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_PREEXISTING_FAILURE = <span class="ph ph apiData">202</span></span></dt>
                                 <dd>Preexisting failure on library entry. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_INITIALIZATION_FAILED = <span class="ph ph apiData">203</span></span></dt>
                                 <dd>Initialization of CUDA failed. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_ARCH_MISMATCH = <span class="ph ph apiData">204</span></span></dt>
                                 <dd>Architecture mismatch, GPU does not support requested feature. </dd>
                                 <dt><span class="enum-member-name-def">CURAND_STATUS_INTERNAL_ERROR = <span class="ph ph apiData">999</span></span></dt>
                                 <dd>Internal library error. </dd>
                              </dl>
                           </div>
                        </dd>
                     </dl>
                  </div>
                  <div class="description">
                     <h3 class="sectiontitle">Functions</h3>
                     <dl class="description">
                        <dt class="description"><a name="group__HOST_1g56ff2b3cf7e28849f73a1e22022bcbfd" id="group__HOST_1g56ff2b3cf7e28849f73a1e22022bcbfd" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandCreateGenerator (  curandGenerator_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, curandRngType_t<span>&nbsp;</span><span class="keyword keyword apiItemName">rng_type</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Create new random number generator. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Pointer to generator </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">rng_type</span></tt></dt>
                                 <dd>- Type of generator to create</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_ALLOCATION_FAILED, if memory could not be allocated 
                                       
                                    </li>
                                    <li>CURAND_STATUS_INITIALIZATION_FAILED if there was a problem setting up the GPU 
                                       
                                    </li>
                                    <li>CURAND_STATUS_VERSION_MISMATCH if the header file version does not match the dynamically linked library version 
                                       
                                    </li>
                                    <li>CURAND_STATUS_TYPE_ERROR if the value for <tt class="ph tt code">rng_type</tt> is invalid 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if generator was created successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>CURAND generator CURAND distribution CURAND distribution M2 Creates a new random number generator of type <tt class="ph tt code">rng_type</tt> and returns it in <tt class="ph tt code">*generator</tt>.
                              </p>
                              <p class="p">Legal values for <tt class="ph tt code">rng_type</tt> are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_DEFAULT</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_XORWOW</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_MRG32K3A</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_MTGP32</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_MT19937</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_PHILOX4_32_10</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_QUASI_DEFAULT</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_QUASI_SOBOL32</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_QUASI_SCRAMBLED_SOBOL32</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_QUASI_SOBOL64</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_QUASI_SCRAMBLED_SOBOL64</p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">When <tt class="ph tt code">rng_type</tt> is CURAND_RNG_PSEUDO_DEFAULT, the type chosen is CURAND_RNG_PSEUDO_XORWOW. 
                                 When <tt class="ph tt code">rng_type</tt> is CURAND_RNG_QUASI_DEFAULT, the type chosen is CURAND_RNG_QUASI_SOBOL32.
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_XORWOW are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_MRG32K3A are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_MTGP32 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_MT19937 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">* The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_PHILOX4_32_10 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SOBOL32 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SOBOL64 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SCRAMBBLED_SOBOL32 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g35b6e9396d5b54b52ba9053496ad4ff4" id="group__HOST_1g35b6e9396d5b54b52ba9053496ad4ff4" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandCreateGeneratorHost (  curandGenerator_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, curandRngType_t<span>&nbsp;</span><span class="keyword keyword apiItemName">rng_type</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Create new host CPU random number generator. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Pointer to generator </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">rng_type</span></tt></dt>
                                 <dd>- Type of generator to create</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_ALLOCATION_FAILED if memory could not be allocated 
                                       
                                    </li>
                                    <li>CURAND_STATUS_INITIALIZATION_FAILED if there was a problem setting up the GPU 
                                       
                                    </li>
                                    <li>CURAND_STATUS_VERSION_MISMATCH if the header file version does not match the dynamically linked library version 
                                       
                                    </li>
                                    <li>CURAND_STATUS_TYPE_ERROR if the value for <tt class="ph tt code">rng_type</tt> is invalid 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if generator was created successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Creates a new host CPU random number generator of type <tt class="ph tt code">rng_type</tt> and returns it in <tt class="ph tt code">*generator</tt>.
                              </p>
                              <p class="p">Legal values for <tt class="ph tt code">rng_type</tt> are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_DEFAULT</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_XORWOW</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_MRG32K3A</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_MTGP32</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_MT19937</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_PSEUDO_PHILOX4_32_10</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_QUASI_DEFAULT</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_RNG_QUASI_SOBOL32</p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">When <tt class="ph tt code">rng_type</tt> is CURAND_RNG_PSEUDO_DEFAULT, the type chosen is CURAND_RNG_PSEUDO_XORWOW. 
                                 When <tt class="ph tt code">rng_type</tt> is CURAND_RNG_QUASI_DEFAULT, the type chosen is CURAND_RNG_QUASI_SOBOL32.
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_XORWOW are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_MRG32K3A are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_MTGP32 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_MT19937 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">* The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_PSEUDO_PHILOX4_32_10 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">seed</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_PSEUDO_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SOBOL32 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SOBOL64 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SCRAMBLED_SOBOL32 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">The default values for <tt class="ph tt code">rng_type</tt> = CURAND_RNG_QUASI_SCRAMBLED_SOBOL64 are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">dimensions</tt> = 1
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">offset</tt> = 0
                                       </p>
                                    </li>
                                    <li class="li">
                                       <p class="p"><tt class="ph tt code">ordering</tt> = CURAND_ORDERING_QUASI_DEFAULT
                                       </p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g83483578a1f9644f7d58d67e75e1fa30" id="group__HOST_1g83483578a1f9644f7d58d67e75e1fa30" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandCreatePoissonDistribution (  double <span>&nbsp;</span><span class="keyword keyword apiItemName">lambda</span>, curandDiscreteDistribution_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">discrete_distribution</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Construct the histogram array for a Poisson distribution. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">lambda</span></tt></dt>
                                 <dd>- lambda for the Poisson distribution</dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">discrete_distribution</span></tt></dt>
                                 <dd>- pointer to the histogram in device memory</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_ALLOCATION_FAILED if memory could not be allocated 
                                       
                                    </li>
                                    <li>CURAND_STATUS_DOUBLE_PRECISION_REQUIRED if the GPU does not support double precision 
                                       
                                    </li>
                                    <li>CURAND_STATUS_INITIALIZATION_FAILED if there was a problem setting up the GPU 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_OUT_OF_RANGE if lambda is non-positive or greater than 400,000 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the histogram were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Construct the histogram array for the Poisson distribution with lambda <tt class="ph tt code">lambda</tt>. For lambda greater than 2000, an approximation with a normal distribution is used.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g5cebdf1502aff5a5fe46db29aa8cfaeb" id="group__HOST_1g5cebdf1502aff5a5fe46db29aa8cfaeb" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandDestroyDistribution (  curandDiscreteDistribution_t<span>&nbsp;</span><span class="keyword keyword apiItemName">discrete_distribution</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Destroy the histogram array for a discrete distribution (e.g. Poisson). </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">discrete_distribution</span></tt></dt>
                                 <dd>- pointer to device memory where the histogram is stored</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the histogram was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the histogram was destroyed successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Destroy the histogram array for a discrete distribution created by curandCreatePoissonDistribution.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g8d82c56e2b869fef4f9929a775ee18d0" id="group__HOST_1g8d82c56e2b869fef4f9929a775ee18d0" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandDestroyGenerator (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Destroy an existing generator. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to destroy</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if generator was destroyed successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Destroy an existing generator and free all memory associated with its state.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gf18b3cbdf0b7d9e2335bada92610adac" id="group__HOST_1gf18b3cbdf0b7d9e2335bada92610adac" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerate (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned int*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate 32-bit pseudo or quasirandom numbers. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">num</span></tt></dt>
                                 <dd>- Number of random 32-bit values to generate</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_TYPE_ERROR if the generator is a 64 bit quasirandom generator. (use <a class="xref" href="group__HOST.html#group__HOST_1gd8e23d144e88b8e638139db05ff798b3" title="Generate 64-bit quasirandom numbers." shape="rect">curandGenerateLongLong()</a> with 64 bit quasirandom generators)
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">num</tt> 32-bit results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 32-bit values with every bit random.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g3569cc960eb1a31357752fc813e21f49" id="group__HOST_1g3569cc960eb1a31357752fc813e21f49" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateLogNormal (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, float*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate log-normally distributed floats. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">n</span></tt></dt>
                                 <dd>- Number of floats to generate </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">mean</span></tt></dt>
                                 <dd>- Mean of associated normal distribution </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">stddev</span></tt></dt>
                                 <dd>- Standard deviation of associated normal distribution</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension, or is not
                                       a multiple of two for pseudorandom generators 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">n</tt> float results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 32-bit floating point values with log-normal distribution based on an associated normal distribution with mean
                                 <tt class="ph tt code">mean</tt> and standard deviation <tt class="ph tt code">stddev</tt>.
                              </p>
                              <p class="p">Normally distributed results are generated from pseudorandom generators with a Box-Muller transform, and so require <tt class="ph tt code">n</tt> to be even. Quasirandom generators use an inverse cumulative distribution function to preserve dimensionality. The normally
                                 distributed results are transformed into log-normal distribution.
                              </p>
                              <p class="p">There may be slight numerical differences between results generated on the GPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g56ff2b3cf7e28849f73a1e22022bcbfd" title="Create new random number generator." shape="rect">curandCreateGenerator()</a> and results calculated on the CPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g35b6e9396d5b54b52ba9053496ad4ff4" title="Create new host CPU random number generator." shape="rect">curandCreateGeneratorHost()</a>. These differences arise because of differences in results for transcendental functions. In addition, future versions of
                                 CURAND may use newer versions of the CUDA math library, so different versions of CURAND may give slightly different numerical
                                 values.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g300c31530c8b461ca89f1e0232a6f05f" id="group__HOST_1g300c31530c8b461ca89f1e0232a6f05f" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateLogNormalDouble (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, double*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate log-normally distributed doubles. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">n</span></tt></dt>
                                 <dd>- Number of doubles to generate </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">mean</span></tt></dt>
                                 <dd>- Mean of normal distribution </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">stddev</span></tt></dt>
                                 <dd>- Standard deviation of normal distribution</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension, or is not
                                       a multiple of two for pseudorandom generators 
                                       
                                    </li>
                                    <li>CURAND_STATUS_DOUBLE_PRECISION_REQUIRED if the GPU does not support double precision 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">n</tt> double results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 64-bit floating point values with log-normal distribution based on an associated normal distribution with mean
                                 <tt class="ph tt code">mean</tt> and standard deviation <tt class="ph tt code">stddev</tt>.
                              </p>
                              <p class="p">Normally distributed results are generated from pseudorandom generators with a Box-Muller transform, and so require <tt class="ph tt code">n</tt> to be even. Quasirandom generators use an inverse cumulative distribution function to preserve dimensionality. The normally
                                 distributed results are transformed into log-normal distribution.
                              </p>
                              <p class="p">There may be slight numerical differences between results generated on the GPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g56ff2b3cf7e28849f73a1e22022bcbfd" title="Create new random number generator." shape="rect">curandCreateGenerator()</a> and results calculated on the CPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g35b6e9396d5b54b52ba9053496ad4ff4" title="Create new host CPU random number generator." shape="rect">curandCreateGeneratorHost()</a>. These differences arise because of differences in results for transcendental functions. In addition, future versions of
                                 CURAND may use newer versions of the CUDA math library, so different versions of CURAND may give slightly different numerical
                                 values.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gd8e23d144e88b8e638139db05ff798b3" id="group__HOST_1gd8e23d144e88b8e638139db05ff798b3" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateLongLong (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned long long*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate 64-bit quasirandom numbers. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">num</span></tt></dt>
                                 <dd>- Number of random 64-bit values to generate</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_TYPE_ERROR if the generator is not a 64 bit quasirandom generator
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">num</tt> 64-bit results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 64-bit values with every bit random.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gb9280e447ef04e1dec4611720bd0eb69" id="group__HOST_1gb9280e447ef04e1dec4611720bd0eb69" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateNormal (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, float*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, float <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate normally distributed doubles. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">n</span></tt></dt>
                                 <dd>- Number of floats to generate </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">mean</span></tt></dt>
                                 <dd>- Mean of normal distribution </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">stddev</span></tt></dt>
                                 <dd>- Standard deviation of normal distribution</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension, or is not
                                       a multiple of two for pseudorandom generators 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">n</tt> float results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 32-bit floating point values with mean <tt class="ph tt code">mean</tt> and standard deviation <tt class="ph tt code">stddev</tt>.
                              </p>
                              <p class="p">Normally distributed results are generated from pseudorandom generators with a Box-Muller transform, and so require <tt class="ph tt code">n</tt> to be even. Quasirandom generators use an inverse cumulative distribution function to preserve dimensionality.
                              </p>
                              <p class="p">There may be slight numerical differences between results generated on the GPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g56ff2b3cf7e28849f73a1e22022bcbfd" title="Create new random number generator." shape="rect">curandCreateGenerator()</a> and results calculated on the CPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g35b6e9396d5b54b52ba9053496ad4ff4" title="Create new host CPU random number generator." shape="rect">curandCreateGeneratorHost()</a>. These differences arise because of differences in results for transcendental functions. In addition, future versions of
                                 CURAND may use newer versions of the CUDA math library, so different versions of CURAND may give slightly different numerical
                                 values.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g046759ff9b6bf8dafc9eaae04917dc8e" id="group__HOST_1g046759ff9b6bf8dafc9eaae04917dc8e" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateNormalDouble (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, double*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">mean</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">stddev</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate normally distributed doubles. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">n</span></tt></dt>
                                 <dd>- Number of doubles to generate </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">mean</span></tt></dt>
                                 <dd>- Mean of normal distribution </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">stddev</span></tt></dt>
                                 <dd>- Standard deviation of normal distribution</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension, or is not
                                       a multiple of two for pseudorandom generators 
                                       
                                    </li>
                                    <li>CURAND_STATUS_DOUBLE_PRECISION_REQUIRED if the GPU does not support double precision 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">n</tt> double results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 64-bit floating point values with mean <tt class="ph tt code">mean</tt> and standard deviation <tt class="ph tt code">stddev</tt>.
                              </p>
                              <p class="p">Normally distributed results are generated from pseudorandom generators with a Box-Muller transform, and so require <tt class="ph tt code">n</tt> to be even. Quasirandom generators use an inverse cumulative distribution function to preserve dimensionality.
                              </p>
                              <p class="p">There may be slight numerical differences between results generated on the GPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g56ff2b3cf7e28849f73a1e22022bcbfd" title="Create new random number generator." shape="rect">curandCreateGenerator()</a> and results calculated on the CPU with generators created with <a class="xref" href="group__HOST.html#group__HOST_1g35b6e9396d5b54b52ba9053496ad4ff4" title="Create new host CPU random number generator." shape="rect">curandCreateGeneratorHost()</a>. These differences arise because of differences in results for transcendental functions. In addition, future versions of
                                 CURAND may use newer versions of the CUDA math library, so different versions of CURAND may give slightly different numerical
                                 values.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g425c7c13db4444e6150d159bb1417f05" id="group__HOST_1g425c7c13db4444e6150d159bb1417f05" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGeneratePoisson (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned int*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">n</span>, double <span>&nbsp;</span><span class="keyword keyword apiItemName">lambda</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate Poisson-distributed unsigned ints. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">n</span></tt></dt>
                                 <dd>- Number of unsigned ints to generate </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">lambda</span></tt></dt>
                                 <dd>- lambda for the Poisson distribution</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension
                                       
                                    </li>
                                    <li>CURAND_STATUS_DOUBLE_PRECISION_REQUIRED if the GPU or sm does not support double precision 
                                       
                                    </li>
                                    <li>CURAND_STATUS_OUT_OF_RANGE if lambda is non-positive or greater than 400,000 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">n</tt> unsigned int results into device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and must be large enough to hold all the results. Launches are done
                                 with the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 32-bit unsigned int point values with Poisson distribution, with lambda <tt class="ph tt code">lambda</tt>.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g8a04d1c44aad303089f056dd085d9b12" id="group__HOST_1g8a04d1c44aad303089f056dd085d9b12" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateSeeds (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Setup starting states. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to update</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the seeds were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Generate the starting state of the generator. This function is automatically called by generation functions such as <a class="xref" href="group__HOST.html#group__HOST_1gf18b3cbdf0b7d9e2335bada92610adac" title="Generate 32-bit pseudo or quasirandom numbers." shape="rect">curandGenerate()</a> and <a class="xref" href="group__HOST.html#group__HOST_1g5df92a7293dc6b2e61ea481a2069ebc2" title="Generate uniformly distributed floats." shape="rect">curandGenerateUniform()</a>. It can be called manually for performance testing reasons to separate timings for starting state generation and random number
                                 generation.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g5df92a7293dc6b2e61ea481a2069ebc2" id="group__HOST_1g5df92a7293dc6b2e61ea481a2069ebc2" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateUniform (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, float*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate uniformly distributed floats. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">num</span></tt></dt>
                                 <dd>- Number of floats to generate</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">num</tt> float results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 32-bit floating point values between <tt class="ph tt code">0.0f</tt> and <tt class="ph tt code">1.0f</tt>, excluding <tt class="ph tt code">0.0f</tt> and including <tt class="ph tt code">1.0f</tt>.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gbb08f0268f05c9d87eac2b4a2cf7fc24" id="group__HOST_1gbb08f0268f05c9d87eac2b4a2cf7fc24" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGenerateUniformDouble (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, double*<span>&nbsp;</span><span class="keyword keyword apiItemName">outputPtr</span>, size_t<span>&nbsp;</span><span class="keyword keyword apiItemName">num</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Generate uniformly distributed doubles. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to use </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">outputPtr</span></tt></dt>
                                 <dd>- Pointer to device memory to store CUDA-generated results, or Pointer to host memory to store CPU-generated results </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">num</span></tt></dt>
                                 <dd>- Number of doubles to generate</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_PREEXISTING_FAILURE if there was an existing error from a previous kernel launch 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LAUNCH_FAILURE if the kernel launch failed for any reason 
                                       
                                    </li>
                                    <li>CURAND_STATUS_LENGTH_NOT_MULTIPLE if the number of output samples is not a multiple of the quasirandom dimension 
                                       
                                    </li>
                                    <li>CURAND_STATUS_DOUBLE_PRECISION_REQUIRED if the GPU does not support double precision 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the results were generated successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Use <tt class="ph tt code">generator</tt> to generate <tt class="ph tt code">num</tt> double results into the device memory at <tt class="ph tt code">outputPtr</tt>. The device memory must have been previously allocated and be large enough to hold all the results. Launches are done with
                                 the stream set using <a class="xref" href="group__HOST.html#group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" title="Set the current stream for CURAND kernel launches." shape="rect">curandSetStream()</a>, or the null stream if no stream has been set.
                              </p>
                              <p class="p">Results are 64-bit double precision floating point values between <tt class="ph tt code">0.0</tt> and <tt class="ph tt code">1.0</tt>, excluding <tt class="ph tt code">0.0</tt> and including <tt class="ph tt code">1.0</tt>.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1g36fcf5198a04ab9621bcdaede091385b" id="group__HOST_1g36fcf5198a04ab9621bcdaede091385b" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGetDirectionVectors32 (  curandDirectionVectors32_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">vectors</span>, curandDirectionVectorSet_t<span>&nbsp;</span><span class="keyword keyword apiItemName">set</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Get direction vectors for 32-bit quasirandom number generation. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">vectors</span></tt></dt>
                                 <dd>- Address of pointer in which to return direction vectors </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">set</span></tt></dt>
                                 <dd>- Which set of direction vectors to use</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_OUT_OF_RANGE if the choice of set is invalid 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the pointer was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Get a pointer to an array of direction vectors that can be used for quasirandom number generation. The resulting pointer will
                                 reference an array of direction vectors in host memory.
                              </p>
                              <p class="p">The array contains vectors for many dimensions. Each dimension has 32 vectors. Each individual vector is an unsigned int.</p>
                              <p class="p">Legal values for <tt class="ph tt code">set</tt> are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p">CURAND_DIRECTION_VECTORS_32_JOEKUO6 (20,000 dimensions)</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6 (20,000 dimensions)</p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gf13191d9e79c73f77d87bb3462011cf1" id="group__HOST_1gf13191d9e79c73f77d87bb3462011cf1" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGetDirectionVectors64 (  curandDirectionVectors64_t*<span>&nbsp;</span><span class="keyword keyword apiItemName">vectors</span>, curandDirectionVectorSet_t<span>&nbsp;</span><span class="keyword keyword apiItemName">set</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Get direction vectors for 64-bit quasirandom number generation. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">vectors</span></tt></dt>
                                 <dd>- Address of pointer in which to return direction vectors </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">set</span></tt></dt>
                                 <dd>- Which set of direction vectors to use</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_OUT_OF_RANGE if the choice of set is invalid 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if the pointer was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Get a pointer to an array of direction vectors that can be used for quasirandom number generation. The resulting pointer will
                                 reference an array of direction vectors in host memory.
                              </p>
                              <p class="p">The array contains vectors for many dimensions. Each dimension has 64 vectors. Each individual vector is an unsigned long
                                 long.
                              </p>
                              <p class="p">Legal values for <tt class="ph tt code">set</tt> are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p">CURAND_DIRECTION_VECTORS_64_JOEKUO6 (20,000 dimensions)</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6 (20,000 dimensions)</p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gc461ed26556febb8e6a401b608089b77" id="group__HOST_1gc461ed26556febb8e6a401b608089b77" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGetScrambleConstants32 (  unsigned int**<span>&nbsp;</span><span class="keyword keyword apiItemName">constants</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Get scramble constants for 32-bit scrambled Sobol' . </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">constants</span></tt></dt>
                                 <dd>- Address of pointer in which to return scramble constants</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_SUCCESS if the pointer was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Get a pointer to an array of scramble constants that can be used for quasirandom number generation. The resulting pointer
                                 will reference an array of unsinged ints in host memory.
                              </p>
                              <p class="p">The array contains constants for many dimensions. Each dimension has a single unsigned int constant.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gcb9e8febfe871bb5c9212d35f93fc9f7" id="group__HOST_1gcb9e8febfe871bb5c9212d35f93fc9f7" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGetScrambleConstants64 (  unsigned long long**<span>&nbsp;</span><span class="keyword keyword apiItemName">constants</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Get scramble constants for 64-bit scrambled Sobol' . </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">constants</span></tt></dt>
                                 <dd>- Address of pointer in which to return scramble constants</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_SUCCESS if the pointer was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Get a pointer to an array of scramble constants that can be used for quasirandom number generation. The resulting pointer
                                 will reference an array of unsinged long longs in host memory.
                              </p>
                              <p class="p">The array contains constants for many dimensions. Each dimension has a single unsigned long long constant.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1ga8887f51c309a3e3f2541399a774f14d" id="group__HOST_1ga8887f51c309a3e3f2541399a774f14d" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandGetVersion (  int*<span>&nbsp;</span><span class="keyword keyword apiItemName">version</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Return the version number of the library. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">version</span></tt></dt>
                                 <dd>- CURAND library version</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_SUCCESS if the version number was successfully returned 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Return in <tt class="ph tt code">*version</tt> the version number of the dynamically linked CURAND library. The format is the same as CUDART_VERSION from the CUDA Runtime.
                                 The only supported configuration is CURAND version equal to CUDA Runtime version.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gb21ba987f85486e552797206451b0939" id="group__HOST_1gb21ba987f85486e552797206451b0939" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandSetGeneratorOffset (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned long long<span>&nbsp;</span><span class="keyword keyword apiItemName">offset</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Set the absolute offset of the pseudo or quasirandom number generator. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to modify </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">offset</span></tt></dt>
                                 <dd>- Absolute offset position</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if generator offset was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Set the absolute offset of the pseudo or quasirandom number generator.</p>
                              <p class="p">All values of offset are valid. The offset position is absolute, not relative to the current position in the sequence.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gf1aa05715d726f94002d03237405fc5d" id="group__HOST_1gf1aa05715d726f94002d03237405fc5d" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandSetGeneratorOrdering (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, curandOrdering_t<span>&nbsp;</span><span class="keyword keyword apiItemName">order</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Set the ordering of results of the pseudo or quasirandom number generator. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to modify </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">order</span></tt></dt>
                                 <dd>- Ordering of results</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_OUT_OF_RANGE if the ordering is not valid 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if generator ordering was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Set the ordering of results of the pseudo or quasirandom number generator.</p>
                              <p class="p">Legal values of <tt class="ph tt code">order</tt> for pseudorandom generators are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p">CURAND_ORDERING_PSEUDO_DEFAULT</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_ORDERING_PSEUDO_BEST</p>
                                    </li>
                                    <li class="li">
                                       <p class="p">CURAND_ORDERING_PSEUDO_SEEDED</p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p">Legal values of <tt class="ph tt code">order</tt> for quasirandom generators are:
                                 <ul class="ul">
                                    <li class="li">
                                       <p class="p">CURAND_ORDERING_QUASI_DEFAULT</p>
                                    </li>
                                 </ul>
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gbcd2982aa3d53571b8ad12d8188b139b" id="group__HOST_1gbcd2982aa3d53571b8ad12d8188b139b" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandSetPseudoRandomGeneratorSeed (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned long long<span>&nbsp;</span><span class="keyword keyword apiItemName">seed</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Set the seed value of the pseudo-random number generator. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to modify </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">seed</span></tt></dt>
                                 <dd>- Seed value</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_TYPE_ERROR if the generator is not a pseudorandom number generator 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if generator seed was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Set the seed value of the pseudorandom number generator. All values of seed are valid. Different seeds will produce different
                                 sequences. Different seeds will often not be statistically correlated with each other, but some pairs of seed values may generate
                                 sequences which are statistically correlated.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gd00db3478a788b5823038481495bb6ab" id="group__HOST_1gd00db3478a788b5823038481495bb6ab" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandSetQuasiRandomGeneratorDimensions (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, unsigned int <span>&nbsp;</span><span class="keyword keyword apiItemName">num_dimensions</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Set the number of dimensions. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to modify </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">num_dimensions</span></tt></dt>
                                 <dd>- Number of dimensions</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_OUT_OF_RANGE if num_dimensions is not valid 
                                       
                                    </li>
                                    <li>CURAND_STATUS_TYPE_ERROR if the generator is not a quasirandom number generator 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if generator ordering was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Set the number of dimensions to be generated by the quasirandom number generator.</p>
                              <p class="p">Legal values for <tt class="ph tt code">num_dimensions</tt> are 1 to 20000.
                              </p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                        <dt class="description"><a name="group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" id="group__HOST_1gc78c8d07c7acea4242e2a62bc41ff1f5" shape="rect">
                              <!-- --></a><span>curandStatus_t CURANDAPI curandSetStream (  curandGenerator_t<span>&nbsp;</span><span class="keyword keyword apiItemName">generator</span>, cudaStream_t<span>&nbsp;</span><span class="keyword keyword apiItemName">stream</span> ) </span></dt>
                        <dd class="description">
                           <div class="section">Set the current stream for CURAND kernel launches. </div>
                           <div class="section">
                              <h6 class="parameter_header">
                                 Parameters
                                 
                              </h6>
                              <dl class="table-display-params">
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">generator</span></tt></dt>
                                 <dd>- Generator to modify </dd>
                                 <dt><tt class="code"><span class="keyword keyword apiItemName">stream</span></tt></dt>
                                 <dd>- Stream to use or NULL for null stream</dd>
                              </dl>
                           </div>
                           <div class="section">
                              <h6 class="return_header">Returns</h6>
                              <p class="return">
                                 <ul>
                                    <li>CURAND_STATUS_NOT_INITIALIZED if the generator was never created 
                                       
                                    </li>
                                    <li>CURAND_STATUS_SUCCESS if stream was set successfully 
                                       
                                    </li>
                                 </ul>
                              </p>
                           </div>
                           <div class="section">
                              <h6 class="description_header">Description</h6>
                              <p>Set the current stream for CURAND kernel launches. All library functions will use this stream until set again.</p>
                              <p class="p"></p>
                              <p class="p"></p>
                           </div>
                        </dd>
                     </dl>
                  </div>
               </div>
               
               <hr id="contents-end"></hr>
               
            </article>
         </div>
      </div>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/formatting/common.min.js"></script>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-write.js"></script>
      <script language="JavaScript" type="text/javascript" charset="utf-8" src="../common/scripts/google-analytics/google-analytics-tracker.js"></script>
      <script type="text/javascript">var switchTo5x=true;</script><script type="text/javascript" src="http://w.sharethis.com/button/buttons.js"></script><script type="text/javascript">stLight.options({publisher: "998dc202-a267-4d8e-bce9-14debadb8d92", doNotHash: false, doNotCopy: false, hashAddressBar: false});</script></body>
</html>