SMP/AMP, or other multiprocessing for MorphOS???
  • Butterfly
    Butterfly
    WB_Coder
    Posts: 66 from 2014/5/1
    Just finished watching the YouTube video of Steve Solie talking at AmiWest 2013 where he talked a little bit about the progress made on the AmigaOS4.x "X Kernel".

    I know that there has been some small amount of discussion about the possibility of MorphOS ever using any kind of multiprocessing to take advantage of the dual G4, or G5 CPUs in our PowerMacs, but I don't remember what the official position of the MorphOS Dev. Team is on this subject, or if any of the Dev. Team members have mentioned anything regarding the possibility of MorphOS ever being able to take advantage of more than one CPU, or more than one core on multicore CPUs.

    I don't have the patience and search skills to find threads here, or sources elsewhere on the Internet to find all discussions about this topic, so I am asking here to find the answer if the answer is "NO, MorphOS will never have multicore, or multi CPU support", of if the answer is "Maybe, there might be some way in the future for MorphOS to implement some kind of multi CPU, or multicore support without completely breaking all backward compatibility with all legacy software".

    Also my other question is this; have any members of the MorphOS Dev. Team, or other third party MorphOS developers, listened to the Steven Solile YouTube video and from the small amount of information he discussed there, can you tell us anything new about the way that Hyperion plans to implement multicore support, without breaking legacy support. Did he give any hints about how THEY are planning on side stepping the problems that would break legacy support, or did he give any hints about what kind of multicore support will be used in AmigaOS4.2?

    I know that many here will say "Who Cares what AmigaOS4.x does", but I think it is relevant to all MorphOS users who own dual G4 & dual G5 PowerMacs and any MorphOS user who would like to see SMP/AMP support to provide additional power and speed for MorphOS some time in the future.

    Personally, I would think that adding some kind of SMP/AMP to our existing PPC MorphOS would be easier and quicker to implement than porting MorphOS to the ARM, or x64 architectures, but only the MorphOS Dev. Team could really know that answer.

    [ Edited by WB_Coder 03.06.2014 - 11:35 ]
    WB_Coder = Wanna Be Coder
  • »03.06.14 - 22:32
    Profile
  • Paladin of the Pegasos
    Paladin of the Pegasos
    Yasu
    Posts: 1724 from 2012/3/22
    From: Stockholm, Sweden
    AFAIK the only way to get multicore support without breaking legacy support would be Asymmetric SMP (ASMP) where the extra core works as a co-processor. From what I've read the programs using it would have to be specifically written for this support.

    But what program would really have a use for it? Maybe MPlayer, but there aren't that many programs that would benefit by the extra core(s).

    SMP only makes real sense once MorphOS change architecture, along with all the other goodies we don't have. Until then, my vote (that doesn't count anyway) goes to improving the OS itself.
    AMIGA FORUM - Hela Sveriges Amigatidning!
    AMIGA FORUM - Sweden's Amiga Magazine!

    My MorphOS blog
  • »03.06.14 - 23:33
    Profile Visit Website
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12074 from 2003/5/22
    From: Germany
    > Asymmetric SMP (ASMP)

    "Asymmetric SMP" would be Asymmetric Symmetric Multiprocessing, which doesn't make sense. I guess you mean Asymmetric MP.
  • »03.06.14 - 23:43
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    In_Correct
    Posts: 245 from 2012/10/14
    From: DFW, TX, USA
    I request that questions like these be made into an easy to find FAQ section. Because I just clicked on a link which resulted another link, which ... Resulted in a third link.
    :-) I Support Quark Microkernel. :-D
  • »04.06.14 - 05:17
    Profile Visit Website
  • MorphOS Developer
    jacadcaps
    Posts: 2971 from 2003/3/5
    From: Canada
    Quote:

    In_Correct wrote:
    ...Because I just clicked on a link which resulted another link, which ... Resulted in a third link.


    Yes, that's the "awolf trap" ;)
  • »04.06.14 - 08:21
    Profile Visit Website
  • MorphOS Developer
    bigfoot
    Posts: 508 from 2003/4/11
    Hi there,

    I'm gonna answer your question from an angle of reality rather than an angle of Hyperion announcements. Sorry :)

    SMP support in a MorphOS-compatible MorphOS is possible, however it would run so slow and crippled that no one would want to use it. If you don't take my word for it, the AROS guys did some experiments that proved exactly that, which you can go and look up.

    An alternative to SMP support would be to create some Powerup-alike solution, where you can launch tasks on a second (or third, or fourth...) processor. Such tasks would be unable to interact with the operating system, though, and would then require special support in any application that would wish to make use of such functionality. At present time I can only think of two applications where adding such support might be worth the effort: Mplayer and dnetc.

    So, given the amount of effort it'd take to write and debug such a system, its value-to-effort ratio puts it far, far, FAR down the MorphOS todo list. That doesn't mean that it will definitely never happen, just that it is extremely unlikely in the current circumstances.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »04.06.14 - 08:48
    Profile Visit Website
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12074 from 2003/5/22
    From: Germany
    > I just clicked on a link which resulted another link, which ... Resulted in a third link.

    You need to read also, not just click. The thread I linked to already has statements of several MorphOS Team members on the topic of multiprocessing feasibility for MorphOS. And if you click from there (and so on), you are taken to more threads containing statements of MorphOS Team members on the topic of multiprocessing feasibility for MorphOS. So if you just click like a madman and don't read you're going to miss the relevant statements for sure.
  • »04.06.14 - 09:18
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12074 from 2003/5/22
    From: Germany
    > that's the "awolf trap" ;)

    No trap at all, just an attempt at being helpful towards the request of the thread opener regarding past statements of MorphOS Team members on the topic at hand by giving a link from which he can indirectly reach most of those statements. I'm really not inclined to take the time for seeking out all relevant statements and quoting them here, and I bet this is as well true for everybody else here who is aware of those statements.
  • »04.06.14 - 09:31
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    Samurai_Crow
    Posts: 153 from 2009/12/10
    From: Minnesota, USA
    Quote:

    bigfoot wrote:

    SMP support in a MorphOS-compatible MorphOS is possible, however it would run so slow and crippled that no one would want to use it. If you don't take my word for it, the AROS guys did some experiments that proved exactly that, which you can go and look up.



    One advantage the AROS team has that the MorphOS team doesn't is that the authors of AROS were free to relicense. The ARIX project is a hybrid of Linux and AROS. From what I've read on AROS-Exec.org, ARIX is an implementation of AROS' "Silly SMP" with parts of the Linux kernel to do the grunt work that the AROS team didn't have time to do.

    To do the same thing in MorphOS or AmigaOS 4.x would require purchasing or licensing some closed-source kernel that would work well for Amiga-like responsiveness. It would also have to run on PowerPC which is increasingly difficult to find. I don't know if Blackberry is willing to license the QNX kernel out any more, now that it's been bought out.
  • »04.06.14 - 10:03
    Profile
  • MorphOS Developer
    bigfoot
    Posts: 508 from 2003/4/11
    Quote:

    Samurai_Crow wrote:

    One advantage the AROS team has that the MorphOS team doesn't is that the authors of AROS were free to relicense.


    Nobody is free to relicense other people's work, so no, that's not true.

    Quote:

    To do the same thing in MorphOS or AmigaOS 4.x would require purchasing or licensing some closed-source kernel that would work well for Amiga-like responsiveness. It would also have to run on PowerPC which is increasingly difficult to find. I don't know if Blackberry is willing to license the QNX kernel out any more, now that it's been bought out.


    Assuming we wanted MorphOS to run on top of Linux, we could do that. There would be nothing stopping us from doing that. See Amithlon for an example. So no, that's not true either.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »04.06.14 - 10:38
    Profile Visit Website
  • MorphOS Developer
    jacadcaps
    Posts: 2971 from 2003/3/5
    From: Canada
    Do you guys really think it makes sense to put loads of work into something that will benefit less than 12% of the user base? The most popular machines are all single-core.

    https://morph.zone/modules/news/article_storyid_2068.html
  • »04.06.14 - 10:57
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    Samurai_Crow
    Posts: 153 from 2009/12/10
    From: Minnesota, USA
    Quote:

    bigfoot wrote:
    Nobody is free to relicense other people's work, so no, that's not true.


    Most of it has been relicensed so that the rest can be replaced.
    Quote:

    Assuming we wanted MorphOS to run on top of Linux, we could do that. There would be nothing stopping us from doing that. See Amithlon for an example. So no, that's not true either.


    Actually, after I posted that, I realized that ARIX is just going to be the kernel and maybe a VM. You could base MorphOS on top of THAT if you wanted to.
  • »04.06.14 - 11:29
    Profile
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    KimmoK
    Posts: 102 from 2003/5/19
    Quote:

    jacadcaps wrote:..The most popular machines are all single-core. ...



    Future is not single core. Not anywhere.

    The more work is put in single core API, the more further away is the next generation.

    IMHO, MorphOS team did superb work to recreate single core - no memoryprotection - 32bit AmigaOS + more (they won in the challenge).
    Now, please, bring us the alpha of the MorphOS-NG!

    (what kind of bounty would be needed to get dirty+quick NG version?)


    about AMP: the team has the competence/learnings from PowerUP, NG of that would be nicer than just keeping the other cores halted.

    And one more note: creating some use for other cores would encourage the development of new multicore PPC HW. (for EUR200, something like Efika, but with T1022 should be pretty doable ... also T1014 could be an option, for even lower price)

    [ Edited by KimmoK 09.06.2014 - 12:31 ]
    :-x :-P 8-)
  • »04.06.14 - 11:56
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12074 from 2003/5/22
    From: Germany
    > Do you guys really think it makes sense to put loads of work into something that will
    > benefit less than 12% of the user base? The most popular machines are all single-core.
    > https://morph.zone/modules/news/article_storyid_2068.html

    I believe the share of G5 machines (and thus also dual-G5 machines) may have increased since that statistics was published 9 months ago (i.e. only about 3 months after introduction of initial G5 support), especially considering that support for those machines has been enhanced in subsequent MorphOS releases. But you should know the current numbers better than I do, so maybe I assume wrongly.
    Also, you may have the cause-effect relationship backwards: MorphOS users may currently prefer single-CPU machines also because the second CPU would only act as unnecessary power eater anyway. As soon as MorphOS would support multiprocessing, this could change for a significant number of users because they could start looking for multi-CPU machines in particular. But this is also only an assumption.
  • »04.06.14 - 11:58
    Profile
  • Butterfly
    Butterfly
    WB_Coder
    Posts: 66 from 2014/5/1
    Quote:

    jacadcaps wrote:
    Do you guys really think it makes sense to put loads of work into something that will benefit less than 12% of the user base? The most popular machines are all single-core.

    https://morph.zone/modules/news/article_storyid_2068.html



    I agree with Andreas_Wolf, that if any kind of multiple processor, or multicore support were to be added to MorphOS some time in the future, it would have a dramatic effect in the number of MorphOS users who would purchase multi CPU, or multicore compatible systems. Also, if you assume that many, or most of the users who currently have Dual G4, and/or Dual G5 systems are also owners of one or more of the single G4, or single G5 systems you would need to subtract that number of users from the total number of licenses sold to get an accurate percentage of Dual CPU system users, compared to single CPU system users, and doing this math would raise the percentage of Dual CPU users much higher than the stated 12%.

    The future of PPC systems is obviously multicore, as can be seen in new Freescale designs. See the latest discussion about this in the X1000 thread here on MorphZone.org.

    BUT......and this is very important for all of us "users" to consider, if the MorphOS Dev. Team researches and decides that the amount of benefit that could ever be gained from implementing some kind of modified AMP on MorphOS, modified so that we would not lose all backward compatibility with Amiga software, if that benefit is too small, when measured against the effort to develop such a modified AMP structure for MorphOS, then we must listen to them and stop asking for a feature that does not advance our favorite OS.

    It seems to me that there are a few members of the MorphOS Dev. Team who are saying just that. That the AMP that many of the users would like to see some day is a waste of time and effort and will NOT be worked on any time soon, if ever.

    [ Edited by WB_Coder 04.06.2014 - 15:31 ]
    WB_Coder = Wanna Be Coder
  • »05.06.14 - 02:27
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12074 from 2003/5/22
    From: Germany
    > I agree with Andreas_Wolf, that if any kind of multiple processor, or multicore
    > support were to be added to MorphOS some time in the future, it would have
    > a dramatic effect in the number of MorphOS users who would purchase multi
    > CPU, or multicore compatible systems.

    Dramatic I'm not sure, but significant, yes :-)

    > some kind of modified AMP on MorphOS, modified so that we would not lose
    > all backward compatibility with Amiga software

    The AMP concept would need no modification to retain backwards compatibility with Amiga software. That's the advantage it has over other multiprocessing concepts like SMP or BMP.
  • »05.06.14 - 11:31
    Profile
  • MorphOS Developer
    bigfoot
    Posts: 508 from 2003/4/11
    The 12% figure was the upper limit, not the lower limit. Those 12% can only be reached if you assume that all Powermac G4 machines have a third party CPU upgrade.

    In reality it's close to 0% than 12%, and an educated guess would be maybe 4%.
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »05.06.14 - 13:31
    Profile Visit Website
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Andreas_Wolf
    Posts: 12074 from 2003/5/22
    From: Germany
    > Those 12% can only be reached if you assume that all Powermac G4 machines have
    > a third party CPU upgrade.

    Why? All supported PowerMac G4 generations except the "AGP Graphics" one include stock dual-CPU models.
  • »05.06.14 - 16:42
    Profile
  • MorphOS Developer
    bigfoot
    Posts: 508 from 2003/4/11
    You're right, my memory served me poorly. My own Powermac G4 was a single CPU model, though ;)
    I rarely log in to MorphZone which means that I often miss private messages sent on here. If you wish to contact me, please email me at [username]@asgaard.morphos-team.net, where [username] is my username here on MorphZone.
  • »05.06.14 - 20:01
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    minator
    Posts: 365 from 2003/3/28
    I'd not even consider an AMP system, it'll be a ton of work for very little gain.
    Even ported stuff than could use multi-core wouldn't run so it'd have to be heavily modified.

    SMP is the only sensible way to go. The "Q-Box" type solution proposed (many) years ago is still a solution. It involves what is essentially a different OS with existing MorphOS running in a box or VM of sorts.
    The problem is a new OS is a massive undertaking and that's not to mention whether you want to run on a different architecture.

    Everything is multicore these days. I can get a MK809 III off eBay for 37 Euros (including postage). That's a quad core 1.6GHz with 3GB RAM and 8GB flash. Even watches are dual core (no I'm not joking!).
  • »05.06.14 - 22:59
    Profile Visit Website
  • Butterfly
    Butterfly
    WB_Coder
    Posts: 66 from 2014/5/1
    Quote:

    bigfoot wrote:
    The 12% figure was the upper limit, not the lower limit. Those 12% can only be reached if you assume that all Powermac G4 machines have a third party CPU upgrade.

    In reality it's close to 0% than 12%, and an educated guess would be maybe 4%.


    It is closer to 90% of all G4 & G5 PowerMacs will have stock (from Apple) Dual CPU cards in them and if the MorphOS Dev. Team plans to stay with the PPC architecture, almost all NEW PPC CPUs will be multicore.

    But as I said before, if the MorphOS Dev. Team thinks the benefit for applications and speed is small and the work to implement AMP is very large, it makes no sense to do it at all.

    I completely trust the members of the MorphOS Dev. Team to make that decision (except for Bigfoot, who does not know that almost all G4 PowerMacs were sold with factory dual G4 CPU cards in them). ;-)

    [ Edited by WB_Coder 05.06.2014 - 13:31 ]
    WB_Coder = Wanna Be Coder
  • »06.06.14 - 00:29
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    In_Correct
    Posts: 245 from 2012/10/14
    From: DFW, TX, USA
    May I ask, how many new hardwares contain more than one processing core? Are these CPUs? Are the single core CPU becoming endangered species? Eventually, MorphOS should somehow be supporting more than one CPU core if that is all that becomes available. ...unless MorphOS Team wants to make custom hardware with single core CPU.

    (And it seems that all major Architecture have been increasing their productions of multi-core CPU computers.)
    :-) I Support Quark Microkernel. :-D
  • »06.06.14 - 03:43
    Profile Visit Website
  • Moderator
    Kronos
    Posts: 2236 from 2003/2/24
    Quote:

    WB_Coder wrote:

    It is closer to 90% of all G4 & G5 PowerMacs will have stock (from Apple) Dual CPU cards in them


    For the G5 thats obviously true, but for the G4 thats utter nonsense.

    Dual (stock) configs prior to MDD/FW800 versions make up only a very tiny fraction of whats being offered around here on ebay or elsewhere.

    Comes with little suprise considering the hefty pricetag these units had back in the day compared to the rather limited gains they offered (remember lots of Mac users were still on OS9 at that time and even the early versions of OSX weren't as SMP-friendly as today).

    Add the fact that most MorphOS users locking for such a unit in the past few years would have prefered single CPU configs due to heat/noise/power considerations.
  • »06.06.14 - 06:35
    Profile