[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: emacs-27 b46c75b: xref-matches-in-files: Big Tramp speed-up

From: Stefan Monnier
Subject: Re: emacs-27 b46c75b: xref-matches-in-files: Big Tramp speed-up
Date: Wed, 08 Jan 2020 13:56:03 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

>> Hmm... I guess this deserves a bug number and we should try and figure
>> out why it's so much slower to go through the file-handler machinery
>> (and whether we can do something about it other than provide ad-hoc
>> coarse-grained operations).
> The file name handler machinery is designed for single files. If you
> have some ten thousands files, which have all the same remote
> identification, and for which the same operation will be applied, this
> doesn't scale well.

I understand that if we can treat a whole set of files which we know all
live below some directory, then some of the processing can be performed
just once instead of N times.

But in the current case, we just replace N calls to `file-local-name` with
N calls to `tramp-file-local-name` and it's supposedly already much
faster, even though `tramp-file-local-name` doesn't get to share work
between all those calls, AFAIK.  It's *this* speed difference which I'd
like to understand.

> That's why I have proposed to find a way to apply an operation to a
> fileset instead of a single file only.

Yes, the idea makes sense.  Basically add a magic-file-op
(file-list-apply FUNCTION DIR FILES &rest ARGS) where FILES are relative
to DIR?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]