The current version of PsychoPy is using Rosetta 2 on M1 Macs. With some hacks it is possible to create an Apple Silicon native version of PsychoPy for M1 Macs using pip. This version is highly experimental and not yet everything works. The Apple Silicon version runs a lot faster than the Intel version. Hopefully an official M1 native Mac version of PsychoPy will be released in the near future.
Very cool Walter. I just assumed that this wouldn’t be possible until all the underlying libs (there are many) were all converted to M1 native. If it’s actually possible to use M1-native Python and combine with Intel dylibs for some of the packages then we could be in business
All underlying libs are now M1-native. clock.py needs a patch and there is an issue with psychtoolbox, details can be found here. Thus, PsychoPy runs completely M1 native. I have not yet done extensive testing but the several PsychoPy experiments with audio and video that I tested worked well.
Alternatively, it is possible to run PsychoPy native on M1 using a Docker container (running Ubuntu for M1). Instructions can be found here. This option is still work in progress. Passing audio through to macOS is tricky and graphics not as smooth as running it native on macOS.
I’m thinking about libs like supporting hardware options (eyetrackers etc.). When we’ve switched Python versions in the past the main issue has been around waiting for hardware manufacturers to update their dylibs
PsychoPy version 2022.1.1 is running well. It requires a patch for clock.py in order to get correct timings as well as a patch for pyo. Unfortunately, microphone and eyetracking components are not yet working. Installation instructions can be found here.