help-gsl
[Top][All Lists]

## Re: [Help-gsl] Question about solving linear equation with GSL

 From: Steven Vancoillie Subject: Re: [Help-gsl] Question about solving linear equation with GSL Date: Tue, 6 Jan 2009 23:22:14 +0100 User-agent: KMail/1.9.9

```On Tuesday 06 January 2009 22:25:17 Sheng Yu wrote:
> Hi,
>
> I'm new to GSL. I'm trying to solve equation Ax=b, using one of the
> solvers in Linear Algebra pack.
> A is a 914x914 matrix. It is symmetric and positive definite. I use
> Cholesky Decomposition to decomposite A first and then
> solve it. Here is the pseudo code:
>
>   const size_t N = 914;
>   gsl_matrix *A = gsl_matrix_alloc(N, N);
>   gsl_vector *b = gsl_vector_alloc(N);
>   gsl_vector *x = gsl_vector_alloc(N);
>
>   // code to initialize A and b
>
>   gsl_linalg_cholesky_decomp(A);
>   gsl_linalg_cholesky_solve(A, b, x);
>
> It takes 0.25 seconds for the code to do Cholesky Decomposition and
> solve. However, when I do it with Matlab with A\b, it only
> takes 0.045 seonds (It even does not take advantage of the fact that A
> is symmetric and positive definite). I'm wondering why
> Matlab is much faster. Did I do something wrong?
>
I don't think GSL is meant to be the fastest code out there, so this is not
really an issue.
As long as you get the same results from GSL or matlab I don't think you're
doing anything wrong.
If you're looking for speed, you should turn to some optimized linear algebra
routine like e.g. LAPACK.

grtz
Steven
``` signature.asc
Description: This is a digitally signed message part.