Subject: Re: bug#45751: [feature/native-comp] emacs keeps running 100% of CPU

From: Édouard Debry <[email-masked]>
Date: Mon, 11 Jan 2021 12:23:54 +0100

On lun., janv. 11 2021, Andrea Corallo wrote:
> Édouard Debry <[email-masked]> writes:
>
>> On lun., janv. 11 2021, Édouard Debry wrote:
>>> On dim., janv. 10 2021, Andrea Corallo wrote:
>>>> Édouard Debry <[email-masked]> writes:
>>>>
>>>>> I noticed that when launching emacs on linux (debian 
>>>>> buster),
>>>>> it keeps on running 100% of the CPU and seems to gradually 
>>>>> eat all
>>>>> memory, approximately 1-2% every minute.
>>>>>
>>>>> It seems related to native compiling. In the
>>>>> *Async-native-compile-log* I read :
>>>>>
>>>>> <=============================>
>>>>> Compiling
>>>>> /home/edouard/.emacs.d/elpa/color-theme-sanityinc-solarized-20200805.603/color-theme-sanityinc-solarized.el...
>>>>
>>>> I see a similar issue with sanityinc-tomorrow.el, the 
>>>> compilation
>>>> is way
>>>> slower than any other one but it completes eventually.  I 
>>>> guess is
>>>> the
>>>> same issue you see and with sufficient RAM also 
>>>> sanityinc-solarized
>>>> should complete.
>>>>
>>>> In case of of sanityinc-tomorrow I think is because of
>>>> `color-theme-sanityinc-tomorrow'.  This is a single function 
>>>> that
>>>> after
>>>> macro expansion becomes enormous.
>>>>
>>>> We need to make the compiler robust against these corner 
>>>> cases,
>>>> I'll
>>>> have a look this week into adding some logic for that.
>>>>
>>>> Thanks
>>>>
>>>>   Andrea
>>>
>>> I have waited for approximately one hour and until linux 
>>> became
>>> totally unresponsive, I
>>> had to reboot.
>>>
>>> I am not 100% sure it is because of emacs compiling the color 
>>> theme
>>> package and eating
>>> all memory,
>>> but I never had such a crash on linux since I own this laptop 
>>> and I
>>> had exactly the same
>>> crash on
>>> windows 10 with emacs native-comp eating all memory.
>>>
>>> So most probably, my previous bug is related to that. I could 
>>> try
>>> another theme and see
>>> if this still happens.
>>>
>>> Regards
>>
>> Also, is there a way to prevent emacs native-comp to compile 
>> some
>> packages, some kind
>> of blacklist. I would prefer at the moment because I am used to 
>> this
>> color theme.
>
> Yes, `comp-deferred-compilation-deny-list'.
>

Thanks ! In fact I just discovered this settings as you answered 
me and

(require 'comp)
(setq comp-deferred-compilation-deny-list '("color-theme-*"))

in my init file does the job.

>> Do you think there may be a noticeable difference on emacs's
>> performance between a
>> color theme natively compiled (*eln) or just byte compiled 
>> (*elc)
>
> I don't think so.
>
>   Andrea