4.01.2011

The fastest VM

Oh my fucking god, this article really creeped me out by the fact that such a .NET blackbox compiler could outperform pure C code in terms of writing a virtual machine. I couldn't believe my eyes! But wow, wait - is that really true? Does it really perform all code in realtime or does it optimize it away like a normal smart C/C++ like GCC would do it? To my luck I found another series of comments besided the in the original one. And yes, it isn't even close to what the C code does. I already wondered what this "Emit" command was and how it behaved. But one single comment revealed that this command is part of system to directely executed a special bytecode that'll then get compiled and executed as native assembly. Combined with the .NET compiles probably also smart setup it results in native code and even better, probably a runtime of 0 secs cause it's able to detect statistical depencies and that the used set of VM instructions in always fixed and thus not necessary to execute during runtime.

It really creeped me out, seriously. All the time I read stuff like that, my world crackles a bit and I need to fix with a bunch of facts behind the mirror. If that's what people love about those languages, compilers etc - I don't see much future in terms of knowing what the computer really does. I don't like blackboxes. I can trust technology that simple but efficient by design and doesn't depend on a single monolithic monster but works as good as possible without taking too much complexity. And this VB.NET compiler seems like such a monster to me. Maybe it's just to far away from what I am used to and what I crave to work well. I hope I'll never need to program using .NET or so. Creepy stuff it does, you never really know when and how.

No comments: