git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: David Kastrup <dak@gnu.org>
Cc: Git Mailing List <git@vger.kernel.org>,
	Paul Mackerras <paulus@samba.org>
Subject: Re: Can I have this, pretty please?
Date: Sun, 12 Aug 2007 12:53:57 -0700 (PDT)	[thread overview]
Message-ID: <alpine.LFD.0.999.0708121246020.30176@woody.linux-foundation.org> (raw)
In-Reply-To: <854pj4o8k5.fsf@lola.goethe.zz>



On Sun, 12 Aug 2007, David Kastrup wrote:
> 
> dak@lola:/home/tmp/emacs$ time git-rev-list --parents --topo-order --all>/dev/null
> 
> real    0m9.042s
> user    0m8.801s
> sys     0m0.168s
> 
> This does not even start to _think_ of swapping.

Ok, good. That's the part I care about most. Nine seconds is still a long 
time to wait for the the window to come up, so I'd still suggest at least 
thinking about limiting it, but..

> It does not bother git-rev-list.  What takes them time is that they
> are simply not written with insane amounts of data in mind.

Well, gitk has certainly had performance problems in the past, they've 
been fixable. I think this should just be fixed too. And if the rev-list 
is fast enough, then the gitk fix may well be to just not compute the 
*whole* history - ie the solution may be as simple as stopping the 
background job that does all the graph calculations when it is (pick a 
point at random) something like a thousand commits into the graph, and the 
user hasn't scrolled down..

Gitk is already incremental (ie it shows the top of the graph long before 
it has drawn it all), so that should not be fundamentally hard. Paul has 
been pretty good about these things when we've had problems in the past.

Paul added to Cc. Paul?

> And newsreaders, for that reason, have a set of strategies for
> limiting the size of the problem (and changing the limits on the fly
> as needed) as well as being efficient with handling it.  They have to
> be _good_ at dealing with that amount of data, or they would have
> fallen by the wayside.

The reason I argue against this is that (a) the graph really is very 
useful. It tells you things that you reasonably visualize any other way. 
And (b) I think what you suggest wouldn't be trivial at all.

But if you want to make a virtual NNTP server that exposes the 
git-rev-list output, go right ahead.

I don't think it should be needed (ie I think we should be able to handle 
this issue other ways), and I don't think it's as good as the alternatives 
(because I don't think any client will ever be able to show the history 
well), but hey, alternatives are fine.

		Linus

  parent reply	other threads:[~2007-08-12 19:54 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-12 13:23 Can I have this, pretty please? David Kastrup
2007-08-12 14:21 ` Steven Grimm
2007-08-12 16:40   ` David Kastrup
2007-08-12 18:38 ` Linus Torvalds
2007-08-12 18:48   ` Linus Torvalds
2007-08-12 19:28     ` Jon Smirl
2007-08-12 19:45       ` Linus Torvalds
2007-08-12 19:48       ` David Kastrup
2007-08-12 19:29     ` David Kastrup
2007-08-12 19:51       ` Uwe Kleine-König
2007-08-12 20:04         ` David Kastrup
2007-08-12 20:21           ` Linus Torvalds
2007-08-12 19:53       ` Linus Torvalds [this message]
2007-08-12 20:10         ` David Kastrup
2007-08-13  0:22         ` Paul Mackerras
2007-08-13  5:49           ` David Kastrup
2007-08-12 19:10   ` David Kastrup
2007-08-12 19:24     ` Linus Torvalds
2007-08-12 19:46       ` David Kastrup
2007-08-12 19:59         ` Linus Torvalds
2007-08-12 20:30           ` David Kastrup
2007-08-12 20:58           ` Govind Salinas
2007-08-12 21:35             ` David Kastrup
2007-08-12 22:17               ` Martin Langhoff
2007-08-12 22:54                 ` David Kastrup
2007-08-12 20:02     ` Jeff King
2007-08-12 20:09       ` Jeff King
2007-08-12 21:51       ` David Kastrup
2007-08-12 23:10         ` Jeff King

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

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

  git send-email \
    --in-reply-to=alpine.LFD.0.999.0708121246020.30176@woody.linux-foundation.org \
    --to=torvalds@linux-foundation.org \
    --cc=dak@gnu.org \
    --cc=git@vger.kernel.org \
    --cc=paulus@samba.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.
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 NNTP newsgroup(s).