-
Notifications
You must be signed in to change notification settings - Fork 299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PMU musings #808
Comments
I ran this with
|
any reason you run it on cpu 0? That cpu gets the most work from the kernel by handling all interrupts. |
Finger memory! Looking forward to merging and then following the new recommendations from you and @kbara :) |
I braindumped some thoughts on lukego/blog#15. Basically I am wondering whether the PMU can work as a |
Reflection from lukego/blog#15: I suspect that L3 cache access is the key thing to optimize for any multiprocess application (including Snabb+VM over virtio-net). The L3 cache is "the network" that connects the cores together and has much higher latency than anything they do locally. Here is a side-by-side comparison of some L3 PMU counters for the
(also as a gist in case that is easier to read.) I see two interesting and likely related things here:
From the paper cited in #735 I would expect an L3 Now if we had working PEBS support (#631) hooked into a profiler we could also have a report telling us which instruction is triggering that hitm and which data structure it is accessing at the time. This is firmly on my wishlist for the future. |
The PMU is a powerful piece of hardware. We are only scratching the surface of how it can be used. This issue is meant to remind us of this fact and perhaps inspire the next step in our usage.
The idea I came up with is simple: to run the
snabbmark basic1
benchmark many times, each time with a different set of PMU events, and each time with/packet
counts reported.Script:
Output:
No interpretation for now :-). However, this seems like an approach that could be used to gather data for more interesting benchmarks (like
mp-ring
in #804) and that could also be analyzed for interesting patterns and differences with an R script (like #755) to help explain results and validate intuitions.The text was updated successfully, but these errors were encountered: