Subject: Re: bug#49264: 28.0.50; project.el+tramp performance issue

From: Ergus <[email-masked]>
Date: Thu, 19 Aug 2021 05:08:33 +0200

On Thu, Aug 19, 2021 at 04:19:20AM +0300, Dmitry Gutov wrote:
>Hi Ergus,
>
>On 17.08.2021 03:45, Ergus wrote:
>
>>I made a manual fast profiling and I see that most of the time in
>>project-buffers actually goes to tramp-sh-file-name-handler.
>>
>> �������� 207� 42%�������� - project-buffers
>> �������� 207� 42%��������� - apply
>> �������� 207� 42%���������� - #<compiled -0x1f5d919efefc0a09>
>> �������� 200� 40%����������� - file-in-directory-p
>> �������� 200� 40%������������ - tramp-file-name-handler
>> �������� 197� 40%������������� - apply
>> �������� 197� 40%�������������� - tramp-sh-file-name-handler
>> �������� 197� 40%��������������� - tramp-handle-file-in-directory-p
>> �������� 183� 37%���������������� - tramp-run-real-handler
>> �������� 183� 37%����������������� - file-in-directory-p
>> �������� 124� 25%������������������ - file-equal-p
>> �������� 124� 25%������������������� - tramp-file-name-handler
>> �������� 121� 24%�������������������� - apply
>> �������� 121� 24%��������������������� - tramp-sh-file-name-handler
>> �������� 121� 24%���������������������� - tramp-handle-file-equal-p
>> ��������� 85� 17%����������������������� - tramp-run-real-handler
>> ��������� 85� 17%������������������������ - file-equal-p
>> ��������� 52� 10%������������������������� - file-truename
>> ��������� 52� 10%�������������������������� - tramp-file-name-handler
>> ��������� 41�� 8%��������������������������� - apply
>> ��������� 41�� 8%���������������������������� - tramp-sh-file-name-handler
>> ��������� 41�� 8%����������������������������� - 
>>tramp-sh-handle-file-truename
>> ��������� 28�� 5%������������������������������ + file-remote-p
>> ��������� 10�� 2%������������������������������ + file-local-name
>> ���������� 3�� 0%������������������������������ + file-name-as-directory
>>
>>It goes specifically to file-in-directory-p as you said. So maybe the
>>improvement there may be also desirable if the difference after the
>>optimization can reduce the time for file-in-directory-p (or the caller)
>>at least to the half.
>
>Thanks for testing.
>
>Try the attached new version please. It should eliminate that 
>particular bottleneck.

Hi:

It feels better now. There is still a small delay, but that is normal
working with tramp. I will try it a bit more tomorrow; but the first
impression is that this solves the issue for me.

Best,
Ergus