From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Proposal to Improve Performance of `info-apropos` Command in GNU Emacs Date: Tue, 03 Oct 2023 19:15:37 +0300 Message-ID: <837co37kd2.fsf@gnu.org> References: <87y1gkhr5k.fsf@gmail.com> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="13473"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Eval EXEC Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Oct 03 18:16:27 2023 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 1qni4R-0003AE-IS for ged-emacs-devel@m.gmane-mx.org; Tue, 03 Oct 2023 18:16:27 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qni3i-00076U-QI; Tue, 03 Oct 2023 12:15:42 -0400 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 1qni3e-00074M-2W for emacs-devel@gnu.org; Tue, 03 Oct 2023 12:15:41 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qni3d-0001VQ-Gh; Tue, 03 Oct 2023 12:15:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=huRzTYK0n2nVOCt5E2KJqTAEkl7bxLi7NBL/PQN2uTA=; b=RC+GE4CpVeow g2nD8f/1QAlNmIMS7CvAl2iMe5pZi9eWF3/YoFxC3ApKKXd4nCTKRY4uBGHo51JJQte5B87LWSWQO hR2UDwSlUH6MxYwUr7LvHVb9v44tjbiQSjhlmdcWYbTcncvdvWyHW/lr5Lh+ehF6BtDiHBK+3z1X+ RwzRQqlveREFbG7iV55EWNULjz7+Dws7ZnCYy1w6W4Q+2z4g6MT7monUlDFJ5dFaTIM1kuFfA8UlP IKyyf3Zq4hqnw8E6I7nXxwi8bJsV/Cu1ioTqOnKk1Ef/UN2wf8j3hOL73JjjB+pYhAiJCC4avJi2e TfyC7RqHgDISVxhc8ZwZBw==; In-Reply-To: <87y1gkhr5k.fsf@gmail.com> (message from Eval EXEC on Tue, 03 Oct 2023 19:32:01 +0800) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:311258 Archived-At: > From: Eval EXEC > Date: Tue, 03 Oct 2023 19:32:01 +0800 > > > I would like to propose an idea to enhance the performance of the `info-apropos` command in GNU Emacs. Currently, I have observed that `info-apropos` performs searches sequentially, scanning through each node one by one, resulting in longer execution times. On my system, for instance, executing `M-x info-apropos RET advice-add RET` takes approximately 8 seconds. > > To enhance the efficiency of `info-apropos`, I suggest implementing a parallel search mechanism that utilizes multiple threads to search through nodes simultaneously. This approach has the potential to bring significant performance improvements, especially on multi-core CPUs. I believe such optimization could potentially result in a 10x speed boost. Unfortunately, Emacs currently cannot run several threads concurrently, each one running Lisp code. Only one thread in Emacs can run Lisp (or its underlying primitives written in C) at any given time.