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

Illegal instruction error when running docker file #4

Closed
felixbeutter opened this issue Feb 5, 2024 · 5 comments
Closed

Illegal instruction error when running docker file #4

felixbeutter opened this issue Feb 5, 2024 · 5 comments

Comments

@felixbeutter
Copy link

The problem is kind of similar to issue #3 by GabrielStahl.

When I run the docker file as instructed, an "illegal instruction" error message appears:

/run_pipeline.sh: line 51: 276 Illegal instruction python3 /get_predictions.py $prognosais_model_folder $registration_folder $prediction_output_folder $config_file

No output is generated. I would greatly appreciate any suggestions.

@Svdvoort
Copy link
Owner

Svdvoort commented Feb 5, 2024

Hi,

I would need some more information to diagnose this problem.

  • What kind of platform are you trying to run this on (some hardware specs)?
  • Is this a Linux/Mac/Windows machine?
  • Did you try to build the Docker yourself or did you pull it from dockerhub?
  • If you pulled it from dockerhub, which version of the docker do you have?
  • What command are you using to run the docker?

@felixbeutter
Copy link
Author

Hi,

I used the version from docker hub and a MacBook Pro 2023 (M2 Pro) with MacOS 14.2.1. My docker version is 25.0.2, build 29cf629. The command was:

"docker run -u $UID:$GROUPS -v "./input:/input/" -v "./output:/output/" svdvoort/prognosais_glioma:1.0.2" (input folder contains the data in format you described in your readme).

I appreciate any ideas to fix it and thank you for the fast reply!

@Svdvoort
Copy link
Owner

Svdvoort commented Feb 7, 2024

It might be an issue of tensorflow in combination with M2. See, for example here and here.

There would be two solutions: one would be to install everything yourself instead of using the docker. You could try out a TensorFlow version that is made for M2 chips (the currently used TensorFlow version is for x64 systems).
M2 chips are quite notorious in general for causing problems with "older" programs, so another option would be to test it out on a different system (either a Windows or Linux system or a Mac that is not M1/M2, if that's possible).

Unfortunately, I don't have access to an M1/M2 system myself, so I cannot test it out, so I cannot help you directly with this. Also, be aware that TensorFlow has no GPU support directly on Mac. I would suggest running it on a different system if possible, but if you manage to install the pipeline and get it working, please let me know the package versions you used. I could consider creating a separate docker/instructions.

To see what you need to install, you can check out the original Docker file here.

@felixbeutter
Copy link
Author

Hi again, I guess you were right. The problem might be caused by the M2 and older tensorflow, python, etc. versions. I run your code from the PrognosAIs_glioma and PrognosAIs locally with tensorflow 2.15.0 in a python 3.11.7 environment and it seems to work just fine with only minor modifications. Thank you so much for the support!

@Svdvoort
Copy link
Owner

No problem! I'll close this issue then.

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