|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hi everybody!
Several days ago, in the French POV-Ray newsgroup,
Martin Depardieu, a newcommer to Linux, complained
that he found the Linux POV-Ray version much slower
than its Windows counterpart.
I spent some time investigating the problem, and
the immediate conclusion is that it is true.
I then tried to compile POV-Ray for a better speed,
with some results, but not that great.
I did some measures ; I admit more should be done,
but I lacked time. They are at the bottom of this
message.
After doing that, I spent a lot of time trying to
figure better arguments to give to the C compiler.
However, I did most of my tests with skyvase.pov,
and it later appeared (of course!) that various gcc
arguments provide more or less speedup depending on
the scene being rendered! Doh!
Anyway, it seems that the following arguments work
the best (for me... ie on a Pentium-III).
There are few of them, but I also played with
-fomit-frame-pointer, -ffast-math (yes, removing
it seemed to give a speed increase), -mno-fancy-math-387
and -malign-double. Problem is, I should retest
them on other scenes than skyvase.pov.
-O3 -fforce-addr -march=pentiumpro -c -ansi
-DCOMPILER...(unchanged) -DPOVLIB...(unchanged)
Here are the results:
* > linux stands for "official pov version"
> linux-custom is custom compiled with above
parameters
> percentages are given relative to the
windows version
* Hardware: Pentium-III 450 MHz - 384 MB RAM
* OS: Windows 98 SE ; Slackware Linux 7.1
On both OS, I killed every unneeded task, until
I was left with only the bare minimum (taskbar,
etc. for Windows ; bash, etc. for Linux)
* Windows: POV render was set at maximum priority,
POV GUI was set at minimum priority and put in
the taskbar
* Linux: nice -n -20 s-povray -I scene.pov +W 1200
+H 900 +FT +MB3 +A0.3 -D
* So, images were rendered at 1200x900, antialias 0.3
Under Linux, the +MB3 switch was added (it is in
the Windows povray.ini). Two renders were done and
averaged.
* scenes/advanced/skyvase.pov
windows 3 min 35 s (215 sec)
linux 3 min 58 s (238 sec) + 11%
linux-custom 3 min 37 s (217 sec) + 1% (yes!)
linux 4 min 10 s (250 sec) + 16%
(without +MB3 - see how it helps?)
* scenes/advanced/quilt1.pov
windows 9 min 10 s (550 sec)
linux 10 min 43 s (643 sec) + 17%
linux-custom 10 min 17 s (617 sec) + 12% :-(
* scenes/advanced/chess2.pov
windows 63 min 27 s (3807 sec)
linux-custom 68 min 25 s (4105 sec) + 8%
So?
Any ideas? What is your opinion about the compilation
switches? Do you have a better combination? Or a
better compiler?
Any help appreciated.
--
Adrien Beau - adr### [at] freefr - http://adrien.beau@free.fr
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Try also other scenes. Last time I experimented with POV compiler i obtained
following cross situation:
- skyvase is faster on Linux then on Windows (about 20%)
- woodbox is faster on Windows then on Linux (about 15%)
skyvase is in my opinion obsolete benchmark because scene is quite simple
and on fast machines measures eficiency of underlaying IO subsystem, wchich
is on Linux faster :-)
woodbox is computationally more intensive and that is why Windows version is
better.
About 15%-20% improvement can be done with upgrade to newer Linux
distribution - newer gcc and gnu-lib:
woodbox under:
RedHat 6.2 - 45 sec
RedHat 7.0 - 35 sec
regards, Daniel
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Mon, 28 May 2001 12:11:03 +0200, Adrien Beau
<adr### [at] sycomorefr> wrote:
>Hi everybody!
>
>Several days ago, in the French POV-Ray newsgroup,
>Martin Depardieu, a newcommer to Linux, complained
>that he found the Linux POV-Ray version much slower
>than its Windows counterpart.
The Windows compile uses Pentium II-specific optimisations. On the K6
III at home it is about 20% slower than under Linux.
>Any ideas? What is your opinion about the compilation
>switches? Do you have a better combination? Or a
>better compiler?
OTOH, if you grab pgcc 2.97.2.1 and compile with most or all
Pentium-III optimizations, you will get a *significant* speed boost.
Tested.
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vipbg
TAG e-mail : pet### [at] tagpovrayorg
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Peter Popov wrote:
>
> OTOH, if you grab pgcc 2.97.2.1 and compile with most or all
> Pentium-III optimizations, you will get a *significant* speed boost.
> Tested.
Err, you mean 2.95.2.1, I think? That's the latest version
they seem to have at http://www.goof.com/pcg/. There are
no specific optimization for Pentium-III (they have Pentium
Pro, like gcc). But the generic Pentium optimization they
did sound promising. I'll give it a try (unless there's a
2.97 with Pentium-III optimizations somewhere and I missed it?)
--
Adrien Beau - adr### [at] freefr - http://adrien.beau@free.fr
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Tue, 29 May 2001 13:25:14 +0200, Adrien Beau
<adr### [at] sycomorefr> wrote:
>Err, you mean 2.95.2.1, I think? That's the latest version
>they seem to have at http://www.goof.com/pcg/. There are
>no specific optimization for Pentium-III (they have Pentium
>Pro, like gcc). But the generic Pentium optimization they
>did sound promising. I'll give it a try (unless there's a
>2.97 with Pentium-III optimizations somewhere and I missed it?)
You're right, it's 2.95.2.1 (just checked).
Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] vipbg
TAG e-mail : pet### [at] tagpovrayorg
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Adrien Beau" <adr### [at] sycomorefr> wrote:
> I spent some time investigating the problem, and the immediate conclusion
> is that it is true. I then tried to compile POV-Ray for a better speed,
> with some results, but not that great.
>
>
It's been a while since I did Windows vs Linux POV benchmars, but IIRC after
tweaking gcc settings and recompiling, I got concistently better results in
Linux.
With mostly CPU-intensive scenes (like skyvase or the various media example
scenes) the improvement was pretty marginal, e.g. skyvase @ 640x480 aa0.3
takes 25 seconds under Linux and 28 seconds under Windows.
With scenes that involved a lot of memory I/O (like the recursive macro
examples) I found Linux to be significantly faster, as much as 50% with
parsing and 15-20% with rendering.
This holds true for both my old Celeron and the new Duron (with very minor
changes to the gcc settings for the Duron compile).
--
Margus Ramst
Personal e-mail: mar### [at] peakeduee
TAG (Team Assistance Group) e-mail: mar### [at] tagpovrayorg
Home page http://www.hot.ee/margusrt
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Margus Ramst" <mar### [at] peakeduee> wrote:
> It's been a while since I did Windows vs Linux POV benchmars, but IIRC
> after tweaking gcc settings and recompiling, I got concistently better
> results in Linux.
>
I should add that I invariably found the s-povray target to be the slowest,
with console povray and x-povray exhibiting roughly equal performance.
--
Margus Ramst
Personal e-mail: mar### [at] peakeduee
TAG (Team Assistance Group) e-mail: mar### [at] tagpovrayorg
Home page http://www.hot.ee/margusrt
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
May be you know it already, at http://students.washington.edu/sschmitt/pov/
you can download a PIII and a P4 optimized compilation of POVRAY (and a list
of benchmarks) for Windows. I guess they are much faster than compilations
for Linux. Don't beat me. I use Linux every Day and I like it but the
Windows Compilations are still faster.
Andreas Tillner
http://www.tabsnet.com/
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Margus Ramst wrote:
>
> It's been a while since I did Windows vs Linux POV benchmars, but IIRC after
> tweaking gcc settings and recompiling, I got concistently better results in
> Linux.
And what were these settings, please?
--
Adrien Beau - adr### [at] freefr - http://adrien.beau@free.fr
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Adrien Beau" <adr### [at] sycomorefr> wrote:
> And what were these settings, please?
>
>
Well, here's the CFLAGS I have in the POV31 makefile (minus the system
version & library paths options); some may actually be redundant with the
-O3 option.
This is meant to work with gcc-2.96, so some flags might not be supported
in 2.95. The options are supposedly Athlon-optimized, although I suspect
the -march=athlon flag probably doesn't do anything useful before gcc-3.0
-O3 -Dstricmp=strcasecmp -finline-functions -ffast-math -c -ansi
-DCPU=athlon -s -fomit-frame-pointer -Wall -march=athlon -malign-functions=4
-funroll-loops -fexpensive-optimizations -malign-double -fschedule-insns2
--
Margus Ramst
Personal e-mail: mar### [at] peakeduee
TAG (Team Assistance Group) e-mail: mar### [at] tagpovrayorg
Home page http://www.hot.ee/margusrt
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |