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

Cuda memory run out #37

Closed
Tigran1983 opened this issue Feb 8, 2021 · 8 comments
Closed

Cuda memory run out #37

Tigran1983 opened this issue Feb 8, 2021 · 8 comments

Comments

@Tigran1983
Copy link

Hello dear Zhan-xu,

Thank you for your big work.
I have an issue: during mixed training of both jointnet and masknet networks together I am getting cuda out of memory in my Geforce GTX 1080 (with 8Gb Video Ram). My train and test batches are 1. If your Video memory was greater then 8 Gb?
Please let me know what I can do in this case?

Best Regards,
Tigran

@Tigran1983
Copy link
Author

Tigran1983 commented Feb 8, 2021

Dear Zhan-xu,

I solved this issue, in pairwise_distances function I used torch.cdist function, and in meanshift_cluster function I used torch.mm instead of K = K * weights.

Also please clarify: what randomness is getting different run results in current one model every time?

Thanks and good luck!!!

@zhan-xu
Copy link
Owner

zhan-xu commented Feb 8, 2021

Thanks for the provided information. I will test this later and consider to change my code to it if this is consistently more memory efficient.

@Tigran1983
Copy link
Author

Hello Zhan-xu,
One more question, are there any way (any option to set) to get fixed number of rig joints?

@zhan-xu
Copy link
Owner

zhan-xu commented Feb 10, 2021

Hi @Tigran1983, so the RigNet project focuses on how to predict various number of joints. If you want fixed number of joints, you may need to redesign the network, similar to segmenting the mesh to a fixed number of parts. Another simple way is only preserving the first N joints based on the density order (density from meanshift, calculated based on the bandwidth). However if the code originally predicted M<N joints, we cannot add more.

@Tigran1983
Copy link
Author

Thank you, if I'll try the second way mentioned by you, I'll let you know.

Best Regards,
Tigran

@Tigran1983
Copy link
Author

Hello dear Zhan-xu,

One more question: did you try to rig character face?
In my opinion if we could find or collect dataset of rigged faces, then your model can learn face rig too.
What do you think?

Regards,
Tigran

@zhan-xu
Copy link
Owner

zhan-xu commented Feb 24, 2021

I didn't try to rig faces only, and seems many people are interested in this!

In general I feel if the rig is very detailed (contains dense helper joints for small part of muscles), then RigNet sometimes fails to recover them. See our limitations in the paper. This however is more common on face rigs because people expect the fine-grained control over facial expression.

On the other hand, if the training data are more consistent (with similar rig structure), the performance might get better. We trained the model on data from all categories for better generalization. If only trained with face data, I assume the general rig structure could be recovered.

@Tigran1983
Copy link
Author

Thank you, I think no one feels this network better than you.

@zhan-xu zhan-xu closed this as completed Jul 20, 2021
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

No branches or pull requests

2 participants