Amiga.org

Amiga computer related discussion => Amiga Software Issues and Discussion => Topic started by: Cosmos Amiga on May 24, 2016, 12:06:25 PM

Title: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 24, 2016, 12:06:25 PM
Here a new recompilation of ref_gl.dll using gcc 2.95.3-4, a part of the Quake2 68k game

- recompiled for the 68040/68060
- added a "$VER: Amiga Quake2 v1.1 by Steffen Haeuser" in the .dll


I use timedemo1 & map demo1.dm2 for the benchmark

From 10.6 fps, I get now 11.9 using the mathieeedoubtrans.library v46.00

Archive ready soon for download !


The Aminet Q2Src.lha and/or minigl.lha v1.2 sources have two missing routines : _mglMultiModeDrawElements and _m_ConvertFixMatrix

If you have them, please email me of course !





:)
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Niding on May 24, 2016, 12:19:01 PM
Great work as usual :)

Sadly I still only have a low performance Amiga, so cant use Quake.

Out of curiosity, I assume this require FPU for good performace.
Is it possible to compile without FPU requirement? The reason why I ask is because Im soon a Vampire owner, like many. And for now there isnt a FPU included in the FPGA (will probarly change eventually).
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 24, 2016, 12:34:02 PM
Quote from: Niding;809080
Is it possible to compile without FPU requirement?

Sorry, an Fpu is absolutly required !

And you need Warp3D too !
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Xebec on May 24, 2016, 12:34:08 PM
Quote from: Niding;809080
Great work as usual :)

Sadly I still only have a low performance Amiga, so cant use Quake.

Out of curiosity, I assume this require FPU for good performace.
Is it possible to compile without FPU requirement? The reason why I ask is because Im soon a Vampire owner, like many. And for now there isnt a FPU included in the FPGA (will probarly change eventually).


Just FYI - per the Apollo team they said that a version of the FPU is about for weeks away for vampire (current version ).
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Niding on May 24, 2016, 02:35:38 PM
@Cosmos and Xebec

Thanks for reply! And sounds promising. Quake 1 is my favourite other than Quake Arena.
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 25, 2016, 12:00:56 PM
Bad news : the main program Quake2 was recompiled with the gcc -O2 option and I got some slow down during the game and the demo...

So, be carefull, the -O2 on gcc 2.95.3-4 seems buggy...
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: kolla on May 25, 2016, 12:47:52 PM
Quote from: Xebec;809082
Just FYI - per the Apollo team they said that a version of the FPU is about for weeks away for vampire (current version ).


And what FPU will that be? 881/882, 040, 060, all of them, none of them?
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 25, 2016, 01:00:35 PM
Quote from: Cosmos;809148
Bad news : the main program Quake2 was recompiled with the gcc -O2 option and I got some slow down during the game and the demo...

So, be carefull, the -O2 on gcc 2.95.3-4 seems buggy...

I confirm : be carefull with the -O2 option, buggy for sure !

I recompiled ref_gl.dll with -O1, and I get now 12.4 fps instead of 11.9
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: apj on May 25, 2016, 07:45:29 PM
Quake 2 is a great benchmark for tesing compilers.
Could you compile with gcc 3.4.0 so we know speed difference between them?
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 26, 2016, 05:29:24 AM
Quote from: apj;809171
Quake 2 is a great benchmark for tesing compilers.
Could you compile with gcc 3.4.0 so we know speed difference between them?

I have a compilation : I'll try asap on my 1260...

EDIT : no, 11.7 fps...
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: pixie on May 26, 2016, 10:25:00 AM
It seems it's now time to try it on Vampire II ;)
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Niding on May 26, 2016, 10:55:28 AM
Quote from: pixie;809193
It seems it's now time to try it on Vampire II ;)

:) we shouldnt get carried away. Its afterall in its development phase.
Last report I heard regarding the FPU, it only worked with SYSINFO, but thats been the case with everything.

They will squash bugs and add missing instructions. So eventually it will be working with Quake (I hope).
From what has been said, ATLEAST 4 weeks until they are done with the FPU support.
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: wawrzon on May 26, 2016, 11:55:27 AM
Quote from: Cosmos;809190


gcc 2.95.3-4 -O2 11.9 fps

gcc 2.95.3-4 -O1 12.4 fps

gcc 3.4.0      -?   11.7 fps


is this correct? so the differences move almost within 5% range. i wonder where is this famous inefficiency later gcc versions were blamed for in comparison to 2.9.x. or maybe there was a practice of particularly structured code that compiled better on 2.9 in the old days? even if so it wouldnt affect ports or more contemporary software.

how about to try some 4.x.x version? afair it was again more efficient than 3.x.x. there should be at least 4.5.0 by bernd rosch floating around somewhere?
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 26, 2016, 12:28:49 PM
Quote from: wawrzon;809197
is this correct? so the differences move almost within 5% range. i wonder where is this famous inefficiency later gcc versions were blamed for in comparison to 2.9.x. or maybe there was a practice of particularly structured code that compiled better on 2.9 in the old days? even if so it wouldnt affect ports or more contemporary software.

how about to try some 4.x.x version? afair it was again more efficient than 3.x.x. there should be at least 4.5.0 by bernd rosch floating around somewhere?

When I compile the main Quake2 program, I got small freeze during the game or crash using -O2...

Smell bugs, certainly float issues I guess...

Where to download the 4.5.0 ?
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: wawrzon on May 26, 2016, 04:47:00 PM
Quote from: Cosmos;809201
Where to download the 4.5.0 ?


see it here:

http://amiga.sourceforge.net/phps/logger.php?download=GCC-4.5.0-m68k-amigaos-cygwin.7z

btw. its for cygwin, dunno if it works on some regular x86 linux, never tried. used it with amidevcpp package years ago..
----------------------------------------------------------------
as an option, even though it sounds a bit far fetched, i think it should be possible to simply build aros68k toolchain, which contains 4.6.4 as default, there is also a patch for 6.x.x available, but it didnt always produce the right code, bigger binaries being a bit smaller in comparison. having amiga-m68k target installed it should likely be possible to compile with it a regular amiga program that doesnt depend on aros libs. resulting binary would be in elf format, but it can be converted to hunk with aros elf2hunk tool. voila! never tried it, but it should actually work.. i guess..
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 26, 2016, 05:00:18 PM
Quote from: wawrzon;809213
see it here:

http://amiga.sourceforge.net/phps/logger.php?download=GCC-4.5.0-m68k-amigaos-cygwin.7z

btw. its for cygwin, dunno if it works on some regular x86 linux, never tried. used it with amidevcpp package years ago..


Sorry, not available !
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: wawrzon on May 26, 2016, 05:24:27 PM
Quote from: Cosmos;809214
Sorry, not available !


dunno whats wrong with my link. navigate here:
http://amiga.sourceforge.net/
and scroll down to the seventh package (GCC 4.5 for Amiga m68k (Cygwin Hosted)), the link from there works for me.
Title: Re: New Quake2 68k faster version for 68040/68060
Post by: Cosmos Amiga on May 27, 2016, 05:50:02 PM
Ok, the new version is available here : http://warpclassic68k.blogspot.fr/p/blog-page.html

I'm now going to build this update with -O0 to see if it's better or not in terms of speedup...

I'm looking for some good C/C++ coders to find & fix gcc 3.4.0 bugs : every bugs can be found, only a question of will power !


:)