Accéder au contenu principal

GPU Bar Camp

To launch this blog, I will talk about my saturday at La Cantine with a GPU barcamp.

I have seen many interesting and passionate people thanks to the planners : François Lagunas and Eric Mahé.

I have seen some of the presentation after a small intro.

Comprehensive Sensing first, which is a fascinating new way to capturate our world (from classic picture to spectral). More information on

CUDA, the "general" programming language for Nvidia GPU (waiting for OpenCL to have a common language for all hardware). It seems powerfull. However the language is a bit hard due to specifical programming of architecture, optimizations and parallelism.

Like you see in diagram below, the architecture of CUDA is based on multiple grid running one kernel (program). Grids contain blocs which contain thread. One thread apply kernel on one data (for example a float).

Warning : there is only one if else prediction by kernel.

A very interesting note is that code run in a determined time ! We can so create a real time system !
Another note is that approximation disappear since Nvidia G200.

And a presention on a work thesis about real time representation of "Positron emission tomography" (medical imagery) with specific problem of memory optimization (but finally common in programming of parallel architecture.

Waiting to have the presentation online.

Special link for present this day.


Posts les plus consultés de ce blog

Summary of 'Clean Architecture' by Robert C. Martin

Summary of 'Clean Architecture' by Robert C. Martin
Uncle Bob, the well known author of Clean Code, is coming back to us with a new book called Clean Architecture which wants to take a larger view on how to create software.

Even if Clean Code is one of the major book around OOP and code design (mainly by presenting the SOLID principles), I was not totally impressed by the book.

Clean Architecture leaves me with the same feeling, even if it’s pushing the development world to do better, has some good stories and present robust principles to build software.

The book is build around 34 chapters organised in chapters.
Programming paradigm After some introduction, there is an overview of three paradigm of programming:

structured programming which imposes discipline on direct transfer of controlobject oriented programming which imposes discipline on indirect transfer of controlfunctional programming which imposes discipline upon assignment

Uncle Bob tells us that each of these paradi…

Summary of 'Words are windows, Introduction to nonviolent communication' by Marshall Rosenberg

Summary of 'Words are windows, Introduction to nonviolent communication' by Marshall Rosenberg
“Words are windows” is an introduction to non violent communication (abbreviated as NVC). Marshall Rosenberg presents in this book the process that allows us to communicate more serenely with others as well as with ourselves. This mode of communication allows us to become more and more caring, authentic, and empathic with others. It can therefore be used in all interactions of everyday life: as a couple, with our children, at work … NVC is proving to be a very effective way to manage conflicts, and also to better identify our own needs.

At the source of Non Violent Communication NVC has 4 four key components:
Observation – specific facts/data, no evaluation/judgmentFeeling – state how we feel (many failure modes here)Need – the need underlying this feelingRequest – must be specific action to address need
First we observe what is really happening in a given situation. These observatio…

Le développeur incompétent est un mythe

Sous ce titre complètement arbitraire et très clairement provocateur, je vais passer un contre pied aux derniers articles que j'ai lus sur le métier de développeur.
Par exemple : 
Ça tombe bien c'est juste avant la soirée du Paris JUG sur le métier de développeur ! Et comme on se plaint que les présentateurs ne sont pas de vrais (?) développeurs, je vais en profiter pour donner mon avis.

Alors voila, d'après ces articles, un bon développeur connait ses fondamentaux.
Ok soit mais quelle est cette liste de fondamentaux ? 
Chez certains, c'est les maths et l'algorithmie pure, d'autres c'est C++ par coeur et savoir retourner une chaine de caractère en moins de 3 instructions et une seule allocation mémoire, d'autres c'est Java JEE, ses 100 jsr et frameworks in…