bugGNU Scientific Library - Bugs: bug #24418, fminimizer nmsimplex unnecessary...


You are not allowed to post comments on this tracker with your current authentication level.

bug #24418: fminimizer nmsimplex unnecessary size calculation

Submitter:  -Deleted Account- <bjg>
Submitted:  Tue 30 Sep 2008 06:27:17 PM UTC
Category:  Performance Severity:  3 - Normal
Operating System:  Status:  Fixed
Assigned to:  None Open/Closed:  Closed
Release:  1.11

Sat 29 Nov 2008 06:53:09 PM UTC, comment #1: 

fixed by b8e9d15cc5000b495a36f569b413b1866577fe7b

-Deleted Account- <bjg>
Tue 30 Sep 2008 06:27:17 PM UTC, original submission:  


From: Ian Jackson <ijackson@chiark.greenend.org.uk>
To: -email is unavailable-
Subject: fminimizer nmsimplex unnecessary size calculation
Date: Mon, 29 Sep 2008 02:21:59 +0100

Package: gsl
Version: 1.8-2
Tags: patch
Severity: wishlist

The minimiser
always computes the simplex size for each step.  This is done using
gsl_blas_dnrm2 which is quite careful.  This computation involves
around n^2 divisions (where n is the problem dimensionality).

For high-dimensionality problems this can easily dominate useful work.

The caller might try to work around this by calling
gsl_multimin_fminimizer_size less often but this is ineffective
because the size calculation is actually done each time the simplex is
modified by _iterate or _set.

The attached patch arranges to

  • not calculate the size unless it is requested
  • cache the returned value so that existing programs are no slower

Unfortunately this requires us to drop the `const' from the prototype
of gsl_multimin_fminimizer_size.  But I think this is still a good

An alternative option would be to always call ->get_size and not
bother caching.  That would make slower any existing programs that
call _fminimizer_size but wouldn't need a change of prototype.  That
might be acceptable given that the performance properties of _size
are not spelled out.


-Deleted Account- <bjg>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #16592:  simplex_patch.c added by bjg (6KiB - text/x-csrc)


Depends on the following items: None found

Items that depend on this one: None found


CC list is empty




Follow 3 latest changes.

Date Changed by Updated Field Previous Value => Replaced by
2008-11-29 bjg StatusConfirmed Fixed
    Open/ClosedOpen Closed
2008-09-30 bjg Attached File- Added simplex_patch.c, #16592

Back to the top

Powered by Savane 3.10