Messages in this thread | | | From | Andi Kleen <> | Subject | Re: [RFC][PATCH] x86: Lazy disabling of interrupts | Date | Wed, 09 Oct 2013 15:25:23 -0700 |
| |
"H. Peter Anvin" <hpa@linux.intel.com> writes:
>> Summary >> ------- >> >> Although the extreme case shows a nice improvement, I'm skeptical if it >> is worth doing for real world applications. > > You did the experiment, and credit to you for not going "I did the work, > now include it" but rather for publishing the results so we can learn > from them. > > It *does* make me wonder if we can leverage RTM for a significant subset > of these (as an interrupt will abort a transaction); that should be > substantially cheaper and less complex.
I miss the original context and can't find the original patchkit, but:
- If the goal is to lower interrupt latency then RTM would still need to use a fallback, so the worst case would be the fallback, thus not be better.
- If the goal is to make CLI/STI faster: I'm not sure RTM is any faster than a PUSHF/CLI/POPF pair. It may well be slightly slower in fact (guessing here, haven't benchmarked)
- Also when you abort you would need to reexecute of course.
- My TSX patchkit actually elides CLI/STI inside transactions (no need to do them, as any interrupt would abort anyways) but the main motivation was to avoid extra aborts.
- That said, I think a software CLI/STI is somewhat useful for profiling, as it can allow to measure how long interrupts are delayed by CLI/STI. I heard use cases of this, but I'm not sure how common it really is
[I presume a slightly modified RT kernel could also give the same profiling results]
-Andi
-- ak@linux.intel.com -- Speaking for myself only
| |