Skip to content

Move cblas calls from inline functions to the library #416

@isuruf

Description

@isuruf

I'm trying to package fflas-ffpack for conda and the calls to openblas_num_threads(1)
is problematic. This is an issue because we package openblas with parallelism and
other packages like scipy etc rely on it.
If fflas-ffpack links to openblas dynamically, then once fflas is loaded into a process
with scipy in it, scipy's linalg calls will become slow because of openblas_num_threads(1).

In order to avoid this problem, I want to statically link in openblas to libfflas.so.
The issue here is that these cblas calls are in inline headers and when linbox uses
fflas functions, linbox creates calls to openblas as well. Then we have link openblas
statically for linbox too. Same for all downstream uses of fflas-ffpack.

A solution to this is to move cblas calls from inline functions to the library.
Thoughts?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions