Une série de marathons CUDA : NVIDIA CUDA Superhero relève les plus grands challenges de l’informatique

Le premier concours CUDA va bientôt se dérouler : la première manche commence le 15 septembre 2009 pour s’achever le 25. Les gagnants seront désignés le 30, à l’hôtel Fairmont, dans la patrie de NVIDIA : San Jose, en Californie (États-Unis).

CUDA est la solution proposée par NVIDIA pour le GPGPU, le calcul sur GPU (processeur graphique).

Il s’agit d’un marathon : vous avez assez peu de temps pour participer, et le défi à relever est assez immense, à en croire le site (some of computing’s biggest challenges, tel est le but clairement annoncé).

Le sujet est, à l’heure actuelle, bien entendu, inconnu, et sera révélé le jour J. 5 gagnants se partageront la somme de 5000$. Le concours est ouvert à tous les développeurs, et se déroulera en trois manches successives.

L’objectif de ce concours est clairement annoncé par NVIDIA :

We can educate over 200,000 programmers on the advantages parallel programming offers and fan the flames of the GPU Computing revolution.

L’organisation du concours est remise à TopCoder, un site de concours.

Plus d’infos ? Réactions ? Le forum !

OptiX, ou le ray tracing sur GPU

NVIDIA prévoit depuis un certain temps un système de ray tracing sur GPU : OptiX. Des démonstrations d’utilisation de ce moteur sont désormais disponibles sur le site de NVIDIA : NVIDIA® OptiX™ ray tracing engine examples.

Une version beta, privée, de ce moteur est aussi disponible. Vous pouvez vous inscrire sur la même page. Ce moteur, pour le moment, se limite aux GPU à base de NVIDIA Quadro FX, à condition que les pilotes R190 (ou plus récents) soient installés.

Le moteur OptiX se base entièrement sur la solution de GPGPU CUDA, ce qui lui permet de profiter des accélérations proposées sur certains modèles (les 3800, 4800 et 5800 des NVIDIA Quadro FX, par exemple) pour encore accélérer le rendu.

Qu’est-ce qu’un ray tracer ?

Le site web d’OptiX

Réagir !

Compilateur Fortran pour NVIDIA CUDA

On l’attendait depuis un petit bout de temps : NVIDIA envisage de sortir un compilateur Fortran pour CUDA, en partenariat avec PGI, vers novembre 2009. Jusqu’à maintenant, seul le C était supporté, avec quelques extensions du C++ (comme les templates), mais sans plus.

Cela répond à la demande du secteur professionnel : le Fortran est plus répandu que le C dans les laboratoires, malgré son grand âge : il est apparu en 1957, son développement a commencé en 1953. Il est depuis maintenu, de nouvelles spécifications sortant de temps en temps. Les principales sont F77 et F90, précédées par FII (58), FIII (58), FIV (61) et F66. Il évolue encore : F95, F03 et même F08.

La majorité des librairies de calcul sont écrites en Fortran : par exemple, BLAS et LAPACK, qui servent au tests de supercalculateurs, pour déterminer leur puissance en GFlops. Ces librairies ont été portées vers le C, mais elles étaient prévues, à l’origine, pour le Fortran.

Plus d’informations sur le site (en anglais) de Portland Group : PGI CUDA Fortran Compiler. Ainsi que dans l’annonce officielle.

Réjouissez-vous, amateurs de Fortran : bientôt, vous pourrez profiter des GPU pour vos calculs !

Mise à jour de la FAQ Qt !

Peut-être l’avez-vous remarqué, la FAQ Qt arbore maintenant, à toutes les questions, un symbole [Mise à jour]. En effet, ces derniers jours, toute l’équipe Qt s’est démenée pour corriger les fautes d’orthographe, de typographie…, pour utiliser la nouvelle coloration syntaxique des mots-clés et classes de Qt, pour uniformiser la présentation…

Une seule nouvelle réponse a été apportée. La retrouverez-vous ? De là à savoir ce qu’elle annonce… Vous le saurez bientôt !

Si vous trouvez encore une erreur ou l’autre dans la FAQ, n’hésitez pas à nous la signaler par le forum !

La FAQ Qt
Le forum Qt

Un guide des meilleures pratiques

nVidia vient de dévoiler un guide des meilleures pratiques pour l’écriture de code C pour CUDA. Il veut aider les développeurs à mieux écrire leurs applications pour mieux profiter de la puissance que CUDA peut leur apporter.

Il sera inclus dans CUDA 2.3, prévu pour ce trimestre, mais il est d’ores et déjà disponible pour tous, parce qu’il a été jugé très utile à tous les développeurs pour CUDA, pas forcément des gurus : il est prévu pour tous ceux qui connaissent déjà un peu l’outil.

CUDA 2.3 est parmi nous !

Ce 21 juillet est sortie la version 2.3 de CUDA. Quelques nouveautés sont au menu de cette version, dont voici des extraits choisis.

Les pilotes 190.38 (Windows 32 et 64 bits), 190.18 (Linux 32 et 64 bits), 2.3.1 (Mac OS X et GT200) et 2.3.0 (Mac OS X) contiennent les pilotes pour cette nouvelle version de CUDA.

  • CuFFT a subi une séance d’optimisation, et sur du matériel compatible, peut effectuer des calculs en double précision.
  • Le débogueur est inclus dans le Toolkit, et est compatible avec toutes les distributions Linux.
  • Auparavant, des GPU en SLI étaient vus comme un seul et unique GPU : désormais, chaque GPU peut être commandé séparément, qu’il soit ou non dans un groupe SLI.
  • La cross-compilation devient possible : les toolkits 64 bits peuvent être utilisés pour compiler des applications 32 bits, uniquement sous Linux.
  • De nouveaux exemples sont apportés, pour mieux utiliser la puissance de CUDA.

Vous pouvez télécharger cette nouvelle version sur le site officiel de nVidia.

Cet article se base uniquement sur le communiqué officiel : CUDA Toolkit and SDK 2.3 .

LAPACK et CUDA : CULA

EM Photonics propose désormais, en version beta, un port de la librairie Fortran LAPACK (Linear Algebra Package, paquet pour l’algèbre linéaire), très utilisée dans le monde laborantin. Cette librairie contient BLAS, dont une implémentation orientée CUDA est d’ores et déjà disponible dans le runtime.

Cette version beta est gratuite, mais ne propose des algorithmes que pour des calculs réels de simple précision. La version finale proposera aussi les versions complexes de ces algorithmes, tandis que la double précision sera payante.

Comme beaucoup de librairies portées sur GPU, celle-ci promet de belles performances, autant en simple qu’en double précision : jusqu’à 120x plus rapide, sur certains types de calculs, que l’implémentation de référence ! En moyenne, 95x.
CULA vs Netlib Performance

Comme d’autres librairies pour CUDA, CULA propose de cacher entièrement la partie GPU, en exposant une simple API, peu différente de ce qu’on peut trouver pour du calcul sur CPU.

La librairie sera disponible en deux versions : une gratuite, la Basic, sans double précision mais redistribuable ; une payante (395$ annoncés), avec double précision mais seulement pour usage interne. La première ne supporte que six fonctions de LAPACK, la seconde une quinzaine, et ce chiffre devrait augmenter. Le code source n’est jamais disponible. Au niveau du support, cela varie du forum (Basic, gratuit), aux tickets en ligne (Premium, 395$), et même au téléphone et à l’email (em>Commercial, en volume).