From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Christian Lynbech Newsgroups: gmane.emacs.devel Subject: Serious performance problem with process output on Mac OSX Date: Sun, 28 Mar 2010 11:11:49 +0200 Message-ID: References: <83634jglab.fsf@gnu.org> <831vf7ge57.fsf@gnu.org> <83y6hfeyzw.fsf@gnu.org> <83vdcig87f.fsf@gnu.org> <87k4sywpvv.fsf@stupidchicken.com> <83tys2fbxs.fsf@gnu.org> <87hbo1iubm.fsf@home.jasonrumney.net> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: dough.gmane.org 1269770720 19952 80.91.229.12 (28 Mar 2010 10:05:20 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 28 Mar 2010 10:05:20 +0000 (UTC) Cc: Adrian Robert To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Mar 28 12:05:16 2010 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.69) (envelope-from ) id 1NvpMp-00067i-VV for ged-emacs-devel@m.gmane.org; Sun, 28 Mar 2010 12:05:16 +0200 Original-Received: from localhost ([127.0.0.1]:37026 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NvpMp-0000QQ-4P for ged-emacs-devel@m.gmane.org; Sun, 28 Mar 2010 06:05:15 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NvpMh-0000OQ-Cz for emacs-devel@gnu.org; Sun, 28 Mar 2010 06:05:07 -0400 Original-Received: from [140.186.70.92] (port=51589 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NvpMf-0000Nc-IS for emacs-devel@gnu.org; Sun, 28 Mar 2010 06:05:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NvpMe-0007qo-9z for emacs-devel@gnu.org; Sun, 28 Mar 2010 06:05:05 -0400 Original-Received: from [188.177.171.238] (port=51934 helo=Christians-MBA.local) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NvpMd-0007p4-KM for emacs-devel@gnu.org; Sun, 28 Mar 2010 06:05:04 -0400 Original-Received: by Christians-MBA.local (Postfix, from userid 502) id BC99816E4236; Sun, 28 Mar 2010 11:11:49 +0200 (CEST) In-Reply-To: <87hbo1iubm.fsf@home.jasonrumney.net> (Jason Rumney's message of "Sun, 28 Mar 2010 00:49:01 +0800") User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/22.3 (darwin) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. 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:122789 Archived-At: --=-=-= There is apparently some bad interaction between Emacs 23 and the Mac OSX desktop with respect to output from background processes. When emacs is processing such output, there is a kind of lock up where it literally can take many seconds to switch desktops or to switch between applications (Cmd-TAB). I have attached a small example file that exhibits the behaviour. It creates a number of frames and starts a compilation process (simply a "ls -lR /System" command) that generates quite a lot of output. Once that process is running, attempts to switch desktops or to switch between applications takes very long time. Apparently the severity of the problem is related to how many frames are created. With the test file as attached it is really bad, if no extra frames are created, it is barely noticeable. The tests I have done just now is on Mac OSX 10.6.2 on an Intel based Mac Book Air but I have seen the same behaviour on my powermac G5. If I compile emacs to use X11, there is no such problem. The emacs identifies itself as "23.1.94.1" and was taken from the repositorys emacs23 branch a few days ago. The configure options used when building was just --prefix, --with-ns and --without-dbus. Let me know if there is any more information I can provide. --=-=-= Content-Type: application/emacs-lisp Content-Disposition: attachment; filename=test.el Content-Transfer-Encoding: quoted-printable (mapc (lambda (x) (let ((f (make-frame `((name . "TEST") (left . ,(* x 20)))))) (select-frame f) (sit-for 1) (iconify-frame f) (sit-for 0.5))) '(1 2 3 4 5 6 7 8 9 )) (compile "ls -lR /System") --=-=-= ------------------------+----------------------------------------------------- Christian Lynbech | christian #\@ defun #\. dk ------------------------+----------------------------------------------------- Hit the philistines three times over the head with the Elisp reference manual. - petonic@hal.com (Michael A. Petonic) --=-=-=--