Comments (5)
We've not tested the perf reader with very large input, so I'm not surprised that this bug slipped our testing. Feel free to send out pull request for the fixing. It is also possible that the bug would be fixed after rebasing quipper to the latest.
A workaround would be sample for small period of time multiple times, and use sample-merger to merge these small perf.data into text format.
from autofdo.
Thanks for your reply.
So, what I understand is that I can create multiple gcovs using small many small perf.data files, and combine them into 1 gcov?
And then I can use this resulting gcov to optimize my code using autofdo (using fauto-profile).
Combing multiple gcovs seems to be a problem. I can see solutions of combining gcda and gcno files , to create one gcov. I could not find how to create merge many gcovs together.
from autofdo.
You can use profiler_merger for that purpose. OTOH, you can also use sample_merger to merge perf.data samples into text files, and then use create_llvm_prof/create_gcov with -profiler=text to take that text file as --profile, in this way you only need to symbolize the binary once.
from autofdo.
I am able to use both profile_merger and sample_merger to get around the problem of handling large perf.data files.
Thanks a lot for your help.
from autofdo.
I assume this bug is no applicable any more with the use of sample_merger/profile_merge. Closing it for now.
from autofdo.
Related Issues (20)
- dwarf2reader.cc:835: Unhandled form type HOT 2
- Huge memory consumption
- couldn't ninja HOT 2
- Disscussion: Does autofdo support .zdebug_{info,line}...
- llvm-16-compile-fix
- Apply PGO to the AutoFDO itself HOT 3
- [bug] No checking about "requires the first loadable segment to be executable". HOT 5
- Don't emit in output profile when sample count is 0. HOT 2
- excessive total_count HOT 1
- sample_reader.cc:102] Error reading from perf_inject_etm_test_loop.data&profile_creator.cc:138] Error reading profile.
- Please allow using system abseil (over bundled abseil)
- Completely broken, will not compile on Clear Linux or other distros I've tried HOT 22
- autofdo needs libprotofbuf-dev
- AutoFDO can not be built with LLVM trunk (LLVM-18)
- Optimization clang with Propeller: create_llvm_prof fails
- Propeller slows down clang ~20% HOT 4
- When support path cloning in propeller
- Build autofdo tool failed for llvm-master HOT 1
- create_gcov can not find binary with buildid and profile_creator can not read profile HOT 6
- create_llvm_prof can not found build id in propeller format HOT 4
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 autofdo.