Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: IOFIES Filter wakeup (was: why no IOSimpleLockSleep()?)



Andrew Gallatin writes:
 > 
 > In a much older driver, I used to use the appended code.  But I need
 > to figre out what to do about clear_wait() disappearing.  I wonder
 > if just a plain thread_wakeup_one(s) from the sleeper's context,
 > followed by a thread_block() would work.

To followup on myself..  The thread_wakeup_one()/thread_block()
seems to work as a replacement for clear_wait().

When using a filter interrupt with Tiger, I see a roughly 20% latency
reduction (10us -> 8us) and with Panther, I see a nearly 40% reduction
(17.1us -> 9.9us).  This is atop a hardware overhead of roughly 3.5us,
which is constant regardless of platform.

It is interesting to note that Tiger is *MUCH* faster at either
scheduling interrupt threads, or at scheduling threads in general than
Panther is.   Kudos to whomever was responsible for this improvement.


Drew
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-drivers mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/darwin-drivers/email@hidden

This email sent to email@hidden

References: 
 >why no IOSimpleLockSleep()? (From: Andrew Gallatin <email@hidden>)
 >IOFIES Filter wakeup (was: why no IOSimpleLockSleep()?) (From: Godfrey van der Linden <email@hidden>)
 >Re: IOFIES Filter wakeup (was: why no IOSimpleLockSleep()?) (From: Andrew Gallatin <email@hidden>)
 >Re: IOFIES Filter wakeup (was: why no IOSimpleLockSleep()?) (From: Godfrey van der Linden <email@hidden>)
 >Re: IOFIES Filter wakeup (was: why no IOSimpleLockSleep()?) (From: Andrew Gallatin <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.