Poster | Thread |
NutsAboutAmiga
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 15:07:31
| | [ #101 ] |
|
|
|
Elite Member |
Joined: 9-Jun-2004 Posts: 12818
From: Norway | | |
|
| @umisef
Quote:
1) No task will run when a higher priority task is runnable. This means that of two tasks sharing access to a common, critical piece of data, only the lower priority one need ever issue a Forbid(); The higher priority one does not need to do so, because it simply cannot be interrupted by the lower priority one halfway through the access. |
But what if I start a task or process that has higher priority task then your higher priority task, or the same high priority? For me that sound like task asking for trouble.
What kind of task does that? A normal program or some driver or kernel thing? Do we care? Should we care?
I do not want to run any program designed like, that is horrible programming, If I understand you correct things like that can break even on AmigaOS3.x with out SMP.
Quote:
2) Interrupt handlers are atomic with respect to non-interrupt code and lower-priority interrupt handlers. Thus, any interrupt handler that wants to do multi-step changes to shared state can do so at will, without ever issuing any kind of locking. (In a related issue, non-interrupt code that wants to access such data needs to Disable() rather than Forbid(); No mention was made in the blog of how to deal with Disable()). |
There are no 680x0 drivers that I know of running on AmigaOS4.1. Problem solved, PowerPC drivers should be easy update, fix to support whatever they do.
The real issue with drivers is timing, they most sometimes do things without being interruption, because of timing, might not be written at correct interval / time to a controller, having some program running on other core does not effect that, and also they need exclusive access to the PCI / PCIe bus, or while doing DMA operations, or whatever.
On the other side of things your have IORequests and SendIO()/DoIO()/CheckIO()/AbortIO(), this are signal based operations.
Quote:
3) Nothing happens between the start of an instruction and the end of it. This means that no task will ever see the memory state created by another task with a half-executed instruction. |
680x0 program that depends on this are broken anyway, AmigaOS4.1 does not support programs like that.
Quote:
(4) is even more interesting --- because unlike the x86/x64, which (mostly) guarantees that things happen (or rather, are observed to happen) in order, the PowerPC has an extremely relaxed memory model. Each core can (and does) re-order its (externally visible) memory accesses pretty much at will. So if core A executes the code "a=1; b=1; ....stuff...; a=2; b=2;" and core B executes "if (b>a) then die(HORRIBLE_DEATH);", that condition on core B may very well trigger, because the "b=2" becomes externally visible before the "a=2" does. The only way to prevent that is by putting in explicit memory barriers or fences. This can lead to all sorts of trouble when using data structures that have separately updated payload and status fields --- with the guarantees AmigaOS has always made, updating the payload before setting the status to "up-to-date" ensured that any entry observed as "up-to-date" by another task would indeed hold valid payload data. Not so anymore when the other task runs on a different PPC core. |
No the program should have used mutex in the first place; there is no other way to granite that your, program isn't interrupted, in the middle of something. In addition, Atomic 680x0 has been broken for some time now.
If there is chance that cache is not is not synchronized between CPU's ore Cores, then the cache has to be re-synced, but as I understand it that's only an issue on some CPU's not all.
Last edited by NutsAboutAmiga on 01-Mar-2015 at 03:17 PM. Last edited by NutsAboutAmiga on 01-Mar-2015 at 03:14 PM.
_________________ http://lifeofliveforit.blogspot.no/ Facebook::LiveForIt Software for AmigaOS |
|
Status: Offline |
|
|
pavlor
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 15:20:58
| | [ #102 ] |
|
|
|
Elite Member |
Joined: 10-Jul-2005 Posts: 9588
From: Unknown | | |
|
| @NutsAboutAmiga
Quote:
There are no 680x0 drivers that I know of running on AmigaOS4.1. |
Some drivers in Classic version are 68k (eg. PicassoIV and some other). |
|
Status: Offline |
|
|
Boot_WB
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 15:30:02
| | [ #103 ] |
|
|
|
Super Member |
Joined: 14-Feb-2006 Posts: 1134
From: Kingston upon Hull, UK | | |
|
| @pavlor
Quote:
pavlor wrote: @NutsAboutAmiga
Quote:
There are no 680x0 drivers that I know of running on AmigaOS4.1. |
Some drivers in Classic version are 68k (eg. PicassoIV and some other). |
Where there is no need for a multicore kernel._________________ Troll - n., A disenfranchised former potential customer who remains interested enough to stay informed and express critical opinions. opp., the vast majority who voted silently with their feet. |
|
Status: Offline |
|
|
pavlor
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 15:31:07
| | [ #104 ] |
|
|
|
Elite Member |
Joined: 10-Jul-2005 Posts: 9588
From: Unknown | | |
|
| @Boot_WB
Quote:
Where there is no need for a multicore kernel. |
Of course. |
|
Status: Offline |
|
|
Aslak3
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 16:19:25
| | [ #105 ] |
|
|
|
Regular Member |
Joined: 21-Aug-2012 Posts: 268
From: Southampton, UK | | |
|
| @pavlor
Well, 68020 and later supported multi CPUs. Don't know if the rest of the Amiga hardware would though. I'm assuming not, though it's hard to know because the OS obviously didn't/doesn't. _________________ Blog |
|
Status: Offline |
|
|
NutsAboutAmiga
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 16:21:29
| | [ #106 ] |
|
|
|
Elite Member |
Joined: 9-Jun-2004 Posts: 12818
From: Norway | | |
|
| |
Status: Offline |
|
|
NutsAboutAmiga
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 16:28:31
| | [ #107 ] |
|
|
|
Elite Member |
Joined: 9-Jun-2004 Posts: 12818
From: Norway | | |
|
| |
Status: Offline |
|
|
Aslak3
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 16:31:57
| | [ #108 ] |
|
|
|
Regular Member |
Joined: 21-Aug-2012 Posts: 268
From: Southampton, UK | | |
|
| @NutsAboutAmiga
I was simple reminding folks that not having multiprocessing on Amiga 68k is an Amiga limitation not a 68k one. But whatever. _________________ Blog |
|
Status: Offline |
|
|
Hyperionmp
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 18:14:47
| | [ #109 ] |
|
|
|
Hyperion |
Joined: 8-Mar-2003 Posts: 502
From: Unknown | | |
|
| @umisef
The aim of the blogpost was to explain the work that has taken place or needs to be accomplished in layman's terms.
Obviously the issues you have raised, are nothing that was not taken into consideration but addressing all of that in a blogpost would render it incomprehensible for anyone but those very familiar with the inner workings of AmigaOS. If we wanted to do that, we'd post that on our internal developer mailing list.
In fact, work on a SMP friendly AmigaOS has been going for years. By way of example, many years ago all instances of Forbid () were already removed from DOS library.
Incidentally, a few years ago a test was performed with pervasive use of Forbid () throughout the OS and certain applications and the performance impact was only about 10 tot 15%.
It seems many have forgotten that a dual CPU module existed for the original AmigaOne from Eyetech which was never commercialised but did nonetheless exist for other purposes. _________________
|
|
Status: Offline |
|
|
terminills
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 19:44:35
| | [ #110 ] |
|
|
|
AROS Core Developer |
Joined: 8-Mar-2003 Posts: 1472
From: Unknown | | |
|
| |
Status: Offline |
|
|
Trewq
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 1-Mar-2015 22:22:54
| | [ #111 ] |
|
|
|
Regular Member |
Joined: 1-Jun-2012 Posts: 205
From: Unknown | | |
|
|
Here's a picture of the/a dual PPC module in case anyone's wondering
Last edited by Trewq on 01-Mar-2015 at 10:23 PM.
_________________ Best way to enjoy Amiga is without the community |
|
Status: Offline |
|
|
agami
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 2-Mar-2015 0:58:52
| | [ #112 ] |
|
|
|
Super Member |
Joined: 30-Jun-2008 Posts: 1654
From: Melbourne, Australia | | |
|
| @Hyperionmp
Quote:
The aim of the blogpost was to explain the work that has taken place or needs to be accomplished in layman's terms. |
Me thinks a simple diagram would have helped in this regard. Also, puppets can be very effective.
_________________ All the way, with 68k |
|
Status: Offline |
|
|
KimmoK
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 2-Mar-2015 7:20:15
| | [ #113 ] |
|
|
|
Elite Member |
Joined: 14-Mar-2003 Posts: 5211
From: Ylikiiminki, Finland | | |
|
| @Hyperionmp
Is there any way for SW gurus amongs AmigaOS fans to participate AmigaOS core development?
I imagine, if the development would be more open, more people might get interested in putting their money & effort on it and I might get things like (S)MP fun a little sooner. Last edited by KimmoK on 02-Mar-2015 at 07:21 AM.
_________________ - KimmoK // For freedom, for honor, for AMIGA // // Thing that I should find more time for: CC64 - 64bit Community Computer? |
|
Status: Offline |
|
|
Massi
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 2-Mar-2015 13:41:03
| | [ #114 ] |
|
|
|
Cult Member |
Joined: 2-Feb-2011 Posts: 627
From: Rome, Italy | | |
|
| @KimmoK
I guess one should join the OS4 development team to be able to participate ...
_________________ SAM440EP-FLEX @ 733 Mhz, AmigaOS 4.1 Update 1 |
|
Status: Offline |
|
|
KimmoK
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 11-Jun-2015 11:24:22
| | [ #115 ] |
|
|
|
Elite Member |
Joined: 14-Mar-2003 Posts: 5211
From: Ylikiiminki, Finland | | |
|
| @beating old thread ...
Just had to post that for me: 1) it's great when/if any kind of use for additional cores are invented to our OSs 2) warpUP-NG would be interesting but not nice (or pehaps it should be AmiCL?) 3) being able to launch recompiled apps to other than core0 would be better 4) and even better if some OS elements could also use those extra cores (datatypes, etc) 5) ... ... 9) full SMP and threads support would be best, perhaps, but ...
Anyway... multicore support perhaps is the most wanted currently, followed by "more memory" and OpenGL2.0 and...
Would be nice to hear more about the progress of multicore support for AOS4.x etc... is bi-monthly blog post possible about development work ??? _________________ - KimmoK // For freedom, for honor, for AMIGA // // Thing that I should find more time for: CC64 - 64bit Community Computer? |
|
Status: Offline |
|
|
TRIPOS
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 11-Jun-2015 12:06:00
| | [ #116 ] |
|
|
|
Super Member |
Joined: 4-Apr-2014 Posts: 1205
From: Unknown | | |
|
| |
Status: Offline |
|
|
KimmoK
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 11-Jun-2015 12:48:42
| | [ #117 ] |
|
|
|
Elite Member |
Joined: 14-Mar-2003 Posts: 5211
From: Ylikiiminki, Finland | | |
|
| I'm afraid this is futile, but...
OS developers could/should gauge the community opinnion.
Describe the challenges that are being worked on. Take input of challenges that community gurus inform. Discuss openly what is the plan with those challenges. Use community input to find out what is the best way to proceed.
For example: -(S)MP development has been ongoing for years and we do not know "when it's done" -if Morphing AOS4 to (S)MP capable OS takes 10 more years, would it be better to start AOS5 branch and drop all difficult-to-work-with compatibility issues in one go. Would we that way get a usefull NG AOS5 (SMP, 64bit,etc...) in 5 years? AOS4.2 could exist beside this AOS5 as dualboot option. And later perhaps in a sandbox.
( other AmigaLikeOS teams could/should do the same, community will be with the OS that match with what they like. )
I doubt that on our niche, being more open does not risk the OS business... (as there really is no business/competition?) _________________ - KimmoK // For freedom, for honor, for AMIGA // // Thing that I should find more time for: CC64 - 64bit Community Computer? |
|
Status: Offline |
|
|
Massi
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 11-Jun-2015 13:29:07
| | [ #118 ] |
|
|
|
Cult Member |
Joined: 2-Feb-2011 Posts: 627
From: Rome, Italy | | |
|
| @KimmoK
Introducing SMP is certainly a BIG effort of design and implementation too.
And I guess only very few people are working on it ...
Last edited by Massi on 11-Jun-2015 at 01:32 PM.
_________________ SAM440EP-FLEX @ 733 Mhz, AmigaOS 4.1 Update 1 |
|
Status: Offline |
|
|
PhantomInterrogative
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 11-Jun-2015 14:59:03
| | [ #119 ] |
|
|
|
Cult Member |
Joined: 10-Sep-2004 Posts: 809
From: The Interrogative Lair | | |
|
| @Aslak3
Back in the mid 1990s, I read an advertisement in a PC magazine for a dual 68060 accelerator board (used in a Unix machine). I sent an e-mail to Carl Sassenrath, who was advocating for Amiga staying 68k, to ask him if dual 68060 was the way to go. He said that the AmigaOS would have to have a rewrite for that to happen. Rather, he wanted the owners (I don't remember whether it was Escom or Gateway at the time) to leverage Motorola to come out with a 200MHz 68040 or 060 with lots of cache built in.
In hindsight, if such a thing had happened, we would most likely still be in various camps (x86, PPC, 68k, WinUAE) arguing about the best processor, the best OS variant, the best rice pudding, etc.
_________________ I sold my SAM460ex lite... waiting for money to buy a Raspberry Pi... or a Classic A1000 with Buffee... or an A1222... and OS4.3 FE update 11 |
|
Status: Offline |
|
|
WolfToTheMoon
| |
Re: New Hyperion info on SMP for AmigaOS Posted on 11-Jun-2015 16:29:40
| | [ #120 ] |
|
|
|
Super Member |
Joined: 2-Sep-2010 Posts: 1351
From: CRO | | |
|
| @PhantomInterrogative
Motorola was not interested in further developing the 68K line - which is a shame, since it would probably have been a better platform than what PowerPC has become. But, RISC was fashionable in late 80s/early 90s, Apple thought of itself as an aspiring workstation maker, and in those times RISC was synonymous with Workstations. 68060 was just as fast as first generation PPC 601. _________________
|
|
Status: Offline |
|
|