Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Nov 2021 11:32:37 -0500
From:      Shawn Webb <shawn.webb@hardenedbsd.org>
To:        Stefan Esser <se@freebsd.org>
Cc:        Joseph Mingrone <jrm@FreeBSD.org>, FreeBSD Hackers <freebsd-hackers@freebsd.org>
Subject:   Re: Call for Foundation-supported Project Ideas
Message-ID:  <20211130163237.hdfl7bsthccbxo7l@mutt-hbsd>
In-Reply-To: <a81e3e4a-776b-0c58-3793-acabbb4fb148@freebsd.org>
References:  <861r36xzpe.fsf@phe.ftfl.ca> <a81e3e4a-776b-0c58-3793-acabbb4fb148@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--x37rvubhivh732aa
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Nov 30, 2021 at 12:53:20PM +0100, Stefan Esser wrote:
> Am 23.11.21 um 23:41 schrieb Joseph Mingrone:
> > Hello FreeBSD community,
> >=20
> > The Foundation is seeking suggestions for new projects to support.  What
> > gaps in the Project are not being addressed by the broader community?
>=20
> The "new" ULE scheduler has a number of well-known issues, which leads
> to the "old" BSD scheduler giving better performance on many systems
> and loads, but is based on concepts that made sense in pre-SMP times.
>=20
> ULE suffers from pathological behavior in many scenarios, and it does
> not know how to best deal with simultaneous multi-threading, big/little
> architectures, or the effects of virtualization.
>=20
> ULE does not care for the "niceness" of a process and lets nice -19
> processes run with hardly any reduction of the share of CPU cycles
> granted compared to competing nice 0 processes, for example.
>=20
> Virtualization gives a number of additional requirements and restrictions
> in both the host and client. Schedulers in other operating systems have
> been modified to reduce the risk of side-channel attacks by running only
> processes for one user at a time on the virtual processors of an SMT core.
>=20
> Within a virtual machine, the real topology of the underlying hardware
> may be hidden and scheduling effects by the VM host may need to be taken
> into consideration (e.g. clock variations and "time jumps"). There is
> a connection to bhyve, at least (perhaps also to other virtualization
> platforms) that has to be taken into account.
>=20
> Another aspect is optimization for performance vs. optimization for
> low power use, which both require a specific scheduling strategy on
> complex CPU topologies.
>=20
> IMHO, a scheduler design that is based on experiences gained by other
> projects and our knowledge of deficiencies of the currently available
> schedulers in FreeBSD under specific loads could be a huge win for the
> project.
>=20
> This would be a long-term project, and I do not see any developer
> currently working on designing or implementing a new scheduler.
>=20
> There have been minor changes to SCHED_ULE, recently, but I'd think
> that a completely new design will be required, based on knowledge
> gained in the last 1 or 2 decades and able to deal with architectural
> changes that have occurred in that time frame.

I also wonder how the recent push to big.little on multiple
CPU architectures affects FreeBSD and how we could support it.

Thanks,

--=20
Shawn Webb
Cofounder / Security Engineer
HardenedBSD

https://git.hardenedbsd.org/hardenedbsd/pubkeys/-/raw/master/Shawn_Webb/03A=
4CBEBB82EA5A67D9F3853FF2E67A277F8E1FA.pub.asc

--x37rvubhivh732aa
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEA6TL67gupaZ9nzhT/y5nonf44foFAmGmUiIACgkQ/y5nonf4
4forKg/+KPAYRJRx3csbecFMw7k6q+RMUn1Tn8Gf+SGzLvTltl0wMKOZqR/v3Wa3
MuOop1kTFBquT9rzdtlcxH9LkVoRyVjM4Vdm7lBQnRT2oyhe8R7EP7STlQV+wAlF
ntRk9Mz1yj2c41/G+T7J3bRU2VW9fw3oMPXQ7s8Pe562oeD6kqifF8wZkQp3xFpv
ZaZZ3YYVwuce7KEaA8whUjAhcZ2QnGHpOH1599BtNOC9sekgXKmx69MtJUa+eff/
YsZ70EzRLNa5rosbBY8fqojyNnJ6HuogC8HRn9RiId38LpiCv5g4ORDCENviD4Rv
YDLO7ZSd0NdvaUzGFrvZSH6L1gZFeWuyiDy7UvNJJaBtvCtQrQrGvGzRn5HEjoPb
k7ymZ1v4Wi0hZ/D3bFOdUat0TErnzSiY1ad9ssVKvSMk6mubLGlrfj9jv6AtGbV3
IqSbjMRmk5Pop6BiNhddF2ffOqkeAvNxHcr+HGcWO3oALAyCU/vmafFviM6TqI8o
9jpHB+WVOODP7VvshiwGkeWmutc/JRv3//RzW1rAIk8srlCTeZoB5bExbxPIbdqa
9oxNfdobA/HZ5cjtl6jWunO2+UcwrQ5DmzDo0hmw/RiEpYBMw1F4LQgjAmY8KiVd
ELSByXV6wfMxr9HbsaSKoOdgawANT6oSVWOvUTDzG3yOs/5Op2Y=
=fhGt
-----END PGP SIGNATURE-----

--x37rvubhivh732aa--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20211130163237.hdfl7bsthccbxo7l>