uncomplicate / neanderthal

Fast Clojure Matrix Library
http://neanderthal.uncomplicate.org
Eclipse Public License 1.0
1.06k stars 56 forks source link

OSX Silicon Support #125

Open eoliphan opened 2 years ago

eoliphan commented 2 years ago

Would be nice to have "native" support on next-gen macs. Looks like the Accelerate library provides BLAS and LAPACK

blueberry commented 2 years ago

Yes.I intend to do something about this eventually. I'll see what I can do once I get hold of the appropriate hardware. However, I use lots of native functions that are not available in BLAS and LAPACK. That means that i won't be able to support full functionality.

kxygk commented 2 years ago

It'd be nice if there was some generic (either pure Clojure or JVM) fallback. The current backend is obviously as close to optimal as possible in terms of speed - but it's a pain to distribute/bundle. I often work with non-huge matrices and I don't really need to squeeze everything I can out of every CPU cycle - and I end up having to fall back onto core.matrix ... which is really kinda buggy and not as polished as neanderthal

I get this might not be on your radar though since I think you're using this for ML :)

mbjarland commented 1 year ago

@blueberry Would it be helpful if you had access to an m1 instance in the cloud? If yes I could have my company sponsor the instanse.

blueberry commented 1 year ago

It's difficult to say. If it was just a matter of recompiling, then yes. But for OSX support, I would have to develop an independent engine from scratch, with Apple's proprietary BLAS/LAPACK. I'd have to familiarize myself with their ecosystem to be able to do that. Thank you for the offer, though. This might be an option if I don't find a better solution.