Skip site navigation (1)Skip section navigation (2)
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>