octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #59830] Architecture-dependent results for ari


From: Rafael Laboissiere
Subject: [Octave-bug-tracker] [bug #59830] Architecture-dependent results for arithmetic operations involving NA
Date: Wed, 6 Jan 2021 03:28:26 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36

Follow-up Comment #1, bug #59830 (project octave):

The BIST in the level-set package that exposes the problem is the one in
so_step_armijo.m, as can be seen in the build log
<https://buildd.debian.org/status/fetch.php?pkg=octave-level-set&arch=mips64el&ver=0.3.1%7Egit.2019.04.13-2&stamp=1609770834&raw=0>
of the Debian package octave-level-set on mips64el:


>>>>> /<<PKGBUILDDIR>>/inst/so_step_armijo.m
***** function s = updateState (phi, data)
  inside = ls_inside (phi);
  vol = data.g.h * length (find (inside));
  cost = 1 / vol;

  % Throw if the volume is too large.  This is used
  % to check the error handling code.
  if (vol > 15)
    error ("volume too large");
  endif

  s = struct ("phi", phi, "cost", cost);
***** endfunction
***** shared n, phi, baseData, d, f, dJ
  n = 100;
  x = linspace (-10, 10, n);
  h = x(2) - x(1);
  a = 0;
  b = 5;
  phi = ls_genbasic (x, "box", a, b);

  baseData = struct ();
  baseData.p = so_init_params (false);
  baseData.g = struct ("x", x, "h", h);
  baseData.cb = struct ("update_state", @updateState);
  baseData.s = updateState (phi, baseData);
  baseData.s.phi = phi;

  f = ones (size (phi));
  d = ls_solve_stationary (phi, f, h);

  curVol = b - a;
  dJ = -2 / curVol^2;
!!!!! test failed
assert (all (isna (d0 (:)) | !isnan (d0 (:)))) failed
shared variables   scalar structure containing the fields:

    n = [](0x0)
    phi = [](0x0)
    baseData = [](0x0)
    d = [](0x0)
    f = [](0x0)
    dJ = [](0x0)


These are the lines in ls_solve_stationary.m that cause the bug in mips64el:


  d0 = nb;
  d0(~fz) ./= fabs(~fz);



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?59830>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]