Archives

Posts from Jérôme Muffat-Méridol (Intel) RSS

Jérôme Muffat-Méridol (Intel)

Working in the Visual Computing Software Division as an Application Engineer, my focus is on working with developers, mainly game developers, to make their tech and ours work together well. I really enjoy photography, coding, cubic rubiky things, user interfaces, disagreeing, playing with ideas and keeping things simple (as much as possible (but not more)). I don't mind being proven wrong, I've been proven so quite a few times, we learn... Go ahead and unleash your comments !

nulstein v2 plog - DX9 performance

By Jérôme Muffat-Méridol (Intel) (21 posts) on December 10, 2010 at 8:28 am
Comments (1)

(note: this is slide 22 of the nulstein plog) The v1 of nulstein was running on DX9 and only rendered a bunch of untextured cubes, it was much simpler than this version, and it is interesting to look at its performance precisely because it is so basic. We can see three types of situations: eight [...]

Continued ›

Category: Game Development, Graphics & Media, Parallel Programming, Uncategorized
Tags:

nulstein v2 plog - rendering overview

By Jérôme Muffat-Méridol (Intel) (21 posts) on November 26, 2010 at 9:24 am
Comments (7)

(note: this is slide 20 of the nulstein plog) Once we have an up to date world, we move on to rendering it. Let's start by looking at how I attacked the problem for DX9, in the previous version of nulstein. In this context, all draw calls, all render state changes, everything needs to be [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - parallel update recap

By Jérôme Muffat-Méridol (Intel) (21 posts) on November 23, 2010 at 8:36 am
Comments (0)

(note: this is slide 19 of the nulstein plog) Long time between the last post and this one, there's been vacation followed by a long trip in the US to meet up with people doing the same kind of job as mine, share experiences, ideas and projects. People have been planting all sorts of clever [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - two-stage update step-by-step

By Jérôme Muffat-Méridol (Intel) (21 posts) on October 11, 2010 at 8:03 am
Comments (0)

(note: this is slide 13-18 of the nulstein plog) Today's post is a bit awkward as the slides below are meant to work as an animated sequence... I'm going back to my sample with thousands of cubes, accompanied by thousands of lights, with a few thousands UFOs thrown in for good measure and we are [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - dealing with dependencies between game objects

By Jérôme Muffat-Méridol (Intel) (21 posts) on October 5, 2010 at 8:39 am
Comments (0)

(note: this is slide 12 of the nulstein plog) Last time, we saw how splitting the update in a Read-Only phase and a Write-Only phase could allow us to update all entities simultaneously without worrying about contention. In the meantime, I've been a little busy and, among other things, I helped my colleague Quentin rehearse [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - two-phase update

By Jérôme Muffat-Méridol (Intel) (21 posts) on September 24, 2010 at 6:00 am
Comments (1)

(note: this is slide 11 of the nulstein plog) The big idea behind the update in nulstein is to split it in two phases, one that is read-only and one that is write-only : Step 1: loop on all entities, in parallel, and let them collect information Step 2: loop on all entities, in parallel, [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - parallelizing at the outer loop

By Jérôme Muffat-Méridol (Intel) (21 posts) on September 20, 2010 at 7:19 am
Comments (2)

(note: this is slide 10 of the nulstein plog) The traditional approach to tuning code is to look for hot spots and squeeze them. It usually turns out to be the inner loop of some iterative process: loops or recursions. Parallelizing code is the contrary: looking for large iterations and breaking them into chunks, at [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - refresher on task scheduling, when the fairest is theft

By Jérôme Muffat-Méridol (Intel) (21 posts) on September 16, 2010 at 11:07 pm
Comments (2)

(note: this is slide 9 of the nulstein plog) Last time, we saw it makes sense for each worker thread to have its own TODO list, so it can pick from and add to it without bothering its neighbours. We also saw that, because we can't tell how long each individual task will take to [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - refresher on task scheduling

By Jérôme Muffat-Méridol (Intel) (21 posts) on September 13, 2010 at 8:13 am
Comments (6)

(note: this is slide 8 of the nulstein plog) At the heart of nulstein in particular and, really, at the heart of any multicore piece of software, is a mechanism to dispatch work. Before we worry about when or how each piece of work can or can't access data, we need to figure out how [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - demoscene roots

By Jérôme Muffat-Méridol (Intel) (21 posts) on September 9, 2010 at 6:24 am
Comments (0)

(note: this is slide 7 of the nulstein plog) After seeing the demo, it is time to start over again, in more details. Let's see how this all started, I believe that beginnings are not just defining moments, they also are milestones in life: a beginning is an impulsion, the transition from potential to action, [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - fully parallel game loop demo

By Jérôme Muffat-Méridol (Intel) (21 posts) on September 6, 2010 at 8:37 am
Comments (1)

(note: this is slide 6 of the nulstein plog) I hear that the last slide was a bit of a cliffhanger, sorry for having kept the wait so long: I was trying to make a video to attach to this page and I just can't seem to get it right (feels a bit like not [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - back to sequential !

By Jérôme Muffat-Méridol (Intel) (21 posts) on August 30, 2010 at 2:03 am
Comments (1)

(note: this is slide 5 of the nulstein plog) In an Agatha Christie novel, this slide would really go at the end of the talk, everything would finally get revealed only in the end, leaving the reader to play detective, picking up clues as the story unfolds... But that's not what I want, this slide [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - divide and surrender

By Jérôme Muffat-Méridol (Intel) (21 posts) on August 27, 2010 at 8:05 am
Comments (0)

(note: this is slide 4 of the nulstein plog) I like calling the time when I started writing games "the good old days", it was in the nineties, DOOM's era, I had quit doing IT development work for hire to join a crazy team, doing creative stuff, pushing machines and people to the limits of [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - parallelism, not quite there yet

By Jérôme Muffat-Méridol (Intel) (21 posts) on August 25, 2010 at 5:23 am
Comments (0)

(note: this is slide 3 of the nulstein plog) Last time, we saw how hardware is now all multicore, today we're looking at the software side of things, parallelism in video-games. The short story is that despite an impressive amount of effort, games currently don't get as much benefit from multicore as other types of [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog - now is multicore

By Jérôme Muffat-Méridol (Intel) (21 posts) on August 23, 2010 at 5:16 am
Comments (4)

(note: this is slide 2 of the nulstein plog) You've been hearing us (at Intel and elsewhere) say "the future is multicore" for a few years already, and what this excerpt from the Steam Hardware Survey tells us is that the present is multicore too. It's always difficult to pick a stat that everybody will [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

nulstein v2 plog- presenting through a blog

By Jérôme Muffat-Méridol (Intel) (21 posts) on August 20, 2010 at 8:22 am
Comments (1)

It was a great pleasure for me to finally present this work at GDC Europe 2010, and given the attendance was phenomenal, with a room too small to seat everybody, it makes sense to make this content available to more people. I was pondering that in Cologne, the last few days while people were coming [...]

Continued ›

Category: Game Development, Parallel Programming
Tags:

GDCeu'10: the question I was never asked about nulstein

By Jérôme Muffat-Méridol (Intel) (21 posts) on August 13, 2010 at 9:15 am
Comments (0)

Long lost feeling of my video game development days... It's friday evening, I'm the last one at the office, putting the endless finishing touches to the presentation I'm doing on tuesday. Code has gone through many checks, and still had missed the usual "if there is a space in the project's path, build breaks". Presentation's [...]

Continued ›

Category: Events, Graphics & Media
Tags: ,

old days, when there was a distinction between code and data

By Jérôme Muffat-Méridol (Intel) (21 posts) on July 27, 2010 at 1:52 pm
Comments (0)

I've been reading quite a few language rants recently, and have been trying to look at why it is I'm (relunctantly) C++ bound. Here is a selection of the links I enjoyed reading: - Linus Torvald explaining why he favours C for kernel coding: http://www.realworldtech.com/beta/forums/index.cfm?action=detail&id=110618&threadid=110549&roomid=2 - a lovely put rant I can relate to very [...]

Continued ›

Category: Software Tools
Tags:

There is no mouse !

By Jérôme Muffat-Méridol (Intel) (21 posts) on July 16, 2010 at 5:34 am
Comments (11)

A few days ago, I started getting really annoyed with scrollbars. Scrollbars are obsolete. Scrollbars must die. I mean, really: you're adding scrollbars out of the habit of putting them in, but what are they good for? I have this big wide screen and like to run my browser maximised. Most websites, like this blog, [...]

Continued ›

Category: Graphics & Media, Mobility
Tags:

Everybody on the development team should be well versed in parallelism

By Jérôme Muffat-Méridol (Intel) (21 posts) on July 13, 2010 at 7:03 am
Comments (1)

Reading issue #21 of our own Software Insight Magazine , I was struck by the sentence in this post's title as, from the standpoint of game development, it sounds extremely true and, at the same time, feels horribly scary (it also says “If zombies attack, what should you do?”... Hell, yes, what should you do? [...]

Continued ›

Category: Graphics & Media, Parallel Programming
Tags: , ,

Advance warning, UFO invasion expected at GDCeu'10

By Jérôme Muffat-Méridol (Intel) (21 posts) on July 7, 2010 at 8:21 am
Comments (0)

Last year, exhilarated by the energy at the Evoke demoparty, I had been putting together a task-scheduler suitable for demoscene intros, managing to fit inside a 16K executable graphics, music and parallelism (which makes me qualify as scener-wanabee, I guess). nulstein, the resulting project, is documented in my "Do-it-yourself Game Task Scheduling" article, with full [...]

Continued ›

Category: Events, Graphics & Media, Software Tools
Tags: , ,