[LLVMdev] Re: Starting with LLVM-GCC on Cygwin
Alex Vinokur
alexvn at go.to
Wed Oct 6 00:08:19 PDT 2004
"Chris Lattner" <sabre at nondot.org> wrote in message news:Pine.LNX.4.44.0410051204480.5863-100000 at nondot.org...
> On Tue, 5 Oct 2004, Alex Vinokur wrote:
>
> > I would like to use LLVM-GCC to compare its performance with other compilers.
> > Something like testsuite "Computing very large Fibonacci numbers" at
> > http://article.gmane.org/gmane.comp.lang.c%2B%2B.perfometer/37.
>
> Out of curiousity, I ran some quick tests on a AMD Athlon(TM) MP 2100+ box
> running Redhat linux 7.1.
[snip]
>
> Note that this benchmark allocates a TON of memory,
The main purpose of the "Computing very large Fibonacci numbers" algorithm was to create fast _recursive_ algorithm.
The algorithm generates very large Fibonacci numbers using the primary recursive formula:
F(n) = F(n-1) + F(n-2) n > 1; F(1) = 1, F(0) = 0.
Latest version of the algorithm is 2.7.9 and can be seen at
http://groups.google.com/groups?selm=2paj5hFim4q1U1%40uni-berlin.de
> so it's not a wonderful benchmark of CPU bound tasks (also, the compiler in use will
> have less impact than for a CPU bound program). In any case, I've added
> this program to the LLVM testsuite as
> SingleSource/Benchmarks/Misc-C++/bigfib.cpp, so we should have numbers for
> it generated every night on multiple platforms.
>
[snip]
Newsgroup http://news.gmane.org/gmane.comp.lang.c%2B%2B.perfometer contains another testsuites.
For instance:
1. Simple C++ Perfometer
Methods of copying files
http://article.gmane.org/gmane.comp.lang.c%2B%2B.perfometer/47.
2. C/C++ Program Perfometer
http://sourceforge.net/projects/cpp-perfometer/
http://alexvn.freeservers.com/s1/perfometer.html
Latest version is 2.8.0-1.18.
Its description can be ssen at http://article.gmane.org/gmane.comp.lang.c%2B%2B.perfometer/39
List of all testsuites
----------------------
- access to an element
- argument passing
- argument passing (built-in types)
- argument passing (containers-1)
- argument passing (containers-2)
- argument passing (containers-3)
- calling functions : templated vs. non-templated
- container performance (Stepanov & Stroustrup)
- copying files : input to output
- dynamic_cast vs. switch
- endl vs. "\n", '\n' [! stdout/stderr > tmp]
- exception handling vs. if-statement
- find method vs. find algorithm
- for-loop vs. for_each
- for_each vs. transform
- iterators
- multiple inheritance vs. single inheritance
- primitive operators
- pthreads
- reading contents from file into one string
- recursion vs. iteration vs. accumulate
- str-functions vs. mem-functions (C)
- string initialization (C vs. STL)
- string length (C vs. STL)
- string processing (C vs. STL)
- stub tested functions
- tech report : D1 - overhead of class operations
- tech report : D3 - the Stepanov abstraction penalty benchmark
- tech report : D4 - comparing function objects to function pointers
- tech report : D5 - measuring the cost of synchronized I/O
- virtual vs. ordinary methods
--
Alex Vinokur
email: alex DOT vinokur AT gmail DOT com
http://mathforum.org/library/view/10978.html
http://sourceforge.net/users/alexvn
More information about the llvm-dev
mailing list