GNU bug report logs - #67742
[PATCH] gnu: ci: Build tuned packages for common baselines.

Previous Next

Package: guix-patches;

Reported by: Efraim Flashner <efraim <at> flashner.co.il>

Date: Sun, 10 Dec 2023 07:54:02 UTC

Severity: normal

Tags: patch

Full log


Message #14 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: guix-patches <at> gnu.org
Subject: Re: [bug#67742] [PATCH] gnu: ci: Build tuned packages for common
 baselines.
Date: Mon, 18 Dec 2023 23:26:25 +0100
Hello,

Efraim Flashner <efraim <at> flashner.co.il> skribis:

> On Mon, Dec 11, 2023 at 10:37:26PM +0100, Ludovic Courtès wrote:

[...]

>> >  (define %x86-64-micro-architectures
>> >    ;; Micro-architectures for which we build tuned variants.
>> > -  '("westmere" "ivybridge" "haswell" "skylake" "skylake-avx512"))
>> > +  '("x86-64-v2" "x86-64-v3" "x86-64-v4"))
>> 
>> Right now, on my laptop, I get:
>> 
>> --8<---------------cut here---------------start------------->8---
>> $ guix build gsl -n --tune
>> guix build: tuning gsl <at> 2.7.1 for CPU skylake

[...]

> I'm not sure how we'd determine what would count as common.  I think if
> we added a '--tune=close-enough' and used cpu->micro-architecture-level
> or gcc-architecture->micro-architecture-level from (guix cpu) to choose
> x86_64-v[234] that would count more as common than the list above :P.

Sure, but that’s not the case yet:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix build gsl --tune -n 
guix build: tuning gsl <at> 2.7.1 for CPU skylake
1.5 MB would be downloaded:
  /gnu/store/kx060kry6ka7khzganfcqk98agqp226i-gsl-2.7.1
--8<---------------cut here---------------end--------------->8---

So my suggestion was something like this:

  (define %x86-64-micro-architectures
    ;; Micro-architectures for which we build tuned variants.
    '("ivybridge" "haswell" "skylake" "skylake-avx512"
      "x86-64-v2" "x86-64-v3" "x86-64-v4"))

… so we don’t lose substitutes for “common” architectures.

Alternatively, we can go towards using x86-64-v* only, but in that case
we need to adjust the way ‘--tune’ (without arguments) guesses the
target architecture.

WDYT?

Ludo’.




This bug report was last modified 226 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.