On Thu, Oct 20, 2022 at 11:59:34AM +0200, Ludovic Courtès wrote: > Hi Félix, > > Félix Baylac Jacqué skribis: > > > I'd be curious to know how long it takes to run the full rustc bootstrap > > chain on the Guix build farm. I'm sadly not sure how to approach this > > problem. > > I believe Efraim, Maxim, and probably a few other people have first-hand > experience building the whole chain. Any estimate, people? I have a number! I just pushed a couple of patches to staging to fix the bootstrap on aarch64, and to decrease the build time and resource usage, and the numbers are in! https://ci.guix.gnu.org/build/1632586/details 11863 seconds from downloading mrustc to building rust-1.60, for 198 minutes, or 3.3 hours. > > Is there a way to extract this information from Cuirass or the Guix data > > service? > > Maybe not from the Guix Data Service, but most likely from Cuirass and > the Guix Build Coordinator. > > For example, shows the > duration, which could can also get with: > > wget -qO- https://ci.guix.gnu.org/build/1505621 |jq > > (The (guix ci) module needs an update to let you do access that info > right from Scheme.) > > Now the /search interface doesn’t have a JSON equivalent, but you can > find the build ID using something along these lines: > > --8<---------------cut here---------------start------------->8--- > scheme@(guile-user)> ,use(guix ci) > scheme@(guile-user)> (latest-evaluations "https://ci.guix.gnu.org" 10 #:spec "master") > $14 = (#< id: 739193 spec: "master" complete?: #t checkouts: (#< commit: "4716cea6256523a8ecf90a426d675bfb7620f3e4" channel: "guix">)> #< id: 738364 spec: "master" complete?: #t checkouts: (#< commit: "16d4ded6302c0650978203d0df83614896c453e8" channel: "guix">)> #< id: 737995 spec: "master" complete?: #t checkouts: (#< commit: "e61660c78f1190c578dd6f202bc5529cbdcff84e" channel: "guix">)> #< id: 737588 spec: "master" complete?: #t checkouts: (#< commit: "88746cd80bc56212ae7922c0fa1cd9a18e44c3bb" channel: "guix">)> #< id: 737529 spec: "master" complete?: #t checkouts: (#< commit: "ac553ba68e535810085dd838e48e4fa6ac553e67" channel: "guix">)> #< id: 736841 spec: "master" complete?: #t checkouts: (#< commit: "7ecd85eacbfa5b7379f563b83807d3e5258cf700" channel: "guix">)> #< id: 734789 spec: "master" complete?: #t checkouts: (#< commit: "3bb145b6e2a8c84e7739ead9ae76dc4d42bb9850" channel: "guix">)> #< id: 734747 spec: "master" complete?: #t checkouts: (#< commit: "033cbd11a837dbc7602799f15d691221653e1996" channel: "guix">)> #< id: 734733 spec: "master" complete?: #t checkouts: (#< commit: "c9eac0c3553703385c997a70741348ae5d34dc68" channel: "guix">)> #< id: 734718 spec: "master" complete?: #t checkouts: (#< commit: "2589997fab07bcebe6d87fd227852389ab5b1962" channel: "guix">)>) > scheme@(guile-user)> (define jobs (evaluation-jobs "https://ci.guix.gnu.org" (evaluation-id (car $14)))) > scheme@(guile-user)> (length jobs) > $15 = 76649 > scheme@(guile-user)> (car jobs) > $16 = #< build-id: 1627000 status: scheduled name: "0ad.aarch64-linux"> > scheme@(guile-user)> ,use(srfi srfi-1) > scheme@(guile-user)> (find (lambda (job) (string=? "rust.x86_64-linux" (job-name job))) jobs) > $17 = #< build-id: 1275492 status: succeeded name: "rust.x86_64-linux"> > scheme@(guile-user)> (job-build "https://ci.guix.gnu.org" $17) > $18 = #< id: 1275492 derivation: "/gnu/store/dmzhvql66a1n31j2xpygfxpw576wpkwb-rust-1.60.0.drv" evaluation: 579940 system: "x86_64-linux" status: succeeded timestamp: 1662284654 start-time: # stop-time: # products: ()> > --8<---------------cut here---------------end--------------->8--- > > That still doesn’t answer your question, because you’re interested in > the build time of the full Rust bootstrap chain, but that’s a start! > > HTH, > Ludo’. > -- Efraim Flashner אפרים פלשנר GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted