Poor scaling

Josh Stone jistone@redhat.com
Tue Aug 9 17:47:00 GMT 2016


On 08/08/2016 11:38 PM, Avi Kivity wrote:
> Are entire probes serialized, or just individual variables?  If the 
> latter, perhaps you can detect that an array's index is always tid(), 
> remove that index, and convert the global variable to a thread-local one 
> (with an exception for begin and end probes).

I think I'd rather see this explicit declared on the global itself,
instead of treating tid() specially.  Something like the proposed percpu
globals:
https://sourceware.org/bugzilla/show_bug.cgi?id=10795

The challenge is how to allocate and free that per-task memory, and how
to look up that memory from arbitrary probe context.  It's possible,
just not entirely trivial.



More information about the Systemtap mailing list