Skip to content
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

Try to use pre compiled header to accelerate the build #2476

Draft
wants to merge 1 commit into
base: devel
Choose a base branch
from

Conversation

jorisv
Copy link
Contributor

@jorisv jorisv commented Nov 12, 2024

I setup pch on pinocchio_pywrap_default and obtain the following result:

Build with PCH:    ninja pinocchio_pywrap_default  702.06s user 20.62s system 1337% cpu 54.044 total
Build without PCH: ninja pinocchio_pywrap_default  979.61s user 32.80s system 1565% cpu 1:04.67 total

Also, memory consumption seem to be lower. But it's hard de measure.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👋 Hi,
This is a reminder message to assign an extra build label to this Pull Request if needed.
By default, this PR will be build with minimal build options (URDF support and Python bindings)
The possible extra labels are:

  • build_collision (build Pinocchio with coal support)
  • build_casadi (build Pinocchio with CasADi support)
  • build_autodiff (build Pinocchio with CppAD support)
  • build_codegen (build Pinocchio with CppADCodeGen support)
  • build_extra (build Pinocchio with extra algorithms)
  • build_mpfr (build Pinocchio with Boost.Multiprecision support)
  • build_sdf (build Pinocchio with SDF parser)
  • build_accelerate (build Pinocchio with APPLE Accelerate framework support)
  • build_all (build Pinocchio with ALL the options stated above)

Thanks.
The Pinocchio development team.

@ManifoldFR
Copy link
Member

That's a 28.3% decrease in terms of compilation time. That's kinda nuts.

Have you also tried this on an Apple Silicon Mac ? Like the M1 Ultra Desktop we have, or perhaps @lmontaut's laptop ?

@ManifoldFR
Copy link
Member

Also, it changes nothing about symbols etc?

@jorisv
Copy link
Contributor Author

jorisv commented Nov 13, 2024

That's a 28.3% decrease in terms of compilation time. That's kinda nuts.

Have you also tried this on an Apple Silicon Mac ? Like the M1 Ultra Desktop we have, or perhaps @lmontaut's laptop ?

I only did the benchmark on my computer. We can compare CI time, but since we use ccache, I don't think it will be fair.

Also, it changes nothing about symbols etc?

I don't think it change anything on the symbol. But you're right, I will try to compare binary size.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants