-
Notifications
You must be signed in to change notification settings - Fork 566
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
drcachesim: add offline trace file support #1729
Comments
Initial support was added without yet changing the tracing format: d4b3e61 i#1729 offline traces: generate unoptimized traces Unfortunately packing the trace_entry_t struct broke the AArch64 instrumentation. |
Further work: d868d95 i#1729 offline traces: add static bursty trace support |
The optimized offline trace file stores just a module + offset for instruction fetch entries. winsyms uses imagehlp, but on Linux there's no equivalent: dlopen and dlmopen will execute some code so we can't easily use them. Choices:
If postproc were already going to use drsyms then this "D) add disasm |
Further work:
|
I forgot to put these perf numbers here from 2016-09-26:
|
And with disk:
|
Adds missing support for an ARM instruction cache flush in offline trace postprocessing (#1729).
Adds missing support for an ARM instruction cache flush in offline trace postprocessing (#1729).
Fixes two issues with offline traces (#1729): first, changes the reader to not assume a separate tid header right after the initial tid,pid header, as offline traces (as opposed to online) do not contain it. Second, changes raw2trace to not emit a superfluous tid entry of 0 just prior to the real initial tid entry for each thread. Adds asserts to catch related errors in the future in the test suite.
Fixes two issues with offline traces (#1729): first, changes the reader to not assume a separate tid header right after the initial tid,pid header, as offline traces (as opposed to online) do not contain it. Second, changes raw2trace to not emit a superfluous tid entry of 0 just prior to the real initial tid entry for each thread. Adds asserts to catch related errors in the future in the test suite. The extra checks failed on the multiproc test so we fix that here for online by adding a fork event handler that sends a new header to the simulator. We partially solve #2384 by creating a new offline dir and files but more work is needed to merge the final traces in the added test here: that's left for #2384.
This was considered complete a while back: closing. |
Split from #1703
The drcachesim design isolates the source of memory references, allowing us to add an offline trace file feature to complement the live, online default operation. This issue covers adding both tracer output to a file and simulator input from a file.
Once we have file support, we can also add more reliable tests of the simulator that will not vary based on the compiler or machine used.
The text was updated successfully, but these errors were encountered: