public inbox for gsl-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Patrick Alken <patrick.alken@colorado.edu>
To: Tuomo Keskitalo <Tuomo.Keskitalo@iki.fi>
Cc: Patrick Alken <patrick.alken@colorado.edu>, gsl-discuss@sourceware.org
Subject: Re: simplicity vs. efficiency of algorithms in GSL
Date: Mon, 22 Sep 2008 19:48:00 -0000	[thread overview]
Message-ID: <20080922195029.GA9060@hippogriff.homeunix.org> (raw)
In-Reply-To: <48D7E476.2010000@iki.fi>

> About this point: I have been wondering where the balance of GSL should  
> be on simplicity vs. efficiency of the code. Of course, even a simple  
> algorithm is better than none, but I think it would be good to offer  
> efficient routines in GSL. If somebody publishes a well written,  
> efficient eigenvalue algorithm, would it get included in GSL? Or would  
> it be better off as an extension library?

I think it depends on how simple and easy to understand it is. The
algorithm in Golub and Van Loan is relatively simple and someone
who is interested could read that book and then look at the GSL
code and understand what is going on fairly easily.

A year or so ago I tried to implement the current LAPACK algorithm
for nonsymmetric eigenvalues, called the "Small Bulge Agressive
Early Deflation" algorithm. This algorithm is easily 50-70% faster
than the current GSL algorithm however it is extremely complex
and it would take a non-expert several weeks to understand what
the code is doing.

Since that algorithm is available in LAPACK, a free library, I
really don't see the need to put faster more complicated algorithms
in GSL since LAPACK already has the fastest algorithms currently
available.

However if you want to implement these as extensions some would
certainly find that useful.

Patrick Alken

  reply	other threads:[~2008-09-22 19:48 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200809221621.54890.emanuele.passera@treuropa.com>
     [not found] ` <20080922162507.GA29877@hippogriff.homeunix.org>
2008-09-22 18:32   ` Tuomo Keskitalo
2008-09-22 19:48     ` Patrick Alken [this message]
2008-09-22 21:01       ` Robert G. Brown
2008-09-23 21:52         ` Gerard Jungman
2008-09-24 21:19           ` Brian Gough
2008-09-25  0:07             ` Gerard Jungman
2008-09-25  3:07               ` Andrew W. Steiner
2008-09-25  3:50               ` Z F
2008-09-26 21:48               ` Brian Gough
2008-09-27  6:12                 ` Jochen Küpper
2008-09-29 13:35                   ` Brian Gough
2008-10-07 21:14                   ` Gerard Jungman
2008-10-09 18:38                     ` Tuomo Keskitalo
2008-10-09 18:57                       ` Frank Reininghaus
2008-10-09 21:17                         ` Gerard Jungman
2008-10-10  0:05                       ` Gerard Jungman
2008-10-10 15:50                         ` Robert G. Brown
2008-10-10 18:47                           ` James Amundson
2008-10-11  2:48                         ` Brian Gough
2008-10-14 21:33                           ` Gerard Jungman
2008-10-14 22:41                             ` Daniel Franke
2008-10-16 22:20                               ` Gerard Jungman
2008-10-17 13:27                             ` Brian Gough

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080922195029.GA9060@hippogriff.homeunix.org \
    --to=patrick.alken@colorado.edu \
    --cc=Tuomo.Keskitalo@iki.fi \
    --cc=gsl-discuss@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).