Does Apple moving to Apple Silicon matters for bioinformaticians working with MACOS terminal?
2
0
Entering edit mode
3.6 years ago
biotech ▴ 570

Seems Apple is moving to ARM processors. I would like to know if this has consequences for bioinformatics software, or I could buy these new ARM machines and still work with already released software for X86 machines.

software cpu unix • 1.8k views
ADD COMMENT
2
Entering edit mode
3.6 years ago
GenoMax 142k

I could buy these new ARM machines and still work with already released software for X86 machines.

Strictly speaking no (also see second para), if the program is already compiled. In practice, Apple will supply an emulation program that will allow X86 programs to work non-natively under emulation (significantly slowly). During the last transition from PowerPC to Intel such a binary translator program was called Rosetta. As I recall, it worked reasonably well (within limits) as long as your expectations were modest. New emulator for ARM is going to be called Rosetta2.

Apple provides an additional mechanism to make this process less painful for developers. Much of the code can be recompiled/ported (note: Apple claim) for ARM by creating a universal binary. This will need to be done by the developers. As usual any needed libraries would be a bottleneck.

Since ARM mac's would not become prevalent for a few years, there should be plenty of time available for this transition.

ADD COMMENT
1
Entering edit mode
3.6 years ago

For reasons of performance, core bioinformatics tools and libraries are often written in C or C++. Most CLI open-source tools built with C or C++ should be easily recompiled with the same Clang toolkit used to build now on Intel (x64/x86), via the usual configure/make/make install routine or a similar process.

Exceptions that would need more work would be apps that use intrinsics or assembly, with instructions that are architecture-specific. I don't know of too many bioinformatics apps that are like that — perhaps an optimized genome assembly tool here or there? Those are likely rare cases and would not really be used much on Apple hardware to begin with, since those kinds of apps are usually optimized to run on commodity-hardware clusters or on the cloud, within larger automated pipelines.

Apple provides Python 3.7 via its developer toolkit, the same that installs Clang support, so any libraries built off that should work after a recompile.

For people who can't or don't want to recompile, much of Homebrew is automated, so prebuilt packages would probably be available soon after new hardware becomes publicly available. I'd be surprised if some Homebrew devs didn't probably already have an Apple Developer Transition Kit (a Mac mini enclosure with ARM chips inside — basically, the same chip they use in an iPhone), so the delay will perhaps be in getting precompiled packages through their pipeline, so that people can do the usual brew install xyz routine.

Any closed-source or commercial tool where you do not have access to source code would need to be recompiled and released by the developer or parent company. It might be possible to run those apps under Rosetta. Performance of Intel apps on the ARM transition kit has been pretty impressive so far, but until the first machines are available publicly, it's hard to say what the initial baseline will be.

ADD COMMENT

Login before adding your answer.

Traffic: 1688 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6