Welcome, Guest. Please login or register.

Author Topic: Will OS4 have SMP after all  (Read 32485 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline takemehomegrandma

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2990
    • Show all replies
Re: Will OS4 have SMP after all
« on: July 25, 2013, 11:04:33 AM »
Quote from: minator;742058
Quote from: spirantho;741778
My understanding is that AmigaOS is basically not great friends with SMP, because of the way that it works.
Simply put the existing Amiga OS design is incompatible with the whole idea of SMP.

The Amiga uses a single address space for everything including the OS.  There is also no real memory protection for apps or the OS.  Apps have direct access to the OS internals.

If you have more than one app running simultaneously on different processors both can write to the internals of the OS at the same time.  When this happens the OS will very rapidly crash due to data corruption.


Yes, per design, per definition of "Amiga", there can't be SMP. Everyone knows this, it's a mystery why the opposite is still being claimed by some. It's not a matter of tweaking the API with a few function calls, it can not happen!

SMP in Amiga is like throwing up a stone in the air and expect it to stay there, hovering.

A stone won't fly. At least it won't hover!

And it doesn't matter if you play word-games, trying to change definitions, etc...

   "I never liked calling the feature "Hovering Stone" and I prefer to call it "Stone-in-Air". My reason is that you always get some egghead piping up and tossing definitions around. In my opinion, users don't care if it is "Hovering Stone" or "Airborne stone falling towards the ground" or WXYZ or whatever else as long as all the $3,000+ "AirStone-X1000" they paid for is spending time in the air at some point."

...an "Airborne stone falling towards the ground" may be one definition of "stone-in-air", but it's very far from "hovering"!
MorphOS is Amiga done right! :)
 

Offline takemehomegrandma

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2990
    • Show all replies
Re: Will OS4 have SMP after all
« Reply #1 on: July 25, 2013, 11:05:14 AM »
Quote from: minator;742058
Quote from: spirantho;741778
For this reason, Hyperion are aiming at getting multi-processor support in without SMP - which is quite possible.

There is probably a way to hack on some form of multi-processing using OS proxies but this is going to slow things down.  Alternatively you could use an AMP systems that gives you a series of psuedo-independent OS instances (i.e. one copy of the system per processor).


Yes it should be possible to add on some ASMP/AMP solution, it has been done before. PowerUP was a kind of AMP flavor, although quite special and unique since it used CPU's from different architecture. But the concept could still serve as an illustration of how such an implementation could look like from an OS/API/Application point of view.

But creating an API to use the second CPU/Core as a number-crunching co-processor, or indeed using it to run a "psuedo-independent OS instance", is fundamentally different from SMP, and SMP is what people generally is talking about when talking about multi-processing, SMP is simply put the de-facto definition of multi-processing today!

MorphOS also runs on a few dual-CPU systems, this isn't something unique for OS4, and the subject of whether it would be possible to implement some AMP solution to utilize the second CPU somehow has been up for discussion a few times. Would indeed be possible, probably not very difficult either. Question is rather whether the MorphOS Team finds it worthwhile, if the real life benefits would actually warrant the effort? Probably not, even if I personally is of the opinion that Reggae alone could perhaps make it worthwhile (and some other media applications could perhaps also make benefit in an easy enough manner to make it worthwhile?). But OS4 doesn't have Reggae...

(Reggae is Amiga Datatypes done right! :) )
MorphOS is Amiga done right! :)
 

Offline takemehomegrandma

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2990
    • Show all replies
Re: Will OS4 have SMP after all
« Reply #2 on: July 25, 2013, 11:07:40 AM »
Quote from: minator;742058
Quote from: spirantho;741778
Would people notice the difference between this and SMP? Probably not, especially on an OS as efficient as AmigaOS.

This matters a great deal.  
Many apps these days originated on Linux or other OSs.  If these apps can make use of multiple processors they can run faster.  These applications are designed for an SMP system, running them on a non SMP-system will get you no speedup because they won't be able to use the other processors.  You will have to rewrite any such applications for that to work.

Furthermore any existing Amiga apps will not be able to take advantage of the other processors either.  You will have to rewrite them to use the other processors as well.  This is no trivial rewrite, it will involve splitting the application into parts and somehow getting them parts to communicate and share data.  This is notoriously complicated.

...and I haven't even mentioned Amdahl's law.

The answer to this is very simple.  The MorphOS guys had it figured out years ago - you need design and build a new OS.  Unfortunately, it's a massive amount of work and will take many years to complete.


Even if applications aren't recoded to actually be multi-threaded in an effective way (but merely ported/recompiled for the "new OS"), having different apps seamlessly spread out running on different CPU's (as well as all the various running OS components themselves) would still mean a general speedup. This is what most people generally mean when talking about multi-processing, a general speedup by having applications (or threads) distributed to run on all available CPU resources (multi-threading of course improves things even more, by increasing the "resolution" of the distribution). But then we are again talking about SMP, and SMP is incompatible with Amiga!

And the point is - If the cord to the legacy is to be cut, if we are to start with a clean slate (which would also enable the possibilities of 64-bit, true memory protection, etc), then the question arise: Why continue with PPC at all? You might as well migrate to x86 then, and gain access to real 2013 level desktop and laptop computers at affordable prices! So if they had been going SMP, there would no longer have been any need for $3.000 systems with incomparably poor performance, you could just use real 2013 level HW! This would also be the only way of expanding the size of a shrinking/dying community of users, maybe even to such a degree that it would be relevant to start thinking of the users as a real *market* again, which would in turn also be the only way of attracting new, fresh blood developers, which would in turn generate more users, which would in turn..., ..., ...
MorphOS is Amiga done right! :)
 

Offline takemehomegrandma

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2990
    • Show all replies
Re: Will OS4 have SMP after all
« Reply #3 on: July 25, 2013, 11:08:46 AM »
Quote from: minator;742058
Quote from: spirantho;741778
So, don't ask about SMP - ask about multi-processing, as SMP is just one type of multi-processing.

No, do.  It's quite important.


Indeed, the difference is fundamental!

It's like apples and oranges, both may be fruit but they're not at all the same, not even similar.

The point is that when you have been selling $3.000+ HW/OS combos that has a pronounced SMP specification as one of the selling points (and also plans on selling others in the future), playing with words like this won't cut it.

An "Airborne stone falling towards the ground" is very far from "Hovering", both may be "stone-in-air", but while a "hovering stone" can be really useful and give a general overall performance improvement to the system, an "airborne stone falling towards the ground" will very much less so...

This DOES matter, the difference IS important! So, don't ask about multi-processing - ask about SMP!

;)
MorphOS is Amiga done right! :)
 

Offline takemehomegrandma

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2990
    • Show all replies
Re: Will OS4 have SMP after all
« Reply #4 on: July 26, 2013, 11:29:45 AM »
Quote from: ElPolloDiabl;742332
Is it possible to have one version single core, and then slowly migrate the software to multi-core? You could dual boot either version.


Of course you could have 2 separate OS's and dualboot between them (like you always could)...

Quote from: haywirepc;742341
All of this is bull****. If current amiga ng os systems can't do smp then say goodbye and reboot to ng/2


I think this is the plan for the MorphOS Team. At least they have said they will migrate to another CPU architecture and that they are working to make the OS 64-bit (on a virtual machine for development purposes). Possibly SMP etc as well while they're at it, who knows?

Quote from: Iggy;742343
It would be nice not to have to resort to UAE.


When you start incorporating things like SMP you don't have much of a choice, you need a sandbox for the legacy. Problem isn't the new/existing/still maintained applications (they can be adapted), problem is the old Amiga apps whose whole existence and ability to function requires the environment to be and behave in the Amiga way, and that is not compatible with SMP. If you are to move to x86/ARM you will also face little/big endian incompatibility. UAE is a quick and nice option IMHO. Works for OK AROS AFAIK. Indeed it's not the same as what we have today, but in order to move forward (x86, x64/64-bit, memory protection, possibility of going SMP etc) with all the benefits that may bring, I think this is a cheap price to pay.

Quote from: wawrzon;742350
at the point all three systems will want to go for those extended features that will likely set them on the same level of backward compatibility aros is now, namely uae. lets face it.


Funny thing is that if AROS would also go this "NG/2"-route, then a 68k "distro" of this version/branch of AROS would also have to use UAE for legacy Amiga 68k apps, even when running on a real 68k Amiga! (Not that there are a great deal of 68k Amigas with multiple CPU's :lol:, but the "NG/2"-differences in the OS itself would require it)

:)
MorphOS is Amiga done right! :)
 

Offline takemehomegrandma

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2990
    • Show all replies
Re: Will OS4 have SMP after all
« Reply #5 on: July 26, 2013, 11:40:37 AM »
Quote from: OlafS3;742355
Why do you not have backward compatibility when using UAE? You only have a problem with f.e. libraries that only exist for 68k and cannot be ported. I do not know how often this is the case and how many software needs this. And of course you have a problem with components written in assembler and thus not be portable. But if MorphOS dev are looking in future they have avoided this.


The current MorphOS model (and its implementation) is beautiful, simply put. There is no denying in that. It would be sad to lose it in a way, kind of traumatic even, but IMHO taking the OS further by incorporating the features we are discussing here and also migrating to a different ISA wold be totally worth it.

There is no future on PPC, MorphOS has lived its life in this incarnation as long as it could, it has sure made the most out of it and utilized all the best HW, but I think the PPC road for MorphOS has come to its end. An ISA migration requires a change in the MorphOS model, which is sad, but it would allow the OS to evolve further. And when the legacy is cut off anyway, there is nothing (but time, energy and motivation) preventing an exploration of new, "modern" OS features. This could mean many great things!

:)
MorphOS is Amiga done right! :)
 

Offline takemehomegrandma

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2990
    • Show all replies
Re: Will OS4 have SMP after all
« Reply #6 on: July 26, 2013, 11:53:38 AM »
Quote from: OlafS3;742369
You cannot mix everything.


On MorphOS you can! :)

Old 68k legacy apps (and libraries and other system components) happily mixed with new PPC ones, scheduled by the same scheduler and sharing the same HW and OS resources, in the same environment, in a completely seamless way (of course they aren't really 68k anymore but the binaries has been recompiled into native PPC binaries, but the apps don't even know this themselves, so... ;)). Please don't belittle this. It's not something trivial, it's not unimportant. The MorphOS environment *is* the Amiga environment, greatly improved, and where the meaning of 68k/PPC has been marginalized to a minimum, this is what makes it possible to say:

MorphOS is Amiga done right! :)
MorphOS is Amiga done right! :)