From nobody Wed Jul 07 17:47:47 2021 X-Original-To: freebsd-hackers@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4029D11F48EE for ; Wed, 7 Jul 2021 17:48:04 +0000 (UTC) (envelope-from george+freebsd@m5p.com) Received: from mailhost.m5p.com (mailhost.m5p.com [74.104.188.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "m5p.com", Issuer "R3" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4GKn2W2ZNWz4XR5 for ; Wed, 7 Jul 2021 17:48:00 +0000 (UTC) (envelope-from george+freebsd@m5p.com) Received: from [IPv6:2001:470:1f07:15ff::26] (court.m5p.com [IPv6:2001:470:1f07:15ff:0:0:0:26]) (authenticated bits=0) by mailhost.m5p.com (8.16.1/8.15.2) with ESMTPSA id 167HllNo035329 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO) for ; Wed, 7 Jul 2021 13:47:52 -0400 (EDT) (envelope-from george+freebsd@m5p.com) To: FreeBSD Hackers From: George Mitchell Subject: Periodic rant about SCHED_ULE Message-ID: <13445948-7804-20b4-4ae6-aaac14d11e87@m5p.com> Date: Wed, 7 Jul 2021 13:47:47 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 List-Id: Technical discussions relating to FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-hackers List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-hackers@freebsd.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="HF7V0AghedMoWNFDpuKNTarcdpkVGOeR5" X-Spam-Status: No, score=0.2 required=10.0 tests=HELO_MISC_IP,HELO_NO_DOMAIN autolearn=no autolearn_force=no version=3.4.5 X-Spam-Checker-Version: SpamAssassin 3.4.5 (2021-03-20) on mattapan.m5p.com X-Rspamd-Queue-Id: 4GKn2W2ZNWz4XR5 X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of george@m5p.com designates 74.104.188.4 as permitted sender) smtp.mailfrom=george@m5p.com X-Spamd-Result: default: False [-1.67 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_SPF_ALLOW(-0.20)[+a]; HAS_ATTACHMENT(0.00)[]; TO_DN_ALL(0.00)[]; SIGNED_PGP(-2.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~]; RBL_DBL_DONT_QUERY_IPS(0.00)[74.104.188.4:from]; ASN(0.00)[asn:701, ipnet:74.104.0.0/16, country:US]; MID_RHS_MATCH_FROM(0.00)[]; TAGGED_FROM(0.00)[freebsd]; R_DKIM_NA(0.00)[]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.997]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_SPAM_SHORT(0.94)[0.939]; MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-hackers@freebsd.org]; DMARC_NA(0.00)[m5p.com]; RCPT_COUNT_ONE(0.00)[1]; SPAMHAUS_ZRD(0.00)[74.104.188.4:from:127.0.2.255]; NEURAL_SPAM_LONG(0.79)[0.789]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; MAILMAN_DEST(0.00)[freebsd-hackers] X-ThisMailContainsUnwantedMimeParts: N This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --HF7V0AghedMoWNFDpuKNTarcdpkVGOeR5 Content-Type: multipart/mixed; boundary="JEQlsITH6BsjloiA4uygFg539pzKZdt9A"; protected-headers="v1" From: George Mitchell To: FreeBSD Hackers Message-ID: <13445948-7804-20b4-4ae6-aaac14d11e87@m5p.com> Subject: Periodic rant about SCHED_ULE --JEQlsITH6BsjloiA4uygFg539pzKZdt9A Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: quoted-printable CPU: AMD Ryzen 5 2600X Six-Core Processor (3600.10-MHz K8-class CPU) (12 threads). FreeBSD 12.2-RELEASE-p7 r369865 GENERIC amd64 (SCHED_ULE) vs FreeBSD 12.2-RELEASE-p7 r369865 M5P amd64 (SCHED_4BSD). Comparing "make buildworld" time with misc/dnetc running vs not running. (misc/dnetc is your basic 100% compute-bound task, running at nice 20.) Three out of the four combinations build in roughly four hours, but SCHED_ULE with dnetc running takes close to twelve! (And that was overnight with basically nothing else running.) This is an even worse disparity than I have seen in previous releases. Based on my total lack of an exact understanding of how loadable kernel modules work, I nevertheless hypothesize that it should be possible for the scheduler to be a loadable kernel module, given that the interface to the schedule seems to have been carefully thought out and scrupulously observed by both ULE and 4BSD. Perhaps the system could start with a dummy scheduler that is just barely functional enough to get the appropriate module loaded and have it supersede the dummy scheduler? Then switching between the schedulers would become much less of a hassle than it is currently. Why, if it is configurable, it could even be compatible with freebsd-update! I've been ranting about this for years now, and I've had my say -- but no one has ever answered my question about what workload SCHED_ULE is best for, though numerous people have claimed that it's better than SCHED_4BSD for -- some rumored workload or other. -- George --JEQlsITH6BsjloiA4uygFg539pzKZdt9A-- --HF7V0AghedMoWNFDpuKNTarcdpkVGOeR5 Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEENdM4ZHktsJW5kKZXwRES3m+p4fkFAmDl6MMFAwAAAAAACgkQwRES3m+p4fkP MRAAutre1e/bqhY2w1fQdiktJc6bo7+kFgW1V8qxTNumUXfyZCgL6DCALhKrDkBaAZsuvwWFSAaK ASjGOTdlPA/fZ0tr2HWH77Z2kbj1RP7ce9zDP5PDVWZaPeD7arnAJSBvD0K9kiI/sAVBRW80WH4C zj1rW4/XqcJN2/YPsjLfVTbToqEPJN6XpodInYrpKBF2W47hTcHF6qxUkaa/7J5gIDOY2ad7c35q tuCQKlsoFPpD6l/UYXevO5pe/MVEX5hJLHrPhCUbqZEgeVMltqn+V76DVcywO/x0cBj65k3TETus tAcZebbKuvII9WBfM58Kt+zMRc3ezU+7pN6FOwJCj89vJ6OLO19LAXQ2zvLmSDYRz+OjxK4Z3IZk 3MWpc2qwOoNsABp9bg8pvbihNoug9bM/qhbyFP1+nbyHvbpgOIid9K5jub20TNPEN/j0cSGUQaed rs5rZlv7XuOMspr1hq5fra26M/nh3li31mltfNA2qHoBYecpiBY3x+CfDGydOIVbl8+ed/A+tQAX /3mVORXsLry7jSB+dBSakJ4caR97Ehc/nWSFFGn+WlYtTURi7mGFI/axm/RGKdR/TSasS6MlPJLg lZbSOTvE/i/5N2+162qgLEuYuqAjPUnlIvJ8yzN9nHFMdSTSr3uuyeqaXaketRmP9h7k7wxCdzQg aJ8= =0sGY -----END PGP SIGNATURE----- --HF7V0AghedMoWNFDpuKNTarcdpkVGOeR5--