From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: YAMAMOTO Mitsuharu Newsgroups: gmane.emacs.devel Subject: Re: Analysis of redisplay performance on Windows Date: Mon, 28 Jul 2008 13:24:47 +0900 Organization: Faculty of Science, Chiba University Message-ID: References: <87od4kuis1.fsf@stupidchicken.com> <488C45FF.2040509@gnu.org> <87tzebnizu.fsf@stupidchicken.com> <488CE8F6.5080001@gnu.org> <87iqurhupv.fsf@stupidchicken.com> <488CEE6B.6020600@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-Trace: ger.gmane.org 1217219110 8495 80.91.229.12 (28 Jul 2008 04:25:10 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 28 Jul 2008 04:25:10 +0000 (UTC) Cc: Chong Yidong , emacs-devel@gnu.org To: Jason Rumney Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jul 28 06:25:59 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KNKJ5-00082S-FE for ged-emacs-devel@m.gmane.org; Mon, 28 Jul 2008 06:25:59 +0200 Original-Received: from localhost ([127.0.0.1]:56979 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KNKIB-0004mt-4w for ged-emacs-devel@m.gmane.org; Mon, 28 Jul 2008 00:25:03 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KNKI6-0004lQ-MC for emacs-devel@gnu.org; Mon, 28 Jul 2008 00:24:58 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KNKI4-0004lE-Ab for emacs-devel@gnu.org; Mon, 28 Jul 2008 00:24:57 -0400 Original-Received: from [199.232.76.173] (port=41496 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KNKI4-0004lB-5C for emacs-devel@gnu.org; Mon, 28 Jul 2008 00:24:56 -0400 Original-Received: from ntp.math.s.chiba-u.ac.jp ([133.82.132.2]:57644 helo=mathmail.math.s.chiba-u.ac.jp) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KNKI0-0004vJ-97; Mon, 28 Jul 2008 00:24:52 -0400 Original-Received: from church.math.s.chiba-u.ac.jp (church [133.82.132.36]) by mathmail.math.s.chiba-u.ac.jp (Postfix) with ESMTP id 5EDC22C40; Mon, 28 Jul 2008 13:24:47 +0900 (JST) In-Reply-To: <488CEE6B.6020600@gnu.org> User-Agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (=?ISO-8859-4?Q?Shij=F2?=) APEL/10.6 Emacs/22.2.50 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) X-detected-kernel: by monty-python.gnu.org: NetBSD 3.0 (DF) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:101623 Archived-At: >>>>> On Sun, 27 Jul 2008 22:53:47 +0100, Jason Rumney said: > One difference between Emacs 22 and 23 is that we compute glyph > indexes properly in Emacs 23, while on 22 we use unicode code > points. Since we call font->encode_char once per character rather > than for a whole run, the overhead of selecting fonts into the GC is > multiplied. According to the document below, Uniscribe seems to provide some mechanism to defer heavy operations such as get_frame_dc and SelectObject. http://www.microsoft.com/typography/developers/uniscribe/uniscribe.htm#SCRIPT_CACHE I'm not sure if this retrying with E_PENDING solves the performance problem on Windows with Uniscribe. But I think it's worth trying before resorting to platform-independent changes because the performance problem is not found so far in other platforms including my local Core Text font-backend driver mentioned in http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg02186.html. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp