From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Manuel Giraud via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#68006: 30.0.50; Image-mode speed Date: Sun, 24 Dec 2023 17:44:37 +0100 Message-ID: <87le9jlfd6.fsf@ledu-giraud.fr> Reply-To: Manuel Giraud Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23706"; mail-complaints-to="usenet@ciao.gmane.io" To: 68006@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Dec 24 17:45:18 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1rHRbK-0005w4-LX for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 24 Dec 2023 17:45:18 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rHRb1-00030z-Hq; Sun, 24 Dec 2023 11:44:59 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rHRaz-00030g-LO for bug-gnu-emacs@gnu.org; Sun, 24 Dec 2023 11:44:57 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rHRay-0005qj-Ln for bug-gnu-emacs@gnu.org; Sun, 24 Dec 2023 11:44:57 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rHRb4-00075r-JE for bug-gnu-emacs@gnu.org; Sun, 24 Dec 2023 11:45:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Manuel Giraud Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 24 Dec 2023 16:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 68006 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.170343629927197 (code B ref -1); Sun, 24 Dec 2023 16:45:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 24 Dec 2023 16:44:59 +0000 Original-Received: from localhost ([127.0.0.1]:53405 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rHRb1-00074b-5a for submit@debbugs.gnu.org; Sun, 24 Dec 2023 11:44:59 -0500 Original-Received: from lists.gnu.org ([2001:470:142::17]:60022) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rHRay-00074K-7R for submit@debbugs.gnu.org; Sun, 24 Dec 2023 11:44:58 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rHRam-000304-DR for bug-gnu-emacs@gnu.org; Sun, 24 Dec 2023 11:44:44 -0500 Original-Received: from ledu-giraud.fr ([51.159.28.247]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rHRak-0005q0-2o for bug-gnu-emacs@gnu.org; Sun, 24 Dec 2023 11:44:44 -0500 DKIM-Signature: v=1; a=ed25519-sha256; c=simple/simple; s=ed25519; bh=KPLCkRUf 9KrQ8FxbASLNWrW1DseEnfAMYrluJTEwAOA=; h=date:subject:to:from; d=ledu-giraud.fr; b=gF1wEl7oTyLfSRqXzl/6vxQcDW1I4CfLIllWvFs8K4IHlRvJEo JiEqCiZMitMSLRH2JSIrGSbIpovwO4nZ00Bw== DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=rsa; bh=KPLCkRUf9KrQ8Fxb ASLNWrW1DseEnfAMYrluJTEwAOA=; h=date:subject:to:from; d=ledu-giraud.fr; b=SiLzVldkODMmnj8SXFlx937EO6gcrAN/PxYnaWVFrl2T8eomKa /GiAOYUbrHjucFvGYcc3xnuwEp2Wof/d4nTgKUJ96oMoRnFPxS1GPTEV/+r0Yq2RRzGXCo RRtokoYH0NuSOV81exFIK+BswC9nT8nJ2QRhyyByJ1NIzrmha7FUsNFSbHowdlLeUFvaFV GNh/hxnIs97LHazqJ1XYgkrUBNkNebDoQKi3GOYXhCpb4U/65XHtOVp9XIj2QZeqBjdLnJ raqKNEaVnhx11M4M3sCUjs6rIPYGn7k808Hxz6hxf0VgH5xYavV5aUOW/d3916MdXuRaQ5 zhuBTnZjF0LA== Original-Received: from computer ( [10.1.1.1]) by ledu-giraud.fr (OpenSMTPD) with ESMTPSA id 3524267e (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO) for ; Sun, 24 Dec 2023 17:44:38 +0100 (CET) Received-SPF: pass client-ip=51.159.28.247; envelope-from=manuel@ledu-giraud.fr; helo=ledu-giraud.fr X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:276818 Archived-At: Hi, I was looking into performance issue using image-mode when going from one image to the next/previous (with 'image-next/previous-file') and I found those lines in "image-mode.el": --8<---------------cut here---------------start------------->8--- ;; Discard any stale image data before looking it up again. (image-flush image) (setq image (append image (image-transform-properties image))) (setq props `(display ,image ;; intangible ,image rear-nonsticky (display) ;; intangible read-only t front-sticky (read-only))) --8<---------------cut here---------------end--------------->8--- The call to 'image-flush' defeats the entire purpose of having an image cache. If I remove it, moving from previous/next is much more faster (once this image is in the cache, of course). Do you know why this code is like that? Best regards, In GNU Emacs 30.0.50 (build 2, x86_64-unknown-openbsd7.4) of 2023-12-24 built on computer Repository revision: 13e46e2c1d33a3a48ecdcb56b745dbc53a4a3831 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12101009 System Description: OpenBSD computer 7.4 GENERIC.MP#1549 amd64 Configured using: 'configure CC=egcc CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib MAKEINFO=gmakeinfo --prefix=/home/manuel/emacs --bindir=/home/manuel/bin --with-x-toolkit=no --without-cairo --without-dbus --without-gconf --without-gsettings --without-sound --without-compress-install' Configured features: FREETYPE GIF GLIB GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBXML2 MODULES NOTIFY KQUEUE OLDXMENU PDUMPER PNG RSVG SQLITE3 THREADS TIFF TREE_SITTER WEBP X11 XDBE XFT XIM XINPUT2 XPM ZLIB Important settings: value of $LC_CTYPE: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: bug-reference-prog-mode: t paredit-mode: t display-time-mode: t display-battery-mode: t desktop-save-mode: t server-mode: t override-global-mode: t repeat-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t minibuffer-regexp-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /home/manuel/.emacs.d/elpa/ef-themes-1.4.1/theme-loaddefs hides /home/manuel/emacs/share/emacs/30.0.50/lisp/theme-loaddefs Features: (shadow sort mail-extr emacsbug vc-annotate smerge-mode diff vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view pcvs-util whitespace image-file image-converter org-agenda org-indent org-element org-persist org-id avl-tree oc-basic ol-eww ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect ol-docview doc-view image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi gnus-icalendar org-capture org-refile org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src ob-comint org-pcomplete org-list org-footnote org-faces org-entities ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs org-version org-compat org-macs autorevert filenotify vc-hg sh-script smie treesit executable eww url-queue mm-url mule-util jka-compr on-screen vc-dir ewoc vc vc-git diff-mode vc-dispatcher bug-reference paredit gnus-dired time battery cus-load desktop frameset exwm-randr xcb-randr exwm-config ido exwm exwm-input xcb-keysyms xcb-xkb exwm-manage exwm-floating xcb-cursor xcb-render exwm-layout exwm-workspace exwm-core xcb-ewmh xcb-icccm xcb xcb-xproto xcb-types xcb-debug server modus-operandi-theme modus-themes zone speed-type url-http url-auth url-gw nsm compat ytdious mingus libmpdee reporter edebug debug backtrace transmission color calc-bin calc-ext calc calc-loaddefs rect calc-macs supercite regi ebdb-message ebdb-gnus gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range message sendmail yank-media puny rfc822 mml mml-sec epa epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums gmm-utils mailheader gnus-win ebdb-mua ebdb-com crm ebdb-format ebdb mailabbrev eieio-opt speedbar ezimage dframe find-func eieio-base timezone icalendar gnus nnheader gnus-util mail-utils range mm-util mail-prsvr wid-edit web-mode derived disp-table erlang-start skeleton cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs slime-asdf grep slime-tramp tramp rx trampver tramp-integration files-x tramp-message tramp-compat xdg shell pcomplete parse-time iso8601 time-date format-spec tramp-loaddefs slime-fancy slime-indentation slime-cl-indent cl-indent slime-trace-dialog slime-fontifying-fu slime-package-fu slime-references slime-compiler-notes-tree advice slime-scratch slime-presentations bridge slime-macrostep macrostep slime-mdot-fu slime-enclosing-context slime-fuzzy slime-fancy-trace slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc slime-repl slime-parse slime apropos compile text-property-search etags fileloop generator xref project arc-mode archive-mode noutline outline icons pp comint ansi-osc ansi-color ring hyperspec thingatpt slime-autoloads edmacro kmacro use-package-bind-key bind-key appt diary-lib diary-loaddefs cal-menu calendar cal-loaddefs pcase dired-x dired-aux dired dired-loaddefs cl-extra help-mode use-package-core repeat easy-mmode debbugs-autoloads ebdb-autoloads ef-themes-autoloads exwm-autoloads hyperbole-autoloads magit-autoloads git-commit-autoloads magit-section-autoloads dash-autoloads on-screen-autoloads osm-autoloads paredit-autoloads rust-mode-autoloads speed-type-autoloads transmission-autoloads with-editor-autoloads info compat-autoloads ytdious-autoloads package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs password-cache json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads kqueue lcms2 dynamic-setting font-render-setting xinput2 x multi-tty move-toolbar make-network-process emacs) Memory information: ((conses 16 793954 635507) (symbols 48 52684 2) (strings 32 255659 44607) (string-bytes 1 7175025) (vectors 16 150516) (vector-slots 8 2617297 42627) (floats 8 567 3230) (intervals 56 20138 6985) (buffers 992 49)) -- Manuel Giraud