-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fluid performance tuning plan #6024
Comments
import cProfile
pr = cProfile.Profile()
pr.enable()
// here the test codes.
pr.disable()
#ifdef ENABLE_PROFILE
#include <gperftools/profiler.h>
#endif
ProfilerStart("cs.prof");
// here the test codes.
ProfilerStop()
ProfilerFlush()
|
Also, we had created benchmark docker image and benchmark repo for every one reproduce the result. The docker image contains all the profile tools. Need to note that the docker image should be run in host mode, then you can check the profiler result in your browser. @tonyyang-svail nvidia-docker run -it --rm --network=host -v $PWD:/paddle -v /root/.cache:/root/.cache dzhwinter/benchmark /bin/bash |
profile steps:
# if you want to use pprof to debug, use `RelWithDebInfo`, if just want to calculate time, can use `Release`
# use RelWithDebInfo to add debug info
cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo|Release
make -j4 install
export OMP_NUM_THREADS=1
python -m yep -v test_recognize_digits_conv.py
# stop openmp optimize
pprof -http=0.0.0.0:8123 `which python` test_recognize_digits_conv.py.prof
|
Basic Performance tunning has been done. Please reference Project https://github.com/PaddlePaddle/Paddle/projects/29#card-5921207 for the following works |
We plan to tune fluid's performance with a loop with three steps:
There are several jobs for these three steps:
The text was updated successfully, but these errors were encountered: