DSP Mandelbrot performance boost

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ก.พ. 2021
  • I go in search of extra performance out of the DSP.
    The mandel_dsp binary is available on Aminet and the source is on my github at github.com/Wrangler491/AA3000...
    Music from www.zapsplat.com
  • เกม

ความคิดเห็น • 18

  • @warnergt
    @warnergt 3 ปีที่แล้ว +2

    That DSP3210 Mandelbrot program started out as a DSP32C (the precursor to the DSP3210) Mandelbrot program at DuPont in 1990 when I was working on high-end ($50,000.00) color printers. We used the AT&T floating-point DSP for color correction. This was a period when Mandelbrot imaging was kind of popular and a state-of-the-art computer utilized an Intel 80386. To compute a massive Mandelbrot image for that printer, the 80386 took four days! As an experiment, I wrote the Mandelbrot code in assembly for the AT&T DSP32C. It computed in four hours! We were stunned. The power of the DSP became immediately obvious.

    • @wrangleramiga896
      @wrangleramiga896  3 ปีที่แล้ว +1

      Great to make contact! And your code lives on! I must admit I was stunned at the speed of the DSP once I was using it efficiently. It's a real shame Commodore didn't carry on with it in their machines (or Apple really exploit it fully).

    • @warnergt
      @warnergt 3 ปีที่แล้ว +1

      @@wrangleramiga896, yes, I agree. And, no sooner did that DSP show up in Macs (Centris 660av and Quadra 840av) did Apple announce it was switching to the PowerPC processor. It was a great win for the AT&T DSP but short-lived. Those machines were very popular despite being on their way out just as they arrived.

  • @kopernikus1955
    @kopernikus1955 3 ปีที่แล้ว +1

    The demo is not compiled correctly in regard to the FPU. With the correct compiler options, the 68060-FPU is just as fast as the DSP.

  • @MrLukealbanese
    @MrLukealbanese 3 ปีที่แล้ว

    Marvelous😁😁😁

  • @skyhawkindependent3750
    @skyhawkindependent3750 3 ปีที่แล้ว +1

    Could this be sped up by calculating and drawing the Mandelbrot scan line wise instead of column wise? DRAM access is usually faster if memory is accessed sequentially. By calculating and drawing column wise, the memory access is similar to random access and probably also not profit from the data cache.

    • @wrangleramiga896
      @wrangleramiga896  3 ปีที่แล้ว +1

      Going horizontally might make some speed up but I think it would be marginal given the Amiga's bit plane approach to colour screens.

  • @ViktorSoponyai
    @ViktorSoponyai 3 ปีที่แล้ว +1

    please better quality videos! :(

  • @fundi_mike
    @fundi_mike 3 ปีที่แล้ว

    sooo looking forward to playing with the dsp chip myself, really need to finish soldering my AA3000+ board..
    How much onchip mem does the dsp have ?
    Also still think you should try row by row instead of column by column

    • @wrangleramiga896
      @wrangleramiga896  3 ปีที่แล้ว

      There's a massive 8K on board RAM on the DSP, so fitting meaningful code into that is going to be a challenge - reminds me of coding for the ZX81!

    • @torstenk.351
      @torstenk.351 3 ปีที่แล้ว

      This particular DSP was specifically designed to share motherboard RAM with a fullblown CPU to take up small, broken down floating point tasks. The onboard RAM should be thought of more in terms of cache.

    • @wrangleramiga896
      @wrangleramiga896  3 ปีที่แล้ว

      That's a better way of looking at it. But it does leave the programmer with a lot to do to decide what tasks get "cached" like that. I guess AT&T's VCOS (Visual Caching OS) for the DSP3210 would have handled some of that.

  • @vertigoz
    @vertigoz 3 ปีที่แล้ว

    But can it run Doom? xD

    • @wrangleramiga896
      @wrangleramiga896  3 ปีที่แล้ว +1

      Haha! Well, there is an Atari Falcon DSP version of Doom, so I guess the answer is yes!

    • @blast4722
      @blast4722 4 หลายเดือนก่อน +1

      ​@@wrangleramiga896good point, but I see one issue - DSP RAM constraints: DSP3210 1Kx32bit vs MC56001 0-waitstates 24Kx24bit. Anyway, more DSP video pls.

    • @wrangleramiga896
      @wrangleramiga896  4 หลายเดือนก่อน

      Actually, it's 2Kx32 bit but I take your point.

    • @blast4722
      @blast4722 4 หลายเดือนก่อน

      @@wrangleramiga896ok I see it now: RAM0: 1Kx32bit and RAM1: 1Kx32bit. BTW I'm wondering about memory bandwidth: DSP3210 Fast RAM. Do you have any results?