Comments (7)
You need to synchronize on a PSB packet. Looks like you'd want pt_<lyr>_sync_backward()
. You can use that repeatedly to decode PSB segments from back to front. You'd need to detect when you cross to a PSB segment you already decoded or split the trace to avoid that. You should get status update events when decoding a new PSB+.
from libipt.
Thank you, I will try that on Monday and close this. Enjoy your weekend!
from libipt.
Hi,
After the first pt_<lyr>_sync_backward()
call , the following calls return pte_eos error. Events drain without error.
Offset: 0000000000000034 pte_eos
Error: synchronising decoder1
Offset: fffffffffffffffe pte_eos
Error: synchronising decoder1
Offset: fffffffffffffffe pte_eos
Error: synchronising decoder1
from libipt.
pte_eos
means that you reached the beginning of the trace buffer. How many PSB packets are there in the trace?
from libipt.
There is only one PSB packet, for some reason I thought each PSB packet corresponded to an executed instruction and by calling pt_<lyr>_sync_backward()
would sync onto the next instruction in a backwards direction. What I am trying to optimize is, for instance, now, I sync into the decoder from the beginning and using pt_insn_next
I decode the trace successfully until the end. But, I am only interested in the last lets say, 100 executed instructions(out of 20k).
from libipt.
The trace cannot be decoded backwards. You may configure PSB to be as frequent as possible to reduce the amount of trace that needs to be decoded. You may also consider using the block decoder, which is typically faster, but requires decoding the instructions in a block separately.
from libipt.
Alright, thank you
from libipt.
Related Issues (20)
- Question: How to use libipt in GDB on Windows? HOT 7
- 2.1: LTO exposes `[-Werror=maybe-uninitialized]` warnings HOT 4
- Possible discrepancy between Intel manual and implementation WRT compressed return logic. HOT 4
- `pte_bad_query` for user-space tracing across a syscall immediately followed by `ret` HOT 1
- Docs: clarify the kind of error HOT 5
- Comparisons between types of different widths in a loop condition can cause the loop to behave unexpectedly. HOT 5
- build ptxed HOT 2
- About synchronization HOT 2
- about pt record HOT 2
- ‘ptic_error’ undeclared when running "make user"
- about `--pevent:time-zero` HOT 2
- about parallel HOT 2
- How to use ptxed with the buffers generated by the perf_event_open system call? HOT 10
- `unexpected packet context` in initial sync point HOT 11
- Decoder out of sync and not enough recorded data. HOT 6
- Decoding errors when XED is not initialised correctly HOT 28
- questions about TIP.PGD with IP HOT 3
- new tag/release? HOT 5
- cmake builds/installs liblibipt on MSYS2 HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libipt.