Overview Features Coding ApolloOS Performance Forum Downloads Products Order Contact

Welcome to the Apollo Forum

This forum is for people interested in the APOLLO CPU.
Please read the forum usage manual.
Please visit our Apollo-Discord Server for support.



All TopicsNewsPerformanceGamesDemosApolloVampireAROSWorkbenchATARIReleases
Information about the Apollo CPU and FPU.

"Fast Blitter Operations"page  1 2 3 4 

Gunnar von Boehn
(Apollo Team Member)
Posts 6197
01 Aug 2020 16:15


Kamelito Loveless wrote:

  A faster blitter would have solved the problem no?
  The Dave Haynie archive indicates performance increases by 6x 
 

 
As you might know the 68080 CPU is 300 Times faster than 68000.
So 6 times faster Blitter compared to 300 times faster CPU is nothing, right?

So even if we speed up the Blitter by 299 times - you still have a risk for problem.
 


Ray Couzens

Posts 93
01 Aug 2020 18:04


When I think back to my A500, running at 7Mhz, I was so impressed by this beautiful machine.  Then in 2012 bought an A1200 with an accelerator card running at around 42Mhz with 64MB memory. A machine I could only dream about all those years ago.

But now we have the Vampire running at insane speeds in comparison, but at the same time very compatible with the range of Motorola 680xx processors, what more could I ask for?  Well, we can always ask for more, that's human nature. But surely, this machine needs Apollo-OS improvements more than speed?

Just my humble opinion.




Kamelito Loveless

Posts 259
02 Aug 2020 10:52


Maybe but that is the Amiga spirit because we already have fast cpu on PC that can emulate Amigas real fast. Having the possibility to run a faster blitter and a faster cpu in parallel is the Amiga way to me. Only using the CPU you’ll have lesser performance if someone wanted to push the Vampire to its limit.


Gunnar von Boehn
(Apollo Team Member)
Posts 6197
02 Aug 2020 10:59


Kamelito Loveless wrote:

  Maybe but that is the Amiga spirit because we already have fast cpu on PC that can emulate Amigas real fast. Having the possibility to run a faster blitter and a faster cpu in parallel is the Amiga way to me. Only using the CPU you’ll have lesser performance if someone wanted to push the Vampire to its limit.

 
 
There was the time when small kids on school yard where making fun of other and saying "My a500 has a blitter but your Atari has not" na na na!
 
 
What I loved on Amiga was not the "bragging possibility, but that Amiga engineers did technical ideas that made sense".
  - The 68000 was very slow in Bit operations.
  - A 68030 CPU which was faster in Bit manipulation was very expensive.
  - So adding a low cost chip which supported Bit Operations made a lot sense. Even if it made programming more complex.
 
The Blitter is a clear technical trade-off.
The Blitter made programming more complex.
This extra complexity  is the reason of many crashes - as not all coders handled it right.
But the benefit was that the A500 got 68030 Bit-power for much less then a 68030 CPU did cost - So it lowered the price of the Amiga.
 

Let us ask the same question - which the Amiga dev team had again:
- Do we have today a lack of Bitmanipulation power?
  No we can do this with ease.
- Would adding a new Blitter lower the cost of the Sytem? 
  No
- Would we pay for it with making coding more complex = more crashes
  Yes




Kamelito Loveless

Posts 259
02 Aug 2020 14:41


Having
  a faster blitter could open an easier way for existing games to run at 50fps instead of 25 or less with a bit of hacking.
If you do a parallel with the PC they still use GPU and not only CPU. The PS3 with the Cell wanted to do that (only using the cell) they added Later in the game 2 RSX.


Gunnar von Boehn
(Apollo Team Member)
Posts 6197
02 Aug 2020 15:41


Kamelito Loveless wrote:

  Having
    a faster blitter could open an easier way for existing games to run at 50fps instead of 25 or less with a bit of hacking.
  If you do a parallel with the PC they still use GPU and not only CPU. The PS3 with the Cell wanted to do that (only using the cell) they added Later in the game 2 RSX.
 

 
What do you think, where will this discussion end?

You know that you ask for features which are already there.
The Vampire can already blit faster than the A500.
 


Kamelito Loveless

Posts 259
02 Aug 2020 16:21


Using the blitter?


A1200 Coder

Posts 72
02 Aug 2020 16:26


Depends really on how the team sees the future of the Vampire. If FPGA is the end point, then the only way to improve performance further significantly is to add more CPU cores or other units to speed up the performance. If adding another CPU core is not possible because of the space limitations on FPGA, then the next best thing would be to add a blitter chip to offload the computations of the CPU.

Many gfx boards on the PC had a blitter before the 3d cards came, and also the new Warp 1260 accelerator board for A1200 has a 128-bit blitter in the gfx card for RTG graphics. Also a 480 MHz ARM CPU to offload the 68060 with MP3 decoding.

So the blitter on Vampire could also be the place where simple 3D acceleration is built in, with some texturing functions and such available in addition to the usual copy/minterm stuff. And leave the evolution of FPGA-Vampire here as an endpoint. When 3D gfx unit becomes too powerful, it tends to make all nice 2d features, like sprites, copper and blitter obsolete, and also programming the 3D unit becomes an increasingly complex task.

The bus architecture may also need to be extended to allow for larger bandwidth for both the 3D blitter unit and CPU unit to work at the same time at full capacity.


Gunnar von Boehn
(Apollo Team Member)
Posts 6197
02 Aug 2020 16:52


Kamelito Loveless wrote:

  Using the blitter?
 

   
The Vampire could blit magnitude faster than A500.
So what you ask for is actually already there..

   
I have to admit, that I not understand what the "hope" behind such discussion is?
Maybe you can help me to understand this better?
 
 
As we all know the Vampire provides so many features that you can use to make new games.
You have the world fastest 68K CPU,
the world fastest Amiga memory
you have AMMX, you have powerful SAGA sprites and so much more.
You clearly have the fastest Amiga system ever.

If people are not able to make a new game with these features
then an extra blitter or 2 or even 3 Blitter will certainly not help them.

Adding more complex hardware will not make coding easier nor will it save you time. Either people want to code or people not want to code.
 
I my believe making hardware more complex is not the answer here.
My way is making the hardware simpler and easier to use.
So that coding for Amiga becomes easier.

If you look how the SAGA audio features or the SAGA Sprite did evolve over AMIGA then you will agree with me.
Coding does become a lot easier on Amiga now
I believe that this is the way we need to follow.



Vladimir Repcak

Posts 359
02 Aug 2020 23:10


Gunnar von Boehn wrote:

 
Kamelito Loveless wrote:

    Having
      a faster blitter could open an easier way for existing games to run at 50fps instead of 25 or less with a bit of hacking.
      If you do a parallel with the PC they still use GPU and not only CPU. The PS3 with the Cell wanted to do that (only using the cell) they added Later in the game 2 RSX.
   

    What do you think, where will this discussion end?
 

  Hopefully, when I share the following benchmarks from V4 :)
 
  @Kamelito:
  I myself, have been pondering (due to my experience with Blitter on Jaguar) how expensive is the scanline fill stage in my flatshader. Well, here are the data from 320x240@32bit:
 
  Filling 55,215px (out of 76,800 (=320x240)) took exactly 8.66% of a frame time.
 
  And this is the simplest, least effective way possible (simple dbra loop, e.g. a loop instruction executed per pixel written - e.g. 55,215x !!!).
 
  If I could be bothered to unroll the loop, then this cost could be practically halved. But I can't, as the cost is just so negligible.
 
  Now, if we had Blitter, this wouldn't be free. You need to set up Blitter register.
  Per each scanline.
 
  In my case, the 3D scene had 3,036 scanlines.
   
  How much CPU time would it take to set the Blitter over 3,000x ?
  And then you have to wait for Blitter.
- Option 1: Least effective - wait right away after you initiate the blit
- Option 2: Most effective - use CPU to compute the endpoints & Blitter params of the next scanline, while Blitter is busy filling last scanline. On Jaguar, my effective Wait time was just few %, as it was heavily parallelized. Can't do that here, but don't really need to (explained below).

All that is another few ops (perhaps just simple condition?) that are executed 3,000x
 
  I really doubt you would gain more than 3-4% of frame time. 8% is the top theoretical unreachable limit.
 
  Now, if you lock the framerate to 30 or 20 fps, then that percentage goes down 4.33% (of total game frame time) or 2.86%.
 
 
  Why on earth would someone want to burn time on improving performance on something that takes ~2% of frame time ?!? That doesn't even qualify as ridiculous. Much less if your framerate is locked to give player best possible experience without framedrops...

posts 70page  1 2 3 4