site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Folks. I am having a performance problem with a blocking Posix serial thread. Thanks Mark Gilbert -- mark@gallery.co.uk Tel: +44 208 340 5677 fax: +44 870 055 7790 http://www.gallery.co.uk New Product ! - Zen MetaCorder Location Sound Field Recorder http://www.metacorder.info _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... - My Posix serial thread is designed to QUICKLY reply to an incoming serial message. it blocks waiting for the start of the incoming message, then reads the remainder when it wakes, and quickly replies. - At any time there can be an extremely heavy load on the attached storage (SATA or SAN), since the application is dealing with Video material. - We observe that the ability for our Posix serial thread to reply _promptly_ is compromised by the load on the storage - ie. if the storage is being hit hard, at the same time the serial message is coming in, our thread seems to be delayed somewhat, by a matter of 10mSecs or more. I have experimented with thread priority, and setting the thread to realtime, but nothing seems to help. Using XSan seems to make the problem worse than using local SATA storage. The problem is worse at the point when video playback starts, and there is a massive rush on the storage. Its not clear exactly where the holdup is. I guess its possible that the serial driver is being held up rather than my thread itself - perhaps delaying the incoming bytes, or the outgoing reply. Can anyone advise how to raise my thread's status above that of the storage subsystem ? Any other tips for no-compromise performance on my thread (the thread doesn't do very much, but it needs to respond very quickly to the incoming data). This email sent to site_archiver@lists.apple.com