Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I obviously craft/collect examples of V8 going off the rails for these talks just to show that VMs are software and all software has bugs --- and those bugs don't necessarily manifest as crashes and incorrect results - they can lead to worse performance and developers must be ready for this: must be ready to diagnose these issues, report them and work around them.

For a single test case where V8 goes off the rails there are millions of lines of code across the globe which V8 optimizes correctly.

On a funny note: I actually do have a version of this talk where I show GCC going slightly of the rails and producing a code that is 3 times slower than it should be because it hits an (infamous) partial register dependency stall --- see StackOverflow question[1] for the gory details.

> How do I ensure that the VM does not execute my 'dumb but readable' code literally?

Well, as I do say in the talk: reasonable code should be reasonably fast. If it is not the case --- file bugs with VM vendors.

Keeping your code relatively static / monomorphic is the best way to achive performance in any language.

In any case I think it's much much much more important to optimize algorithms not their concrete implementations.

[1] http://stackoverflow.com/questions/26585977/64-bit-code-gene...



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: