Hi Simon,

I’ve tested this on MacBook Pro 14-inch 2023 M3 max, running Sequoia 15.7.3.
I’ve also tested this on iMac 27-inch 2019 intel 8-core i9 running Sonoma 
14.8.3. Both have 64 GB RAM.

It’s linked to Veclib. When using R 4.5.2 on the Intel Mac, it works fine 
because R’s standard BLAS is the default. But on either machine if I change the 
BLAS symlink to vecLib then the error occurs. That’s true even with old 
versions of R version 4.x.x. If I change the symlink back to the default R 
BLAS, the error goes away. It occurs in both R via normal Mac GUI as well as in 
Rstudio.

Here’s my sessionInfo on the ARM machine:

> sessionInfo()
R version 4.5.2 (2025-10-31)
Platform: aarch64-apple-darwin20
Running under: macOS Sequoia 15.7.3

Matrix products: default
BLAS:   
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: 
/Library/Frameworks/R.framework/Versions/4.5-arm64/Resources/lib/libRlapack.dylib;
  LAPACK version 3.12.1

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

time zone: Europe/London
tzcode source: internal

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

loaded via a namespace (and not attached):
[1] compiler_4.5.2

It’s dependent on the size of the matrix. With smaller M (e.g. M=400), the 
error goes away. I’m assuming that crossprod() does not invoke multiple threads 
with small M.

Thanks,
Myles

From: Simon Urbanek <[email protected]>
Date: Wednesday, 14 January 2026 at 22:41
To: Myles Lewis <[email protected]>
Cc: [email protected] <[email protected]>
Subject: Re: [R-SIG-Mac] Parallel errors with default BLAS (vecLib) in R 4.5.2 
for arm64

[You don't often get email from [email protected]. Learn why this is 
important at https://aka.ms/LearnAboutSenderIdentification ]

Myles,

can you please, provide more details such as exact versions of your macOS and 
well as details on the hardware you are using? I cannot reproduce the problem - 
it works perfectly fine for me on M3 running macOS 26.0.1 so it would be good 
to know what the conditions for failure are.

Thanks,
Simon


> On 15 Jan 2026, at 06:05, Myles Lewis via R-SIG-Mac <[email protected]> 
> wrote:
>
> I wanted to report an issue with R 4.5.2 for arm64, which is caused by the 
> change in the default BLAS from R�s standard BLAS library to using Apple 
> Accelerate vecLib BLAS library by default. In 4.5.1 and earlier, R for macOS 
> ships with the standard R BLAS. To change to vecLib, users had to 
> deliberately invoke this using a terminal command to change a symlink:
> https://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Which-BLAS-is-used-and-how-can-it-be-changed_003f<https://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#Which-BLAS-is-used-and-how-can-it-be-changed_003f>
>
> However, R 4.5.2 for arm64 now defaults to vecLib. For intel macOS, 4.5.2 
> stays with the standard R BLAS. VecLib BLAS has a problem with 
> parallelisation using mclapply() which now gives a warning and returns NULL 
> if mc.cores >= 2 and vecLib is invoked e.g. by the use of crossprod(). Here�s 
> a short reprex:
>
> system("readlink 
> /Library/Frameworks/R.framework/Resources/lib/libRblas.dylib")
> # R 4.5.2 arm64: libRblas.vecLib.dylib
> # R 4.5.1 arm64: libRblas.0.dylib
>
> N <- 200
> M <- 4000
> X <- matrix(rnorm(N*M),N)
>
> library(parallel)
>
> # ok
> res <- mclapply(1:4, function(i) {crossprod(X + i)}, mc.cores = 1)
>
> # ok in R 4.5.1
> # not ok in R 4.5.2 arm64 (but works if M is smaller)
> res <- mclapply(1:4, function(i) {crossprod(X + i)}, mc.cores = 2)
> # gives warning and `res` contains NULL
>
> The same error occurs on Intel & arm Macs with any version of R if the BLAS 
> is switched to VecLib by symlink.
>
> My question is whether R for arm64 should go back to standard R BLAS by 
> default. Otherwise, users may find that functions which invoke the BLAS e.g. 
> lm() may crash unexpectedly and return NULL when parallelised using mclapply 
> (a fairly common situation in lots of packages).
>
> Thanks,
> Myles Lewis
>
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-SIG-Mac mailing list
> [email protected]
> https://stat.ethz.ch/mailman/listinfo/r-sig-mac<https://stat.ethz.ch/mailman/listinfo/r-sig-mac>


        [[alternative HTML version deleted]]

_______________________________________________
R-SIG-Mac mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-sig-mac

Reply via email to