[gambit-list] Benchmark results for dependency graph calculation by gsc (i586, x86-64, and x32)

Marc Feeley feeley at iro.umontreal.ca
Mon Sep 9 10:42:49 EDT 2019


That’s interesting and it matches what I have experienced too.  Manuel Serrano told me about x32 and I think that is what he suggests when compiling bigloo.  It certainly gives favorable benchmark results!

Would you mind sharing the configure options you have used to build Gambit for x32?

Of course one important drawback is that you are limited to 32 bit references and headers, so only 4G RAM can be accessed (at best) and objects are limited to 16M bytes in size (so forget about reading large files into a string or computing pi to 100 million digits!).

Marc



> On Sep 9, 2019, at 10:25 AM, Sven Hartrumpf <hartrumpf at gmx.net> wrote:
> 
> Hello Gambit users.
> 
> I would like to share some interesting benchmark results that compare
> i586, x86-64 and x32 ABI. The experiments were done with the released
> version 4.9.3 of Gambit, gcc 8.3.0, a Ryzen 7 1800X and a quite large Scheme code
> file as input to the -dg option of Gambit, which calculates a dependency graph
> like this:
> 
>  gsc -:l60 -c -dg largescheme.scm
> 
> The binary gsc was built for all three architectures.
> The runtimes for the gsc call above are reported as averages over 5 runs.
> 
> arch.  runtime (s)  size RSS (MB)
> x32    67.90        2200
> x86-64 71.90 + 6 %  4360 +98 %
> i586   80.31 +18 %  2200 + 0 %
> 
> I have reported similar numbers for other Scheme implementations and other
> benchmarked programs.
> For some of them, the runtime difference are more drastic (20 - 30 %) in favor
> of x32.
> 
> For garbage-intensive programs, the results (like the ones listed above) can be
> summarized as follows:
> 
> 1. x86-64 increases memory demands by a factor of 2.
> 
> 2. i586 loses significantly in speed because it cannot used all features and registers
>   of a 64bit CPU.
> 
> 3. x32 can be faster than x86-64 for Scheme programs as described above, probably
>   because GC has to look at only half of the memory (compared to x86-64).
> 
> Ciao
> Sven
> 
> _______________________________________________
> Gambit-list mailing list
> Gambit-list at iro.umontreal.ca
> https://mailman.iro.umontreal.ca/cgi-bin/mailman/listinfo/gambit-list





More information about the Gambit-list mailing list