After spending time testing my LBM sample on various compilers (and, as an aside, getting the latest Clang to compile it using ClangVSx) I thought I would give the latest Intel offering a crack – C++ Compiler XE 2011.
Their tech has a reputation for superior code generation, at least on home turf. Given Visual Studio 2011 had my test application kicking out 17 frames per second, I thought perhaps Intel might edge that up to 20 or so…?
Turns out, no. It shot up to … 29? It was speeding things up by 12 FPS?! I went and double-checked what I was doing, because I plain didn’t believe it – but no, sure enough – same code, no multi-threading, a single saturated core and somehow over 80% faster than Visual Studio 2011′s best attempt. Even with all four cores at it’s disposal, 2011 had only managed 28 FPS.
Pure witchcraft! But I love it for more than what it does to my shabby loops.
(more…)
Two lauded new enhancements to the Visual Studio 2011 compiler are the auto-magical optimizers – auto-vectorize and auto-parallelize. Intel C++ and GCC have had similar features available for a while, so how does 2011 stack up?
Given my day-to-day version of VS has been 2008 for the last few years, I thought I could see how much the baseline “automatic” performance had improved over two versions by digging up an old performance-hungry, parallel-happy project to put through the motions – A Lattice Boltzmann method (LBM) “wave box” – and then see if it would become magically concurrent by a simple compiler toggle.
The entirely-CPU-bound code pushes hundreds of thousands of particles around, their movements controlled by a velocity field computed from a 3D grid of fluid cells. The nature of the algorithms on either side of the simulation make it a good stress-test for automatic parallelisation tools (originally I used it to try out OpenMP) and general data-transform throughput.
I also took the opportunity to tinker with the Concurrency Visualizer so I could easily trace the impact of any changes made.
(more…)
Author an FBX scene while you debug the rendering engine! Rather surprisingly, VS2011 now has a rudimentary 3D editor built in.

Feature bloat? Useful gizmo? Bit like having a font-glyph editor built into Word?
(more…)
Microsoft released the official beta of their new Visual Studio IDE today. As the one application that I tend to spend more time in than any other, I can’t resist taking a look to see what my future looks like, for better or worse.
A Little Red Tomato In A Sea Of Gray
I can’t work without Visual Assist. Lucky for me, the wonderful folk at Whole Tomato not only crank out the best VS plug-in in the world, they cater to early adopters too.

Hallelujah!
(more…)

Small is beautiful; Micro 4/3 vs DSLR (via snowgoose @ adkforum.com)
For 5 years I was a devoted user of Canon DSLRs. I carefully collected a set of lenses that gave me great versatility at the expense of carrying 3kg of expensive glass while out and about. I fussed over noise, precise white-balance, vibration (mirror-lockup!), sometimes caring more about the sharpness of a given shot than if it was actually worth taking in the first place.
A couple of outings a year. A handful of galleries full of pleasing-enough pictures. A dull ache in my shoulders for a week after each holiday. While planning the much longer (5 month) trip that consumed half of 2011 I began to worry that I would return with a deformed spine if I didn’t downsize my gear.
I decided to buy a Panasonic GF1. And it changed everything.
(more…)