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

Fix for Windows training #298

Merged
merged 2 commits into from
Aug 28, 2024
Merged

Conversation

Ivan-267
Copy link
Contributor

I was able to start Sample Factory training on Windows 10 64 bit using the following:

  • First installing the PR branch for signal slot that allows installation on Windows: Fix for Windows install signal-slot#3,
  • Installing Sample Factory using pip install sample-factory (then applying the modifications from this PR which changes the UNIX specific PWD module, which caused an error for me on Windows, to one that should hopefully work on both OS types),
  • Device set to CPU (Otherwise there some CUDA detection errors, but I do not have a CUDA device on this PC, so I didn't experiment with that further),
  • Serial mode set to True,

I have tested this only with my custom env that uses Godot RL Agents, but I assume it should work for all supported envs.

It needs to be checked if it still works fine on Linux after these changes, I hope the automated tests on the repository will cover this case.

Copy link
Owner

@alex-petrenko alex-petrenko left a comment

Choose a reason for hiding this comment

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

This requires adding getpass to dependencies right?

Can we instead use try/catch on pwd.getpwuid and if it fails use import getpass; return getpass...?

@alex-petrenko
Copy link
Owner

Alternatively, if getpass is easily available on all platforms, maybe we can just add it to the list of requirements in setup.py?

@Ivan-267
Copy link
Contributor Author

This requires adding getpass to dependencies right?

Can we instead use try/catch on pwd.getpwuid and if it fails use import getpass; return getpass...?

I think getpass comes with Python and shouldn't need pip install or etc. I didn't use it before however, so I can check more later.

@alex-petrenko
Copy link
Owner

Thank you!

@alex-petrenko alex-petrenko merged commit 066b571 into alex-petrenko:master Aug 28, 2024
3 of 8 checks passed
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