From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Antipov Newsgroups: gmane.emacs.devel Subject: Re: Long lines and bidi Date: Mon, 11 Feb 2013 09:43:17 +0400 Message-ID: <511884F5.6030806@yandex.ru> References: <877gmp5a04.fsf@ed.ac.uk> <83vca89izh.fsf@gnu.org> <5110906D.7020406@yandex.ru> <83fw1aac3d.fsf@gnu.org> <51120360.4060104@yandex.ru> <51127363.5030203@yandex.ru> <834nhp9u9j.fsf@gnu.org> <5114FEBB.8020201@yandex.ru> <838v6y99wk.fsf@gnu.org> <836222983u.fsf@gnu.org> <51152A00.6070101@yandex.ru> <83y5ey7npl.fsf@gnu.org> <5115C3BC.8020203@cs.ucla.edu> <83txpl7u3w.fsf@gnu.org> <5116113D.5070707@cs.ucla.edu> <83mwvd7qlx.fsf@gnu.org> <83r4ko5cpv.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1360561408 31894 80.91.229.3 (11 Feb 2013 05:43:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 11 Feb 2013 05:43:28 +0000 (UTC) Cc: Eli Zaretskii , Paul Eggert To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Feb 11 06:43:47 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1U4mB9-0002Ql-4L for ged-emacs-devel@m.gmane.org; Mon, 11 Feb 2013 06:43:47 +0100 Original-Received: from localhost ([::1]:55228 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U4mAp-0003Ln-UL for ged-emacs-devel@m.gmane.org; Mon, 11 Feb 2013 00:43:27 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:35905) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U4mAm-0003Iq-M8 for emacs-devel@gnu.org; Mon, 11 Feb 2013 00:43:25 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1U4mAl-0002KR-DO for emacs-devel@gnu.org; Mon, 11 Feb 2013 00:43:24 -0500 Original-Received: from forward3.mail.yandex.net ([2a02:6b8:0:602::3]:46486) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1U4mAi-0002Jr-Fz; Mon, 11 Feb 2013 00:43:21 -0500 Original-Received: from smtp4.mail.yandex.net (smtp4.mail.yandex.net [77.88.46.104]) by forward3.mail.yandex.net (Yandex) with ESMTP id C7460B4131D; Mon, 11 Feb 2013 09:43:17 +0400 (MSK) Original-Received: from smtp4.mail.yandex.net (localhost [127.0.0.1]) by smtp4.mail.yandex.net (Yandex) with ESMTP id 850A35C0581; Mon, 11 Feb 2013 09:43:17 +0400 (MSK) Original-Received: from unknown (unknown [37.139.80.10]) by smtp4.mail.yandex.net (nwsmtp/Yandex) with ESMTP id hHA8t79L-hHAWqFof; Mon, 11 Feb 2013 09:43:17 +0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1360561397; bh=jBQXAjwUSk1lJTaT+UhhI4DZQxSzFxyZwoWQBnFLp3c=; h=Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject: References:In-Reply-To:Content-Type:Content-Transfer-Encoding; b=Edq0XsPF5lMqqncnX5Pn3oDhxCmy2v+nOopUUs8iTr5pgOiODY+fWPZR6afKDJthu nYZe4FNOMLazadatJFjSX9TpQ5NV2YKe1OF8cZSV6/Zeqa1ZgJhVbb1dZb4xGPBO3v SL4WogwnorKNo4bXisdYUTA9dHU4FRVlTCr9Oq3A= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 In-Reply-To: <83r4ko5cpv.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a02:6b8:0:602::3 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:156957 Archived-At: Yet another interesting profile (generated by scroll-both micro-benchmark with r111730) is shown below. Input is 4K lines, each line is ~27K bytes, Imla'ei (modern Arabic) script. IIUC this R2L text with long lines should push bidi really hard, but ... bidi core routines (by itself) are almost irrelevant in the profile: 39.96% emacs emacs [.] scan_buffer 28.72% emacs emacs [.] buf_charpos_to_bytepos 21.82% emacs emacs [.] buf_bytepos_to_charpos 0.59% emacs emacs [.] re_match_2_internal 0.51% emacs emacs [.] sub_char_table_ref 0.42% emacs emacs [.] mark_object 0.23% emacs emacs [.] composition_gstring_width 0.19% emacs libc-2.16.so [.] __memcpy_ssse3_back 0.18% emacs emacs [.] x_produce_glyphs 0.17% emacs emacs [.] move_it_in_display_line_to 0.17% emacs emacs [.] hash_lookup 0.17% emacs emacs [.] Fgarbage_collect 0.17% emacs emacs [.] lface_hash 0.16% emacs emacs [.] decode_coding_utf_8 0.16% emacs emacs [.] face_for_font 0.16% emacs emacs [.] composition_gstring_p 0.15% emacs emacs [.] compile_pattern 0.15% emacs emacs [.] get_next_display_element 0.14% emacs emacs [.] bidi_level_of_next_char 0.12% emacs emacs [.] font_range 0.12% emacs emacs [.] bidi_fetch_char 0.12% emacs emacs [.] internal_equal 0.11% emacs emacs [.] autocmp_chars 0.11% emacs emacs [.] char_table_ref 0.11% emacs libgtk-3.so.0.600.4 [.] 0x0000000000115bf0 0.10% emacs emacs [.] next_element_from_buffer 0.10% emacs emacs [.] composition_update_it 0.10% emacs emacs [.] boyer_moore Dmitry