unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Leo Famulari <leo@famulari.name>
To: Mark H Weaver <mhw@netris.org>
Cc: guix-devel@gnu.org
Subject: Re: Parallel downloads
Date: Wed, 13 Nov 2019 13:25:55 -0500	[thread overview]
Message-ID: <20191113182555.GA3059@jasmine.lan> (raw)
In-Reply-To: <87pnhvda3z.fsf@netris.org>

On Wed, Nov 13, 2019 at 11:16:53AM -0500, Mark H Weaver wrote:
> For these reasons, I'm inclined to think that parallel downloads is the
> wrong approach.  If a single download process is not making efficient
> use of the available bandwidth, I'd be more inclined to look carefully
> at why it's failing to do so.  For example, I'm not sure if this is the
> case (and don't have time to look right now), but if the current code
> waits until a NAR has finished downloading before asking for the next
> one, that's an issue that could be fixed by use of HTTP pipelining,
> without multiplying the memory usage.
> 
> What do you think?

I agree that parallel downloads is a kludge to work around the issue of
slow set-up and tear-down of our download code. Pipelining would help a
lot, and we could also profile the relevant Guile code to see if there
are any easy speedups.

This issue was actually discussed a year ago:

https://lists.gnu.org/archive/html/guix-devel/2018-11/msg00148.html

I'll quote Ludo's suggestion from then:

> I’d be in favor of a solution where ‘guix substitute’ is kept alive
> across substitutions (like what happens with ‘guix substitute --query’),
> which would allow it to keep connections alive and thus save the TLS
> handshake and a few extra round trips per download.

  parent reply	other threads:[~2019-11-13 18:26 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-31 15:07 Parallel downloads Pierre Neidhardt
2019-10-31 16:18 ` Tobias Geerinckx-Rice
2019-10-31 16:48   ` Pierre Neidhardt
2019-10-31 18:01     ` zimoun
2019-10-31 18:09       ` Pierre Neidhardt
2019-11-03 14:48     ` Ludovic Courtès
2019-11-03 15:29       ` Pierre Neidhardt
2019-11-06 15:34         ` Ludovic Courtès
2019-11-06 16:08           ` Pierre Neidhardt
2019-11-09 17:40             ` Ludovic Courtès
2019-11-10 13:28               ` Pierre Neidhardt
2019-11-12 15:36                 ` Ludovic Courtès
2019-11-12 15:59                   ` John Soo
2019-11-12 16:48                     ` zimoun
2019-11-13  7:43                       ` Efraim Flashner
2019-11-13 11:26                         ` zimoun
2019-11-12 17:44               ` Leo Famulari
2019-11-17 17:15                 ` Ludovic Courtès
2019-11-13 16:16               ` Mark H Weaver
2019-11-13 18:03                 ` Pierre Neidhardt
2019-11-13 18:25                 ` Leo Famulari [this message]
2019-11-13 19:34                 ` Pierre Neidhardt
2019-12-13  9:35                   ` Pierre Neidhardt
2019-12-13 12:25                     ` Brett Gilio
2019-11-17 17:52                 ` Ludovic Courtès
2019-11-06 21:26           ` Bengt Richter
2019-11-01 10:06 ` Joshua Branson
2019-11-01 19:11   ` Pierre Neidhardt
2019-11-03 14:50   ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191113182555.GA3059@jasmine.lan \
    --to=leo@famulari.name \
    --cc=guix-devel@gnu.org \
    --cc=mhw@netris.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).