このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
parallel.gpu.RandStream
GPU 上の乱数ストリーム
説明
GPU 上のグローバル乱数ストリームを制御し、GPU 上に複数の独立したストリームを作成するには、parallel.gpu.RandStream
を使用します。GPU 上で乱数を生成する場合、数値は GPU の乱数ストリームから取得されます。このストリームは、CPU 上のクライアント MATLAB® セッションの乱数ストリームとは異なります。
GPU 上で乱数を作成するには、乱数発生器関数 rand
、randi
および randn
を gpuArray
と共に使用します。既定で、これらの関数は GPU のグローバル乱数ストリームから数値を取得します。異なるストリームを使用するには、オブジェクト関数で説明されている構文に従います。GPU の乱数ストリームを使用する場合、結果は gpuArray
として返されます。
作成
単一の parallel.gpu.RandStream
オブジェクトを作成するには、次の構文を使用します。複数の独立したストリームを同時に作成する場合は、関数 parallel.gpu.RandStream.create
を使用します。
説明
入力引数
プロパティ
オブジェクト関数
parallel.gpu.RandStream.create | GPU 上に独立した乱数ストリームを作成する |
parallel.gpu.RandStream.list | GPU の乱数発生器アルゴリズム |
parallel.gpu.RandStream.getGlobalStream | GPU の現在のグローバル乱数ストリーム |
parallel.gpu.RandStream.setGlobalStream | GPU のグローバル乱数ストリームを設定 |
reset (RandStream) | 乱数ストリームのリセット |
既定で、rand
などの乱数発生関数を使用して GPU 上で乱数を作成するときには、乱数は GPU 上のグローバル乱数ストリームから取得されます。異なるストリームを指定するには、parallel.gpu.RandStream
オブジェクトを作成し、それを最初の入力引数として渡します。たとえば、Philox 発生器アルゴリズムを使用して 4 行 1 列の乱数ベクトルを作成します。
s = parallel.gpu.RandStream('Philox'); r = rand(s,4,1);
これらの関数は parallel.gpu.RandStream
オブジェクトを受け入れ、GPU 上で乱数を生成します。
rand | 一様分布の乱数 | サポートされる構文。ここで、 X = rand(s) X = rand(s,n) X = rand(s,sz1,...,szN) X = rand(s,sz) X = rand(s,typename) rand 、randi 、および randn を参照してください。 |
randi | 整数の一様分布の疑似乱数 | |
randn | 正規分布乱数 | |
randperm | 整数のランダム置換 | サポートされる構文。ここで、 p = randperm(s,n) p = randperm(s,n,k) randperm を参照してください。 |
例
バージョン履歴
R2011b で導入