Welcome, Guest. Please login or register.

Author Topic: Zorro III speed (asynchronous vs synchrous etc..) 50mb/s ?!  (Read 5033 times)

Description:

0 Members and 1 Guest 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
I have a little proggie you can test your gfx card's VRAM access speeds with, if you want to test it. Runs on 68040 or above only (unless I take the move16 tests out)...
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: Zorro III speed (asynchronous vs synchrous etc..) 50mb/s ?!
« Reply #1 on: March 22, 2004, 11:39:42 PM »
@Patrik

I beginning to see the term "Busmaster" applies to people as well as hardware ;-)

Hmmm, that makes me think. I wonder where Shawn is these days? I bet he has some interesting Zorro bus benchmarks :lol:
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: Zorro III speed (asynchronous vs synchrous etc..) 50mb/s ?!
« Reply #2 on: March 23, 2004, 02:43:17 PM »
@Cass

Sorry about that - this whole framework update made me forget ;-)

Anyway, you can download it here.

-edit-

I forgot to say - the program was compiled using 040+FPU options and linked with the 040+FPU version of the framework libs.

As such, it *needs* an FPU to run!
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: Zorro III speed (asynchronous vs synchrous etc..) 50mb/s ?!
« Reply #3 on: March 23, 2004, 06:28:22 PM »
Quote

Jose wrote:

Cool avatar:-)Is that Beavis on the right side?  


Yes, its beavis and butthead rocking away. The original image was:
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: Zorro III speed (asynchronous vs synchrous etc..) 50mb/s ?!
« Reply #4 on: March 23, 2004, 06:33:49 PM »
Quote

NightShade737 wrote:
Just checking, but you definately means Mb and not MB?


I'm pretty sure people here mean 2**10 bytes :-)
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: Zorro III speed (asynchronous vs synchrous etc..) 50mb/s ?!
« Reply #5 on: March 24, 2004, 01:14:07 AM »
Please ignore the conversion speed results for this test - there's clearly a bug in the calculation for 24-bit pixels (forgot to divide by bytes per pixel there, hence 3x expected). Besides, only the read / write / copy to and from VRAM give the actual bus performance estimates.

@Cass,

Well, that figure you calculate for 800x600x16 assumes that you are basically copying every frame from fast ram to video ram, which I strongly doubt. Only movie players would need to do this.

I would expect any well written 2D tile based games to cache background stuff as bitmaps (where transparency is not an issue) and only refresh the areas of the display where stuff happens.

Even scrolling (without using a superbitmap approach) should only amount to a blit of the remaining visible background area and then an update of all the smaller areas that have changed / been uncovered. I've experimented with this basic idea on the bvision and can confirm that its fast, even on 040.

-edit-

Back on the bus speed issue, here are some results for the local bus on a BlizzPPC 060 @ 50MHz + BVisionPPC:

Code: [Select]
[size=x-small]
Surface width: 640, height: 480, modulus: 0

Surface hwWidth: 640, hwHeight: 480
Test data pixel format

Bytes   : 2, endian native
Bits    : A[  0] R[  5] G[  6] B[  5]
Offsets : A[  0] R[ 11] G[  5] B[  0]
Maxima  : A[  0] R[ 31] G[ 63] B[ 31]

Window pixel format

Bytes   : 2, endian native
Bits    : A[  0] R[  5] G[  6] B[  5]
Offsets : A[  0] R[ 11] G[  5] B[  0]
Maxima  : A[  0] R[ 31] G[ 63] B[ 31]

Read RAM      : 38652.13 K/sec
Write RAM     : 37944.66 K/sec
RAM->RAM      : 16699.80 K/sec
RAM->RAM[16]  : 21980.19 K/sec
Read VRAM     : 5708.84 K/sec
Write VRAM    : 17526.77 K/sec
RAM->VRAM     : 12143.51 K/sec
RAM->VRAM[16] : 11964.10 K/sec
VRAM->RAM     : 4606.52 K/sec
Conversion    : 12121.21 K/sec [output bandwidth]

Conversion attained  99.81% copy speed
[/size]
int p; // A