-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Add explicit instantiations for RigidBodyTree::doKinematics. #2610
Add explicit instantiations for RigidBodyTree::doKinematics. #2610
Conversation
… of bespoke vector lengths. This cuts down on the number of explicit template instantiations for an irrelevant runtime cost, since BotVisualizer is already copying the state vector all over the place anyway.
FTR, David and I spoke offline about any performance hazards from this PR. Our estimation was that the biggest risk was that some Comments from Reviewable |
Reviewed 3 of 3 files at r1. drake/systems/plants/RigidBodyTree.cpp, line 2382 [r1] (raw file):
BTW It seems like the drake/systems/plants/RigidBodyTree.h, line 162 [r1] (raw file):
BTW Consider documenting the limited set of DerivedQ types that are available for use by calling code, or perhaps just refer readers to the cc file, or otherwise caution that not all types are supported? drake/systems/plants/RigidBodyTree.h, line 168 [r1] (raw file):
BTW Consider documenting the limited set of types... drake/systems/plants/RigidBodyTree.h, line 174 [r1] (raw file):
BTW Consider documenting the limited set of types... drake/systems/plants/RigidBodyTree.h, line 345 [r1] (raw file):
BTW Do these need a CHANGELOG entry? Comments from Reviewable |
Reviewed 1 of 3 files at r1. drake/systems/plants/RigidBodyTree.cpp, line 2378 [r1] (raw file):
BTW, how did you decide which explicit template instantiations to include? Are these the minimal set to get Drake as it stands to compile? drake/systems/plants/RigidBodyTree.h, line 161 [r1] (raw file):
BTW, since drake/systems/plants/RigidBodyTree.h, line 167 [r1] (raw file):
BTW, same comment here about drake/systems/plants/RigidBodyTree.h, line 342 [r1] (raw file):
BTW, if I understand correctly, I'm slightly worried about removing them because I may need them to satisfy the "contact occurred" feature request mentioned in #2606 (see the third high priority item). I suppose I could always dig into the git history and recover these methods should they be necessary. Is this the expected best practice? This API change is related to the conversation in #2597 (comment). We need to clarify how much effort we should assert ensuring downstream users experience a gradual transition to the new API. Comments from Reviewable |
Review status: all files reviewed at latest revision, 2 unresolved discussions, some commit checks failed. drake/systems/plants/RigidBodyTree.cpp, line 2389 [r1] (raw file):
Wouldn't we like to have here a specialization of doKinematics with AutoDiffUpTo73d? drake/systems/plants/RigidBodyTree.cpp, line 2396 [r1] (raw file):
Uff, all these block and map specializations are so annoying! (complaining about templates' hell, not your solution @david-german-tri). Actually I am wondering if these arguments could be an Comments from Reviewable |
I believe the CI error Review status: all files reviewed at latest revision, 2 unresolved discussions, some commit checks failed. Comments from Reviewable |
08cd953
to
ca3107a
Compare
Yeah, that's definitely real. I've pushed a possible fix; we'll see what Jenkins says. Review status: 1 of 4 files reviewed at latest revision, all discussions resolved, some commit checks pending. drake/systems/plants/RigidBodyTree.cpp, line 2378 [r1] (raw file):
|
…. Delete some other dead functions.
Reviewed 3 of 3 files at r2. Comments from Reviewable |
@david-german-tri: why is it that I don't see the new commit with your fix? did you |
never mind. super clear in reviewable. Review status: Comments from Reviewable |
I received an e-mail notification at 9:58 AM this morning. Review status: all files reviewed at latest revision, 1 unresolved discussion, all commit checks successful. Comments from Reviewable |
Also delete a smattering of dead code.
Contributes to #2074.
This change is