From: Arno P. <ar...@pu...> - 2012-12-07 01:53:23
|
well, allow me some remarks. As you already alluded to, performance testing is a tricky business. XMLVM cross-compiles to C code and by its very nature it cannot do hot-patching at runtime. This means that every static access to a class needs to check if that class was already initialized. If your application is mainly using static fields and methods (as did your original test case), XMLVM can't do many optimizations. XMLVM is far from being perfect, but it is doing a decent job. Mileage may vary depending on the details of an app. It is always a good idea to try different tools and pick the one that works best for you. Arno On 12/06/2012 05:47 PM, Steve Hannah wrote: > Ah... you clearly had some insight into how it works :) Dramatically > different results when using object methods instead of static methods. > > I have updated my blog post to incorporate these changes: > > http://sjhannah.com/blog/?p=226 > > The results were (with the same n=30, move from pole 1 to pole 3): > > XMLVM: 40.2 seconds > Avian: 77.4 seconds > > In this case, XMLVM is getting very close to the performance of the > native C function calls. > > Just for fun I also created an Objective-C version using message passing > rather than C functions and, not surprisingly, it was dramatically > slower at around 154 seconds. > > > Obviously we can't read too much into these narrow benchmarks, but it is > good to know how close to native performance XMLVM can get. > > > -Steve > > > > On Thu, Dec 6, 2012 at 3:45 PM, Steve Hannah <st...@we... > <mailto:st...@we...>> wrote: > > Will do. I'll post the result when I have it. > > Steve > > > On Thursday, December 6, 2012, Arno Puder wrote: > > > just out of curiosity, could you please change your test and > make method > "move()" and variable "counter" of your class "TowersOfHanoi" not > static? I'd be interested in the numbers when you make that change. > > Thanks, > Arno > > > On 12/6/12 2:59 PM, Steve Hannah wrote: > > Just a small update. As it turns out, my first benchmark was > flawed > > because it allowed GCC/LLVM to optimize it more than was > fair. After > > revising the algorithm to force GCC/LLVM to play by the rules > I found > > that Avian edged out XMLVM by about 15% in speed. They were > both slower > > than the native C implementation by a factor of about 2. > > > > This doesn't change, at all, my overall impression that XMLVM > is quite > > fast and that the potential is very far reaching. > > > > I wrote about the revised benchmarks on my blog at > > http://sjhannah.com/blog/?p=226 > > > > Keep up the great work! > > > > -Steve > > > > On Thu, Dec 6, 2012 at 10:20 AM, Paul Poley <bay...@gm... > > <mailto:bay...@gm...>> wrote: > > > > Interesting news. Nice write up! > > > > Paul > > > > On Mon, Dec 3, 2012 at 12:15 PM, Steve Hannah > <st...@we... > > <mailto:st...@we...>> wrote: > > > > I just wanted to drop a line into this list to thank > you guys > > for your work. I have been playing around with > CodenameOne > > recently to try to build a port that runs on Avian > (an AOT java > > compiler) because I had a hunch that it would be > faster than the > > code produced by XMLVM (which is their default > solution for iOS). > > > > I was wrong. Running a simple test on the Towers of > Hanoi > > problem on an app that was built separately using > XMLVM and > > Avian I found that the XMLVM build was actually > slightly faster > > than the Avian AOT compiled binary. > > > > I wrote about my experiment in my blog at > > http://sjhannah.com/blog/?p=225 > > > > Anyways. Incredible work. The potential of this > project is > > quite far-reaching. > > > > -Steve > > > > > > > > > > > ------------------------------------------------------------------------------ > > Keep yourself connected to Go Parallel: > > BUILD Helping you discover the best ways to construct > your > > parallel projects. > > http://goparallel.sourceforge.net > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > <mailto:xml...@li...> > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > > > > > > > > > -- > > Steve Hannah > > Web Lite Solutions Corp. > > > > > > > > > ------------------------------------------------------------------------------ > > LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free > Trial > > Remotely access PCs and mobile devices and provide instant > support > > Improve your efficiency, and focus on delivering more > value-add services > > Discover what IT Professionals Know. Rescue delivers > > http://p.sf.net/sfu/logmein_12329d2d > > > > > > > > _______________________________________________ > > xmlvm-users mailing list > > xml...@li... > > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > ------------------------------------------------------------------------------ > LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial > Remotely access PCs and mobile devices and provide instant support > Improve your efficiency, and focus on delivering more value-add > services > Discover what IT Professionals Know. Rescue delivers > http://p.sf.net/sfu/logmein_12329d2d > _______________________________________________ > xmlvm-users mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-users > > > > -- > Steve Hannah > Web Lite Solutions Corp. > > > > > -- > Steve Hannah > Web Lite Solutions Corp. > |