octave-maintainers
[Top][All Lists]
Advanced

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

Re: deprecated use of octave_allocator


From: John W. Eaton
Subject: Re: deprecated use of octave_allocator
Date: Fri, 16 Jan 2015 12:13:38 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Icedove/24.5.0

On 01/16/2015 08:26 AM, Andreas Weber wrote:
Dear all,

since cset a35d381e22b0 from 2011 USE_OCTAVE_ALLOCATOR is undefined per
default. The help text for this configure switch:

"--enable-octave-allocator: use the obsolete octave_allocator class for
many of Octave's objects (mostly octave_value types). You probably do
NOT want to enable this feature."

On the project page http://wiki.octave.org/Projects under Numerical it's
listed as:
"Use octave_allocator for memory management in Array classes once g++
supports static member templates."

What is the intended use for octave_allocator? Should new code (such as
audiodevinfo.cc in line 648 and 554) use the DECLARE_OCTAVE_ALLOCATOR
and DEFINE_OCTAVE_ALLOCATOR macros?

The original idea was to improve performance by having a special allocator that would make one large allocation with operator new and then split it up into smaller objects and manage the pool. I'm not sure that the small increase in performance (if any) justified the added complexity. I think there were some other issues with it, but I can't remember. I'd have to dig up the discussion around the time that the configure switch was added. If it really doesn't provide significant improvement in performance, then I think we could just completely remove it and delete the item from the projects list (I'm pretty sure that item could be deleted anyway).

jwe





reply via email to

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