Comments (6)
So far, using viztrace, was able to pinpoint protobuf serialization as very likely root cause. The protobuf package is at the same version, though, so looking further.
from ml-compiler-opt.
It seems that updating to protobuf==3.19.5
addresses that. Would prefer postpone changing the version in requirements.txt
to when we bump the tf version, and this is another reason to move away from protobuf altogether.
from ml-compiler-opt.
I believe the protobuf version has been updated to 3.19.5
in the version of Tensorflow that we're already using (or the version is just set to be > 3.x.x && < 4.0.0
and the version was lower last time the lockfile was generated). When I regenerated the lockfile in #128, it automatically grabbed 3.19.5
as when we upgraded to Tensorflow nightly originally, we didn't really touch any of the dependency versions (#118).
from ml-compiler-opt.
huh. so I must have quite a messed up local setup.
from ml-compiler-opt.
It's not your local setup. The protobuf version in requirements.txt
is still set to the lower version in main
.
from ml-compiler-opt.
Testing after #189:
Default trace over an LLVM corpus, default settings (Python 3.8.10):
real 1m43.543s
user 120m39.134s
sys 4m22.878s
Warmstart:
real 1m32.171s
user 4m54.158s
sys 3m45.621s
PPO training, default settings (except setting num_policy_iterations
):
real 6m42.992s
user 219m37.325s
sys 40m12.776s
Default trace over an LLVM corpus, default settings (Python 3.10.6):
real 1m41.111s
user 121m11.636s
sys 2m33.097s
Warmstart:
real 1m30.252s
user 5m6.882s
sys 3m32.267s
PPO training, default settings (except setting num_policy_iterations
):
real 6m32.612s
user 199m24.214s
sys 34m36.932s
While these runs aren't perfectly controlled to just the data collection step (although the default trace runs should come close), they do show that the performance is pretty comparable between 3.10 and previous versions now. I'm seeing similar times for module compilation between both versions and about the performance I'd "expect" given timings/performance that I've seen before.
I compiled some documentation on what I did in this gist. Given that there doesn't seem to be performance differences between the versions now, I'm going to close this issue.
from ml-compiler-opt.
Related Issues (20)
- 【Question】How to use GPU training, just install tensorflow-gpu? will there be better performance if using a larger model? HOT 1
- 【Question】Why use llvm-size to calculate rewards? llvm also calculates size rewards? HOT 2
- 【Question】Can you open the code of ES algorithm? HOT 2
- 【Question】What parameters need to be passed in to compile the data set? -Oz -Xclang -fembed-bitcode=all? HOT 2
- How to train a model using bin's llvmbc and llvmcmd segments?I want to optimize directly using the executable program HOT 6
- Why can’t I use llvmbc and llvmcmd of executable programs?
- questions about feature log HOT 1
- Is it not very accurate to use the size reward of the entire file as the reward for each caller-callee feature, if the file is large and has a large number of caller-callee? HOT 1
- What does the size of sequence_examples depend on, and how to set its size? HOT 5
- Does llvm-15.04 support mlgo? What versions of tensorflow and other libraries are needed? HOT 1
- Why is the length of the reward limited to 3 or more? HOT 3
- How to know the effect of model inlining when training the model? HOT 1
- how to get model.tflite file from inlining-Oz-99f0063-v1.1.tar.gz HOT 1
- Why “-static” affects the test results of the model HOT 2
- why need to calculate reward_stat? I see llvm_trainer.train use reward from sequence_example.reward HOT 1
- Can I merge all the bc files into a total bc file for training?
- How to compile other dataset using llvm's thinlto flag?
- Where do I find pretrained models for MLGOPerf? HOT 4
- `--compile_task` flag missing HOT 2
- [non-issue] MLGO Questions HOT 10
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 ml-compiler-opt.