silly little crossover

thread
Brett 2024-06-29 14:03:57 -04:00
parent cc9f7202c7
commit 8a62071aff
9 changed files with 1943 additions and 37 deletions

View File

@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.25)
project(blt-gp VERSION 0.0.40)
project(blt-gp VERSION 0.0.41)
include(CTest)
@ -73,5 +73,6 @@ if (${BUILD_EXAMPLES})
blt_add_example(blt-gp2 examples/gp_test_2.cpp)
blt_add_example(blt-gp3 examples/gp_test_3.cpp)
blt_add_example(blt-gp4 examples/gp_test_4.cpp)
blt_add_example(blt-gp5 examples/gp_test_5.cpp)
endif ()

106
examples/gp_test_5.cpp Normal file
View File

@ -0,0 +1,106 @@
/*
* <Short Description>
* Copyright (C) 2024 Brett Terpstra
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
/*
* <Short Description>
* Copyright (C) 2024 Brett Terpstra
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
#include <blt/gp/program.h>
#include <blt/gp/generators.h>
#include <blt/gp/tree.h>
#include <blt/std/logging.h>
static constexpr long SEED = 41912;
blt::gp::type_provider type_system;
blt::gp::gp_program program(type_system, std::mt19937_64{SEED}); // NOLINT
blt::gp::operation_t add([](float a, float b) { return a + b; });
blt::gp::operation_t sub([](float a, float b) { return a - b; });
blt::gp::operation_t mul([](float a, float b) { return a * b; });
blt::gp::operation_t pro_div([](float a, float b) { return b == 0 ? 0.0f : a / b; });
blt::gp::operation_t op_if([](bool b, float a, float c) { return b ? a : c; });
blt::gp::operation_t eq_f([](float a, float b) { return a == b; });
blt::gp::operation_t eq_b([](bool a, bool b) { return a == b; });
blt::gp::operation_t lt([](float a, float b) { return a < b; });
blt::gp::operation_t gt([](float a, float b) { return a > b; });
blt::gp::operation_t op_and([](bool a, bool b) { return a && b; });
blt::gp::operation_t op_or([](bool a, bool b) { return a || b; });
blt::gp::operation_t op_xor([](bool a, bool b) { return static_cast<bool>(a ^ b); });
blt::gp::operation_t op_not([](bool b) { return !b; });
blt::gp::operation_t lit([]() {
//static std::uniform_real_distribution<float> dist(-32000, 32000);
static std::uniform_real_distribution<float> dist(0.0f, 10.0f);
return dist(program.get_random());
});
/**
* This is a test using multiple types with blt::gp
*/
int main()
{
type_system.register_type<float>();
type_system.register_type<bool>();
blt::gp::operator_builder builder{type_system};
builder.add_operator(add);
builder.add_operator(sub);
builder.add_operator(mul);
builder.add_operator(pro_div);
builder.add_operator(op_if);
builder.add_operator(eq_f);
builder.add_operator(eq_b);
builder.add_operator(lt);
builder.add_operator(gt);
builder.add_operator(op_and);
builder.add_operator(op_or);
builder.add_operator(op_xor);
builder.add_operator(op_not);
builder.add_operator(lit, true);
program.set_operations(builder.build());
blt::gp::ramped_half_initializer_t pop_init;
auto pop = pop_init.generate(blt::gp::initializer_arguments{program, type_system.get_type<float>().id(), 500, 3, 10});
for (auto& tree : pop.getIndividuals())
{
auto value = tree.get_evaluation_value<float>(nullptr);
BLT_TRACE(value);
}
return 0;
}

View File

@ -21,6 +21,7 @@
#include <functional>
#include <blt/std/logging.h>
#include <blt/std/types.h>
namespace blt::gp
{
@ -53,7 +54,7 @@ namespace blt::gp
// context*, read stack, write stack
using callable_t = std::function<void(void*, stack_allocator&, stack_allocator&)>;
// to, from
using transfer_t = std::function<void(stack_allocator&, stack_allocator&)>;
using transfer_t = std::function<void(stack_allocator&, stack_allocator&, blt::ptrdiff_t)>;
}
}

View File

@ -58,6 +58,7 @@ namespace blt::gp
// indexed from return TYPE ID, returns index of operator
blt::expanding_buffer<std::vector<operator_id>> terminals;
blt::expanding_buffer<std::vector<operator_id>> non_terminals;
blt::expanding_buffer<std::vector<std::pair<operator_id, blt::size_t>>> operators_ordered_terminals;
// indexed from OPERATOR ID (operator number)
blt::expanding_buffer<std::vector<type>> argument_types;
blt::expanding_buffer<argc_t> operator_argc;
@ -101,8 +102,11 @@ namespace blt::gp
storage.operator_argc[operator_id] = argc;
storage.operators.push_back(op.template make_callable<Context>());
storage.transfer_funcs.push_back([](stack_allocator& to, stack_allocator& from) {
to.push(from.pop<Return>());
storage.transfer_funcs.push_back([](stack_allocator& to, stack_allocator& from, blt::ptrdiff_t offset) {
if (offset < 0)
to.push(from.pop<Return>());
else
to.push(from.from<Return>(offset));
});
if (is_static)
storage.static_types.insert(operator_id);
@ -119,8 +123,6 @@ namespace blt::gp
has_terminals.insert(v.first);
}
blt::expanding_buffer<std::vector<std::pair<operator_id, blt::size_t>>> operators_ordered_terminals;
for (const auto& op_r : blt::enumerate(storage.non_terminals))
{
if (op_r.second.empty())
@ -138,24 +140,37 @@ namespace blt::gp
}
ordered_terminals.emplace_back(op, terminals);
}
bool found = false;
bool found_terminal_inputs = false;
bool matches_argc = false;
for (const auto& terms : ordered_terminals)
{
if (terms.second == storage.operator_argc[terms.first].argc)
matches_argc = true;
if (terms.second != 0)
{
found = true;
found_terminal_inputs = true;
if (matches_argc && found_terminal_inputs)
break;
}
}
if (!found)
if (!found_terminal_inputs)
BLT_ABORT(("Failed to find function with terminal arguments for return type " + std::to_string(return_type)).c_str());
if (!matches_argc)
{
BLT_ABORT(("Failed to find non-terminals "));
BLT_ABORT(("Failed to find a function which purely translates types "
"(that is all input types are terminals) for return type " + std::to_string(return_type)).c_str());
}
std::sort(ordered_terminals.begin(), ordered_terminals.end(), [](const auto& a, const auto& b) {
return a.second > b.second;
});
operators_ordered_terminals[return_type] = ordered_terminals;
auto first_size = *ordered_terminals.begin();
auto iter = ordered_terminals.begin();
while (++iter != ordered_terminals.end() && iter->second == first_size.second)
{}
ordered_terminals.erase(iter, ordered_terminals.end());
storage.operators_ordered_terminals[return_type] = ordered_terminals;
}
return std::move(storage);
@ -220,6 +235,9 @@ namespace blt::gp
inline operator_id select_terminal(type_id id)
{
// we wanted a terminal, but could not find one, so we will select from a function that has a terminal
if (storage.terminals[id].empty())
return select_non_terminal_too_deep(id);
std::uniform_int_distribution<blt::size_t> dist(0, storage.terminals[id].size() - 1);
return storage.terminals[id][dist(engine)];
}
@ -229,20 +247,12 @@ namespace blt::gp
std::uniform_int_distribution<blt::size_t> dist(0, storage.non_terminals[id].size() - 1);
return storage.non_terminals[id][dist(engine)];
}
// inline operator_id select_non_terminal_too_deep(type_id id)
// {
// std::uniform_int_distribution<blt::size_t> dist(0, non_terminals[id].size() - 1);
// operator_id sel;
// do
// {
// sel = non_terminals[id][dist(engine)];
// } while (std::find_if(argument_types[sel].begin(), argument_types[sel].end(),
// [id](const auto& v) {
// return v.id() == id;
// }) != argument_types[sel].end());
// return sel;
// }
inline operator_id select_non_terminal_too_deep(type_id id)
{
std::uniform_int_distribution<blt::size_t> dist(0, storage.operators_ordered_terminals[id].size() - 1);
return storage.operators_ordered_terminals[id][dist(engine)].first;
}
inline std::vector<type>& get_argument_types(operator_id id)
{

View File

@ -19,9 +19,20 @@
#ifndef BLT_GP_TRANSFORMERS_H
#define BLT_GP_TRANSFORMERS_H
#include <blt/std/utility.h>
#include <blt/gp/fwdecl.h>
#include <blt/gp/tree.h>
namespace blt::gp
{
class crossover_t
{
public:
BLT_ATTRIB_CONST virtual std::pair<tree_t, tree_t> apply(gp_program& program, const tree_t& p1, const tree_t& p2);
virtual void apply_in_place(gp_program& program, tree_t& p1, tree_t& p2);
};
}
#endif //BLT_GP_TRANSFORMERS_H

966
massif.out.13633 Normal file
View File

@ -0,0 +1,966 @@
desc: (none)
cmd: ./cmake-build-release/blt-gp4-example
time_unit: i
#-----------
snapshot=0
#-----------
time=0
mem_heap_B=0
mem_heap_extra_B=0
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=1
#-----------
time=1844352
mem_heap_B=72704
mem_heap_extra_B=8
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=2
#-----------
time=2716554
mem_heap_B=1282810
mem_heap_extra_B=287382
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=3
#-----------
time=3444718
mem_heap_B=1883802
mem_heap_extra_B=419478
mem_stacks_B=0
heap_tree=detailed
n4: 1883802 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 1646592 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 892928 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 892928 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 892928 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 753664 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 753664 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 753664 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 140256 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 88896 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 88896 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 88896 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 51360 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 51360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 51360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 24250 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=4
#-----------
time=4191217
mem_heap_B=2310586
mem_heap_extra_B=544262
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=5
#-----------
time=5081555
mem_heap_B=2760890
mem_heap_extra_B=639414
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=6
#-----------
time=6035206
mem_heap_B=3079994
mem_heap_extra_B=702438
mem_stacks_B=0
heap_tree=detailed
n4: 3079994 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 2539520 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1335296 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1335296 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1335296 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1204224 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1204224 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1204224 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 431232 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 315264 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 315264 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 315264 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 115968 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 115968 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 115968 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 36538 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=7
#-----------
time=7120303
mem_heap_B=3426234
mem_heap_extra_B=751094
mem_stacks_B=0
heap_tree=detailed
n4: 3426234 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 2752512 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1458176 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1458176 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1458176 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1294336 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1294336 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1294336 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 564480 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 432000 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 432000 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 432000 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 132480 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 132480 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 132480 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 36538 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=8
#-----------
time=7765277
mem_heap_B=3644538
mem_heap_extra_B=786374
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=9
#-----------
time=8645611
mem_heap_B=3868026
mem_heap_extra_B=812998
mem_stacks_B=0
heap_tree=detailed
n4: 3868026 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 2998272 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1572864 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1572864 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1572864 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1425408 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1425408 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1425408 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 760512 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 603456 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 603456 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 603456 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 157056 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 157056 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 157056 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 36538 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=10
#-----------
time=9651938
mem_heap_B=4106042
mem_heap_extra_B=820134
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=11
#-----------
time=10883742
mem_heap_B=4436538
mem_heap_extra_B=858198
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=12
#-----------
time=12147857
mem_heap_B=4760634
mem_heap_extra_B=922422
mem_stacks_B=0
heap_tree=detailed
n4: 4760634 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 3489792 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1753088 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1753088 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1753088 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1736704 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1736704 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1736704 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 1161600 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 935232 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 935232 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 935232 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 226368 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 226368 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 226368 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 36538 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=13
#-----------
time=13074334
mem_heap_B=4924218
mem_heap_extra_B=926870
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=14
#-----------
time=14375637
mem_heap_B=5142330
mem_heap_extra_B=934454
mem_stacks_B=0
heap_tree=detailed
n4: 5142330 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 3588096 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1818624 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1818624 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1818624 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1769472 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1769472 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1769472 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 1444992 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1205568 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1205568 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1205568 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 239424 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 239424 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 239424 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 36538 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=15
#-----------
time=15498078
mem_heap_B=5302458
mem_heap_extra_B=945094
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=16
#-----------
time=16058954
mem_heap_B=5398714
mem_heap_extra_B=949254
mem_stacks_B=0
heap_tree=detailed
n4: 5398714 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 3653632 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1875968 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1875968 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1875968 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1777664 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1777664 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1777664 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 1635840 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1396032 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1396032 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1396032 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 239808 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 239808 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 239808 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 36538 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=17
#-----------
time=16929440
mem_heap_B=5552314
mem_heap_extra_B=956166
mem_stacks_B=0
heap_tree=detailed
n4: 5552314 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 3678208 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1900544 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1900544 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1900544 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1777664 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1777664 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1777664 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 1764864 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1525056 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1525056 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1525056 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 239808 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 239808 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 239808 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 36538 in 24 places, all below massif's threshold (1.00%)
#-----------
snapshot=18
#-----------
time=17594997
mem_heap_B=5660346
mem_heap_extra_B=974950
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=19
#-----------
time=18485433
mem_heap_B=5828858
mem_heap_extra_B=997350
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=20
#-----------
time=19554263
mem_heap_B=6008826
mem_heap_extra_B=1027254
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=21
#-----------
time=20254655
mem_heap_B=6143226
mem_heap_extra_B=1031478
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=22
#-----------
time=21277387
mem_heap_B=6277882
mem_heap_extra_B=1032390
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=23
#-----------
time=21882816
mem_heap_B=6425338
mem_heap_extra_B=1035382
mem_stacks_B=0
heap_tree=detailed
n3: 6425338 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 3948544 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2031616 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2031616 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2031616 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1916928 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1916928 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1916928 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2367552 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2090304 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2090304 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2090304 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 277248 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 277248 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 277248 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 109242 in 25 places, all below massif's threshold (1.00%)
#-----------
snapshot=24
#-----------
time=22707878
mem_heap_B=6519546
mem_heap_extra_B=1040198
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=25
#-----------
time=23478585
mem_heap_B=6650906
mem_heap_extra_B=1043606
mem_stacks_B=0
heap_tree=detailed
n3: 6650906 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4038656 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2080768 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2080768 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2080768 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1957888 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1957888 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1957888 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2503008 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2213184 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2213184 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2213184 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 289824 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 289824 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 289824 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 109242 in 25 places, all below massif's threshold (1.00%)
#-----------
snapshot=26
#-----------
time=24434919
mem_heap_B=6896890
mem_heap_extra_B=1047822
mem_stacks_B=0
heap_tree=peak
n3: 6896890 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4087808 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2097152 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2088960 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2088960 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 1990656 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1982464 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1982464 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 2691648 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2385216 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2237760 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2237760 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 147456 0x13ACE8: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 147456 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 306432 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 303360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 303360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 3072 in 1 place, below massif's threshold (1.00%)
n0: 117434 in 26 places, all below massif's threshold (1.00%)
#-----------
snapshot=27
#-----------
time=25826867
mem_heap_B=6862810
mem_heap_extra_B=1048886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=28
#-----------
time=26523968
mem_heap_B=6861755
mem_heap_extra_B=1048829
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=29
#-----------
time=27683208
mem_heap_B=6861866
mem_heap_extra_B=1048830
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=30
#-----------
time=28611087
mem_heap_B=6862138
mem_heap_extra_B=1048886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=31
#-----------
time=29772082
mem_heap_B=6861755
mem_heap_extra_B=1048829
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=32
#-----------
time=30468590
mem_heap_B=6862780
mem_heap_extra_B=1048884
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=33
#-----------
time=31626838
mem_heap_B=6862554
mem_heap_extra_B=1048878
mem_stacks_B=0
heap_tree=detailed
n3: 6862554 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4096000 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2097152 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2088960 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2088960 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 1998848 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1982464 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1982464 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n2: 2645568 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2336064 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2237760 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2237760 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 98304 0x13ACE8: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 98304 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 309504 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 303360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 303360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 120986 in 48 places, all below massif's threshold (1.00%)
#-----------
snapshot=34
#-----------
time=32321809
mem_heap_B=6862486
mem_heap_extra_B=1048890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=35
#-----------
time=33711397
mem_heap_B=6862173
mem_heap_extra_B=1048875
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=36
#-----------
time=34406488
mem_heap_B=6862041
mem_heap_extra_B=1048863
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=37
#-----------
time=35451461
mem_heap_B=6871449
mem_heap_extra_B=1049815
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=38
#-----------
time=36841447
mem_heap_B=6862749
mem_heap_extra_B=1048875
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=39
#-----------
time=37890945
mem_heap_B=6872649
mem_heap_extra_B=1049815
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=40
#-----------
time=39287344
mem_heap_B=6876409
mem_heap_extra_B=1049751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=41
#-----------
time=40330729
mem_heap_B=6862426
mem_heap_extra_B=1048886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=42
#-----------
time=41025900
mem_heap_B=6862780
mem_heap_extra_B=1048884
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=43
#-----------
time=42068300
mem_heap_B=6861920
mem_heap_extra_B=1048848
mem_stacks_B=0
heap_tree=detailed
n3: 6861920 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4096000 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2097152 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2088960 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2088960 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 1998848 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1982464 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1982464 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n2: 2645568 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2336064 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2237760 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2237760 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 98304 0x13ACE8: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 98304 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 309504 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 303360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 303360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 120352 in 48 places, all below massif's threshold (1.00%)
#-----------
snapshot=44
#-----------
time=43112425
mem_heap_B=6862749
mem_heap_extra_B=1048875
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=45
#-----------
time=44162155
mem_heap_B=6874569
mem_heap_extra_B=1049815
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=46
#-----------
time=45551999
mem_heap_B=6862554
mem_heap_extra_B=1048878
mem_stacks_B=0
heap_tree=detailed
n3: 6862554 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4096000 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2097152 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2088960 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2088960 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 1998848 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1982464 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1982464 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n2: 2645568 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2336064 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2237760 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2237760 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 98304 0x13ACE8: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 98304 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 309504 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 303360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 303360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 120986 in 48 places, all below massif's threshold (1.00%)
#-----------
snapshot=47
#-----------
time=46594253
mem_heap_B=6862138
mem_heap_extra_B=1048886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=48
#-----------
time=47639603
mem_heap_B=6862810
mem_heap_extra_B=1048886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=49
#-----------
time=48342516
mem_heap_B=6885601
mem_heap_extra_B=1049743
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=50
#-----------
time=48903723
mem_heap_B=6861981
mem_heap_extra_B=1048859
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=51
#-----------
time=49464957
mem_heap_B=6862749
mem_heap_extra_B=1048875
mem_stacks_B=0
heap_tree=detailed
n3: 6862749 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4096000 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2097152 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2088960 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2088960 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 1998848 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1982464 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1982464 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n2: 2645568 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2336064 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2237760 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2237760 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 98304 0x13ACE8: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 98304 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 309504 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 303360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 303360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 121181 in 48 places, all below massif's threshold (1.00%)
#-----------
snapshot=52
#-----------
time=50031067
mem_heap_B=6883345
mem_heap_extra_B=1049743
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=53
#-----------
time=50592512
mem_heap_B=6875617
mem_heap_extra_B=1049743
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=54
#-----------
time=51153615
mem_heap_B=6862524
mem_heap_extra_B=1048876
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=55
#-----------
time=51728393
mem_heap_B=6882081
mem_heap_extra_B=1049807
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=56
#-----------
time=52289472
mem_heap_B=6862614
mem_heap_extra_B=1048882
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=57
#-----------
time=52850366
mem_heap_B=6861920
mem_heap_extra_B=1048848
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=58
#-----------
time=53424974
mem_heap_B=6898417
mem_heap_extra_B=1049743
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=59
#-----------
time=54043309
mem_heap_B=6894417
mem_heap_extra_B=1049711
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=60
#-----------
time=54608459
mem_heap_B=6906993
mem_heap_extra_B=1050631
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=61
#-----------
time=55169502
mem_heap_B=6861951
mem_heap_extra_B=1048857
mem_stacks_B=0
heap_tree=detailed
n3: 6861951 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4096000 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2097152 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2088960 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2088960 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 1998848 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1982464 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1982464 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n2: 2645568 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2336064 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2237760 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2237760 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 98304 0x13ACE8: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 98304 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 309504 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 303360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 303360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 120383 in 54 places, all below massif's threshold (1.00%)
#-----------
snapshot=62
#-----------
time=55807631
mem_heap_B=6897753
mem_heap_extra_B=1049719
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=63
#-----------
time=56401249
mem_heap_B=6890913
mem_heap_extra_B=1049711
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=64
#-----------
time=56962233
mem_heap_B=6862298
mem_heap_extra_B=1048878
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=65
#-----------
time=57535392
mem_heap_B=6897289
mem_heap_extra_B=1049751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=66
#-----------
time=58098604
mem_heap_B=6901177
mem_heap_extra_B=1049751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=67
#-----------
time=58701004
mem_heap_B=6890745
mem_heap_extra_B=1049719
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=68
#-----------
time=59278667
mem_heap_B=6896329
mem_heap_extra_B=1049751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=69
#-----------
time=59839865
mem_heap_B=6862365
mem_heap_extra_B=1048875
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=70
#-----------
time=60416924
mem_heap_B=6898113
mem_heap_extra_B=1049711
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=71
#-----------
time=60978365
mem_heap_B=6862810
mem_heap_extra_B=1048886
mem_stacks_B=0
heap_tree=detailed
n3: 6862810 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n2: 4096000 0x11A334: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2097152 0x133A5B: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2088960 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2088960 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n2: 1998848 0x136AAB: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 1982464 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 1982464 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n2: 2645568 0x13B14D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 2336064 0x134DBF: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 2237760 0x13A8CA: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 2237760 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 98304 0x13ACE8: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 98304 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n2: 309504 0x138197: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n1: 303360 0x13AB4A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 303360 0x117EA1: main (in /home/brett/Documents/code/c++/blt-gp/cmake-build-release/blt-gp4-example)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 121242 in 54 places, all below massif's threshold (1.00%)
#-----------
snapshot=72
#-----------
time=61539781
mem_heap_B=6862780
mem_heap_extra_B=1048884
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=73
#-----------
time=62112626
mem_heap_B=6895369
mem_heap_extra_B=1049751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=74
#-----------
time=62673555
mem_heap_B=6862173
mem_heap_extra_B=1048875
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=75
#-----------
time=63234456
mem_heap_B=6862870
mem_heap_extra_B=1048890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=76
#-----------
time=63795354
mem_heap_B=6197425
mem_heap_extra_B=881399
mem_stacks_B=0
heap_tree=empty

817
massif.out.15879 Normal file
View File

@ -0,0 +1,817 @@
desc: (none)
cmd: ./cmake-build-relwithdebinfo/blt-gp4-example
time_unit: i
#-----------
snapshot=0
#-----------
time=0
mem_heap_B=0
mem_heap_extra_B=0
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=1
#-----------
time=1845001
mem_heap_B=72704
mem_heap_extra_B=8
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=2
#-----------
time=3473453
mem_heap_B=1697649
mem_heap_extra_B=364543
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=3
#-----------
time=4713692
mem_heap_B=2378033
mem_heap_extra_B=464879
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=4
#-----------
time=5839847
mem_heap_B=2862321
mem_heap_extra_B=554927
mem_stacks_B=0
heap_tree=detailed
n4: 2862321 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 2392064 0x11A764: allocate_block (stack.h:293)
n1: 2392064 0x11A764: push_block (stack.h:273)
n1: 2392064 0x11A764: push_block_for<float> (stack.h:268)
n1: 2392064 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 2392064 0x11A764: push<float> (stack.h:47)
n1: 2392064 0x11A764: operator() (operations.h:165)
n1: 2392064 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 2392064 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 2392064 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 1261568 0x12B0CA: operator() (std_function.h:591)
n1: 1261568 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1261568 0x12C605: generate (generators.cpp:117)
n1: 1261568 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 1261568 0x11806D: main (gp_test_4.cpp:79)
n1: 1130496 0x12BAC7: operator() (std_function.h:591)
n1: 1130496 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1130496 0x12C89A: generate (generators.cpp:102)
n1: 1130496 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1130496 0x11806D: main (gp_test_4.cpp:79)
n1: 357696 0x12CD9D: allocate (new_allocator.h:137)
n1: 357696 0x12CD9D: allocate (alloc_traits.h:464)
n1: 357696 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 357696 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 253824 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n1: 253824 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 253824 0x12C605: generate (generators.cpp:117)
n1: 253824 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 253824 0x11806D: main (gp_test_4.cpp:79)
n1: 103872 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n1: 103872 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 103872 0x12C89A: generate (generators.cpp:102)
n1: 103872 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 103872 0x11806D: main (gp_test_4.cpp:79)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 39857 in 33 places, all below massif's threshold (1.00%)
#-----------
snapshot=5
#-----------
time=7331885
mem_heap_B=3296625
mem_heap_extra_B=625455
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=6
#-----------
time=8454006
mem_heap_B=3632369
mem_heap_extra_B=685455
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=7
#-----------
time=9330102
mem_heap_B=3825777
mem_heap_extra_B=711103
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=8
#-----------
time=10967222
mem_heap_B=4192561
mem_heap_extra_B=728527
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=9
#-----------
time=12056354
mem_heap_B=4447025
mem_heap_extra_B=760335
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=10
#-----------
time=13709549
mem_heap_B=4833841
mem_heap_extra_B=826367
mem_stacks_B=0
heap_tree=detailed
n4: 4833841 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 3514368 0x11A764: allocate_block (stack.h:293)
n1: 3514368 0x11A764: push_block (stack.h:273)
n1: 3514368 0x11A764: push_block_for<float> (stack.h:268)
n1: 3514368 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 3514368 0x11A764: push<float> (stack.h:47)
n1: 3514368 0x11A764: operator() (operations.h:165)
n1: 3514368 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 3514368 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 3514368 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 1769472 0x12B0CA: operator() (std_function.h:591)
n1: 1769472 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1769472 0x12C605: generate (generators.cpp:117)
n1: 1769472 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 1769472 0x11806D: main (gp_test_4.cpp:79)
n1: 1744896 0x12BAC7: operator() (std_function.h:591)
n1: 1744896 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1744896 0x12C89A: generate (generators.cpp:102)
n1: 1744896 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1744896 0x11806D: main (gp_test_4.cpp:79)
n1: 1206912 0x12CD9D: allocate (new_allocator.h:137)
n1: 1206912 0x12CD9D: allocate (alloc_traits.h:464)
n1: 1206912 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 1206912 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 978240 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n1: 978240 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 978240 0x12C605: generate (generators.cpp:117)
n1: 978240 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 978240 0x11806D: main (gp_test_4.cpp:79)
n1: 228672 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n1: 228672 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 228672 0x12C89A: generate (generators.cpp:102)
n1: 228672 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 228672 0x11806D: main (gp_test_4.cpp:79)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 39857 in 33 places, all below massif's threshold (1.00%)
#-----------
snapshot=11
#-----------
time=14826573
mem_heap_B=4961841
mem_heap_extra_B=831183
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=12
#-----------
time=16204871
mem_heap_B=5198897
mem_heap_extra_B=839775
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=13
#-----------
time=17970000
mem_heap_B=5453233
mem_heap_extra_B=853599
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=14
#-----------
time=19151529
mem_heap_B=5607729
mem_heap_extra_B=871343
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=15
#-----------
time=20158137
mem_heap_B=5818865
mem_heap_extra_B=892783
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=16
#-----------
time=21802071
mem_heap_B=6093297
mem_heap_extra_B=933471
mem_stacks_B=0
heap_tree=detailed
n4: 6093297 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 3866624 0x11A764: allocate_block (stack.h:293)
n1: 3866624 0x11A764: push_block (stack.h:273)
n1: 3866624 0x11A764: push_block_for<float> (stack.h:268)
n1: 3866624 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 3866624 0x11A764: push<float> (stack.h:47)
n1: 3866624 0x11A764: operator() (operations.h:165)
n1: 3866624 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 3866624 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 3866624 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 1974272 0x12B0CA: operator() (std_function.h:591)
n1: 1974272 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1974272 0x12C605: generate (generators.cpp:117)
n1: 1974272 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 1974272 0x11806D: main (gp_test_4.cpp:79)
n1: 1892352 0x12BAC7: operator() (std_function.h:591)
n1: 1892352 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1892352 0x12C89A: generate (generators.cpp:102)
n1: 1892352 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1892352 0x11806D: main (gp_test_4.cpp:79)
n1: 2114112 0x12CD9D: allocate (new_allocator.h:137)
n1: 2114112 0x12CD9D: allocate (alloc_traits.h:464)
n1: 2114112 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 2114112 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 1844544 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n1: 1844544 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 1844544 0x12C605: generate (generators.cpp:117)
n1: 1844544 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 1844544 0x11806D: main (gp_test_4.cpp:79)
n1: 269568 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n1: 269568 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 269568 0x12C89A: generate (generators.cpp:102)
n1: 269568 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 269568 0x11806D: main (gp_test_4.cpp:79)
n1: 72704 0x49157B9: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30)
n1: 72704 0x40049CD: call_init (dl-init.c:74)
n1: 72704 0x40049CD: call_init (dl-init.c:26)
n1: 72704 0x4004AB3: _dl_init (dl-init.c:121)
n0: 72704 0x401AA6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
n0: 39857 in 33 places, all below massif's threshold (1.00%)
#-----------
snapshot=17
#-----------
time=23254581
mem_heap_B=6306289
mem_heap_extra_B=934559
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=18
#-----------
time=24265101
mem_heap_B=6449137
mem_heap_extra_B=938335
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=19
#-----------
time=25471598
mem_heap_B=6588937
mem_heap_extra_B=944903
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=20
#-----------
time=26860475
mem_heap_B=6900209
mem_heap_extra_B=949975
mem_stacks_B=0
heap_tree=peak
n3: 6900209 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 4087808 0x11A764: allocate_block (stack.h:293)
n1: 4087808 0x11A764: push_block (stack.h:273)
n1: 4087808 0x11A764: push_block_for<float> (stack.h:268)
n1: 4087808 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 4087808 0x11A764: push<float> (stack.h:47)
n1: 4087808 0x11A764: operator() (operations.h:165)
n1: 4087808 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 4087808 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 4087808 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 2097152 0x12B0CA: operator() (std_function.h:591)
n2: 2097152 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 2088960 0x12C605: generate (generators.cpp:117)
n1: 2088960 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2088960 0x11806D: main (gp_test_4.cpp:79)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n1: 1990656 0x12BAC7: operator() (std_function.h:591)
n2: 1990656 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1982464 0x12C89A: generate (generators.cpp:102)
n1: 1982464 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1982464 0x11806D: main (gp_test_4.cpp:79)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n1: 2691648 0x12CD9D: allocate (new_allocator.h:137)
n1: 2691648 0x12CD9D: allocate (alloc_traits.h:464)
n1: 2691648 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 2691648 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 2385216 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 2385216 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 2237760 0x12C605: generate (generators.cpp:117)
n1: 2237760 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2237760 0x11806D: main (gp_test_4.cpp:79)
n1: 147456 0x12C7C6: generate (generators.cpp:117)
n1: 147456 0x12C7C6: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:176)
n0: 147456 0x11806D: main (gp_test_4.cpp:79)
n1: 306432 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 306432 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 303360 0x12C89A: generate (generators.cpp:102)
n1: 303360 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 303360 0x11806D: main (gp_test_4.cpp:79)
n0: 3072 in 1 place, below massif's threshold (1.00%)
n0: 120753 in 35 places, all below massif's threshold (1.00%)
#-----------
snapshot=21
#-----------
time=27918044
mem_heap_B=6862810
mem_heap_extra_B=950886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=22
#-----------
time=29777992
mem_heap_B=6862554
mem_heap_extra_B=950878
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=23
#-----------
time=31309640
mem_heap_B=6861951
mem_heap_extra_B=950857
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=24
#-----------
time=32841883
mem_heap_B=6862493
mem_heap_extra_B=950867
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=25
#-----------
time=33762549
mem_heap_B=6862749
mem_heap_extra_B=950875
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=26
#-----------
time=35296218
mem_heap_B=6862294
mem_heap_extra_B=950890
mem_stacks_B=0
heap_tree=detailed
n3: 6862294 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 4096000 0x11A764: allocate_block (stack.h:293)
n1: 4096000 0x11A764: push_block (stack.h:273)
n1: 4096000 0x11A764: push_block_for<float> (stack.h:268)
n1: 4096000 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 4096000 0x11A764: push<float> (stack.h:47)
n1: 4096000 0x11A764: operator() (operations.h:165)
n1: 4096000 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 4096000 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 4096000 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 2097152 0x12B0CA: operator() (std_function.h:591)
n2: 2097152 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 2088960 0x12C605: generate (generators.cpp:117)
n1: 2088960 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2088960 0x11806D: main (gp_test_4.cpp:79)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n1: 1998848 0x12BAC7: operator() (std_function.h:591)
n2: 1998848 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1982464 0x12C89A: generate (generators.cpp:102)
n1: 1982464 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1982464 0x11806D: main (gp_test_4.cpp:79)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n1: 2645568 0x12CD9D: allocate (new_allocator.h:137)
n1: 2645568 0x12CD9D: allocate (alloc_traits.h:464)
n1: 2645568 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 2645568 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 2336064 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 2336064 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 2237760 0x12C605: generate (generators.cpp:117)
n1: 2237760 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2237760 0x11806D: main (gp_test_4.cpp:79)
n1: 98304 0x12C7C6: generate (generators.cpp:117)
n1: 98304 0x12C7C6: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:176)
n0: 98304 0x11806D: main (gp_test_4.cpp:79)
n1: 309504 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 309504 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 303360 0x12C89A: generate (generators.cpp:102)
n1: 303360 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 303360 0x11806D: main (gp_test_4.cpp:79)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 120726 in 45 places, all below massif's threshold (1.00%)
#-----------
snapshot=27
#-----------
time=36522023
mem_heap_B=6862870
mem_heap_extra_B=950890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=28
#-----------
time=37441205
mem_heap_B=6862294
mem_heap_extra_B=950890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=29
#-----------
time=38667531
mem_heap_B=6862396
mem_heap_extra_B=950884
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=30
#-----------
time=40200583
mem_heap_B=6862294
mem_heap_extra_B=950890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=31
#-----------
time=41426531
mem_heap_B=6862268
mem_heap_extra_B=950876
mem_stacks_B=0
heap_tree=detailed
n3: 6862268 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 4096000 0x11A764: allocate_block (stack.h:293)
n1: 4096000 0x11A764: push_block (stack.h:273)
n1: 4096000 0x11A764: push_block_for<float> (stack.h:268)
n1: 4096000 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 4096000 0x11A764: push<float> (stack.h:47)
n1: 4096000 0x11A764: operator() (operations.h:165)
n1: 4096000 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 4096000 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 4096000 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 2097152 0x12B0CA: operator() (std_function.h:591)
n2: 2097152 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 2088960 0x12C605: generate (generators.cpp:117)
n1: 2088960 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2088960 0x11806D: main (gp_test_4.cpp:79)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n1: 1998848 0x12BAC7: operator() (std_function.h:591)
n2: 1998848 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1982464 0x12C89A: generate (generators.cpp:102)
n1: 1982464 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1982464 0x11806D: main (gp_test_4.cpp:79)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n1: 2645568 0x12CD9D: allocate (new_allocator.h:137)
n1: 2645568 0x12CD9D: allocate (alloc_traits.h:464)
n1: 2645568 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 2645568 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 2336064 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 2336064 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 2237760 0x12C605: generate (generators.cpp:117)
n1: 2237760 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2237760 0x11806D: main (gp_test_4.cpp:79)
n1: 98304 0x12C7C6: generate (generators.cpp:117)
n1: 98304 0x12C7C6: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:176)
n0: 98304 0x11806D: main (gp_test_4.cpp:79)
n1: 309504 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 309504 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 303360 0x12C89A: generate (generators.cpp:102)
n1: 303360 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 303360 0x11806D: main (gp_test_4.cpp:79)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 120700 in 45 places, all below massif's threshold (1.00%)
#-----------
snapshot=32
#-----------
time=42651221
mem_heap_B=6878345
mem_heap_extra_B=952863
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=33
#-----------
time=43881991
mem_heap_B=6861980
mem_heap_extra_B=950852
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=34
#-----------
time=45694204
mem_heap_B=6862810
mem_heap_extra_B=950886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=35
#-----------
time=47509261
mem_heap_B=6862486
mem_heap_extra_B=950890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=36
#-----------
time=48421352
mem_heap_B=6876465
mem_heap_extra_B=951807
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=37
#-----------
time=50231190
mem_heap_B=6879505
mem_heap_extra_B=951743
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=38
#-----------
time=51591932
mem_heap_B=6891769
mem_heap_extra_B=951751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=39
#-----------
time=53410281
mem_heap_B=6870865
mem_heap_extra_B=950823
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=40
#-----------
time=55258242
mem_heap_B=6861920
mem_heap_extra_B=950848
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=41
#-----------
time=56615032
mem_heap_B=6862870
mem_heap_extra_B=950890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=42
#-----------
time=58446253
mem_heap_B=6879225
mem_heap_extra_B=951815
mem_stacks_B=0
heap_tree=detailed
n3: 6879225 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 4096000 0x11A764: allocate_block (stack.h:293)
n1: 4096000 0x11A764: push_block (stack.h:273)
n1: 4096000 0x11A764: push_block_for<float> (stack.h:268)
n1: 4096000 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 4096000 0x11A764: push<float> (stack.h:47)
n1: 4096000 0x11A764: operator() (operations.h:165)
n1: 4096000 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 4096000 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 4096000 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 2097152 0x12B0CA: operator() (std_function.h:591)
n2: 2097152 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 2088960 0x12C605: generate (generators.cpp:117)
n1: 2088960 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2088960 0x11806D: main (gp_test_4.cpp:79)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n1: 1998848 0x12BAC7: operator() (std_function.h:591)
n2: 1998848 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1982464 0x12C89A: generate (generators.cpp:102)
n1: 1982464 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1982464 0x11806D: main (gp_test_4.cpp:79)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n1: 2645568 0x12CD9D: allocate (new_allocator.h:137)
n1: 2645568 0x12CD9D: allocate (alloc_traits.h:464)
n1: 2645568 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 2645568 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 2336064 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 2336064 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 2237760 0x12C605: generate (generators.cpp:117)
n1: 2237760 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2237760 0x11806D: main (gp_test_4.cpp:79)
n1: 98304 0x12C7C6: generate (generators.cpp:117)
n1: 98304 0x12C7C6: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:176)
n0: 98304 0x11806D: main (gp_test_4.cpp:79)
n1: 309504 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 309504 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 303360 0x12C89A: generate (generators.cpp:102)
n1: 303360 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 303360 0x11806D: main (gp_test_4.cpp:79)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 137657 in 48 places, all below massif's threshold (1.00%)
#-----------
snapshot=43
#-----------
time=59352824
mem_heap_B=6891969
mem_heap_extra_B=951711
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=44
#-----------
time=60739585
mem_heap_B=6862041
mem_heap_extra_B=950863
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=45
#-----------
time=61690211
mem_heap_B=6894153
mem_heap_extra_B=951719
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=46
#-----------
time=63091415
mem_heap_B=6862234
mem_heap_extra_B=950886
mem_stacks_B=0
heap_tree=detailed
n3: 6862234 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 4096000 0x11A764: allocate_block (stack.h:293)
n1: 4096000 0x11A764: push_block (stack.h:273)
n1: 4096000 0x11A764: push_block_for<float> (stack.h:268)
n1: 4096000 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 4096000 0x11A764: push<float> (stack.h:47)
n1: 4096000 0x11A764: operator() (operations.h:165)
n1: 4096000 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 4096000 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 4096000 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 2097152 0x12B0CA: operator() (std_function.h:591)
n2: 2097152 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 2088960 0x12C605: generate (generators.cpp:117)
n1: 2088960 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2088960 0x11806D: main (gp_test_4.cpp:79)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n1: 1998848 0x12BAC7: operator() (std_function.h:591)
n2: 1998848 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1982464 0x12C89A: generate (generators.cpp:102)
n1: 1982464 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1982464 0x11806D: main (gp_test_4.cpp:79)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n1: 2645568 0x12CD9D: allocate (new_allocator.h:137)
n1: 2645568 0x12CD9D: allocate (alloc_traits.h:464)
n1: 2645568 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 2645568 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 2336064 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 2336064 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 2237760 0x12C605: generate (generators.cpp:117)
n1: 2237760 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2237760 0x11806D: main (gp_test_4.cpp:79)
n1: 98304 0x12C7C6: generate (generators.cpp:117)
n1: 98304 0x12C7C6: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:176)
n0: 98304 0x11806D: main (gp_test_4.cpp:79)
n1: 309504 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 309504 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 303360 0x12C89A: generate (generators.cpp:102)
n1: 303360 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 303360 0x11806D: main (gp_test_4.cpp:79)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 120666 in 48 places, all below massif's threshold (1.00%)
#-----------
snapshot=47
#-----------
time=64903718
mem_heap_B=6862870
mem_heap_extra_B=950890
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=48
#-----------
time=65852034
mem_heap_B=6901321
mem_heap_extra_B=951751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=49
#-----------
time=66826776
mem_heap_B=6896329
mem_heap_extra_B=951751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=50
#-----------
time=67725484
mem_heap_B=6896377
mem_heap_extra_B=951751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=51
#-----------
time=68693009
mem_heap_B=6904713
mem_heap_extra_B=951815
mem_stacks_B=0
heap_tree=detailed
n3: 6904713 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
n1: 4096000 0x11A764: allocate_block (stack.h:293)
n1: 4096000 0x11A764: push_block (stack.h:273)
n1: 4096000 0x11A764: push_block_for<float> (stack.h:268)
n1: 4096000 0x11A764: allocate_bytes<float> (stack.h:249)
n1: 4096000 0x11A764: push<float> (stack.h:47)
n1: 4096000 0x11A764: operator() (operations.h:165)
n1: 4096000 0x11A764: __invoke_impl<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:61)
n1: 4096000 0x11A764: __invoke_r<void, blt::gp::operation_t<float()>::make_callable<blt::gp::detail::empty_t>() const::<lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&> (invoke.h:111)
n2: 4096000 0x11A764: std::_Function_handler<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&), blt::gp::operation_t<float ()>::make_callable<blt::gp::detail::empty_t>() const::{lambda(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)#1}>::_M_invoke(std::_Any_data const&, void*&&, blt::gp::stack_allocator&, blt::gp::stack_allocator&) (std_function.h:290)
n1: 2097152 0x12B0CA: operator() (std_function.h:591)
n2: 2097152 0x12B0CA: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 2088960 0x12C605: generate (generators.cpp:117)
n1: 2088960 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2088960 0x11806D: main (gp_test_4.cpp:79)
n0: 8192 in 1 place, below massif's threshold (1.00%)
n1: 1998848 0x12BAC7: operator() (std_function.h:591)
n2: 1998848 0x12BAC7: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:72)
n1: 1982464 0x12C89A: generate (generators.cpp:102)
n1: 1982464 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 1982464 0x11806D: main (gp_test_4.cpp:79)
n0: 16384 in 1 place, below massif's threshold (1.00%)
n1: 2645568 0x12CD9D: allocate (new_allocator.h:137)
n1: 2645568 0x12CD9D: allocate (alloc_traits.h:464)
n1: 2645568 0x12CD9D: _M_allocate (stl_vector.h:378)
n2: 2645568 0x12CD9D: void std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> >::_M_realloc_insert<std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool>(__gnu_cxx::__normal_iterator<blt::gp::op_container_t*, std::vector<blt::gp::op_container_t, std::allocator<blt::gp::op_container_t> > >, std::function<void (void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void (blt::gp::stack_allocator&, blt::gp::stack_allocator&, long)>&, bool&&) (vector.tcc:453)
n1: 2336064 0x12B4D4: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 2336064 0x12B4D4: blt::gp::tree_t blt::gp::create_tree<blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::full_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 2237760 0x12C605: generate (generators.cpp:117)
n1: 2237760 0x12C605: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:167)
n0: 2237760 0x11806D: main (gp_test_4.cpp:79)
n1: 98304 0x12C7C6: generate (generators.cpp:117)
n1: 98304 0x12C7C6: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:176)
n0: 98304 0x11806D: main (gp_test_4.cpp:79)
n1: 309504 0x12BF10: emplace_back<std::function<void(void*, blt::gp::stack_allocator&, blt::gp::stack_allocator&)>&, std::function<void(blt::gp::stack_allocator&, blt::gp::stack_allocator&, long int)>&, bool> (vector.tcc:123)
n2: 309504 0x12BF10: blt::gp::tree_t blt::gp::create_tree<blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}>(blt::gp::grow_generator_t::generate(blt::gp::generator_arguments const&)::{lambda(blt::gp::gp_program&, std::stack<blt::gp::stack, std::deque<blt::gp::stack, std::allocator<blt::gp::stack> > >&, blt::gp::type const&, unsigned long)#1}&&, blt::gp::generator_arguments const&) (generators.cpp:64)
n1: 303360 0x12C89A: generate (generators.cpp:102)
n1: 303360 0x12C89A: blt::gp::ramped_half_initializer_t::generate(blt::gp::initializer_arguments const&) (generators.cpp:169)
n0: 303360 0x11806D: main (gp_test_4.cpp:79)
n0: 6144 in 1 place, below massif's threshold (1.00%)
n0: 163145 in 48 places, all below massif's threshold (1.00%)
#-----------
snapshot=52
#-----------
time=69577499
mem_heap_B=6895729
mem_heap_extra_B=951743
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=53
#-----------
time=70462948
mem_heap_B=6895369
mem_heap_extra_B=951751
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=54
#-----------
time=71339420
mem_heap_B=6862426
mem_heap_extra_B=950886
mem_stacks_B=0
heap_tree=empty
#-----------
snapshot=55
#-----------
time=72410598
mem_heap_B=6926865
mem_heap_extra_B=951807
mem_stacks_B=0
heap_tree=empty

View File

@ -90,7 +90,7 @@ namespace blt::gp
if (new_depth >= args.max_depth)
{
if (program.get_type_terminals(type.id()).empty())
tree_generator.push({program.select_non_terminal(type.id()), new_depth});
tree_generator.push({program.select_non_terminal_too_deep(type.id()), new_depth});
else
tree_generator.push({program.select_terminal(type.id()), new_depth});
return;
@ -108,7 +108,7 @@ namespace blt::gp
if (new_depth >= args.max_depth)
{
if (program.get_type_terminals(type.id()).empty())
tree_generator.push({program.select_non_terminal(type.id()), new_depth});
tree_generator.push({program.select_non_terminal_too_deep(type.id()), new_depth});
else
tree_generator.push({program.select_terminal(type.id()), new_depth});
return;
@ -159,16 +159,10 @@ namespace blt::gp
auto remainder = args.size % steps;
population_t pop;
BLT_INFO(steps);
BLT_INFO(per_step);
BLT_INFO(remainder);
for (auto depth : blt::range(args.min_depth, args.max_depth))
{
BLT_TRACE(depth);
for (auto i = 0ul; i < per_step; i++)
{
BLT_DEBUG(i);
if (args.program.choice())
pop.getIndividuals().push_back(full.generate({args.program, args.root_type, args.min_depth, depth}));
else

View File

@ -40,7 +40,7 @@ namespace blt::gp
operations_stack.pop_back();
if (operation.is_value)
{
operation.transfer(values_process, value_stack);
operation.transfer(values_process, value_stack, -1);
continue;
}
operation.func(context, values_process, value_stack);