Julia vs Trilinos

Hi all,

I am just learning about Julia, and see another package for mathematics named Trilinos.
TrilinosHandsOnTutorial · trilinos/Trilinos_tutorial Wiki

https://trilinos.github.io/

I was thinking and wondering if I can get Julia’ packages that can do what Trilinos’ packages could do to solve Linear problems and non-linear problems?

Anyone ever try Trilinos wholly and compare the computation performance with Julia? for example in computing eigenvalue, in Trilinos we got Anasazi, what is the best eigenvalue solver in Julia?

Trilinos seems to be a family of libraries rather than a language. Are you interested in exposing those libraries in Julia? Having Julia libraries compete with them?

1 Like

Yeah, Trilinos is a set of libraries (primarily parallel solvers for various numerical problems), not a language. If you want to use Trilinos solvers in Julia there is GitHub - barche/Trilinos.jl: Julia wrappers for Trilinos

2 Likes

Yes I want to calculate the computation time for Julia libraries head to head with Trilinos libraries. Is it done already?

Good question, I’m not sure

I don’t think you’ll find any Julia libraries for parallel algorithms that are as sophisticated as Trilinos, except for libraries that just wrap Trilinos. Pure Julia implementations of distributed algorithms aren’t there, in my experience. It’s something I’d like to work on.

That said, Trilinos (and PETSc which I think is most people’s favored option in the C/C++ ecosystem today) represent a monumental engineering effort and recreating their functionality in Julia is probably not a good use of time unless the Julia implementation brings something new to the table.

I should add for problems on a shared memory machine Julia implementations are probably competitive; for sparse matrices of floating point types you’ll just get calls to optimized implementations in C anyway.

3 Likes

Thanks for this, I will try this Julia wrappers.

FYI I just took a look and saw that that wrapper package has not been updated in 4 years and is likely broken. It doesn’t expose very much of Trilinos’ functionality, either. Seems like an opportunity for someone to make an up to date wrapper, if the functionality is in demand.

There’s a much more up-to-date wrapper for PETSc, which should be able to do most of the same things.

1 Like

Yes it has not been updated since 4 years ago. I don’t really know how to make a wrapper. It could be nice to create one, I will try it then.

I just know about PETSc today. Thanks