From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/74051 Path: news.gmane.org!not-for-mail From: Dan Christensen Newsgroups: gmane.emacs.gnus.general Subject: Re: Improving Gnus speed Date: Fri, 12 Nov 2010 16:38:53 -0500 Message-ID: <87vd42mdci.fsf@uwo.ca> References: <87zktemkwl.fsf@uwo.ca> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1289597993 14876 80.91.229.12 (12 Nov 2010 21:39:53 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 12 Nov 2010 21:39:53 +0000 (UTC) To: ding@gnus.org Original-X-From: ding-owner+M22419@lists.math.uh.edu Fri Nov 12 22:39:49 2010 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PH1LY-0002hc-N6 for ding-account@gmane.org; Fri, 12 Nov 2010 22:39:49 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1PH1L3-0005HO-JF; Fri, 12 Nov 2010 15:39:17 -0600 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1PH1L0-0005H9-Sf for ding@lists.math.uh.edu; Fri, 12 Nov 2010 15:39:14 -0600 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtp (Exim 4.72) (envelope-from ) id 1PH1Ky-0004OL-Q2 for ding@lists.math.uh.edu; Fri, 12 Nov 2010 15:39:14 -0600 Original-Received: from lo.gmane.org ([80.91.229.12]) by quimby.gnus.org with esmtp (Exim 3.36 #1 (Debian)) id 1PH1Kx-0001fm-00 for ; Fri, 12 Nov 2010 22:39:11 +0100 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1PH1Kw-0002OP-CV for ding@gnus.org; Fri, 12 Nov 2010 22:39:10 +0100 Original-Received: from bas3-london14-1096778080.dsl.bell.ca ([65.95.129.96]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 12 Nov 2010 22:39:10 +0100 Original-Received: from jdc by bas3-london14-1096778080.dsl.bell.ca with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 12 Nov 2010 22:39:10 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 32 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: bas3-london14-1096778080.dsl.bell.ca User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1.50 (gnu/linux) Cancel-Lock: sha1:dEvfhNvl8tqLn1iDb1IRZkeQNHY= X-Spam-Score: -1.9 (-) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:74051 Archived-At: Francis Moreau writes: > But why are there so many calls to gnus-thread-total-score and > gnus-thread-sort-by-most-recent-date knowing that my group contains only > 1298 articles ? The way thread sorting works is that not only are the threads sorted, but the children of each article are also sorted using the same function. So it gets called recursively a lot of times. That's why a change I made to cache the parsed date/time info makes such a bit difference. > gnus-thread-sort-by-most-recent-date 4348 31.652889000 0.0072798732 > gnus-thread-total-score-1 82494 17.134565999 0.0002077068 > gnus-thread-sort-by-total-score 8697 3.4791829999 0.0004000440 On the other hand, I'm still not sure why the above functions are called that many times. I wonder if the recursion is going one level deeper than necessary? Or if the overall sorting as well as the sorting of children can be accomplished in a unified way, without repeating so much work? E.g., maybe first each thread could be traversed, and on the way back up from the leaves to the root, you propagate to each node the most recent date seen by any of the children, storing this as some extra data with each article. Then you just sort using this stored data. > Also do you know why the fetching process is so long (~ 7secs) specially > since the group contains only cached articles ? Sorry, I don't know anything about that. Dan