Simple CUBLAS Exemple de Multiplication de Matrice?

Je suis à la recherche d'un très bare bones exemple de multiplication de matrice pour CUBLAS qui peuvent se multiplier M fois N et à placer les résultats dans P pour le code suivant, en utilisant la haute performance des opérations du processeur graphique:

float M[500][500], N[500][500], P[500][500];
for(int i = 0; i < Width; i++){
    for(int j = 0; j < Width; j++)
    {
        M[i][j] = 500;
        N[i][j] = 500;
        P[i][j] = 0;
    }
}

Jusqu'à présent, la plupart de code, je suis la recherche pour n'importe quel type de multiplication de matrice à l'aide de CUBLAS (apparemment?) trop compliqué.

Je tente de conception de base de laboratoire où les élèves peuvent comparer les performances de multiplication de matrice sur le GPU vs multiplication de matrice sur le CPU, sans doute avec l'augmentation de la performance sur le GPU.

Considérez-vous le simpleCublas exemple dans le CUDA SDK pour être "trop compliqué"?
Oui. Je veux dire, si c'est aussi simple que cela, je suppose que nous venons de faire face avec elle. J'espérais juste, il y aurait une sorte de code avec une évidente CPU équivalent tel que nous pourrions le temps et de comparer les résultats.
Je suis la grande région de toronto pour 500 de Données au niveau des Structures de classe. Nous sommes donc déjà le pompage si plein de détails pour la programmation des différentes essences d'arbres, des tas, et d'autres structures de données ainsi que C++ et de l'expérimentation des conventions qui leur permettre d'apprendre que de nombreux détails syntaxiques pour CUBLAS serait vraiment hors de la portée des informations pertinentes pour la classe.
CUBLAS algèbre linéaire les appels eux-mêmes de suivre la même syntaxe/API comme le standard BLAS, ce qui est absolument le defacto algèbre linéaire de l'API et de la bibliothèque et a été depuis les années 1980 quand il a été écrit. L'utilisation du GPU implique l'utilisation d'un système avec une mémoire non uniforme de l'espace, et donc qu'il encourt en certains autres API généraux. Donc, si vous considérez être au-delà de la limite supérieure de ce que vous essayez d'enseigner, alors je pense que vous êtes hors de la chance.
Ok. Merci pour l'info de base. Je vais continuer à regarder autour. J'ai peut-être besoin de poser une question plus générale sur. Tout ce que je besoin est juste un exemple, simple possible, ce que je peux montrer le GPU supérieure de la CPU sur tout type de algorithmiques de la tâche, à l'aide de CUDA.

OriginalL'auteur Chris Redford | 2011-10-03