Comments (7)
I have tried to get the profile on my Linux machine. You can download it here and verity whether it's correct.
I belive the illegal instruction should be an issue in rust (though I don't know whether it has connection with existing bugs such as #58340) as I don't write any pure instructions or binary codes. To indentify this problem, a backtrace or coredump will help a lot.
However, pprof-rs
is expected to work correctly on Mac. @Hexilee can you help me on this issue (as I don't have a mac
from pprof-rs.
@jabley Hello, I cannot reproduce this issue on my macOS.
I get the profile on
cargo 1.44.1 (88ba85757 2020-06-11)
and rustc 1.44.1 (c7087fe00 2020-06-17)
by cargo run --bin vm-flamegraph --release -- -p profile.pb
.
Are you sure your reproducing steps are correct?
from pprof-rs.
On a different Mac, I've just done:
> git clone [email protected]:jabley/monkeyinterpreter.git
> pushd monkeyinterpreter
> git checkout feature/pprof
> pushd rust/rmonkey/
> cargo run --bin vm-flamegraph --release -- -p profile.pb
Result: 9227465
report: THREAD: ThreadId(4757824960) 2000
I get the same 26 byte profile.pb output file as described in my original report.
I can run the examples from pprof-rs and get usable profiles produced.
@Hexilee, your profile looks like what I'd expect.
from pprof-rs.
I try your code on my 10.14.6 macOS with the same toolchain and can get the profile successfully. @Hexilee uses macOS 10.15.
We have no idea how to reproduce the issue.
from pprof-rs.
I'm having this same issue on macOS 11.0.1. Have you had any success identifying the issue? I appear to only have the issue with --release
.
I'm on v1.50.0-nightly
.
Edit: Compiling with --release
and debug = true
works.
from pprof-rs.
@kjvalencik AFAIK, debug = false
will also keep the symbol information, unless it has been stripped explicitly. Would you mind to check whether the symbol information exists in the binary compiled with debug = false
?
nm ./target/release/examples/xxx
could be used to print the symbol information. If it has been stripped, the output would be nm: ./target/release/examples/xxx: no symbols
. (However, I don't know whether Mac OS has nm
command).
I heard that @sticnarf has got a new Mac OS laptop
from pprof-rs.
@YangKeao I had symbols in both, but I had 7
more when compiling with debug = true
.
from pprof-rs.
Related Issues (20)
- Request for releasing v0.9.2 HOT 2
- Run build.rs failed when compile HOT 1
- missing thread name for main thread HOT 3
- examples profile_proto.rs Can't work HOT 3
- Compiling fails on FreeBSD HOT 5
- Make DWARF great again
- Profiler does not run properly on Linux HOT 1
- support for criterion 0.4 HOT 6
- Feature request: option for profiling wall-clock time.
- [Bug]Report is empty? HOT 3
- Sampling frequency cannot be guaranteed
- Add LRU cache for DWARF addr2line HOT 1
- Fork `backtrace-rs` and modify MAPPINGS_CACHE_SIZE to `10`
- My process exits soon after start cpu profiler HOT 1
- Crash On M1 Mac HOT 6
- Use another way to test malloc-free
- Add doc comment for ProfilerGuardBuilder::frequency
- pipe fd(s) opened in addr_validate::validate will not be closed for short-term threads
- Getting a seg fault with no error or line number HOT 2
- SIGBUS: access to undefined memory
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 pprof-rs.