Added default_init_allocator from http://stackoverflow.com/a/21028912…
…/273767 and adiosvec<T> type in helper::adiosType.h to be able to resize a vector without initialization. Changed BufferSTL and BP3/BP4/SST using adiosvec as well as in BP5 where vector
Release build: $ ./bin/PerfVector 1024 Size = 1073741824 std::vector = 0.145024 helper::adiosvec = 5.73e-06 Malloc = 2e-08 Debug Build: $ ./bin/PerfVector 1024 Size = 1073741824 std::vector = 0.145616 helper::adiosvec = 5.48551 Malloc = 9.16e-06
This whole thing is up for discussion. I don't remember right now where vector allocation was a measurable issue.
It is so slow in Debug mode, that these test take a minute to run. Engine.BP.BPBufferSizeTest.SyncDeferredIdenticalUsage.BP3.Serial Engine.BP.BPBufferSizeTest.SyncDeferredIdenticalUsage.BP4.Serial