Welcome, Guest. Please login or register.

Author Topic: RiVa AMMX Benchmarks  (Read 2178 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline TuKoTopic starter

  • Jr. Member
  • **
  • Join Date: Sep 2013
  • Posts: 69
    • Show only replies by TuKo
RiVa AMMX Benchmarks
« on: October 30, 2016, 08:03:06 AM »
Since start of the Apollo 68080 adventure, Stephen Fellner, author of the RiVa MPEG Player, was kind enough to share sources of his player with the Apollo team.

As some of you might have followed the changes in core over the last months, AMMX instructions were introduced in the Apollo-Core, meaning that software that take benefit from them experience big speedups.

With the dedicated work of Henryk Richter and flype, RiVa has been modified to take advantages from those AMMX instructions.

Here are some results :


Core: Apollo 68080 AMMX Core, Revision 3543, x11 speed
RiVa Parameters : VERBOSE NOAUDIO DISPLAY=HICOLOR NOSKIP FPS=1000

Download links :
Original RiVa
TopGun 320 Video
TopGun 640 Video

IQ has also been greatly improved (YUYV versus R5G6B5 quality) and stereo audio has also been enabled !

All this is still WIP and should be part of next GOLD2 release ;)

Stay tuned !

« Last Edit: October 30, 2016, 09:46:08 AM by TuKo »
 

Offline kolla

Re: RiVa AMMX Benchmarks
« Reply #1 on: October 30, 2016, 08:40:56 AM »
I spot a typo :)
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC
---
A3000/060CSPPC+CVPPC/128MB + 256MB BigRAM/Deneb USB
A4000/CS060/Mediator4000Di/Voodoo5/128MB
A1200/Blz1260/IndyAGA/192MB
A1200/Blz1260/64MB
A1200/Blz1230III/32MB
A1200/ACA1221
A600/V600v2/Subway USB
A600/Apollo630/32MB
A600/A6095
CD32/SX32/32MB/Plipbox
CD32/TF328
A500/V500v2
A500/MTec520
CDTV
MiSTer, MiST, FleaFPGAs and original Minimig
Peg1, SAM440 and Mac minis with MorphOS
 

Offline Matt_H

Re: RiVa AMMX Benchmarks
« Reply #2 on: October 30, 2016, 04:20:55 PM »
Nice to see, but what are AMMX instructions?
 

Offline Bennymee

  • Sr. Member
  • ****
  • Join Date: Jun 2002
  • Posts: 308
  • Country: 00
    • Show only replies by Bennymee
Re: RiVa AMMX Benchmarks
« Reply #3 on: October 30, 2016, 04:49:18 PM »
Quote from: Matt_H;815851
Nice to see, but what are AMMX instructions?

AMMX Instructions are Intel like MMX instructions for the Amiga with the Vampire:

http://www.apollo-core.com/knowledge.php?b=1¬e=1897
Amiga 500, 1200, 4000, Amigaone, Morphos, CyberstormPPC, Blizzardppc, OS4.x
 

Offline Rob

Re: RiVa AMMX Benchmarks
« Reply #4 on: October 30, 2016, 06:58:32 PM »
Quote from: Bennymee;815852
AMMX Instructions are Intel like MMX instructions for the Amiga with the Vampire:

http://www.apollo-core.com/knowledge.php?b=1¬e=1897


Thanks for the link I'd seen AMMX mentioned a number of times and had fair idea of what it was but I hadn't seen anything specific laid down and wasn't aware that it was compatible with MMX.
 

Offline psxphill

Re: RiVa AMMX Benchmarks
« Reply #5 on: October 30, 2016, 08:26:45 PM »
Quote from: TuKo;815839
With the dedicated work of Henryk Richter and flype, RiVa has been modified to take advantages from those AMMX instructions.


I wonder if they'll be able to make it fast enough, or whether eventually they'll add dedicated logic for decoding video.
 

Offline Hattig

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 901
    • Show only replies by Hattig
Re: RiVa AMMX Benchmarks
« Reply #6 on: October 30, 2016, 11:13:14 PM »
Quote from: Rob;815857
Thanks for the link I'd seen AMMX mentioned a number of times and had fair idea of what it was but I hadn't seen anything specific laid down and wasn't aware that it was compatible with MMX.


I don't think it's in any way compatible with Intel MMX.

It's just a poorly chosen name (because it creates confusion) for a useful set of instructions that they've added to the 68k ISA, because they can.
 

Offline Hattig

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 901
    • Show only replies by Hattig
Re: RiVa AMMX Benchmarks
« Reply #7 on: October 30, 2016, 11:15:29 PM »
Quote from: psxphill;815858
I wonder if they'll be able to make it fast enough, or whether eventually they'll add dedicated logic for decoding video.


That'll be difficult IMO (until they switch to an FPGA with DSP hard resource on it). But surely the movie is 24p, and this this enables 480p MPEG videos?

Not that anyone surely cares anymore about MPEG 1? Can this to MPEG 2? IIRC that used to take a reasonable bit of CPU grunt back in the early 2000s before hardware acceleration.
 

Offline Kremlar

  • Sr. Member
  • ****
  • Join Date: Jul 2009
  • Posts: 393
    • Show only replies by Kremlar
Re: RiVa AMMX Benchmarks
« Reply #8 on: October 31, 2016, 01:14:07 AM »
Quote from: Hattig;815871
I don't think it's in any way compatible with Intel MMX.

It's just a poorly chosen name (because it creates confusion) for a useful set of instructions that they've added to the 68k ISA, because they can.


http://www.apollo-core.com/knowledge.php?b=1¬e=1897
 

Offline omnicron10

  • Full Member
  • ***
  • Join Date: Dec 2006
  • Posts: 216
    • Show only replies by omnicron10
Re: RiVa AMMX Benchmarks
« Reply #9 on: October 31, 2016, 01:14:25 AM »
Quote from: Hattig;815871
I don't think it's in any way compatible with Intel MMX.

It's just a poorly chosen name (because it creates confusion) for a useful set of instructions that they've added to the 68k ISA, because they can.


From http://www.apollo-core.com/knowledge.php?b=1¬e=1897

It appears they are very similar to the Intel MMX instructions.

Here are the features taken from the above link.

"AMMX does implement INTEL well known MMX instruction set.
There are many optimized codecs available for MMX already - as the MMX operations are now also available on 68k - running/porting them to AMIGA is very straight forward.

If you are experience in coding MMX then you can use AMMX out of the box.
If you want to learn how to code for AMMX then I would recommend to read the excellent documentation of INTEL MMX. There is a wealth of literature about MMX coding howtos existing already.

Where does AMMX and MMX differ?
Both MMX and AMMX allow to run the SIMD instructions.
Both support the same type of operations.
Both allow to operate directly on Register or to use Memory as Input operand.
AMMX enhanced MMX in such a way that if offers
a) 3 Operand operations
b) Does not limit the programmer to 8 Register but allows him to use up to 32 Registers."
A500/030 40mhz with A530, Indivision ECS, , KS 3.1, 2 Megs Chip, 8 Megs fast.
A600 Vampire II
SAM440EP 667, Amiga OS 4.1u1
Dual G4 1.2 Mac MorphOS
Chameleon
CD32
SX64
128D
128
C64
64C