Re: Shootout: the benchmarks game.

Discussion in 'Java' started by Isaac Gouy, Apr 21, 2008.

  1. Isaac Gouy

    Isaac Gouy Guest

    On Apr 20, 1:40 pm, Razii <> wrote:
    > On Sun, 20 Apr 2008 12:57:30 +0200, "Bo Persson" <> wrote:
    > >Must be a bad benchmark, as Java 6 -server is at 16th place!

    >
    > There is another problem with theshootoutsite. The site forces the
    > java version to either use only -server or use only -Xms64m flag.



    That's not true! Stop making stuff up!

    The JVM flags are clearly shown on the webpages.



    > C++ version uses different flags with different benchmarks. There are
    > not zillion of c++ benchmarks, one with only -O2 flag and one with O3
    > flag for example. However, theshootoutsite does this with java. That
    > sounds pretty bogus. Why restrict java to use only -server or only
    > -Xms64? Only one java benchmark that uses different flags (depending
    > on what flags produce best result with a particular benchmark) should
    > be posted (just as C++ benchmark does).
    >
    > In this benchmark, combining -Xms64m and -server produce best result
    >
    > when n = 16
    >
    > 4.478s (when only -server flag is used)
    > 1.286s ((when both -server flag and -Xms64 is combined).
    >
    > Already 4 times faster
    Isaac Gouy, Apr 21, 2008
    #1
    1. Advertising

  2. Isaac Gouy

    Isaac Gouy Guest

    On Apr 21, 9:07 am, Razii <> wrote:
    > On Mon, 21 Apr 2008 08:25:02 -0700 (PDT), Isaac Gouy
    >
    > <> wrote:
    > >That's not true! Stop making stuff up!

    >
    > >The JVM flags are clearly shown on the webpages.

    >
    > It's true. The only flag I see are -server -Xbatch -classpath
    >
    > why not use -server -Xms64m together? Why not use -client if that
    > helps in a particular benchmark? why have two and three versions, one
    > only for -server and other only for -client and the other only for
    > -Xms64m? There are many other flags that can help in cases where a lot
    > GC activity is included.



    That's not true! Stop making stuff up!

    The JVM flags are clearly shown on the webpages.

    http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=binarytrees&lang=javaxx&id=2#log
    Isaac Gouy, Apr 21, 2008
    #2
    1. Advertising

  3. Isaac Gouy

    Isaac Gouy Guest

    On Apr 21, 5:24 pm, Razii <> wrote:
    > On Mon, 21 Apr 2008 12:13:28 -0700 (PDT), Isaac Gouy
    >
    > <> wrote:
    > >That's not true! Stop making stuff up!

    >
    > >The JVM flags are clearly shown on the webpages.

    >
    > >http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=binar....

    >
    > The site so confusing.



    Why have you not apologized for repeatedly posting false information,
    even after you had been told it was false?



    > Why is -Xms64m flag not added here?
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=binarytrees&...
    >
    > Why is -Xms64m -server not shown in the ranking on the page?
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=all〈=all
    >
    > Why is it not shown on ranking on this page?
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=binarytrees&...
    >
    > In any case, there should be one java result that uses the best JVM
    > options/flags depending on the benchmark.
    >
    > Bo Persson claimed that java version is ranked 16 but with -server and
    > Xms64m, it's ranked number 1 in this benchmark. Obviously he too
    > missed this link on your site given the confused nature of the website
    > with tons of different flag version used for java instead of one
    > version with best flags (including -client) depending on the
    > situation.



    Bo Persson followed the Java URL you posted on Apr 19, 8:24pm & 8:27pm

    http://groups.google.com/group/comp.lang.c /msg/90b91dfa158e6ac6

    You didn't post the Java -Xms64m URL even though you posted the Intel C
    ++ URL for the website that shows Java -Xms64m

    Why didn't you post the Java -Xms64m URL?


    Why are you still not posting URLs that show these Java measurements?

    http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=all
    Isaac Gouy, Apr 22, 2008
    #3
  4. Isaac Gouy

    Bo Persson Guest

    Razii wrote:
    > On Tue, 22 Apr 2008 09:52:39 -0700 (PDT), Isaac Gouy
    > <> wrote:
    >
    >> Why have you not apologized for repeatedly posting false
    >> information, even after you had been told it was false?

    >
    > No, it was not false. There is no -Xms64m and -server linked from
    > the main page.
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all
    >
    > Anyone can go there and check it. You dug up a link but it's not on
    > the main page. Also,-Xms64m "version" always uses -server flag. Why?
    > Why it must always use -server flag if the client flag does better
    > in some cases?
    >
    >> Bo Persson followed the Java URL you posted on Apr 19, 8:24pm &
    >> 8:27pm

    >
    > Or perhaps Bo Person went to the main page
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all
    >
    > and found the list doesn't have -Xms64m and -server. Anyone can go
    > there and check it.


    I actually went to the main page, and chose binary-tree in benchmark
    selector at the top of the page. That brought me here:

    http://shootout.alioth.debian.org/gp4/benchmark.php?test=binarytrees&lang=all

    Found it very "interesting" with a benchmark where ML, Haskell,
    Erlang, and Lisp is at the top, shortly followed by Eiffel and Basic.
    Must have taken a lot of effort to invent that test! :)


    If you look in the "penalty box" at the bottom of the page, you will
    of course find that g++ has the best result, but was disqualified for
    chosing a faster memory allocation scheme. ROTFL!


    Bo Persson
    Bo Persson, Apr 22, 2008
    #4
  5. Isaac Gouy

    Isaac Gouy Guest

    On Apr 22, 11:49 am, Razii <> wrote:
    > On Tue, 22 Apr 2008 09:52:39 -0700 (PDT), Isaac Gouy
    >
    > <> wrote:
    > >Why have you not apologized for repeatedly posting false information,
    > >even after you had been told it was false?

    >
    > No, it was not false. There is no -Xms64m and -server linked from the
    > main page.
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=all〈=all
    >
    > Anyone can go there and check it. You dug up a link but it's not on
    > the main page. Also,-Xms64m "version" always uses -server flag. Why?
    > Why it must always use -server flag if the client flag does better in
    > some cases?
    >
    > >Bo Persson followed the Java URL you posted on Apr 19, 8:24pm & 8:27pm

    >
    > Or perhaps Bo Person went to the main page
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=all〈=all
    >
    > and found the list doesn't have -Xms64m and -server. Anyone can go
    > there and check it.



    Why are you posting false information that a page titled "Create your
    own Ranking" is the main page?

    The main page is titled "The Computer Language Benchmarks Game".

    Why are you posting false information that "There is no -Xms64m and -
    server linked from the main page"? "Anyone can go there and check it"
    and find the link "Java 6 -Xms64m initial java server heap size 64m"

    http://shootout.alioth.debian.org/
    Isaac Gouy, Apr 23, 2008
    #5
  6. Isaac Gouy

    Isaac Gouy Guest

    On Apr 22, 1:56 pm, "Bo Persson" <> wrote:
    > Razii wrote:
    > > On Tue, 22 Apr 2008 09:52:39 -0700 (PDT), Isaac Gouy
    > > <> wrote:

    >
    > >> Why have you not apologized for repeatedly posting false
    > >> information, even after you had been told it was false?

    >
    > > No, it was not false. There is no -Xms64m and -server linked from
    > > the main page.

    >
    > >http://shootout.alioth.debian.org/gp4/benchmark.php?test=all〈=all

    >
    > > Anyone can go there and check it. You dug up a link but it's not on
    > > the main page. Also,-Xms64m "version" always uses -server flag. Why?
    > > Why it must always use -server flag if the client flag does better
    > > in some cases?

    >
    > >> Bo Persson followed the Java URL you posted on Apr 19, 8:24pm &
    > >> 8:27pm

    >
    > > Or perhaps Bo Person went to the main page

    >
    > >http://shootout.alioth.debian.org/gp4/benchmark.php?test=all〈=all

    >
    > > and found the list doesn't have -Xms64m and -server. Anyone can go
    > > there and check it.

    >
    > I actually went to the main page, and chose binary-tree in benchmark
    > selector at the top of the page.



    There is no benchmark selector on the main page

    http://shootout.alioth.debian.org/


    > That brought me here:
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=binarytrees&...
    >
    > Found it very "interesting" with a benchmark where ML, Haskell,
    > Erlang, and Lisp is at the top, shortly followed by Eiffel and Basic.
    > Must have taken a lot of effort to invent that test! :)
    >
    > If you look in the "penalty box" at the bottom of the page, you will
    > of course find that g++ has the best result, but was disqualified for
    > chosing a faster memory allocation scheme. ROTFL!
    >
    > Bo Persson


    It's always faster to run just the lap in the stadium rather than the
    whole marathon.
    Isaac Gouy, Apr 23, 2008
    #6
  7. Isaac Gouy

    Isaac Gouy Guest

    On Apr 22, 2:15 pm, Razii <> wrote:
    > On Tue, 22 Apr 2008 22:56:43 +0200, "Bo Persson" <> wrote:
    > >I actually went to the main page, and chose binary-tree in benchmark
    > >selector at the top of the page. That brought me here:

    >
    > Now he should stop blaming me for posting wrong link and apologize.
    > The main page doesn't have -Xms64m -server (#1 ranked in this
    > benchmark). In fact, the main page ranking only uses -server flag (and
    > not whatever flag that would be fastest in a particular benchmark). I
    > was correct after all.


    The main page is titled "The Computer Language Benchmarks Game".

    Why are you posting false information that "There is no -Xms64m and -
    server linked from the main page"? "Anyone can go there and check it"
    and find the link "Java 6 -Xms64m initial java server heap size 64m"

    http://shootout.alioth.debian.org/

    Stop posting false information!


    >
    > The guy is weird, by the way. He also has strange excuses for not
    > including Jet (even though many other commercial compilers are
    > included and links to the their commercial site posted).


    Some compilers are included which have freely available non-commercial
    licenses (the Jet non-commercial license is not freely available -
    it's restricted).
    Isaac Gouy, Apr 23, 2008
    #7
  8. Isaac Gouy

    Isaac Gouy Guest

    On Apr 23, 1:38 pm, Razii <> wrote:
    > On Wed, 23 Apr 2008 07:49:07 -0700 (PDT), Isaac Gouy
    >
    > <> wrote:
    > >There is no benchmark selector on the main page

    >
    > >http://shootout.alioth.debian.org/

    >
    > There is. If you click on "Show" tab, it takes you to this page.
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=all〈=all
    >
    > There is no -server -Xms64m on this ranking. That's how Bo apparently
    > found the link. You should apologize by claiming Bo followed my link.
    > He didn't. Also, you didn't explain why -Xms64m must always use
    > -server? Why not -client sometimes if that helps in some cases? Or
    > other flags?


    Bo wrote: "I actually went to the main page, and chose binary-tree in
    benchmark selector at the top of the page. That brought me here...".

    http://groups.google.com/group/comp.lang.c /msg/bd2a2ac332ddd04b

    As you just discovered - Bo could not have chosen "binary-tree in
    benchmark selector at the top of the page".

    There is no "binary-tree in benchmark selector at the top of the
    page".

    There's a button hard-coded to an entirely different webpage!
    Isaac Gouy, Apr 25, 2008
    #8
  9. Isaac Gouy

    Isaac Gouy Guest

    On Apr 24, 2:28 am, Razii <> wrote:
    > On Wed, 23 Apr 2008 07:41:44 -0700 (PDT), Isaac Gouy
    >
    > <> wrote:
    > >Why are you posting false information that a page titled "Create your
    > >own Ranking" is the main page?

    >
    > It's clear by now that you and your site has zero credibility. It's a
    > scam. I won't waste any more time on you after this post.
    >
    > To summarize, anyone can go to the main site
    >
    > http://shootout.alioth.debian.org/
    >
    > where there is no ranking, no numbers, nothing. If you click on "show"
    > tab, that takes you to this page
    >
    > http://shootout.alioth.debian.org/gp4/benchmark.php?test=all〈=all
    >
    > that does have ranking, but there is no -Xms64m. Also, why -Xms64m
    > must always use -server flag and vice versa? This guy failed to answer
    > that. Even Bo Person told him that this is how he found the 16th place
    > ranking, but this idiot, instead of admitting the obvious, keeps
    > spining and twisting.
    >
    > I am done with this fool and will continue posting the rest of the
    > results



    To summarize, anyone can go to the main site

    http://shootout.alioth.debian.org/

    where there's a "Programming language measurements A to Z" link list
    which includes

    Java 6 -Xms64m initial java server heap size 64m
    Isaac Gouy, Apr 25, 2008
    #9
  10. Isaac Gouy

    Bo Persson Guest

    Isaac Gouy wrote:
    > On Apr 23, 1:38 pm, Razii <> wrote:
    >> On Wed, 23 Apr 2008 07:49:07 -0700 (PDT), Isaac Gouy
    >>
    >> <> wrote:
    >>> There is no benchmark selector on the main page

    >>
    >>> http://shootout.alioth.debian.org/

    >>
    >> There is. If you click on "Show" tab, it takes you to this page.
    >>
    >> http://shootout.alioth.debian.org/gp4/benchmark.php?test=all?=all
    >>
    >> There is no -server -Xms64m on this ranking. That's how Bo
    >> apparently found the link. You should apologize by claiming Bo
    >> followed my link. He didn't. Also, you didn't explain why -Xms64m
    >> must always use -server? Why not -client sometimes if that helps
    >> in some cases? Or other flags?

    >
    > Bo wrote: "I actually went to the main page, and chose binary-tree
    > in benchmark selector at the top of the page. That brought me
    > here...".
    >
    > http://groups.google.com/group/comp.lang.c /msg/bd2a2ac332ddd04b
    >
    > As you just discovered - Bo could not have chosen "binary-tree in
    > benchmark selector at the top of the page".
    >
    > There is no "binary-tree in benchmark selector at the top of the
    > page".
    >
    > There's a button hard-coded to an entirely different webpage!


    Ok, so I started from there (following Razii's link).

    I *could* have gone to the main page, pressed "show", and *then*
    selected binary-tree. Big deal!


    I now see that Java 6 -server is down to 17th place. :)


    Bo Persson
    Bo Persson, Apr 25, 2008
    #10
  11. Isaac Gouy

    Isaac Gouy Guest

    On Apr 25, 12:57 pm, "Bo Persson" <> wrote:
    > Isaac Gouy wrote:
    > > On Apr 23, 1:38 pm, Razii <> wrote:
    > >> On Wed, 23 Apr 2008 07:49:07 -0700 (PDT), Isaac Gouy

    >
    > >> <> wrote:
    > >>> There is no benchmark selector on the main page

    >
    > >>>http://shootout.alioth.debian.org/

    >
    > >> There is. If you click on "Show" tab, it takes you to this page.

    >
    > >>http://shootout.alioth.debian.org/gp4/benchmark.php?test=all?=all

    >
    > >> There is no -server -Xms64m on this ranking. That's how Bo
    > >> apparently found the link. You should apologize by claiming Bo
    > >> followed my link. He didn't. Also, you didn't explain why -Xms64m
    > >> must always use -server? Why not -client sometimes if that helps
    > >> in some cases? Or other flags?

    >
    > > Bo wrote: "I actually went to the main page, and chose binary-tree
    > > in benchmark selector at the top of the page. That brought me
    > > here...".

    >
    > >http://groups.google.com/group/comp.lang.c /msg/bd2a2ac332ddd04b

    >
    > > As you just discovered - Bo could not have chosen "binary-tree in
    > > benchmark selector at the top of the page".

    >
    > > There is no "binary-tree in benchmark selector at the top of the
    > > page".

    >
    > > There's a button hard-coded to an entirely different webpage!

    >
    > Ok, so I started from there (following Razii's link).
    >
    > I *could* have gone to the main page, pressed "show", and *then*
    > selected binary-tree. Big deal!
    >
    > I now see that Java 6 -server is down to 17th place. :)
    >
    > Bo Persson




    We don't use labels like 1st place, 2nd place, 3rd place on the
    webpages because those labels don't say anything that's interesting.

    We use labels that say how much slower the implementation is than the
    fastest implementation.

    Overall, the geometric mean of those ratios for the Java 6 -server
    programs is 1.7 times larger than the geometric mean of those ratios
    for the measured Intel C++ programs.
    Isaac Gouy, Apr 28, 2008
    #11
  12. Isaac Gouy

    Isaac Gouy Guest

    On Apr 28, 1:33 pm, Razii <> wrote:
    > On Fri, 25 Apr 2008 21:57:45 +0200, "Bo Persson" <> wrote:
    > >I *could* have gone to the main page, pressed "show"...

    >
    > Exactly. And -Xms64m is not on that page.



    And -Xms64m is not shown
    - on the FAQ page
    - on any of the Debian : AMD™ Sempron™ pages
    - on numerous other pages


    And -Xms64m is shown on the main page

    "Java 6 -Xint ubiquitous bytecode interpreter virtual machine
    Java 6 -Xint Debian
    Java 6 -Xms64m initial java server heap size 64m
    Java GNU gcj optimizing ahead-of-time compiler
    Java GNU gcj Debian
    JavaScript JavaScriptCore WebKit-based ECMA scripting implementation
    Debian"

    http://shootout.alioth.debian.org/



    And -Xms64m is shown on this "Create your own Ranking" page

    "1.6 Fortran Intel
    1.7 Eiffel SmartEiffel
    1.7 Java 6 -Xms64m
    1.8 Java 6 -server
    1.8 OCaml 2.33"

    http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=all


    And -Xms64m is shown on numerous other pages.




    > >I now see that Java 6 -server is down to 17th place. :)

    >
    > The shootout site is bogus and should not be taken seriously. It
    > forces java version to use only one flag in all tests, regardless if
    > another flag would do better. The guy also posted bogus excuses why
    > Jet is not on the site.
    >
    > Also, as someone pointed out, the newly added Lisaac numbers in
    > binarytrees are bogus too.
    >
    > (left = NULL).if {
    > left := TREENODE.clone;
    > right := TREENODE.clone;
    > };
    >
    > The above tests whether the node has a NULL left branch and only then
    > creates two new fresh nodes for the left and right branches. Lisaac
    > version does only a very small fraction of the allocations done by a
    > correct implementation of the benchmark.
    Isaac Gouy, Apr 29, 2008
    #12
  13. Isaac Gouy

    Isaac Gouy Guest

    On Apr 28, 1:33 pm, Razii <> wrote:
    > On Fri, 25 Apr 2008 21:57:45 +0200, "Bo Persson" <> wrote:
    > >I *could* have gone to the main page, pressed "show"...

    >
    > Exactly. And -Xms64m is not on that page.
    >
    > >I now see that Java 6 -server is down to 17th place. :)

    >
    > The shootout site is bogus and should not be taken seriously. It
    > forces java version to use only one flag in all tests, regardless if
    > another flag would do better. The guy also posted bogus excuses why
    > Jet is not on the site.
    >
    > Also, as someone pointed out, the newly added Lisaac numbers in
    > binarytrees are bogus too.
    >
    > (left = NULL).if {
    > left := TREENODE.clone;
    > right := TREENODE.clone;
    > };
    >
    > The above tests whether the node has a NULL left branch and only then
    > creates two new fresh nodes for the left and right branches. Lisaac
    > version does only a very small fraction of the allocations done by a
    > correct implementation of the benchmark.



    Yes, yesterday, Vesa pointed out that the Lisaac binary-trees program
    wasn't doing the right thing, and today that Lisaac binary-trees
    program has been removed.

    The benchmarks game shows full program source and build & run logs so
    that many eyes can see what's going on and cry foul if they think
    something is wrong.

    4 days ago Vesa commented on reddit that the Eiffel binary-trees
    program wasn't doing the right thing, and that Eiffel program was
    removed, and someone contributed a new Eiffel program and today that
    new Eiffel program is shown on the website.

    Find bugs; Fix bugs.
    Isaac Gouy, Apr 29, 2008
    #13
  14. Isaac Gouy

    Isaac Gouy Guest

    On Apr 28, 1:33 pm, Razii <> wrote:
    -snip-
    > The shootout site is bogus and should not be taken seriously. It
    > forces java version to use only one flag in all tests, regardless if
    > another flag would do better.

    -snip-


    It's been at least a week since you were shown that both -server and -
    Xms64m are used

    /opt/sun-jdk-1.6.0.02/bin/java $JDKFLAGS -server -Xms64m -Xbatch -
    classpath binarytrees.javaxx-2.javaxx_run binarytrees %A

    /opt/sun-jdk-1.6.0.04/bin/java $JDKFLAGS -server -Xms64m -Xbatch -
    classpath chameneosredux.javaxx-2.javaxx_run chameneosredux %A

    /opt/sun-jdk-1.6.0.03/bin/java $JDKFLAGS -server -Xms64m -Xbatch -
    classpath fannkuch.javaxx-2.javaxx_run fannkuch %A

    /opt/sun-jdk-1.6.0.02/bin/java $JDKFLAGS -server -Xms64m -Xbatch -
    classpath fasta.javaxx-2.javaxx_run fasta %A

    /opt/sun-jdk-1.6.0.02/bin/java $JDKFLAGS -server -Xms64m -Xbatch -
    classpath knucleotide.javaxx_run knucleotide %A

    etc etc

    http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=javaxx&lang2=javaxx
    Isaac Gouy, Apr 29, 2008
    #14
  15. Isaac Gouy

    Isaac Gouy Guest

    On Apr 29, 6:34 pm, Razii <> wrote:
    > On Tue, 29 Apr 2008 11:32:45 -0700 (PDT), Isaac Gouy
    >
    > <> wrote:
    > >> Exactly. And -Xms64m is not on that page.

    >
    > >And -Xms64m is not shown

    >
    > It's not shown when you click on "show" from the main page. That all
    > that matters. I don't care where else it's shown. Regardless, the
    > -Xms64m always uses -server flag when it shouldn't have to when client
    > is faster in some cases (like startup).



    You've spent 10 days making untrue claims:

    Apr 20, "The site forces the java version to either use only -server
    or use only -Xms64m flag ... In this benchmark, combining -Xms64m and -
    server produce best result ..."

    http://groups.google.com/group/comp.lang.c /msg/557c32cfcefbdf49


    Apr 21, "The only flag I see are -server -Xbatch -classpath"

    http://groups.google.com/group/comp.lang.c /msg/7d7362cf9db02083


    Apr 22, "There is no -Xms64m and -server linked from the main
    page. ... You dug up a link but it's not on the main page."

    http://groups.google.com/group/comp.lang.c /msg/c0c282fa0bbac488

    etc etc


    Now instead of admitting that your claims were wrong, you've changed
    what you claim.

    (Note: you seem confused about the purpose of "startup")


    > There are other flags that
    > might change the result if there is heavy GC activity. They are not
    > used either.


    Apr 20, "In this benchmark (since it's dependent on GC performance),
    adding the
    flag -XX:NewRatio=1 can further improve the result. This is not so
    obvious with n = 16 but with n = 18, you can see the difference. "

    And that benchmark is shown on the website N=16.


    Why don't you go through all the Java programs measuring every
    combination of JVM flag and report what you find?
    Isaac Gouy, Apr 30, 2008
    #15
  16. Isaac Gouy

    Bo Persson Guest

    Re: Shootout: the benchmarks game ... continues.

    Razii wrote:
    > On Wed, 30 Apr 2008 23:43:33 -0500, Razii <>
    > wrote:
    >
    >> g++ -pipe -O3 -fomit-frame-pointer -mfpmath=sse -msse2 fasta.cpp -o
    >> fasta.exe

    >
    > By the way, using the flags -mfpmath=sse -msse2 means the compiled
    > version won't run on anything without an sse2 instruction set (that
    > means no Athlon XP).
    >
    > That's the problem with compiled version that a JIT compiler doesn't
    > have since it knows on what processor it's running.


    That's just not true, because the JIT compiler cannot do any magic
    here.

    If it really can run fast enough on an Athlon XP, just compiler for
    that. On anything faster, it will just fly.

    > Removing these
    > flags makes g++ version about 25% slower.


    Is that fast enough? Otherwise skip that target and compile with SSE2.

    With JIT it will still be 25% slower. What's the advantage?


    Bo Persson
    Bo Persson, May 1, 2008
    #16
  17. Isaac Gouy

    Bo Persson Guest

    Re: Shootout: the benchmarks game ... continues.

    Razii wrote:
    > On Thu, 1 May 2008 15:34:18 +0200, "Bo Persson" <> wrote:
    >
    >> Is that fast enough? Otherwise skip that target and compile with
    >> SSE2.

    >
    > If you are selling commercial software, why would you want to skip
    > Athlon XP?


    I would if it isn't fast enough to run the software. If it is fast
    enough, everything else is as well.

    > It's still widely used. JIT doesn't have that problem. It
    > knows what processor it's running on.


    If it runs well enough on an Athlon XP, compile for that. It will run
    extremenly well on an overclocked Core 2 Quad.

    >
    >> With JIT it will still be 25% slower. What's the advantage?

    >
    > JIT is new and evolving. It will get faster. In any case, as shown
    > in this benchmark, java VM was faster in this benchmark than the
    > native java compiler.


    It can't get faster on old hardware. If your program needs SSE2 and
    the processor doesn't have it, how is the JIT compiler supposed to fix
    that?


    Bo Persson
    Bo Persson, May 1, 2008
    #17
  18. Isaac Gouy

    Isaac Gouy Guest

    Re: Shootout: the benchmarks game ... continues.

    On Apr 30, 9:43 pm, Razii <> wrote:
    > On Wed, 30 Apr 2008 08:00:38 -0700 (PDT), Isaac Gouy
    >
    > <> wrote:
    > >You've spent 10 days making untrue claims:

    >
    > No, you are wrong. There is no -Xms when you click on show tab from
    > the main page. You know that very well. Why waste time on quibbling?



    Now instead of admitting that your claims were wrong, you've changed
    what you claim.



    > >Why don't you go through all...

    >
    > Let's continue. The only thing changed is my OS (Vista) and computer
    > which is now 3 core phenom. Also, instead of > /dev/null on cygwin, I
    > will use > \Null (since that seems to be 200 times faster on windows).
    > benchmark: fasta
    > java version:http://shootout.alioth.debian.org/gp4/benchmark.php?test=fasta〈=j...
    > C++ versionhttp://shootout.alioth.debian.org/gp4/benchmark.php?test=fasta〈=g...
    >
    > As a great example of c++ portability, this doesn't even compile with
    > my version of g++ (mingw), so I will use cygwin to compile. gcc
    > version 3.4.4 (cygming special)
    >
    > g++ -pipe -O3 -fomit-frame-pointer -mfpmath=sse -msse2 fasta.cpp -o
    > fasta.exe
    >
    > jc -inline+ fasta (jet)
    >
    > N 250,000 2,500,000 25,000,000
    > g++ 0.166s 0.954s 8.884s
    > java 0.297s 1.347s 11.699s (-Xms64m -server)
    > jet 0.420s 1.701s 14.602s
    >
    > (note this guy uses -Xbatch flag everywhere. I have to see how that
    > helps anywhere. It's just slightly slower with -Xbatch flag if
    > anything).
    >
    > HotSpot VM is faster than native Jet compiler once again? That's three
    > in a row. g++ is only slightly faster, not 50 or 100 times as some
    > think.




    The numbers you've created show more difference between the c++
    program and the java program, show the c++ program as even faster,
    than the measurements on the benchmarks game.

    http://shootout.alioth.debian.org/g...fasta&p1=gpp-4&p2=gpp-4&p3=javaxx-2&p4=java-2
    Isaac Gouy, May 1, 2008
    #18
  19. Isaac Gouy

    Bo Persson Guest

    Re: Shootout: the benchmarks game ... continues.

    Razii wrote:
    > On Thu, 1 May 2008 18:47:35 +0200, "Bo Persson" <> wrote:
    >
    >> If it runs well enough on an Athlon XP, compile for that. It will
    >> run extremenly well on an overclocked Core 2 Quad.

    >
    > It could have run 25% faster on Core2. It's running 25% slower on
    > Core 2 Quad because the package was compiled to include Athlon XP.
    >
    > What's so hard to understand here??


    That there is no need for it, except in benchmarks.

    If some software can render a video correctly on an Athlon XP, there
    is just no need for it to run 25% faster on a newer machine. Should
    the film run faster?!

    >
    >> It can't get faster on old hardware. If your program needs SSE2 and
    >> the processor doesn't have it, how is the JIT compiler supposed to
    >> fix that?

    >
    > The JIT compiler fixed it by not penalizing Core 2 Quad just because
    > Athlon XP doesn't have sse2. It runs on Core2 with sse2 enabled, and
    > it runs on Athlon XP. In the case of pre-compiled version, it either
    > has sse2 enabled for Core2 and doesn't run on Athlon Xp or it has
    > sse2 disabled for both.
    >
    > What's so hard to understand here?


    If the program isn't fast enough without SSE2, what does the JIT
    compiler do on the old Athlon?

    If it is fast enough without SSE2, why bother using it?


    The benefit of a JIT compiler is that some programs can be made to run
    on Windows, Linux, and OS X without recompilation. Not that it runs
    faster on a Quad - everything does that anyway!


    Bo Persson
    Bo Persson, May 2, 2008
    #19
  20. Isaac Gouy

    peter koch Guest

    Re: Shootout: the benchmarks game ... continues.

    On 2 Maj, 21:04, Razii <> wrote:
    > On Fri, 2 May 2008 18:35:34 +0200, "Bo Persson" <> wrote:
    > >That there is no need for it, except in benchmarks.

    >
    > >If some software can render a video correctly on an Athlon XP, there
    > >is just no need for it to run 25% faster on a newer machine. Should
    > >the film run faster?!

    >
    > No, there could be a need for it say in a chess engine. The faster the
    > chess engine, the stronger it plays. The stronger it plays, more chess
    > enthusiasts are likely to buy it. Now, if you compile it for Athlon
    > XP, Core2 would take the penalty because it would run 25% slower. If
    > you compile it for Core2 by including sse2, it won't run on Athlon XP.


    Well, for a chess engine it is going to be more or less the same. A
    25% change in capacity is not going to change the playing level so
    much. A better example would have been for some kind of server where
    the processing is CPU-dominated. Here, 25% more capacity would mean
    25% more clients possible. But when you write programs for a server,
    you normally can allow yourself to write code for the newest
    processors only.

    /Peter
    peter koch, May 3, 2008
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. BlackHawke
    Replies:
    12
    Views:
    1,564
    Andrew Thompson
    Jan 26, 2004
  2. judith
    Replies:
    0
    Views:
    1,646
    judith
    Nov 1, 2006
  3. Isaac Gouy

    Re: Shootout: the benchmarks game.

    Isaac Gouy, Apr 20, 2008, in forum: Java
    Replies:
    3
    Views:
    351
  4. Juha Nieminen

    Re: Shootout: the benchmarks game.

    Juha Nieminen, Apr 21, 2008, in forum: Java
    Replies:
    6
    Views:
    261
    Steve Wampler
    Apr 23, 2008
  5. Juha Nieminen

    Re: Shootout: the benchmarks game.

    Juha Nieminen, Apr 21, 2008, in forum: C++
    Replies:
    6
    Views:
    281
    Steve Wampler
    Apr 23, 2008
Loading...

Share This Page