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
Documentation about the Vampire hardware

Asymmetric Multiprocessing

Pak Rat

Posts 18
09 Jan 2016 07:34


Glad you guys and this forum is back. :)

When the forum was up before, it was talked about the possibility in the future of using a main core, and an x number of sub cores (each one an Apollo), as Exec is not capable of symmetric multiprocessing without breaking compatibility. Asymmetric multiprocessing, however, you guys said was possible. I wonder if you have anything in the Apollo (or might in the future) to support sub cores? All modern systems are pretty much multicore any more, so no shame in having it on Amiga. ;)  Libraries and datatypes and things would need to be written to sense and then use any subcores found to farm out tasks in an optimal way. Any app that used one of these datatypes would suddenly be faster at processing it.

Is there any advantage to running a multicore system in FPGA vs. ASIC by how each works? It seems like at least one advantage of having an AMP vs. an SMP system is that the main core is always *always* responsive to the user in the GUI, even though Intuition is already pretty good at making the system feel about as responsive, no matter how many tasks you're running. :)


Gunnar von Boehn
(Apollo Team Member)
Posts 6214
09 Jan 2016 12:05


Instantiating more then one Apollo-CPU in an FPGA is technically not a problem at all.


Michal Warzecha

Posts 209
11 Jan 2016 14:38


But to use that, should be OS changed to use that feature? Multicore processing?


Thierry Atheist

Posts 644
11 Jan 2016 15:12


I've always thought of it as ultimately being set up like this:

Two CPUs running any version of AOS, even the same one, independent of each other, having their own 2 Gigs of RAM available on the circuit board and communicating with each other through "perceived" serial, or parallel, or Ethernet connections. Real traces in an ASIC (or FPGA gate paths) would open communication between the 2 CPUs. A custom program would have to be written to run on both CPUs to open a unique dialogue between the 2 concurrently running AOSs so that they can decide which CPU is controlling output (and when) to the monitor, and which of the 2 is receiving input from the various attached input devices (keyboard, mouse, internet modem, etc.)

I would have it, so that there is an icon on the screen, and when you  (double) click on it, you "jump through, with all controls switching over" to the other CPU.

It would be like moving to another dimension, and being a bit different, if not the same AOS version is on the other side... like in the TV show Sliders.

Doing it this way, no AOS changes would be necessary. Only hardware needs to be custom designed to do it. The software would be unusual (don't go complicated "virtual machine, with crazy background software overhead"). Unique in fact, I believe.


Thierry Atheist

Posts 644
11 Jan 2016 16:13


I dare say that the (or type of) "ghost in the machine" situation is created by how I think Amiga "Asymmetric Multiprocessing" should operate. It's a real, maybe, "two heads are better than one", scenario.

Imagine that, the other CPU is always watching, well, the other CPU, and should it "guru meditation", it could a send a restart signal. That could increase the Amiga's uptime ability, assuming that the situation causing the lock-up isn't somehow permanently "in-motion" due to the way it was set up to operate. I mean that, if some kind of inherent error was set up when you first started it on some continuous routine, such that it would guru meditate right away again, for instance. I hope I'm not confusing you.

And AGAIN I say, I don't think that any other computer can do this, thusly:

Only AMIGA, makes it POSSIBLE!!!!!


Claudio Guglielmotti
(Apollo Team Member)
Posts 185
11 Jan 2016 20:19


we have 2 gfx board, one is ECS and the other is hdmi.
Kippa is adding a 2nd keyboard connector...

posts 6