Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <41F193F9.6060709@mscha.org> Date: Sat, 22 Jan 2005 00:44:57 +0100 From: Michael Schaap User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: Updated: fortune-1.99.1-1 References: <20050113202700 DOT GA3724 AT efn DOT org> <41F12481 DOT 7010205 AT mscha DOT org> <20050121225943 DOT GA2360 AT efn DOT org> In-Reply-To: <20050121225943.GA2360@efn.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit X-IsSubscribed: yes On 21-Jan-2005 23:59, Yitzchak Scott-Thoennes wrote: >On Fri, Jan 21, 2005 at 04:49:21PM +0100, Michael Schaap wrote: > > >>Hi Yitzckak, >> >>On 13-Jan-2005 21:27, Yitzchak Scott-Thoennes wrote: >> >> >> >>> Achilles: Don't tell me you believe in fortune-telling! >>> Tortoise: No...but they say it works even if you don't believe in it. >>> -- GEB, Hofstadter >>> >>>I've made a new version of fortune available for installation. >>> >>> >>> >>> >>Thanks for bracing the storm and doing this! >> >>One thing, though: this version is much, much slower than the previous >>one. It takes around a second to produce a fortune, while the old one >>ran pretty much instantaneously. (This is on a high end XP box.) >> >> > >Is that the first time you run it, or every time? For me it goes >much faster on subsequent runs, presumably due to disk cache. > > > Indeed, it is quite a bit faster on subsequent runs ("time fortune -a" initially reports 1.3 seconds, subsequently 0.3 seconds), although it 'forgets' this quite quicky, after a minute or so it's back to 1.3 already. >>When I run "strace fortune", the new version produces 16,771 lines of >>output. The old version produces 467 lines... >>I won't attach it to this message, for size reasons. >> >> > >I will actually try it in the next day or so, but I believe this is >due to a bug in the old fortune version where the -a switch was >disregarded and only a single fortune file checked. > Hmm, I never noticed. So that's why I didn't get offended. ;-) > Additionally, >the old fortune had fewer fortunes in far fewer files. > > > I think that's certainly part of the reason. However, that probably doesn't explain the whole slowdown: there are now about 35 times as many system calls... By the way, I'm also running fortune-mod version 9708, with almost as many fortunes, on a Linux box (with lower specs than my Windows box), and there it's running much faster: 0.015s on the first run. There are no *.u8 symlinks there, by the way. And I tried removing those from the Cygwin /usr/share/games/fortunes directory: that actually makes it about twice as fast... Are those *.u8 symlinks doing anything useful? >Nevertheless, I will see if there's any way to speed up the selection >from any files. > >As a workaround, you can cat together the base fortune files (those >without a .dat or .u8 extension), run /usr/bin/strfile on it to create >the .dat file, and create a .u8 symlink to it. Then run fortune without >the -a switch but with your large file name. > > > Yeah, that helps quite a bit. With only two fortune files (one regular, one offensive), and without the .u8 symlinks, it runs pretty smoothly: 0.064 seconds. (For the record: for the offensive fortunes, use "strfile -x".) Thanks, – Michael -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/