Comments (4)
I think that the mere existence of this issue is enough, if someone will look for PGO + native/C/C++ dependencies, they will find the discussion about it here :)
from cargo-pgo.
Hi, yeah, I agree that this would be quite difficult to support in the general case (although for specific crates it shouldn't be that hard). I'm not sure how we should document this though. "If you have native code, cargo-pgo
won't PGO optimize it?". I'm not sure if that adds any relevant value, as cargo-pgo
doesn't promise anything about C/C++ PGO optimizations.
from cargo-pgo.
In any case, if you have something specific in mind, I'd be happy to accept a PR :)
from cargo-pgo.
I agree that this would be quite difficult to support in the general case (although for specific crates it shouldn't be that hard)
I think the default recommendation could be something like "If you need to optimize your native non-Rust dependency with PGO - please create an issue in the upstream package to support PGO build mode". And in the Rust crates something_sys
the maintainers could implement some build.rs
PGO-related magic (if the real need exists).
I'm not sure how we should document this though. "If you have native code, cargo-pgo won't PGO optimize it?". I'm not sure if that adds any relevant value, as cargo-pgo doesn't promise anything about C/C++ PGO optimizations.
Hah, I also do not know how would be better to highlight (and should we at do it or not). But maybe for someone it would surprising to understand, that only Rust dependencies are optimized in the Rust projects, even if you (re)compile whole Rust project with cargo-pgo
.
from cargo-pgo.
Related Issues (20)
- A couple PGO+BOLT limitations worth documenting? HOT 5
- PGO for non-terminating programs HOT 2
- Reason for stdin(stdio::null)? HOT 4
- Evaluate PGO coverage HOT 4
- Bolt can be installed starting with LLVM 15 - README potentially needs an update HOT 6
- LLVM ERROR: Broken module found, compilation aborted HOT 4
- Add support for more PGO modes HOT 6
- Github action HOT 2
- options for older OS HOT 20
- cargo pgo does not run (nothing happens after cargo pgo build or run) HOT 1
- Overwriting profile is not possible HOT 4
- PGO as part of cargo install? HOT 4
- can't find crate for `profiler_builtins` HOT 1
- Does not allow for optimizations for WASM targets HOT 2
- Difference between "cargo bench" and "cargo pgo bench" HOT 4
- cargo-pgo ignores all rustflags defined in config.toml file, how to pass custom rustflags to pgo build? HOT 12
- Shall we have a Docker image for convenience? HOT 3
- v0.2.7 `cargo pgo run` adds '--config' argument wrongly HOT 7
- No profiles generated HOT 8
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 cargo-pgo.