1. Welcome Guest! In order to create a new topic or reply to an existing one, you must register first. It is easy and free. Click here to sign up now!.
    Dismiss Notice

Virtual Machines

Discussion in 'Microsoft News' started by NewsBot, Mar 19, 2008.

  1. NewsBot

    NewsBot I Got News

    Joined:
    Feb 8, 2006
    Messages:
    1,813
    Operating System:
    Windows Vista Home Premium
    I have been wondering about the performance characteristics (space, time) of current VM's. That is VM's like CLR, JVM, AVM2, NekoVM, etc.

    The CLR must have an advantage over JVM because it has run-time knowledge of generic types whilst Java generics is erased at compile-time and turned into casts, unless something has changed as of late.

    My qualms with Java was the lack of compile-time generics support, meaning you'd have to generate a List, Dictionary etc. to get optimal performance, but really, since types are the typing is available at compile-time, some of these structures should auto-generated. Maybe they are, today?

    I had a discussion about the topic of VM performance today and got the comment from some colleagues that Java performance sucks. I'm more of the oppinion that Java performance with collections might suck (?), and it might be a memory eater (?), but you could always work around some of the issues - at least the collections issue.

    In addition there are libraries for primitive types, last I checked. This was one of the problems early on with Java - because of the lack of a unified type system, it meant that you couldn't make an ArrayList and get array-like performance because the would get erased and boxed into an Integer, or something similar.

    It's probably not that easy to measure performance but how do you see the (current) strengths and weaknesses of JVM vs CLR - and other VM's - and where are things going?




     

Share This Page