Blogroll Me!

Lives in India/Chennai/Chennai, speaks English.
This is my blogchalk:
India, Chennai, Chennai, English.

A blog on what is happening in the .NET world in India.  

Anand's .NET WebLog

Home Archives Contact

Monday, July 14, 2003 :::
JIT Performance:::  

The Managed Quake seems to have interested a lot of people. David Notario, a member of the JIT team seems to be quite happy with his work.

The original Q2 has optimized x86 assembly rasterizers, these were one of the fastest of their time, and they played with cunning tricks such as explicitely paralellizing x86 and x87 instructions to achieve maximum speed (for example, the division for perspective correction for the next 8 pixel span was performed in parallel with the actual rendering of the current 8 pixel span, ie, the perspective correction was almost 'free'). The C rasterizers that this version uses don't have this property (and today's compilers still don't figure it out). To compare apples to apples vertigo software compiled their native version with the C rasterizers (ie, both versions are slower than the original q2 demo shipped by id). Just for kicks, I compared the managed version with the original assembly optimized version, the original one gave me 92.5 fps, which means our codegen is generating code that is about 70% of the performance of the hand optimized assembly original q2. I personally think this is great (specially considering that our codegen has quite a bit of room to improve).

::: posted by Anand at 12:15 PM

Comments: Post a Comment

Subscribe to Anand's .NET WebLog!

powered by Bloglet

Listed on Blogwise Listed on BlogShares Technorati Profile

Powered by Blogger