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

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

[Octave-bug-tracker] [bug #55642] isosurface is slow


From: Rik
Subject: [Octave-bug-tracker] [bug #55642] isosurface is slow
Date: Mon, 4 Feb 2019 13:17:34 -0500 (EST)
User-agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko

Follow-up Comment #2, bug #55642 (project octave):

This is a great opportunity to use the built-in profiler.


octave:5> profile on
octave:6> fv = isosurface (x, y, z, v, max (v(:))/2);
octave:7> profile off


If I then use profexplore I see


Top
  isosurface: 1 calls, 14.937 total, 0.001 self
    1) __unite_shared_vertices__: 1 calls, 14.856 total, 5.115 self
    2) __marching_cube__: 1 calls, 0.079 total, 0.027 self
    3) isosurface>__get_check_isosurface_args__: 1 calls, 0.001 total, 0.001
self
    4) nargin: 2 calls, 0.000 total, 0.000 self
    5) nargout: 2 calls, 0.000 total, 0.000 self
    6) isempty: 3 calls, 0.000 total, 0.000 self
    7) prefix !: 2 calls, 0.000 total, 0.000 self
    8) binary <: 1 calls, 0.000 total, 0.000 self
    9) binary >: 1 calls, 0.000 total, 0.000 self



So, Michael is correct that __marching_cube__ is way more efficient than
__unite_shared_vertices__.

Michael's patch definitely decreases the time required.  This isn't my area of
expertise so someone else should evaluate the mathematical logic (5 eps, for
example as the tolerance).


    _______________________________________________________

Reply to this item at:

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

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




reply via email to

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