From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id cOmJDUeZ5mEPXwEAgWs5BA (envelope-from ) for ; Tue, 18 Jan 2022 11:41:11 +0100 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id +KhEBkeZ5mFkhgAAG6o9tA (envelope-from ) for ; Tue, 18 Jan 2022 11:41:11 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 9704E2B0D9 for ; Tue, 18 Jan 2022 11:41:10 +0100 (CET) Received: from localhost ([::1]:38708 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n9lvJ-0002lm-S6 for larch@yhetil.org; Tue, 18 Jan 2022 05:41:09 -0500 Received: from eggs.gnu.org ([209.51.188.92]:34308) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n9lvE-0002jY-TD for guix-patches@gnu.org; Tue, 18 Jan 2022 05:41:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:56154) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n9lvC-0001bG-OF for guix-patches@gnu.org; Tue, 18 Jan 2022 05:41:04 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1n9lvC-0002Xc-G7 for guix-patches@gnu.org; Tue, 18 Jan 2022 05:41:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#48463] gnu: Add j. Resent-From: elaexuotee@wilsonb.com Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 18 Jan 2022 10:41:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48463 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Liliana Marie Prikler Cc: Maxime Devos , 48463@debbugs.gnu.org Received: via spool by 48463-submit@debbugs.gnu.org id=B48463.16425024249709 (code B ref 48463); Tue, 18 Jan 2022 10:41:02 +0000 Received: (at 48463) by debbugs.gnu.org; 18 Jan 2022 10:40:24 +0000 Received: from localhost ([127.0.0.1]:49057 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9lua-0002WX-GG for submit@debbugs.gnu.org; Tue, 18 Jan 2022 05:40:24 -0500 Received: from m42-5.mailgun.net ([69.72.42.5]:47053) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9luX-0002W9-Ny for 48463@debbugs.gnu.org; Tue, 18 Jan 2022 05:40:22 -0500 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.wilsonb.com; q=dns/txt; s=krs; t=1642502421; h=Content-Transfer-Encoding: Content-Type: MIME-Version: Message-Id: In-Reply-To: References: From: Subject: Cc: To: Date: Sender; bh=KYrxBYVf8vXyDBmsMyDCMjSGt7vi+RGdweqpVDLDBEE=; b=qQoJU1fiW9bIUSYT/+6GziUmyugL+YmvPNWaGKBQDTL0y+EF0CymF2Ex0fuo/Kl2WpXCxjZa G3lNx4qRECKnqs4rD4YshgfqFk1nwuj/8dP1vaOqkWK44N+aWq1JqdkNDjE44ghPM+iv9yi3 HM41kiwt9UIsHi+jCtqkEJuE4iKT91iUpPp1ifMJ+OZ7dQ7niHz/2L13n2qYPSOWSx0cflCf +L1bpLaoD/oq9YRIqIqBc3AViZtHvXl9Xe/fWF8hYWgMS13PLbsjm/BKRBlRTjOQZB4pz49v Uns5ECqdmvr3vcDJ3Ec5zzm5xDNdf6a7dYfvykfDH9VzdsbAHuSUJQ== X-Mailgun-Sending-Ip: 69.72.42.5 X-Mailgun-Sid: WyJjZGI4NCIsICI0ODQ2M0BkZWJidWdzLmdudS5vcmciLCAiMDg1NDdhIl0= Received: from wilsonb.com (wilsonb.com [104.199.203.42]) by smtp-out-n07.prod.us-west-2.postgun.com with SMTP id 61e6991013aac22fbe352c98 (version=TLS1.3, cipher=TLS_AES_128_GCM_SHA256); Tue, 18 Jan 2022 10:40:16 GMT Received: from localhost (q045100.dynamic.ppp.asahi-net.or.jp [203.181.45.100]) by wilsonb.com (Postfix) with ESMTPSA id AAB6AA2E68; Tue, 18 Jan 2022 10:40:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wilsonb.com; s=201703; t=1642502411; bh=KYrxBYVf8vXyDBmsMyDCMjSGt7vi+RGdweqpVDLDBEE=; h=Date:To:Cc:Subject:From:References:In-Reply-To:From; b=ITz6HwyUWZzlUdROlDGFk5hz34j70vrAMkbh0nEoNXiOcfdPQDUGnsz05i4DllT07 9AR8EMsrevgNYGG0E2UGWZuiaWXnkqinykSrZVMxu27bbXRy824XyynrqAImOrqg8w svbjPm8G2XEvXJXPUf7aZC1b8YioABSonSRsfy3gFsnNzuPMRT3+LK5oISNLMzt3WU 4qkXLG5TrX8qoZ8CSCObQ05sxTQUY6MHCDT0hn5DK12KLGYhg0AGK3hmXqfKihnC5A +4WOHCz32t2CU3tgrmV2X4Ydekh0U7tbYUo/TK8WjE4LZYs7axISsBgDYjEGYYJFoM RRYgKeMQcBP2uJInaHHfy/R/mIRgp9N4aCr2Uwr2yr1kGH+uI7v7lWdbwDX5NMy620 fGTGZjyxuF5U4gibKaD6DPhVyrf03eTUo7YdSyZnwmrony54nDCTdubxQRt3+x6Ssb w5ggvT63CEyRlpXHk2jnDaEJDG7Y5aM+2lZUIoxlisKBTn18DgkFYvrJ7CwnbZ4BJE Qis5WBQ+oauEeEI6cLWuSdWgbnQsI44RvFyzDh9INgooGIHgp/xXS8xJiuKo9UvTsT /APr0ccLnhH/VAyHr6Yfxw532gXweet5qZKr/dMHF/Ezo297NhdIhePy52bx63fqHt 1Md4ZNokzvLYIR+Kbh4odsm4= Date: Tue, 18 Jan 2022 19:40:06 +0900 References: <3LOAUDT0FLL4U.2SOD925YP915T@wilsonb.com> <8b853d0585505ce29c9afc638b644fa34805e6c0.camel@student.tugraz.at> <293L8YPQS4CLB.3VK1B1A36XNAY@wilsonb.com> <5d30160bd2a4592459cd407f99cbd3edadb1db1b.camel@student.tugraz.at> <27DCD25Y68ZWJ.2HRC4G65PWIA7@wilsonb.com> <94f4625dcb0479d873cf60449631527e841fd457.camel@gmail.com> <2JQJMV0O718S1.31FZE8GKCTLPF@wilsonb.com> <90704c2259f576a14fb1268219e8c0dc2b3bf289.camel@telenet.be> <2P322C327XW0Q.21O5A4IFGMNDI@wilsonb.com> <72aff035c93f9f91afa54ef5b51c7381b0b02ccb.camel@gmail.com> <3MMTDZQJQ8IR6.334ZWY8AD0487@wilsonb.com> <62d37956f16c08bc4ce26e44da16dce704ddd0f8.camel@gmail.com> <24ZUUMG4QYSHN.2OS7YAMCKREUA@wilsonb.com> <83aba994536bec60f79900d551d4801c967742bd.camel@gmail.com> <25Z6NGGGNJYD1.3S7A1QLFX7I9Y@wilsonb.com> <24FU0VP6N4ZZ7.3PE5LG30BSNUQ@wilsonb.com> <2EZU214MJAIBY.3EXSPSUMS5WW5@wilsonb.com> <3T4YAXDRKZCAW.2LXSUL7VDA46J@wilsonb.com> In-Reply-To: Message-Id: <2GLLHI6YET96V.279HCOFQSZLLF@wilsonb.com> User-Agent: mblaze/1.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" Reply-to: elaexuotee@wilsonb.com X-ACL-Warn: , elaexuotee--- via Guix-patches From: elaexuotee--- via Guix-patches via X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1642502470; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=KYrxBYVf8vXyDBmsMyDCMjSGt7vi+RGdweqpVDLDBEE=; b=pBK1fWpZlsI5lJ0SbClnUQZ5qiaufY5LjMfYekegy8cibyi+EZvTGQnHZ46QJTqBD89CIL II1pFR1KcTZ4kF20aiRTC8c0xF/Wr+EUaKacgMhCYpkFPB4qw84euMaTQ5OT9q+iwntDRy sfaEKA6Egtux63t1yHLryob+QkcsAGtHA/6PR1iH+KxlWns3WBYCpgug2H9PoWsMDTi0Pd FMR48WO86DON1TyRm65GKODxV+Hbi0kdYGLSVAgV5MteE2IpY9WCbsmDYO7b59ZIQuwIS3 P/+YPgZRvKuHxuklEshlzOXfMjrjhI1HwjpKq3qVsscFvtGfZ7t2pqSMYMi5bg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1642502470; a=rsa-sha256; cv=none; b=bndBJokE1TJ784GGpyYsR5nOHtNPEZcZYTFyWFkHKe1JZ4J0cgda52iIYCAyvOxRKMRDeC lw61IvegtsSpoO7S/VWLKKqfp+BH2tR9Ipj9a0A424uT5J0No2xmK/kJqgz4S3FqUEg9NK OCXwmLuGtQpCZ6loIu3u9wD0N3xIJlXvN0mW1Lh3hUIJnRRsrxtxB0Py9rZTPUOu3uL0cW DX3SKOF77GPHBTmDWCyEH0lZDJOm6J+/mfnTBIHBQvjp01KXU8hPRkPyA8svL0Byb4BXSL RkQhpa+vpLSNj5wbY0rNHLugCbRr1kpm1ukpEItUKIhr+eg+NEklKwJihBmp2A== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=mg.wilsonb.com header.s=krs header.b=qQoJU1fi; dkim=fail ("headers rsa verify failed") header.d=wilsonb.com header.s=201703 header.b=ITz6HwyU; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -3.62 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=mg.wilsonb.com header.s=krs header.b=qQoJU1fi; dkim=fail ("headers rsa verify failed") header.d=wilsonb.com header.s=201703 header.b=ITz6HwyU; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 9704E2B0D9 X-Spam-Score: -3.62 X-Migadu-Scanner: scn1.migadu.com X-TUID: fxHE7elRKo7q > FWIW I don't quite think that fat binaries are the issue here, but that > building AVX blows up the check phase in the way we currently do. It's > a similar issue w.r.t. check? for cross-compiling. In my opinion only > the base feature set can be checked unless the CPU supports the same > features as the target. Oh, good. Apparently, I mis-interpreted your original concerns. > I think if we want to do fat binaries, the solution would be to build > all three variants from make-j and tests only the base variants, and > then have a non-substitutable wrapper package, that takes that as an > input and simply provides a wrapper tuned to the current CPU features. > If you want, you can then rerun the correct tests in the wrapper > package. The package returned by make-j could itself also provide > three binaries just in case someone doesn't want to generate the > wrapper package, but knows they can run ijconsole-avx2 just fine.=20 > WDYT? Slick. Let me check my understanding against yours with some specifics: - Name make-j's package 'jsoftware-j-lib' which 1. Builds all upstream stuff, and 2. Only runs libj.so (non-avx) tests; - Create non-substitutable 'jsoftware-j' wrapper package which 1. Detects SSE extensions at build time and specializes the 'ijconsole' script accordingly, and 2. Runs tests if and only if an avx or avx2 variant. Does those points jibe with your thoughts on the fat binaries approach? Glancing around at the CPU tuning stuff, it looks like tunable packages end= up getting a 'cpu-tuning' property which holds the microartecture name passed = to -march. AVX first landed in Sandy Bridge, and AVX2 in Haswell, so assuming cpu-tuning is accessible at build time, it should be easy enough to conditi= on the build phase on those. Regarding the check phase, here's a relevant comment in guix/transformations.scm(tuned-package):552: ;; The machine building this package may or may not be able to run code= ;; for MICRO-ARCHITECTURE. Because of that, skip tests; they are run f= or ;; the "baseline" variant anyway. Which I read to mean that the check phase should explicitly use libj.so, ignoring libj-avx.so and libj-avx2.so. Running specialized tests in a non-substitutable wrapper seems potentially better in this particular case.= Thoughts? > I'm in UTC+1 and have a day job from 8am to 4pm (plus delta and bus > routes), which normally make me unable to reply from roughly 6:30am to > 8pm. I'm also a little shy when it comes to letting strangers hear my > voice and experiencing healthy vaccine side effects atm. UTC+9 here. Okay. That's unfortunate, but I'll keep the offer open if you change your mind. Hope you get to feeling better soon! Cheers, B. Wilson