 |
|
 |
Blog GPU
|
|
jeudi, 14 août 2008 |
|
I am at the Siggraph OpenGL 3.0 right now and NVIDIA just gives us the link to their first driver supporting OpenGL 3.0 (with some limitations yet).
The driver can be downloaded here :
http://developer.nvidia.com/object/opengl_3_driver.html
I will do a complete post on OpenGL 3.0 in a few days, but as you may know it is not the OpenGL 3.0 we were waiting for, since the complete rebuild of the API have not been done (the main idea of Long Peak). But it don't seems so bad that we could have been afraid of, a deprecation and profiles mechanism have been introduced and everybody here seems to be confident on its usage and capacity to enhance OpenGL evolution speed.
ATI is also here, and they announced their GL3.0 drivers for Q1 2009... Hum I don't know why I doubt we will get full functional GL3.0 support for them at this date, even if it is already late compared to NVIDIA.
Write Comment (0 Comments) |
|
|
mardi, 29 juillet 2008 |
|
We have been without news of OpenGL 3.0 for nearly 9 months now, a specification was promised for September 2007 at Siggraph last year and then no news after an ARB member reported that the spec was not ready since there was some unresolved issues they had to address. This situation started to becomes really worrying and a lot of speculations have been made on this delay (see opengl.org forum). The most likely thing is that there have been some disagreements inside ARB members that delayed the spec release.
But recently we had two comforting news tending to prove that OpenGL 3.0 is not dead. The first thing is the creation of the OpenGL 3.0 website with announcements for the Siggraph OpenGL BOF :
- "OpenGL 3.0 Specification Overview"
- "OpenGL hardware and driver plans - AMD, Intel, NVIDIA"
- "Developer's perspective on OpenGL 3.0 "
The second think is a leeked picture of an NVidia presentation slide about their future drivers release (codename Big Bang 2, see the news here) where can distinguiche a reference to OpenGL 3.0 support for September. This tend to prove that the specification is now almost done and the IHV are already working on implementation.
I will be at Siggraph this year and I will be at the OpenGL BOF, I hope I will be able to the the final spec here !
Write Comment (3 Comments) |
|
|
jeudi, 29 mai 2008 |
|
There is a very interesting article on G80/G92 hardware architecture just published by NVIDIA guys (hardware architects) in the March/April edition of IEEE Micro:
NVIDIA Tesla: A Unified Graphics and Computing Architecture
Erik Lindholm, NVIDIA
John Nickolls, NVIDIA
Stuart Oberman, NVIDIA
John Montrym, NVIDIA
The full article can be downloaded here: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=4523358
Most of the informations can be found or deduced from the CUDA manual but there is also few details about hardware model in this article that was not given before as directly by NVIDIA. Especially, there is mention of Fragments grouped into 2x2 to be scheduled into Warps, a thing we deduced with our G80 hardware analysis (http://www.icare3d.org/GPU/CN08).There is also the firstpicture of the G80 die publicly avalable (hum ok, not very clear and in grayscale) !
Write Comment (1 Comments) |
|
|
jeudi, 24 avril 2008 |
|
The the French national High-Performance Computing organization (GENCI) composed among others by the French Atomic Energy Authority (CEA) just order to Bull one of the first supercomputer (a large-scale PC cluster) using an hybrid architecture exploiting GPUs as high performance computational resource. This cluster will be part of CCRT (the Center for Research and Technology computing) and installed in the the French Atomic Energy Authority's Directorate of Military Affairs center (CEA/DAM) of Bruyères le Châtel.
This cluster will use 48 NVidia Tesla GPU modules that are very likely to be based on the next NVIDIA processor generation, the GT200, especially because this generation will support double precision (64 bits floating points) in hardware (but the question is still the cost of this). Each GPU module is said to be composed of 512 cores that let supposed that they will be composed of two GT200 GPUs providing 256 Stream Processors each. Since I already heard rumors about a 240 Stream Processors configuration for the GT200, it is likely to be composed of 16 Multi Processors of 16 Stream Processors each. This would allow a GTX version composed of 15 MP and an ultra version composed of 16MP.
I know quite well the CEA/DAM center since I did an internship here a few years ago, and I know a few guys here who I am sure will be very happy with this new very cool toy ! ;-D
Sources:
- http://www.pcinpact.com/actu/news/43165-premier-supercalculateur-GPU-France-Tesla.htm
- http://www.wcm.bull.com/internet/pr/rend.jsp?DocId=350335&lang=fr
Write Comment (0 Comments) |
|
|
jeudi, 17 avril 2008 |
 NVIDIA just published a Beta version of CUDA 2.0 with associated SDK. Among other things, it brings Windows Vista support. Linux support should follow soon. The really good new for graphics programmers is that 3D texture access is now supported within the API :-D
Write Comment (0 Comments) |
|
|
lundi, 14 avril 2008 |
|
Nvidia has released a few days ago an online version of GPU Gems: Programming Techniques, Tips, and Tricks for Real-Time Graphics, the first tome of what I consider as one of the best GPU book series.
GPU Gems is a compilation of articles covering practical
real-time graphics techniques arising from the research and practice of
cutting-edge developers. It focuses on the programmable graphics
pipeline available in today's graphics processing units (GPUs) and
highlights quick and dirty tricks used by leading developers, as well
as fundamental, performance-conscious techniques for creating advanced
visual effects. The contributors and editors, collectively, bring
countless years of experience to enlighten and propel the reader into
the fascinating world of programmable real-time graphics.
The book can be read here: http://developer.nvidia.com/gpugems.
Write Comment (0 Comments) |
|
|
vendredi, 07 mars 2008 |
|
For today GPU generation, we know a lot more about the hardware
mechanism than for previous GPU generation, in particular thanks to the
window open on this hardware by Cuda. But many hardware details are
still hidden to the programmer, in particular mechanisms used for
primitives rasterisation and fragments shading. As understanding how
fragments are scheduled among the G80 processing units is a critical
points for the research we do with Fabrice Neyret as part of my PhD, I
wrote a small program allowing to investigate this point.
We also wrote a document that presents our motivations for this work,
the experiments we made yet and the results and answers we get: http://www.icare3d.org/GPU/CN08
We hope this document will give you useful informations. We don't
want it to be closed and we want to make it evolve through new
experiments and also thanks to exterior comments you can let at the
bottom of this page.
Write Comment (0 Comments) |
|
|
vendredi, 07 mars 2008 |
---=== Understanding G80 behavior and performances ===---
Cyril Crassin, Fabrice Neyret LJK-INRIA, Grenoble, France
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it
http://www-evasion.imag.fr/GPU/CN08
This is an evolving document (corrections, additions): please link it, but don't copy it !
This is also an open document and we hope to engage discussions on the forum here.
version: March, 8 2008
Write Comment (1 Comments) |
|
Read more...
|
|
|
mercredi, 27 février 2008 |
 After having released 2D hardware registers informations for their R5xx and R6xx GPUs a few months ago, AMD/ATI has just published the first bits of open-source 3D programming documentation for their R5xx GPUs (Radeon HD X1000 class cards). Even if R5xx are pretty old now, AMD plans to released 3D specifications for their R6xx (Radeon HD X2000 class cards) last architecture (supporting SM 4.0 and featuring unified shader architecture like the G80) very soon. This release is part of a large AMD plans to open up their whole hardware allowing the development of an open source driver fully supporting the last ATI chips (more infos here). As ATI have never been able to develop correct OpenGL support (nor linux drivers), it sounds for me also like a very good news for OpenGL support on ATI hardware. Who know maybe will we get OpenGL 3.0 support on ATI before on NVidia hardware... Hum, sounds like science fiction !
As for Intel's documentations published a few weeks ago (see here ), these documentations gives very interesting details on the hardware architecture but this time for a "true" high performance 3D architecture. Among the areas covered in this guide are the general command processor,
vertex shaders and fragment shaders, Hyper-Z, and the various 3D registers.
In addition to these specifications, AMD should release soon the source of their new proprietary OpenGL implementation as well as their "TCore" tool, a kind of GPU emulator used internally to test software code before chips availability.
Write Comment (0 Comments) |
|
|
lundi, 04 février 2008 |
 Intel just released publicly the full technical informations and hardware specifications of their unified Shader Model 4 class i965 and G35 chipsets and graphics processor. These specifications concern all the GPU parts (2D, 3D and video encoding and decoding) and will allow third party open source drivers development.
Among other things, it includes very detailed and interesting informations on graphics pipeline shaders hardware implementation, like hardware states, internal formats, rasterisation policies and threads batching. Even if Intel don't provide the highest performance hardware, these specification are very interesting and gives a good idea on how this kind of hardware can work internally.
Write Comment (1 Comments) |
|
|
lundi, 03 décembre 2007 |
 Wladimir Jasper van der Laan released a few week ago a disassembler for CUDA G80/G90 CUBIN (CUDA true hardware binary NVidia never described) and today he just released a first version of an assembler for this format. With these two tools, we now have an entire toolchain allowing very interesting optimization on the code produced by CUDA.
Write Comment (0 Comments) |
|
|
mercredi, 07 novembre 2007 |
 Un an après la sortie du G80, NVidia viens enfin de publier une première Beta de son SDK Cg 2.0 apportant le support des Shaders Model 4.0. Un peu tard maintenant que je suis passé à GLSL... En plus, la version du compilateur ne semble même pas plus récente que celle de celui qui est inclus dans le driver pour compiler le GLSL (2.0.0.8 contre 2.0.1.8).
Le SDK peut tout de même être téléchargé ici.
Write Comment (0 Comments) |
|
|
mercredi, 07 novembre 2007 |
 Un étudiant néerlandais (Wladimir Jasper van der Laan) c'est amusé à écrire un désasembleur permettant de récupérer l'assembleur bas niveau utilisé directement par le G80 à partir d'un fichier binaire .cubin de Cuda. Au contraire de l'assembleur PTX que Cuda permet de générer, cet assembleur expose réellement l'ISA (Instruction Set Architecture) du matériel. Il est ainsi possible de connaitre exactement les instructions exécutées par le GPU et cela permet en plus de se faire une idée très précise de son fonctionnement. Le petit gars travaille maintenant sur l'assembleur correspondant ce qui permettra d'écrire directement des programmes en assembleur G80.
L'outils peut être téléchargé ici .
Write Comment (0 Comments) |
|
|
dimanche, 28 octobre 2007 |

Crysis c'est LE jeu attendu par tous les fans de FPS et possesseurs d'une grosse GeForce 8800 et c'est finalement ce matin qu'a été rendue publique la première démo du mode solo de Crysis. En tant que membre de ces deux catégories de personnes je me suis donc logiquement précipité sur cette démo et sans surprise c'est plutôt joli coté graphique (Quoique après tant d'attente on ne puisse s'empêcher de se dire qu'on s'attendait à mieux !). Bon les effets naturels style nuages, eau, rayons du soleil etc. sont pas mal et la physique à l'air de plutôt bien marcher.
Mais ce que je trouve vraiment rigolo avec Crysis, c'est l'énorme Buzz qui a été entretenu depuis 2 ans autour de son utilisation de DirectX 10 et donc de la nécessité de le faire tourner sous Windows Vista (seul système d'exploitation supportant l'API graphique) pour pouvoir profiter de tous les effets visuels "next-gen". De nombreuses vidéo et prises d'écran comparatives ont été publiées (on en trouve ici par exemple) montrant des différences de rendu très importantes entre les deux modes, différences ne pouvant se justifier nullement par les nouvelles possibilités offertes par l'API DirectX 10 (et donc les cartes de la génération du G80), tous ces effets pouvant être créés sous DirectX 9 (et OpenGL 2.0 bien sur :) et une carte supportant les shaders model 3.0. Tous les observateurs avisés se sont donc rendu compte qu'il s'agissait très clairement d'un bridage du moteur de rendu en mode DirectX 9, dont le seul but est de faire vendre à la fois des cartes graphiques compatibles DirectX 10, et bien sur un système d'exploitation qui sans cela manque très cruellement d'arguments de vente. Nous avons aujourd'hui avec cette démo la confirmation de ce bridage.
Write Comment (6 Comments) |
|
Read more...
|
|
|
samedi, 25 août 2007 |
 Il y a presque un an maintenant, le groupe Khronos auquel venait d'être transféré le contrôle d'OpenGL dévoilait l'avenir vers lequel s'orientait notre API préférée (enfin la mienne en tout cas ;-): Noms de code "Longs Peak" et "Mt. Evans", deux révisions prévues pour 2007 et qui constituent beaucoup plus qu'une simple évolution de l'API. C'est finalement il y a quelques semaines, au SIGGRAPH 2007, qu'a été officiellement présenté et baptisé "Longs Peak": OpenGL 3.0.
Je vais, dans cet article, essayer de présenter rapidement les changements que vont apporter ces nouvelles versions. Enfilez donc vos baudriers et chaussons d'escalade, ca grimpe ;-)
Write Comment (12 Comments) |
|
Read more...
|
|
|
lundi, 25 juin 2007 |
 Due to the lack of update of the Cg toolkits for G80 I have had to work with GLSL for a couple of months now. One of the main problem I had with GLSL was the lack of control on the compilation process (the parameters usually passed to the Cg compiler). Happily I have found a series of pragma command the NVidia GLSL compiler (and only the NVidia one) can interpret and use as compilation options. I think somebodies can be interested in it so here are the commands (thanks to Gernot Ziegler for the information) :
#pragma optionNV(fastmath on)
#pragma optionNV(fastprecision on)
#pragma optionNV(ifcvt none)
#pragma optionNV(inline all)
#pragma optionNV(strict on)
#pragma optionNV(unroll all)
There is also some environment variables that can be defined (options typically controlled globally with NVEmulate):
__GL_WriteProgramObjectAssembly
__GL_WriteProgramObjectSource
__GL_WriteInfoLog
__GL_ShaderPortabilityWarnings
Write Comment (0 Comments) |
|
|
jeudi, 15 mars 2007 |
 NVidia à publié il y a quelques jours la version 10 de son SDK et propose ainsi d'intéressants exemples d'applications OpenGL et DirectX 10 exploitant les nouvelles possibilités du G80. Le SDK DirectX 10 nécessite bien entendue Windows Vista ainsi que le dernier SDK DirectX Microsoft.
Il est à noter qu'il comprend une version beta du toolkit Cg 2.0 qui apporte le support des nouvelles fonctionnalités du G80.
Ce SDK peut être téléchargé ici.
Sinon toujours concernant NVidia, des premières versions BETA des Forceware release 100 pour Windows XP commencent à être disponibles sur internet. Par contre il semble qu'il s'agisse uniquement de versions modifiées pour XP des versions équivalentes sous Vista. Ils souffrent ainsi des mêmes limitations et sont encore largement moins matures que les releases 97.92 par exemple. Ils apportent par contre le support de fonctionnalités OpenGL non présentes dans les releases 95. J'ai pu par exemple tester le support de l'attribut gl_InstanceID (lié à draw_instanced) dans le vertex shader. Théoriquement ils doivent également permettre le binding simultané de multiples couches d'une texture 3D ou layered via MRT (mais je n'ai pas testé).
Forcewares 100.95 sur Guru3D.
Les versions finales se font tout de même décidément bien attendre en ce moment du coté de NVidia...
MISE A JOUR: (29/03/07)
Une version plus récente des Forcewares 100 pour XP (101.02) est disponible depuis quelques jours. Je les utilises, ils semblent plus stables et d'après mes essais, offrent maintenant des performances supérieurs aux releases 95 dans pas mal d'applications.
Forcewares 101.02 sur Guru3D
MISE A JOUR 2: (16/04/07)
Write Comment (0 Comments) |
|
|
mardi, 23 janvier 2007 |

Une petite analyse écrite il y a quelques mois maintenant sur l'évolution de l'informatique grand public vers des architectures de plus en plus dédiées eu calcul intensif sur les base des architecture de traitement de flux des GPU.
A l'époque, ATI semblait le plus en avance avec le futur R600, le CTM et le rachat par AMD, depuis il y a eu le G80 et CUDA. Les enjeux sont dans tous les cas de plus en plus d'actualité et le GPGPU devenu Stream Computing sort de plus en plus des laboratoires et sera sans contexte la technologie qui va faire parler d'elle dans les mois qui viennent.
J'ai pensé à ressortir ce petit article écrit à l'issue de mon stage de fin d'études pendant lequel j'ai travaillé sur ces problématiques car récemment il y a eu un article de David Strom dans Information Week sur les technologies majeures de 2007 faisant mention du GPGPU ( http://www.informationweek.com/). Aujourd'hui le fondateur de PeakStream, une start-up proposant des solution logicielles pour le Stream Computing a également publié un article intéressant: http://www.hpcwire.com/hpc/1209133.html.
Write Comment (2 Comments) |
|
Read more...
|
|
|
mercredi, 03 janvier 2007 |
Two months ago was introduced the G80 and the set of OpenGL extensions
allowing access to all of its new functionalities (cf. my posts on G80 architecture and OpenGL extensions, it is in French but can be translated with the British flag button on top left. You can also refer to http://www.g-truc.net/ that also provides a good analysis on G80 OpenGL extensions in french). Among them are GPU Shaders model 4 and the new Geometry Shader they introduce.
For the first time, on-GPU dynamic generation of geometric primitives becomes possible.
But till now, very few examples and tutorials on theses functionalities
are available. The only tutorial I have been able to find is the one
from Xie Yongming, it's a good start but unfortunately its source code is unavailable.
This simple example will show how to use GLSL Geometry Shaders (EXT_geometry_shader4 and EXT_gpu_shader4) and the
new integer texture formats (EXT_texture_integer) extensions to implement the Marching Cubes algorithm
entirely on the GPU. The implementation I will present is probably not
the most efficient but I think it is a good example, showing the usage of the new shader stage, new texture formats and binary operations within shader.
Write Comment (34 Comments) |
|
Read more...
|
|
|
vendredi, 10 novembre 2006 |
Alors que NVidia ne fournit pas encore
de pilote pour DirectX 10 (donc windows Vista, seul système à supporter cette
version de DirectX qui introduit l’ensemble des nouvelles fonctionnalités), il
propose déjà une série d’extensions OpenGL exposant toutes les nouvelles
capacités du GPU.
Je
vais décrire rapidement ce qui me semble intéressant dans ce que j’ai lu de ces
extensions dans les specs de NVidia (http://developer.nvidia.com/ object/nvidia_opengl_specs.html ).
Write Comment (2 Comments) |
|
Read more...
|
|
|
vendredi, 10 novembre 2006 |
Mercredi a été lancé le G80 ou GeForce
8800, nouveau GPU de chez NVidia. Il s’agit du premier GPU supportant les
nouvelles fonctionnalités de DirectX 10 Il est doté pour cela d’une
architecture totalement nouvelle sur laquelle très peu d’informations n’avaient
filtré jusqu’a sa sortie officielle.
Je vais faire une petite review de ce GPU en commençant par décrire
rapidement l’architecture du GPU. Ensuite je présenterai ce qui me semble
intéressant et ce que j’ai pour l’instant découvert dans les nouvelles
extensions OpenGL que NVidia propose avec.
Write Comment (1 Comments) |
|
Read more...
|
|
|
|
|