home *** CD-ROM | disk | FTP | other *** search
/ Executor 2.0 / executorv2.0.iso / pc / dos / extra / docs / maillist / text / archive.95 / text2185.txt < prev    next >
Encoding:
Internet Message Format  |  1996-03-31  |  3.8 KB

  1. Received: from crab.xinside.com (crab.xinside.com [199.164.187.34]) by nacm.com (8.6.10/8.6.9) with ESMTP id IAA11120 for <executor@nacm.com>; Mon, 19 Jun 1995 08:40:38 -0700
  2. Received: (from jdc@localhost) by crab.xinside.com (8.6.8/8.6.9) id JAA02561; Mon, 19 Jun 1995 09:44:53 -0600
  3. From: Jeremy Chatfield <jdc@crab.xinside.com>
  4. Message-Id: <199506191544.JAA02561@crab.xinside.com>
  5. Subject: Re: Linux executor help
  6. To: mat@ardi.com (Mat Hostetter)
  7. Date: Mon, 19 Jun 1995 09:44:52 -0600 (MDT)
  8. Cc: kemp@convex.convex.com, executor@nacm.com, jdc@xinside.com
  9. In-Reply-To: <m0sNhlL-000GOkC@gwar.ardi.com> from "Mat Hostetter" at Jun 19, 95 08:25:00 am
  10. Organization: X Inside Inc, P O Box 10774, Golden, CO 80401-0610, USA.
  11. Phone: +1(303)470-5302
  12. Reply-To: jdc@xinside.com
  13. X-Mailer: ELM [version 2.4 PL23]
  14. MIME-Version: 1.0
  15. Content-Type: text/plain; charset=US-ASCII
  16. Content-Transfer-Encoding: 7bit
  17. Content-Length: 2864      
  18. Sender: owner-paper@nacm.com
  19. Precedence: bulk
  20.  
  21. Mat Hostetter writes:
  22. > Many Mac apps that track the cursor location make frequent calls to
  23. > reset the cursor bitmap, and usually they just keep resetting the
  24. > cursor to the same thing.  In the black-and-white Executor days, we
  25. > would detect when the cursor bitmap wasn't really changing and avoid
  26. > the overhead of telling the window server to change the cursor.  When
  27. > we added color cursor support, we no longer made that check.  So the
  28. > end result was zillions of calls to the X server to keep (redundantly)
  29. > setting the cursor over and over again.
  30. > We never noticed this problem on our machines, but apparently the
  31. > cursor flicker is irritating on other machines.  We have fixed this
  32. > problem (in theory), and the fix will be present in 1.99n.
  33. > -Mat
  34.  
  35. Hi,
  36.  
  37. The problem was actually a transition between a cursor that could be
  38. rendered in hardware and one that must be rendered in software.  When
  39. we detected the change, we flipped from H/W to S/W and then as soon
  40. as we found that the cursor could be presented in hardware, we
  41. flipped back again.  On each transition, we lost a little memory in a
  42. true leak (allocated memory twice, to the same variable, with no
  43. intervening free() - duh!).  The high rate of flipping between
  44. cursors could cause a 16MB growth in about one hour.  We fixed this.
  45.  
  46. I'm mildly surprised that a performance difference was detected.  I
  47. suspect that this has more to do with another, coincident change, to
  48. eliminate a pathological allocator/garbage collector condition, that
  49. could cause a lossless memory growth (all memory was accounted for,
  50. no leak, but a particular series of calls to the allocator could
  51. upset the garbage collector and prevent the arena from being
  52. correctly coalesced).  Correcting this algorithmic error did lead to
  53. about 5% performance loss in the memory allocator, which would
  54. translate to a couple of %age points in overall code execution with 
  55. heavy memory allocation.
  56.  
  57. I'm glad that's it is fixed in 1.99n (whetever that is) but I'm also
  58. grateful that it existed in whatever the prior release was.  Changing
  59. cursor types between hardware renderable and software renderable
  60. forms is sufficiently rare that this bug may have been in our code for 
  61. a long time, without us having any significant clue. ;-)
  62.  
  63. I'd like to add executor to our set of manual tests.  Is there a
  64. particularly good application that will exercise the display
  65. technology?  I assume that there's also an extensive "HOW-TO"
  66. somewhere... Since we don't run Macs at all, I have absolutely no
  67. idea what is involved.
  68.  
  69. Cheers, JeremyC.
  70. -- 
  71. Jeremy Chatfield  +1(303)470-5302  FAX:+1(303)470-5513  email:jdc@xinside.com
  72.         Commercial X Products - for more information please try:
  73.         X Inside Inc, P O Box 10774, Golden, CO 80401-0610, USA.
  74. http://www.xinside.com/        majordomo@xinside.com          ftp.xinside.com
  75.  
  76.