From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id ePRLAWWRt14/IwAA0tVLHw (envelope-from ) for ; Sun, 10 May 2020 05:30:13 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id 4F30GHKRt17QfwAAB5/wlQ (envelope-from ) for ; Sun, 10 May 2020 05:30:26 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 1F457940B28 for ; Sun, 10 May 2020 05:30:24 +0000 (UTC) Received: from localhost ([::1]:42170 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jXeXe-000522-I2 for larch@yhetil.org; Sun, 10 May 2020 01:30:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57294) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jXeX3-0004zD-QW for emacs-orgmode@gnu.org; Sun, 10 May 2020 01:29:45 -0400 Received: from mail-pg1-x533.google.com ([2607:f8b0:4864:20::533]:39560) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jXeX2-0003GC-6d for emacs-orgmode@gnu.org; Sun, 10 May 2020 01:29:45 -0400 Received: by mail-pg1-x533.google.com with SMTP id 207so2911832pgc.6 for ; Sat, 09 May 2020 22:29:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:in-reply-to:references:date:message-id :mime-version; bh=oc6iHuahuxqrvagQarGa2qsKEePp912i8mGVVaOt6yI=; b=D2A784onve7P5s/lbajnq+5m+9Su55o0Tbw397k+9Qs8dX9naieMvNiUDThMwvXOys bHoamSaxidp2oz5cYix7pXW+CZt1nIkbL11luQgQBx6bvWW5v2WhqZKQeh3RZvCxSjwI 2ddZ3rl47381emJ07ss1wy9pA8XW9wEYgRBSrElokvL1zcRZ81m5wCx5NkyUwN2pd8QU ktyMzA0RrbsPD9TuSckGBUmraThJ94qFkIKEkIj201aJDy3600sERIZsv/4qc4VwsxaN +6ttYM/h0jsF5DXw8tCVkRz3BH6KUOBrVCpZKphobjY1Yct+93Fe93weEBy/HBDzCAJz m/kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:in-reply-to:references:date :message-id:mime-version; bh=oc6iHuahuxqrvagQarGa2qsKEePp912i8mGVVaOt6yI=; b=YHLthQF5pz49FxdZ/wd6tWjGaH8IG0HOm5dTerY4oM/ApJkCKNpVB/0/VUdAxMbXbn Scm/xM+BQG8Mq6DJgZ24mZS0WahCglyyjelYDUvUQMgWB9d/h7mqwJUbTCorkL2G4yJQ KvgLdKcN8qYJI8Fu6TlWyUy6AMROjWki7AwxEedPMVtwcglB957RkKdOmMTQKI8EJ862 NtBgjYkMKxpGkMGOwtbFHm16nD0OTxDIbi1tMxnxmioyLkWgU+Tgd5kuCftNK0C5wCJj LoXDgHrYnJu5ifNFDPglnYw8Re7roRe8GJw7+LCh+3Bhs4m76rarcvzh9zhkYVwgQKAA lyyw== X-Gm-Message-State: AGi0PuY+AEtLfwYckoyNqlGCXbnzML0EZTLc08JdWtj7kgFyJbbYFCcM 93nmwWGOjE3O9yMjpw9ujxvB4FOh7Fs= X-Google-Smtp-Source: APiQypJOhqyo9Y1EFzFEa5Fxkydi2fK4NWhVXUChwTj5m8A2hWluHZkEzCX5xaU7B8Jw8hyoDbo/Ig== X-Received: by 2002:a63:1e22:: with SMTP id e34mr9603642pge.427.1589088582714; Sat, 09 May 2020 22:29:42 -0700 (PDT) Received: from localhost ([210.3.160.230]) by smtp.gmail.com with ESMTPSA id z28sm5924219pfr.3.2020.05.09.22.29.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 09 May 2020 22:29:41 -0700 (PDT) From: Ihor Radchenko To: Nicolas Goaziou Subject: Re: [patch suggestion] Mitigating the poor Emacs performance on huge org files: Do not use overlays for PROPERTY and LOGBOOK drawers In-Reply-To: <87368958jl.fsf@nicolasgoaziou.fr> References: <87h7x9e5jo.fsf@localhost> <875zdpia5i.fsf@nicolasgoaziou.fr> <87y2qi8c8w.fsf@localhost> <87r1vu5qmc.fsf@nicolasgoaziou.fr> <877dxl5hwu.fsf@nicolasgoaziou.fr> <87ftc9jcx5.fsf@localhost> <87368958jl.fsf@nicolasgoaziou.fr> Date: Sun, 10 May 2020 13:25:26 +0800 Message-ID: <87eers2wft.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::533; envelope-from=yantar92@gmail.com; helo=mail-pg1-x533.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: emacs-orgmode@gnu.org Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Scanner: scn0 X-Spam-Score: -1.21 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20161025 header.b=D2A784on; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Scan-Result: default: False [-1.21 / 13.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; GENERIC_REPUTATION(0.00)[-0.53889022791319]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.51.188.0/24:c]; FREEMAIL_FROM(0.00)[gmail.com]; DWL_DNSWL_FAIL(0.00)[gmail.com:server fail,209.51.188.17:server fail]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.08), country: US(-0.00), ip: 209.51.188.17(-0.54)]; DKIM_TRACE(0.00)[gmail.com:+]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; MAILLIST(-0.20)[mailman]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_IN_DNSWL_FAIL(0.00)[209.51.188.17:server fail]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:22989, ipnet:209.51.188.0/24, country:US]; TAGGED_FROM(0.00)[larch=yhetil.org]; FROM_NEQ_ENVFROM(0.00)[yantar92@gmail.com,emacs-orgmode-bounces@gnu.org]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; RCVD_COUNT_FIVE(0.00)[6]; FROM_HAS_DN(0.00)[]; URIBL_BLOCKED(0.00)[nicolasgoaziou.fr:email,sutd.edu.sg:email]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[emacs-orgmode@gnu.org]; HAS_LIST_UNSUB(-0.01)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.51.188.17:from]; MID_RHS_NOT_FQDN(0.50)[]; FORGED_SENDER_MAILLIST(0.00)[] X-TUID: E5rw5b5NojZf > Oops, you are right. I fixed this. It should be way faster. I can > navigate in your example file without much trouble. > > Please let me know how it goes. I tested with master + my personal config + native compilation of org, Emacs native-comp branch, commit c984a53b4e198e31d11d7bc493dc9a686c77edae. Did not see much improvement. Vertical motion in the folded buffer is still quite slow. > The last commits have nothing to do with unfolding. Apparently I misunderstood the purpose of: 1027e0256 "Implement `org-cycle-hide-property-drawers'" Best, Ihor Nicolas Goaziou writes: > Hello, > > Ihor Radchenko writes: > >> Just tested the master branch. >> Three observations on large org file: >> >> 1. Next/previous line on folder buffer is still terribly slow > > Oops, you are right. I fixed this. It should be way faster. I can > navigate in your example file without much trouble. > > Please let me know how it goes. > >> 2. Unfolding speed does not seem to be affected by the last commits - it >> is still much slower than text property version. There might be some >> improvement if I run Emacs for longer time though (Emacs generally >> becomes slower over time). > > The last commits have nothing to do with unfolding. > > I'm not pretending that overlays are faster than text properties, > either. > > With the current implementation property drawers add no overhead : last > commits reduce drastically the number of overlays active in a buffer at > a given time. > >> 3. on a headline with several levels of subheadings moves >> the cursor to the end of subtree, which did not happen in the past. > > Indeed. I fixed that, too. Thank you! > > Regards, > > -- > Nicolas Goaziou -- Ihor Radchenko, PhD, Center for Advancing Materials Performance from the Nanoscale (CAMP-nano) State Key Laboratory for Mechanical Behavior of Materials, Xi'an Jiaotong University, Xi'an, China Email: yantar92@gmail.com, ihor_radchenko@alumni.sutd.edu.sg