Je 12 Dec 11:59 skribis Peter:
> On Sat, Dec 12, 2020 at 11:06:33AM +0100, Marco van Hulten wrote:
> > Hello Peter,
> > 
> > Je 11 Dec 17:24 skribis Peter:  
> > > Now that POWER9 systems are pretty well supported, I'm setting away some 
> > > time
> > > next year to backport powerpc64 to the Mac G5.  Is there anyone already 
> > > doing
> > > that?  I already tried this once (based on the macppc sources) but 
> > > failed.  
> > 
> > [...]
> > What would be specific advantages if OpenBSD/powerpc64 (over macppc)
> > were backported to PowerPC 970?  
> 
> For me it's using my G5 (970FX cpu) without 2 GB limitation.  My machine has
> 4 GB of RAM but OpenBSD/macppc only supports max. 2 GB.  

This is good to know, especially as I had been looking for extra memory
for up to 4 GiB which I thought was the limit for 32-bit systems.  I did
not know until now that this is different for PowerPC or the specific
macppc port.  Please, correct me if I misinterpret.

I suppose a true 64-bit OpenBSD version for the G5 could also perform
better in general?

> Another thing is it interests me very much, as a personal achievement, to know
> how to port an OS to another platform.  I've sat in the background with the
> riscv64 team and learned quite a bit on how they do that.  I also attempted
> this before (alone) purchased some powerpc books, invested a lot of time, 
> trying to do this port, which failed.  I miss the exploring part.
> 
> A lot of things are already done, in the powerpc64 port, I read a little
> for a bit how OpenBSD did the SLB implementation in pmap.c.  I compared it a
> little with mine that I constructed from FreeBSD's in 2018 and there is a bit
> of difference but the functions are very similar.  Compare:
> 
> pmap_va2vsid() in pmap.c
> https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/arch/powerpc64/powerpc64/pmap.c?rev=1.54&content-type=text/plain
> 
> with FreeBSD's or my port:
> va_to_vsid() in slb.c
> https://gotweb.centroid.eu/cgi-bin/gotweb/gotweb?path=powerpc64.git&action=blob&commit=ec46d233f79ed298dde271748a49523aea1522ca&file=slb.c&folder=%2Fpowerpc64
> 
> The similarities take me back to a time when I organised putting these 
> functions
> into my slb.c back when.  I forgot right now what SLB stands for exactly but 
> it replaced the BAT functions from 32-bit PowerPC which had to do with memory 
> management and caching.  I'll look it up on monday when I am back home.  Side
> Lookup Buffer popped into my head afterwards writing this mail.
> 
> I noticed there may be room to speed these up on the powerpc64 arch as the 
> virtual to physical mappings (PTE) are a LIST.  I took my implementation from 
> FreeBSD original implementation which used a TREE, which could make lookups 
> faster if you pass it a virtual address to get a physical address.  But I 
> understand that it's easy to get this wrong so a LIST is likely better than 
> a TREE for robustness.  Also FreeBSD I believe put its SPLAY tree 
> implementation into a radix tree or something if I remember correctly (I 
> could be wrong here).
> 
> In no way do I want to start arguing about this.  I'm very much a student to
> Mark Kettenis's teachings (and BSD's teachings too).  Granted having said 
> this I invite corrections above.

From me you won't get technical feedback on this.  I was only curious
(from a user's perspective) and don't have the technical background to
argue about these efforts.  If I'd be saying anything, I'd encourage
this effort! :-)

> So having said a lot of "how" and not a lot of "why", another point is I want
> to make use of my hardware to the fullest, a POWER9 machine is expensive and
> I won't likely have one for another 2 or 3 years, by which time a POWER10
> machine will likely exist, and I have time for one more hobby project outside
> of my job (within reason), starting in 2021. :-)

This makes sense to me.

Marco

Reply via email to