Date: Sun, 14 Feb 2021 12:43:09 -0800 From: Mark Millard <marklmi@yahoo.com> To: Dennis Clarke via freebsd-ppc <freebsd-ppc@freebsd.org> Cc: FreeBSD PowerPC ML <freebsd-ppc@freebsd.org> Subject: Re: Test of FreeBSD-13.0-ALPHA3-powerpc-powerpc64-20210129-40cb0344eb2-256214-disc1.iso.xz Message-ID: <4221D431-7229-44A9-B587-8FA851FA19E9@yahoo.com> In-Reply-To: <5e905bca-c62e-4f72-8f22-09ac384b9ae9@www.fastmail.com> References: <8348beb1-06f4-6b65-cf62-74c81dcf31f6@blastwave.org> <a3ab05f5-e366-cbc3-0f97-94fec4dbd550@blastwave.org> <5e905bca-c62e-4f72-8f22-09ac384b9ae9@www.fastmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2021-Feb-14, at 07:57, Brandon Bergren <bdragon at FreeBSD.org> = wrote: > On Sun, Feb 14, 2021, at 12:31 AM, Dennis Clarke via freebsd-ppc = wrote: >> Performance is best described as terrible. I did fetch src.txz from >> the releases directory : >> = https://download.freebsd.org/ftp/releases/powerpc/powerpc64/13.0-BETA2/ >=20 > Yes, the clang compiler is known to be *much* slower than the old GCC. = It's gigantic in comparison and some of the passes are a lot more = computationally expensive. It's a nearly 100 meg dynamically-linked = binary. >=20 >>=20 >> Currently running a buildworld which appears that it will be some = days >> before that completes. This may actually be slower than a qemu = instance >> of FreeBSD-CURRENT on RISC-V. >=20 > Yeah, it probably will. I don't currently test buildworld on anything = older than POWER8, just because it's so much time investment to do so. >=20 >> The Decrementer exception seen in December CURRENT no longer exists. >> Seen here >> = https://beta.genunix.com/freebsd/ppc64/power_mac_quad_freebsd_13_current_1= 7_dec_2020_fail.png >=20 > Yep. That is the problem that > = https://cgit.freebsd.org/src/commit/sys/powerpc/aim?id=3Dd26f2a50ff48dacd3= 8ba358d658882d51f7bdbc4 >=20 > fixes. >=20 >> I want to dig into the smp issue if I can but at the moment I will = await >> for a full buildworld/buildkernel and then see where we are. >>=20 >=20 > I believe most of the smp issue boils down to the timebase getting out = of sync between processors and causing paradoxes in the scheduler. There = are some algorithms there that really don't like the timebase moving = backwards and it can cause stuff like scheduled timers to get lost, = which manifests in processes hanging in syscalls and such. >=20 > There is some background discussion in = https://reviews.freebsd.org/D23376 and on the list about this. The basic = solution is to rendezvous and have all processors initialize their = timebase to a specific value and then wait for a broadcast from the boot = processor to all enable it at the same time. >=20 > Unfortunately, I have limited ability to work on this as my only SMP = PowerMac is a dual G4, which works a bit differently than the G5s. = Although I could certainly work on the G4 version of this problem. Dennis, Other notes about various problems and at least patches for workarounds for PowerMacs are (including usefdt oddities) in comments tied to me 3 patch sets in: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D233863 Comments are both in the code in the patches and in the bugzilla entry. For the bugzilla entry only some of the comments are relevant. The overall comments sequence in the bugzilla entry shows my gradual progress and is a mess to deal with early vs. better information later and such. I once wrote the following to help with reading the bugzilla comments: QUOTE What comments to read for which attachments in 233863 ? Two of the attachments have essential information, one has extra information and dealing with it is optional for the purpose (given one part of the essential patches is used). Essential: attachments 203683 and 204369 203683: read comments=20 15,23,49 (plus read any code comments in the diff) 204369: read comments=20 7,12,13,22,23,27,30,32,51 (plus read any code comments in the diff) Note:=20 comment 23 relates to the later-below extra/optional patch as well: what part of 204369 makes the below optional. You might want to only pay attention to the above 2 attachments and their comments. Extra/optional: 204368 204368: read comments=20 19,20,23,50 (plus read any code comments in the diff) Note:=20 comment 23 has the explanation of why the attachment is extra/optional (if one part of the essential patches is used). END QUOTE In my personal context, I've still been bringing forward and using my patches from: https://reviews.freebsd.org/D23376 and: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D233863 I'm currently running based on a patched main 3acea07c1873 . # ~/fbsd-based-on-what-freebsd-main.sh=20 merge-base: 3acea07c1873b1e4042f4a4fa8668745ee59f15b merge-base: CommitDate: 2021-02-08 19:15:21 +0000 c1845d00f818 (HEAD -> mm-src) mm-src snapshot for mm's patched build in = git context. 3acea07c1873 (pure-src) Restore the augmented strlen commentary FreeBSD FBSDG5L2 14.0-CURRENT FreeBSD 14.0-CURRENT = mm-src-n244686-c1845d00f818 GENERIC64vtsc-NODBG-dcons powerpc powerpc64 = 1400004 1400004 I only cross-build for buildworld buildkernel these days, having no modern-speed powerpc64 hardware. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4221D431-7229-44A9-B587-8FA851FA19E9>