External Email - Use Caution
If you are running the Freesurfer 7.3.2 release on an Apple Silicon machine (M1/M2 processor) with MacOS BigSur (11.X) or Monterey (12.X) AND have seen the error message "illegal hardware instruction", then please read following.
The "illegal hardware instruction" error can occur when running commands such as samseg and mri_synthseg. This update is not necessary if your normal workflow does not include commands that produce this error.
Please note the update should not be applied if: - Your Mac has an Intel processor. - Your Apple silicon machine (M1/M2 processor) is running a version of Freesurfer that is not the 7.3.2 release, e.g., a more recent development build.
UPDATE PROCEDURE:
You may not be able to run these commands without sudo/admin permissions on your machine.
1) Download the tensorflow-2.4.1-py3-none-any.whl from, https://secure-web.cisco.com/18TkiXyIrlbeLHRMWJ1Sd8F-2xd8_8BiGxNMSWSbNgkohnT...
2) Check the download is OK with the md5 command in the terminal window,
$ md5 tensorflow-2.4.1-py3-none-any.whl MD5 (tensorflow-2.4.1-py3-none-any.whl) = fab44de8702faf65e17a22d706a525a4
DO NOT PROCEED UNTIL YOU GET THE ABOVE OUTPUT FROM the md5 command.
3) Setup the Freesurfer 7.3.2 environment (shown here as installed via .pkg file under /Applications) and verify the path to fspython is from the 7.3.2 release,
$ export FREESURFER_HOME=/Applications/freesurfer/7.3.2 $ source $FREESURFER_HOME/SetUpFreeSurfer.sh -------- freesurfer-darwin-macOS-7.3.2-20220803-878457d -------- .... environment variable settings output ... $ which fspython /Applications/freesurfer/7.3.2/bin/fspython
4) Uninstall the existing tensorflow package with,
$ sudo $FREESURFER_HOME/python/bin/python3 -m pip uninstall tensorflow .... apart from any warnings you should see the output ... Successfully uninstalled tensorflow-2.4.1
5) Install the package downloaded above. This command assumes the package is in the current directory where the command is run.
$ sudo -H $FREESURFER_HOME/python/bin/python3 -m pip install ./tensorflow-2.4.1-py3-none-any.whl .... apart from warnings and output about requirements (which should all be satisfied) ... .... you should see tensorflow was updated ... Successfully installed tensorflow-2.4.1
CHECK THE UPDATE:
$ which fspython /Applications/freesurfer/7.3.2/bin/fspython $ fspython >>> import sys, os >>> import tensorflow >>>
You should see the prompt return to ">>>" after the import of tensorflow with no errors reported. Hit Ctrl-D to escape the python session. The update should now be complete.
Thank you for posting the workaround!
Please note this is also working for mri_synthseg on MacOS Ventura (13.0.1).
Annabel
Annabel Sorby-Adams, PhD Fulbright Postdoctoral Research Fellow
Department of Neurology Massachusetts General Hospital Lunder 6 55 Fruit Street, Boston MA https://www.massgeneral.org/
Harvard Medical School https://hms.harvard.edu/
E asorby-adams@mgh.harvard.edu T +1 617 251 6465
From: freesurfer-bounces@nmr.mgh.harvard.edu freesurfer-bounces@nmr.mgh.harvard.edu on behalf of fsbuild fsbuild@contbay.com Date: Monday, 12 December 2022 at 15:52 To: freesurfer@nmr.mgh.harvard.edu freesurfer@nmr.mgh.harvard.edu Subject: [Freesurfer] 7.3.2 release update for only Apple silicon machines (M1/M2 processors)
External Email - Use Caution
If you are running the Freesurfer 7.3.2 release on an Apple Silicon machine (M1/M2 processor) with MacOS BigSur (11.X) or Monterey (12.X) AND have seen the error message "illegal hardware instruction", then please read following.
The "illegal hardware instruction" error can occur when running commands such as samseg and mri_synthseg. This update is not necessary if your normal workflow does not include commands that produce this error.
Please note the update should not be applied if: - Your Mac has an Intel processor. - Your Apple silicon machine (M1/M2 processor) is running a version of Freesurfer that is not the 7.3.2 release, e.g., a more recent development build.
UPDATE PROCEDURE:
You may not be able to run these commands without sudo/admin permissions on your machine.
1) Download the tensorflow-2.4.1-py3-none-any.whl from, https://drive.google.com/file/d/15Qeve5FIA137KON67ehKIOyXy1N0PbAC/view?usp=s...
2) Check the download is OK with the md5 command in the terminal window,
$ md5 tensorflow-2.4.1-py3-none-any.whl MD5 (tensorflow-2.4.1-py3-none-any.whl) = fab44de8702faf65e17a22d706a525a4
DO NOT PROCEED UNTIL YOU GET THE ABOVE OUTPUT FROM the md5 command.
3) Setup the Freesurfer 7.3.2 environment (shown here as installed via .pkg file under /Applications) and verify the path to fspython is from the 7.3.2 release,
$ export FREESURFER_HOME=/Applications/freesurfer/7.3.2 $ source $FREESURFER_HOME/SetUpFreeSurfer.sh -------- freesurfer-darwin-macOS-7.3.2-20220803-878457d -------- ... environment variable settings output ... $ which fspython /Applications/freesurfer/7.3.2/bin/fspython
4) Uninstall the existing tensorflow package with,
$ sudo $FREESURFER_HOME/python/bin/python3 -m pip uninstall tensorflow ... apart from any warnings you should see the output ... Successfully uninstalled tensorflow-2.4.1
5) Install the package downloaded above. This command assumes the package is in the current directory where the command is run.
$ sudo -H $FREESURFER_HOME/python/bin/python3 -m pip install ./tensorflow-2.4.1-py3-none-any.whl ... apart from warnings and output about requirements (which should all be satisfied) ... ... you should see tensorflow was updated .... Successfully installed tensorflow-2.4.1
CHECK THE UPDATE:
$ which fspython /Applications/freesurfer/7.3.2/bin/fspython $ fspython
import sys, os import tensorflow
You should see the prompt return to ">>>" after the import of tensorflow with no errors reported. Hit Ctrl-D to escape the python session. The update should now be complete.
freesurfer@nmr.mgh.harvard.edu