FabianFuchsML / se3-transformer-public

code for the SE3 Transformers paper: https://arxiv.org/abs/2006.10503
475 stars 69 forks source link

Windows #16

Closed HannesStark closed 3 years ago

HannesStark commented 3 years ago

Dear contributers, dear @FabianFuchsML

Thank you for the great library! Everything works smoothly for me on Linux. However, what is your advice on how best to use the library in Windows?

My first difficulty is the fcntl library imported here: https://github.com/FabianFuchsML/se3-transformer-public/blob/3340de5c15ad76edbcc63e9198f99066d17b4ecb/equivariant_attention/from_se3cnn/cache_file.py#L9 What is the Windows alternative that should be used instead?

My second difficulty is after installing pip install lie_learn there seem to be some modules missing: ModuleNotFoundError: No module named 'lie_learn.representations.SO3.irrep_bases This is also mentioned in the issue https://github.com/AMLab-Amsterdam/lie_learn/issues/16 which sadly has not gotten a response so far. Do you know a way to fix this?

FabianFuchsML commented 3 years ago

Hi Hannes!

regarding Windows: I never used it on Windows, so there is not much advice I can give. However, the library that seems to cause problems I believe is only used for caching the files. That's quite a standard thing, so I would hope that there are several windows alternatives. :)

regarding lie_learn: I never encountered that problem. Maybe try an earlier version? And have you tried pip install git+https://github.com/AMLab-Amsterdam/lie_learn?

HannesStark commented 3 years ago

Thanks for the fast response!

Regarding the ModuleNotFoundError: No module named 'lie_learn.representations.SO3.irrep_bases error: pip install git+https://github.com/AMLab-Amsterdam/lie_learn was running into a cython issue but installing an older commit worked: pip install git+https://github.com/AMLab-Amsterdam/lie_learn@6d02c2a1705a05340a128cb8d86c19076d0f5f46

Regarding the file locking in windows and the fcntl library, I created this pull request https://github.com/FabianFuchsML/se3-transformer-public/pull/17 where it is checked what platform is used and if it is a windows system it uses the windows alternative of fcntl.lockf: