On 1/14/19 2:20 PM, speck for Dave Hansen wrote: > On 1/11/19 5:29 PM, speck for Andi Kleen wrote: >> When entering idle the internal state of the current CPU might >> become visible to the thread sibling because the CPU "frees" some >> internal resources. > > Is there some documentation somewhere about what "idle" means here? It > looks like MWAIT and HLT certainly count, but is there anything else? We know power state transitions in addition can cause the peer to dynamically sleep or wake up. MWAIT was the main example I got out of Intel for how you'd explicitly cause a thread to be deallocated. When Andi is talking about "frees" above he means (for example) the dynamic allocation/deallocation of store buffer entries as threads come and go - e.g. in Skylake there are 56 entries in a distributed store buffer that splits into 2x28. I am not aware of fill buffer behavior changing as threads come and go, and this isn't documented AFAICS. I've been wondering whether we want a bit more detail in the docs. I spent a /lot/ of time last week going through all of Intel's patents in this area, which really help understand it. If folks feel we could do with a bit more meaty summary, I can try to suggest something. Jon. -- Computer Architect | Sent with my Fedora powered laptop