From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Andrea Corallo Newsgroups: gmane.emacs.devel Subject: Re: On elisp running native Date: Sat, 15 Feb 2020 09:29:57 +0000 Message-ID: References: <83tv5mp48l.fsf@gnu.org> <83sgl0lchm.fsf@gnu.org> <83imlwl9vm.fsf@gnu.org> <83o8uegykm.fsf@gnu.org> <74dd94a9-28cb-a5fd-dbc7-ab21009834ad@cs.ucla.edu> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="127800"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) Cc: Eli Zaretskii , Paul Eggert , Stefan Monnier To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Feb 15 10:35:22 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1j2tr8-000X8z-09 for ged-emacs-devel@m.gmane-mx.org; Sat, 15 Feb 2020 10:35:22 +0100 Original-Received: from localhost ([::1]:49634 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2tr6-0006Du-V4 for ged-emacs-devel@m.gmane-mx.org; Sat, 15 Feb 2020 04:35:20 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40408) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j2tqW-0005jH-RV for emacs-devel@gnu.org; Sat, 15 Feb 2020 04:34:45 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j2tqV-0000wB-Rd for emacs-devel@gnu.org; Sat, 15 Feb 2020 04:34:44 -0500 Original-Received: from mx.sdf.org ([205.166.94.20]:59251) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1j2tqU-0000sS-7M; Sat, 15 Feb 2020 04:34:42 -0500 Original-Received: from sdf.org (ma.sdf.org [205.166.94.33]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 01F9Twej018040 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits) verified NO); Sat, 15 Feb 2020 09:29:58 GMT Original-Received: (from akrl@localhost) by sdf.org (8.15.2/8.12.8/Submit) id 01F9TvE4032757; Sat, 15 Feb 2020 09:29:57 GMT In-Reply-To: (Stefan Monnier's message of "Wed, 05 Feb 2020 09:24:00 -0500") X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 205.166.94.20 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:244947 Archived-At: All right, small update: - I've redesigned the variables layout in the generated code. Now every call by reference gets its own unique array for its arguments. I believe this is the right way to express to the compiler what is going on. This has no impact on the compilation time, but produced binaries are slightly smaller. I'm pushing it after having rebased on top of master. - I think is worth mentioning that is now 2 weeks circa that me and a colleague are using for everyday production Emacs all compiled at speed 2. So far we have seen no crashes. I consider having speed 2 stable a major achievement. - Connected to the previous point with the today push I'm setting speed 2 as default. This blows up compilation time to ~7h CPU time on my laptop (to be divided by the number of threads). We can always fallback to speed 0 (~1h) but I think its important to test with optimizations. Also I took some measures, around 25% of the total compile time goes into leim. ZIRANMA.el take like ~50min. Still have to understand exactly what's going on with these but it's interesting for speculation purpose given the specific kind of file :) Also I'm questioning my self it's really worth compiling these files. - I still have to investigate the fact that the pure space usage appears to be a little higher when native compiling. In case some special trick to look into this already exists please mention. Andrea PS I've also tracked down the observed crashes I previously mentioned. I tested two versions of the same patch convinced they were equivalent but wasn't the case, my fault :/ -- akrl@sdf.org