[Sbcl-help] Status and plans for ARM support (Apple M1-family chips on MacOs) ???

184 views
Skip to first unread message

Scott E. Fahlman

unread,
Nov 1, 2021, 2:16:00 AM11/1/21
to sbcl...@lists.sourceforge.net
Hi all,

I'm not sure if this Email address is correct and if this is the best place for such queries, but I hope it is...  If not, perhaps you could redirect me.

I wonder if anyone can fill me in on the status of SBCL on the new Apple M-series chips (ARM architecture, with some tweaks).
  • Does it SBCL exist on these machines, and is it stable enough to use?
  • Does it take advantage of the multi-threading facilities on these chips?
  • Are members of the SBCL community actively supporting this implementation?
  • What are future plans for this?
By way of background:

I am an emeritus professor at Carnegie Mellon in the School of Computer Science, Language Technologies Institute.  That means I'm formally retired but still working hard on AI research, mostly in the area of symbolic, knowledge-based AI systems, language understanding, and planning.  I have a small research group, currently about five students, almost all of whom use Macs as their primary research computing engines.  At the core of our research is a symbolic knowledge-base system called Scone, which is implemented in Common Lisp.  For the last decade or so, we have been using SBCL, usually under Emacs, with some of us using the Portacle bundle.  So we would like to have a better idea of whether SBCL will be a viable platform for us going forward on the new Mac hardware.

Scone is one of the research biggest projects still using Common Lisp.  Since I have programmed most of the core components of Scone myself, and since I am most comfortable coding in Common Lisp, that's still the platform of choice for us.  I've been using various forms of Lisp since about 1968.  I was one of the core designers of the Common Lisp language back in the 1980s (one of the "gang of Five"), and I wrote what I think is the first compiler for Common Lisp. 

My research group produced the CMU Common Lisp implementation from which the open-source CMUCL and SBCL implementations are descended.  But from about 1990 on, I've been mostly a user of Common Lisp, and not involved in the ongoing open-source development of CL implementations.  So I'm not up to date on what the SBCL community has been up to -- I'm just happy to be able to use SBCL for my own AI work.

Thanks to the developers for all your efforts, and thanks for any information you can provide.

Cheers,
Scott Fahlman  <s...@cs.cmu.edu>

Stephane Tougard via Sbcl-help

unread,
Nov 1, 2021, 3:15:02 AM11/1/21
to Scott E. Fahlman, sbcl...@lists.sourceforge.net
Hello,

stephane@Stephanes-MacBook-Pro ~ % uname -a
Darwin Stephanes-MacBook-Pro.local 20.5.0 Darwin Kernel Version 20.5.0: Sat May 8 05:10:31 PDT 2021; root:xnu-7195.121.3~9/RELEASE_ARM64_T8101 arm64
stephane@Stephanes-MacBook-Pro ~ % sbcl
This is SBCL 2.1.9, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.


I installed sbcl using the Mac Port project, it worked just fine out
of the box. However, this box is NOT my main computer, so I did not
conduct extensive testing.

On Mon, Nov 01, 2021 at 02:06:24AM -0400, Scott E. Fahlman wrote:
> PDT) X-Pm-Content-Encryption: on-delivery Status: O Content-Length: 3233 Lines:
> 42

_______________________________________________
Sbcl-help mailing list
Sbcl...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-help

Christophe Rhodes

unread,
Nov 1, 2021, 4:50:10 AM11/1/21
to Scott E. Fahlman, sbcl...@lists.sourceforge.net
Hi,

"Scott E. Fahlman" <s...@cs.cmu.edu> writes:

> I wonder if anyone can fill me in on the status of SBCL on the new Apple
> M-series chips (ARM architecture, with some tweaks).
>
> - Does it SBCL exist on these machines, and is it stable enough to use?
> - Does it take advantage of the multi-threading facilities on these
> chips?
> - Are members of the SBCL community actively supporting this
> implementation?

To try to answer these three, with some context: the 64-bit arm port has
been supported and stable for a few years now. At the start of the
year, one of the principal active maintainers ran a successful
crowdfunder in order to acquire a new (M-series) Macbook Air, in order
to both facilitate a port to Apple Silicon and also to have it as their
"daily driver", to make sure the port stays maintained. The SBCL port
to Mac OS/Silicon is multi-threaded; I don't know of any specific
facilities offered by the chips for multi-threading beyond the norm, but
SBCL fully supports SMP on these chips. (The same maintainer has an
active crowdfunder to support their ongoing work on SBCL at
<https://www.patreon.com/stassats>).

> - What are future plans for this?

I would expect Apple Silicon machines to be relatively popular among
developers, giving rise to a reasonable demand for a well-maintained
SBCL port there. Beyond that, I don't know of any specific plans anyone
has.

Best wishes,

Christophe

David Botton

unread,
Nov 1, 2021, 10:55:29 AM11/1/21
to sbcl...@lists.sourceforge.net
I have used it extensively since the port (so almost a year) with heavy use of multithreading with no issue. https://github.com/rabbibotton/clog was mainly developed on a MacBook Air (M1)

David Botton



Bela Pecsek

unread,
Nov 1, 2021, 12:33:28 PM11/1/21
to sbcl...@lists.sourceforge.net

Hi Scott,

SBCL's been ported to M1 almost a year ago very quickly by Stas and running very stable since then.

The only missing feature is the SIMD support that I hope will also come eventually when Stas can spare some time to make it.

The easiest is to install using brew or port.

$ brew install sbcl

This should do it.

Regards:

Bela

Reply all
Reply to author
Forward
0 new messages