2010-01-26 6 views
1

Mon problème est le suivant:binomiale aléatoire Variate Générateur sur CUDA

J'ai besoin de générer beaucoup de nombres aléatoires en parallèle en utilisant Distribution binomiale sur CUDA. Tous les générateurs de nombres aléatoires sur CUDA sont basés sur la distribution uniforme (autant que je sache), ce qui est également utile puisque tous les algorithmes de distribution binomiale doivent utiliser des variables uniformes.

Existe-t-il une bibliothèque ou une implémentation pour la génération de variables aléatoires binomiales sur CUDA? Je vois qu'il y a pour JAVA dans http://acs.lbl.gov/~hoschek/colt/, mais il utilise un algorithme très compliqué à paralléliser. Cependant, étant donné une variable binomiale suivant B (N, p), il existe des algorithmes plus simples avec ordre de complexité O (N), mais cela est mauvais pour moi car N peut être grand (environ 2^32, maximum pour un entier).

J'apprécierais toute aide. Merci beaucoup. Miguel

PS: désolé pour mon mauvais anglais :)

Répondre

0

C'est un problème intéressant, j'attaqueraient le problème en utilisant une solution précédente et de l'adapter à la façon dont fonctionne CUDA ..

CiteSeerX est où vous pouvez obtenir des pdf pour la recherche qui pourrait aider .. http://citeseerx.ist.psu.edu/

Avez-vous regardé MDGPU? Il a été suggéré dans une autre question SO http://www-old.amolf.nl/~vanmeel/mdgpu/licence.html

également NAG ont une bibliothèque qui peut aider: http://www.nag.co.uk/numeric/gpus/