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

SMERF missing URL for teachers download #2095

Open
samhodge-aiml opened this issue May 11, 2024 · 17 comments
Open

SMERF missing URL for teachers download #2095

samhodge-aiml opened this issue May 11, 2024 · 17 comments

Comments

@samhodge-aiml
Copy link

The documents say

  1. Download teacher checkpoints. Unzip their contents like so,

    teachers/
      bicycle/
        checkpoint_50000/   # Model checkpoint
        config.gin          # Gin config
      ...
    

but it is unclear where this model checkpoint comes from.

@samhodge-aiml
Copy link
Author

Evidently that is where you put he camp_zipnerf checkpoint data.

@DuVogel87
Copy link

Hello,

Would you please help me? I am trying to install SMERF, but unfortunately, the instructions from GitHub are not working for me. When I try to clone the repository, I get this error:

C:\SMERF>git clone https://github.com/smerf-3d/smerf.git
Cloning into 'smerf'...
info: please complete authentication in your browser...
remote: Repository not found.
fatal: repository 'https://github.com/smerf-3d/smerf.git/' not found

Unfortunately, logging into my GitHub account in my browser seems to have no effect.

Could you please share how you installed it on your PC?

Thanks.

@samhodge-aiml
Copy link
Author

smerf-3d git checkout is not needed you already have the code from google-research repo in the smerf folder

@DuVogel87
Copy link

Thanks for your fast answer.

I dont get it.

If I try to git clone the repo like this:

git clone https://github.com/google-research/google-research/tree/master/smerf/smerf

it is not working!

I am really not understanding how to clone Smerf to my local drive. Can you give further instructions on this issue please?

smerf git clone

@samhodge
Copy link

Try this

Clone a Specific Folder from a GitHub Repository https://medium.com/@gabrielcruz_68416/clone-a-specific-folder-from-a-github-repository-f8949e7a02b4

@DuVogel87
Copy link

Thanks. But immediatly the first step is not possible because there is no clone URL to copy.

@DuVogel87
Copy link

But anyways, with your help I figured out, what to look for. I found a nice work around and used this site to download all files:

https://download-directory.github.io/

@samhodge
Copy link

Good luck, let me know how you get on with the computational resources required to run this project

@DuVogel87
Copy link

The documents say

  1. Download teacher checkpoints. Unzip their contents like so,

    teachers/
      bicycle/
        checkpoint_50000/   # Model checkpoint
        config.gin          # Gin config
      ...
    

but it is unclear where this model checkpoint comes from.

Where did you download the teacher checkpoints?

@samhodge-aiml
Copy link
Author

I copied them from the CamP ZipNeRF model where I trained the radiance field using that project's code base and runtime environment with my own data.

@duckworthd
Copy link
Contributor

SMERF author here. Teacher checkpoints are still awaiting legal approval for release. In the meantime, I recommend training models using the camp_zipnerf codebase.

@samhodge
Copy link

Thanks @duckworthd one step ahead of you there. Awaiting computational outcome of the SMERF training

@samhodge-aiml
Copy link
Author

samhodge-aiml commented May 31, 2024

@duckworthd I am not sure whom is repsonsible for the training code but there is a silly JAX thing where map.tree becomes map_tree if you are super keen I can do it as a PR.

but it is work you knowing about it because the current code doesn't work with the requirements.txt frozen version of JAX

similarly there is a Python versioning thing with cuda versions that says JAX can use cudnn 8.9+ for cuda_12, which causes a lack of GPU acceleration given that cudnn 9+ is also a thing unless you are on the ball and clamp the cudnn version to the cudnn version for cuda_12

This may be invisible to you if you are all 100% accelerators of a different class, but for the CUDA users over here in the rest of the world it is a bit of a stumbling block.

@duckworthd
Copy link
Contributor

Thanks for the heads-up, @samhodge-aiml. To be clear, you're saying that jax.map.tree must be replaced with jax.tree_util.tree_map to function with the pinned version of JAX? And that the CUDNN version needs to be pinned to 8.9?

@samhodge-aiml
Copy link
Author

Thanks for the heads-up, @samhodge-aiml. To be clear, you're saying that jax.map.tree must be replaced with jax.tree_util.tree_map to function with the pinned version of JAX? And that the CUDNN version needs to be pinned to 8.9?

I think it is just jax.tree.map to jax.tree_map worked for me, I hope, but if your syntax is more correct, then by all means do that.

I think it is sort of two layers of indirection, the cudnn for cuda 12.3 needs to be pinned to cudnn 8.9

I think the constraint is only for cuda 12 not cuda 12.4 so it grabs a dependancy for cudnn for 12.4 which is cudnn 9.1 but then that version of cudnn is linked against cuda 12.4 and so the symbols cannot load and as a result jax still works but falls back to no GPU acceleration, so unless you have your eyes on the prize, your CPUs will be hammered and your GPU will be idle, if you want things to be set and forget you really need a test to see that there is some sort of acceleration in place before you start training.
it was basically a future incompatibility that could have not been predicted at the time

@duckworthd
Copy link
Contributor

References to jax.tree.map have been changed to jax.tree_util.tree_map. I also added information in the instructions indicating that this code was found working with CUDA 12.3 and cuDNN 8.9, but do not enforce that in any way.

@samhodge
Copy link

samhodge commented Jun 4, 2024

Notes are good

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

No branches or pull requests

4 participants