Projects » Amiga OS 4 Projects » RadeonHD Driver » RadeonHD Development Log » Hardware Accelerated Solid Rectangles for R5xx Based Cards

Hardware Accelerated Solid Rectangles for R5xx Based Cards

Solid rectangles are now rendered by the graphics card, instead of by the CPU. This is the first hardware accelerated operation implemented in the RadeonHD driver (for Amiga OS 4.x). The increase in speed can be seen in benchmarks made using the P96Speed utility (specifically, the RectFill() benchmark):

RectFill() Speed Benchmark

Graphics Card Operations/second
Radeon 9000 pro AGP 3567
Radeon X1550 PCI (unaccelerated) 34
Radeon X1550 PCI 4479

That's a speed increase of almost 132 times. The performance of my Radeon 9000 card is provided for reference, and it is clear which GPU has more power; the Radeon X1550 beats the Radeon 9000 at this task by 26%. These benchmarks were performed using an AmigaOne-XE at 933 MHz, and the screen resolution was set to 1920x1080 at 60 Hz in all cases.

Please note that this acceleration is for R5xx chipsets only (i.e., Radeon X1000 series cards). The R5xx chipset differs significantly from the newer R6xx (Radeon HD 2000 and 3000 series) and R7xx (Radeon HD 4000 series) chipsets. Thus, acceleration for newer chipsets will come later. In the meantime, work will progress on 2D acceleration for the R5xx series. Now that the groundwork has been laid, implementing the remaining blitter operations should take less time.



Projects » Amiga OS 4 Projects » RadeonHD Driver » RadeonHD Development Log » Hardware Accelerated Solid Rectangles for R5xx Based Cards

Post your comment

Comments

  • @Tron
    I'm using a 33 MHz PCI slot because the 66MHz PCI bus cannot be used simultaneously with the AGP bus, and I still need the Radeon 9000. I don't know if the 2x AGP bus actually run at 2x speed (for uploads to the graphics card), or if transfers happen at 66 MHz.

    Whether an operation is limited by the bus bandwidth or not will depend on the operation being performed. Also, note that I'm currently using PIO mode for command transfer (as are the Radeon 7000/9000 drivers), so there's still room for improvement.

    Posted by Hans, 16/04/2009 12:53am (9 years ago)

  • That's what I was afraid of. Well, this driver still enables the usage of the new cards so I consider it worth the effort.

    Does the A1 have 33MHz or 66MHz PCI-bus? Just trying to figure out if SAM-Flex would benefit speedwise here.

    Posted by Tron, 16/04/2009 12:09am (9 years ago)

  • @Tron
    Yes, the PCI bus is going to be a bottleneck. I have blitting rectangles implemented as well now, and they are slower on the Radeon X1550 than the Radeon 9000. Unlike P96Speed's FillRect() test, the BlitRect() tests only blits small rectangles (FillRect() rendered both small and large rectangles). The test results suggest that these small blits take less time to occur than the time taken to send the commands.

    I haven't tested it, but I would expect blitting large rectangles to be faster on the Radeon X1550 than the Radeon 9000 due to the operation itself taking longer than sending the commands down to the card.

    Posted by Hans, 15/04/2009 11:33pm (9 years ago)

  • Progression! Very nice.

    Do you think that the PCI-bus is going to be a bottleneck in here at some point?

    Posted by Tron, 15/04/2009 1:53am (9 years ago)

  • Great work!
    With proper HW accelerated graphics OS4.x will fly!!!

    Thank you for your work!

    Posted by Allanon, 07/04/2009 2:32am (9 years ago)

RSS feed for comments on this page | RSS feed for all comments


Projects » Amiga OS 4 Projects » RadeonHD Driver » RadeonHD Development Log » Hardware Accelerated Solid Rectangles for R5xx Based Cards