From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/10974 Path: main.gmane.org!not-for-mail From: Hartmut Henkel Newsgroups: gmane.comp.tex.context Subject: Re: Re: Using the free PS Fonts with ConTeXt Date: Wed, 12 Feb 2003 00:52:40 +0100 (CET) Sender: ntg-context-admin@ntg.nl Message-ID: References: <87bs1izc9l.fsf@gundla.ch> Reply-To: ntg-context@ntg.nl NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: main.gmane.org 1045007576 25752 80.91.224.249 (11 Feb 2003 23:52:56 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Tue, 11 Feb 2003 23:52:56 +0000 (UTC) Return-path: Original-Received: from ref.vet.uu.nl ([131.211.172.13] helo=ref.ntg.nl) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 18ikCt-0006hD-00 for ; Wed, 12 Feb 2003 00:52:55 +0100 Original-Received: from ref.ntg.nl (localhost.localdomain [127.0.0.1]) by ref.ntg.nl (Postfix) with ESMTP id C342A10AE8; Wed, 12 Feb 2003 00:55:05 +0100 (MET) Original-Received: from hahepc1.hahe (du-017a-063.access.de.clara.net [213.221.75.63]) by ref.ntg.nl (Postfix) with ESMTP id A2A6810AB6 for ; Wed, 12 Feb 2003 00:53:18 +0100 (MET) Original-Received: from hahe (helo=localhost) by hahepc1.hahe with local-esmtp (Exim 4.10) id 18ikCe-0007ON-00 for ntg-context@ntg.nl; Wed, 12 Feb 2003 00:52:40 +0100 Original-To: ntg-context@ntg.nl In-Reply-To: <87bs1izc9l.fsf@gundla.ch> Errors-To: ntg-context-admin@ntg.nl X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.0.13 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.comp.tex.context:10974 X-Report-Spam: http://spam.gmane.org/gmane.comp.tex.context:10974 Don't know what is slow for your PC. I'm just looking into pdftex mapfile.c, and there is in line 142 a for-loop for checking duplicate mapfile entries (tfm). This runs some 3000*0.5*3000 times for parsing your mapfile lines, always checking for some strcmp() == 0. You can speed this up if you put a line "if (*(e->tfm_name) != *buf) continue;" into the begin of the for-loop (you need braces then!). Then the loop goes to the next map line already, if the 1st letters do not match. I have generated some 3000 random mapfile entries for testing (letters equally distributed). time pdftex on an almost empty TeX file "A \bye" tells: without patch real 0m1.463s user 0m1.370s sys 0m0.020s with patch checking inequality of 1st letters real 0m0.990s user 0m0.880s sys 0m0.030s So there might be some corner for improvement. Using strcmp() the reverse way seems not to speed up things; how to write a more sophisticated inequality-checker? Greetings Hartmut On Tue, 11 Feb 2003, Patrick Gundlach wrote: > Hans Hagen writes: > > Hello out there, > > >>Right. LaTeX does not use the run-time loading of mapfiles. > > > > here i've split up the files (otherwise they become anoyingly large) > > (actually, this is why latex pdftex people have proposed to patch > > pdftex, because it's so slow on the large map files, something i never > > noticed since i use small ones -) > > If I remember correctly there was a sub-optimal sorting algorithm > used. With 3000+ lines in my mapfile this is getting very slow :( And > even in tetex 2.0 this is (as I have heard) not fixed. > > > Patrick