> Furthermore, the exposed APIs give the Julia programmer significantly 
fewer capabilities than the sparse matrix suite of Matlab.

Like what? There is a SuiteSparse.jl package under the JuliaSparse 
organization that currently has a handful of routines (Julia ports) but 
will be the home as more of the bindings gradually get migrated there, and 
out of base Julia. The long-term plan is to be less reliant on SuiteSparse 
as the only option, and instead to come up with a more general interface 
that multiple different solver packages could plug into. Outside of base 
Julia, a SuiteSparse.jl package would be more flexible to wrap as much of 
the SuiteSparse API as its contributors and maintainers choose.


On Friday, August 5, 2016 at 2:17:09 PM UTC-7, [email protected] wrote:
>
> Sparse matrix computation is a key aspect of scientific computing.  The 
> creators of Julia made the smart decision to rely on SuiteSparse, 
> high-quality free C++ software that carries out most of the common sparse 
> matrix factorizations and related operations very efficiently.
>
> The issue that concerns me is that the wrappers in Julia, namely, 
> cholmod.jl, spqr.jl and umfpack.jl, expose only a small fraction of 
> SuiteSparse's capabilities.  Furthermore, the exposed APIs give the Julia 
> programmer significantly fewer capabilities than the sparse matrix suite of 
> Matlab.
>
> And the reason for this limitation has become clear to me over the past 
> few days as I tried to develop a routine to find a right null vector of a 
> sparse matrix using SuiteSparse: it is difficult and tedious to write Julia 
> wrappers for the routines in SuiteSparse.  Even figuring out whether a 
> particular variable is an Int32 or Int64 requires poring over SuiteSparse's 
> nested header files full of conditional platform-dependent compilation 
> directives.  And my resulting wrapper works only on one platform for one 
> version of Julia and one version of SuiteSparse.  It is clear that whoever 
> wrote cholmod.jl, spqr.jl and umfpack.jl put a lot of time and painstaking 
> effort into getting these interfaces correct.
>
> And this raises a question: will Julia ever fully incorporate SuiteSparse? 
>  Will its sparse matrix capabilities ever approach Matlab's?  Who will take 
> the time to write, test and maintain cross-platform Julia wrappers for 
> SuiteSparse?  This is a tedious job that carries little glory - I certainly 
> would not want to do it!  And yet sparse matrix computation is so important.
>
>

Reply via email to