Hi Tom, ChimeraX team,

What is the status of ChimeraX on Apple M1/Silicon machines? Does it work? Well? Natively?

Cheers,
Alexis

On Mon, Mar 22, 2021 at 11:11 AM Jeffrey D. Hartgerink <jdh@rice.edu> wrote:
Hi Tom,

Thank you for this detailed response! It illustrated the challenges well and was very useful. In particular, I was unaware of the all-or-nothing nature of Rosetta.

I’ve recently acquired an arm based Mac mini and would be happy to test any early builds if that would be useful.

-Jeff

--------------------------------------
Jeffrey D. Hartgerink, Ph.D.
Prof. of Chemistry and Bioengineering
Rice University, MS 602
6100 Main Street
Houston, TX 77005
jdh@rice.edu / 713-348-4142

On Mar 22, 2021, at 12:58 PM, Tom Goddard <goddard@sonic.net> wrote:

One more detail.  Our lab is getting an Apple Silicon machine so we can attempt to make a native ChimeraX version.

Tom


On Mar 22, 2021, at 10:57 AM, Tom Goddard <goddard@sonic.net> wrote:

In the future we would like to provide a native Apple Silicon (ARM CPU) version of ChimeraX.  We have not tried it yet.  It would be easy to compile the C++ code we develop for the new CPU.  But the trouble is that ChimeraX depends on over 50 third party Python modules, some of them including compiled code.  I believe all of those compiled python modules will have to be available compiled for ARM in order for us to make a native ChimeraX app.  According to Apple's developer documentation you cannot mix ARM compiled code with Intel compiled dynamically loaded modules in the same process:

Important
The system prevents you from mixing arm64 code and x86_64 code in the same process. Rosetta translation applies to an entire process, including all code modules that the process loads dynamically.


Major packages we use like the Qt window toolkit and numpy array module provide native ARM versions.  But less well maintained modules like the PyOpenGL-accelerate module ChimeraX uses for OpenGL graphics has not been updated for more than a year (Jan 2020) and there is no telling when an ARM version will become available.

The following GitHub repository (focused on neuroimaging) describes some of the availability problems from scientific packages on ARM CPUs.


  Tom


On Mar 21, 2021, at 7:40 PM, Jeffrey D. Hartgerink <jdh@rice.edu> wrote:

Are there any plans for an Apple Silicon (M1 chip) native version of ChimeraX? While things work ok via the Rosetta emulator, it would be great to have the performance from a native app.

--------------------------------------
Jeffrey D. Hartgerink, Ph.D.
Prof. of Chemistry and Bioengineering
Rice University, MS 602
6100 Main Street
Houston, TX 77005
jdh@rice.edu / 713-348-4142

_______________________________________________
ChimeraX-users mailing list
ChimeraX-users@cgl.ucsf.edu
Manage subscription:
https://plato.cgl.ucsf.edu/mailman/listinfo/chimerax-users



_______________________________________________
ChimeraX-users mailing list
ChimeraX-users@cgl.ucsf.edu
Manage subscription:
https://plato.cgl.ucsf.edu/mailman/listinfo/chimerax-users