Welcome, Guest. Please login or register.

Author Topic: 68k emulation benchmarks  (Read 4996 times)

Description:

0 Members and 2 Guests are viewing this topic.

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16882
  • Country: gb
  • Thanked: 6 times
    • Show all replies
Re: 68k emulation benchmarks
« on: February 06, 2012, 10:30:28 PM »
@Piru

Don't be so sure. For E-UAE (slightly old build, though) on my 2.66 GHz Core2 Quad:

Settings:
CPU: 68040
Speed: Maximum
Idle on STOP instruction: off
Memory accesses: all direct (using shmmax of 512MB, total emulated memory of 274MB)
Generate CPU flags: only when needed
ICache flush: soft
Compile through unconditional branch: enabled
JIT FPU compiler: enabled
Translation buffer: 8MB

Speed test for FFT + iFFT: (float)
time needed 612ms for 413696 samples, => 7.66410255432128x speed @44100Hz/stereo
Speed test for FFT + iFFT: (integer)
time needed 643ms for 413696 samples, => 7.29460477828979x speed @44100Hz/stereo
Speed test for FFT + iFFT: (integer handoptimized 68K ASM)
time needed 301ms for 413696 samples, => 15.5828266143798x speed @44100Hz/stereo

Not that much faster, really.
« Last Edit: February 06, 2012, 10:32:51 PM by Karlos »
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16882
  • Country: gb
  • Thanked: 6 times
    • Show all replies
Re: 68k emulation benchmarks
« Reply #1 on: February 06, 2012, 10:51:40 PM »
The results for 4.1 running on my humble 603 were rather slower...

Speed test for FFT + iFFT: (float)
time needed 22463ms for 413696 samples, => .208806961774826x speed @44100Hz/stereo
13.06x slower than X1000

Speed test for FFT + iFFT: (integer)
time needed 18830ms for 413696 samples, => .249093517661094x speed @44100Hz/stereo
14.76x slower than X1000

Speed test for FFT + iFFT: (integer handoptimized 68K ASM)
time needed 15410ms for 413696 samples, => .304375797510147x speed @44100Hz/stereo
24.98x slower than X1000

I should check what my actual 68040 manages.
« Last Edit: February 06, 2012, 10:57:57 PM by Karlos »
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16882
  • Country: gb
  • Thanked: 6 times
    • Show all replies
Re: 68k emulation benchmarks
« Reply #2 on: February 06, 2012, 11:14:14 PM »
Quote from: Piru;679618
Even 060@50 is slow enough to result is quite unreadable graph:

It would be more readable if you could have the values rotated 90 degrees so that they didn't span the widths of multiple bars. I don't mind having to look at them sideways :)

PS: The 060 results seem a bit skewed to me. Isn't it true that the 060 is pretty good at floating point, particularly the sort of multiply accumulate type stuff FFT involves? I would have expected it to score better than it did. Or rather, not expected the integer version to be that much faster than the floating point one. I guess the code slots into both execution units pretty well?
« Last Edit: February 06, 2012, 11:24:09 PM by Karlos »
int p; // A
 

Offline Karlos

  • Sockologist
  • Global Moderator
  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 16882
  • Country: gb
  • Thanked: 6 times
    • Show all replies
Re: 68k emulation benchmarks
« Reply #3 on: February 07, 2012, 12:08:43 AM »
Quote from: Piru;679626
Perhaps the compiled version runs into unimplemented 88x FPU instruction? Should try to build it with proper compiler for 68060...


It's written in Blitz Basic by the look of things, not sure which 68K FPU targets are supported by it's compiler these days. ISTR none whatsoever, when I last messed with it.
int p; // A