Giter Site home page Giter Site logo

missing openblas error about owl HOT 5 CLOSED

owlbarn avatar owlbarn commented on May 12, 2024
missing openblas error

from owl.

Comments (5)

ryanrhymes avatar ryanrhymes commented on May 12, 2024

Sorry about this inconvenience, I am redesigning the Linalg module at the moment. The new release will include full interface to CBLAS and LAPACKE so I have chosen OpenBLAS as the underlying library (in fact anything with compatible interface should work).

You can install openblas using brew install homebrew/science/openblas and this should solve the problem. Or you can use opam to install conf-openblas to resolve the dependency issue. In the next release, I will include conf-openblas in the oasis file, but I will also update the readme, thanks for pointing it out.

However, I recommend to download the openblas source from its repo and install from the source code. It gives way better performance than using brew. Based on my current experiment, Owl is able to achieve the same performance as Julia (actually often a bit faster :)

from owl.

mars0i avatar mars0i commented on May 12, 2024

Thanks Liang. No problem. I'm trying some variations on plotting functions. I'll come back with questions (or possibly a PR) once I have had a chance to experiment and think about whether any additions/changes would make sense.

I didn't know that trick for homebrew. Thanks. I had tried using brew to install openblas using only the string "openblas", but this didn't seem to be in the database. I didn't know about specifying a path. I'll have to learn more about homebrew.

I had tried installing lacaml with opam, and that installed conf-openblas, but that didn't get rid of the error. Maybe the location of the files is different from what myocamlbuild.ml assumes? (I don't understand how this file is constructed.)

Anyway, I have openblas installed from source now (whew--that takes a long time to build) and have been able to build and install Owl.

Very nice about performance! Thanks.

from owl.

nilsbecker avatar nilsbecker commented on May 12, 2024

fwiw, i have had good experiences with openblas on mac. specifically, the accelerate framework on mac also provides lapack, but for me this gave errors when combining it with parmap for fork-based parallelization. forking is apparently not supported in accelerate.
with openblas this works much better, and the performance is not worse than accelerate. plus, it's cross platform.

from owl.

mars0i avatar mars0i commented on May 12, 2024

I did a simple speed comparison before and after installing openBLAS and recompiling and installing Owl, and my little application was two to 2-1/2 times faster.

from owl.

ryanrhymes avatar ryanrhymes commented on May 12, 2024

Indeed, for most linear algebra and math operations, Owl should be at least as fast as julia (given the right openblas is linked to). But there is still a lot of space to further optimise owl's other operations (julia is very well designed :)

from owl.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.