Thread overview
v0.2.1 of EMSI's containers library
Sep 01, 2015
Brian Schott
Sep 01, 2015
welkam
Sep 01, 2015
Per Nordlöw
Sep 01, 2015
Per Nordlöw
Sep 01, 2015
Brian Schott
Sep 01, 2015
Brian Schott
Sep 01, 2015
jmh530
Sep 01, 2015
Brian Schott
Sep 01, 2015
jmh530
Sep 12, 2015
Nordlöw
September 01, 2015
https://github.com/economicmodeling/containers

This containers library is built on top of Andrei's std.experimental.allocator. It's currently used by libraries internal to EMSI, as well as the open-source DCD project.

The containers are backed by malloc (Mallocator) by default, but you can specify any custom allocator that you want. The containers try to automatically call GC.addRange and GC.removeRange if they are templated on a reference type, so you should be able to safely store references to GC memory in these containers. If you want to disable this support, there is a template parameter for that.

Please report bugs on Github here: https://github.com/economicmodeling/containers/issues
September 01, 2015
thanks for sharing
September 01, 2015
On Tuesday, 1 September 2015 at 04:03:48 UTC, Brian Schott wrote:
> https://github.com/economicmodeling/containers
>
> This containers library is built on top of Andrei's std.experimental.allocator. It's currently used by libraries internal to EMSI, as well as the open-source DCD project.

Great!
September 01, 2015
On Tuesday, 1 September 2015 at 04:03:48 UTC, Brian Schott wrote:
> https://github.com/economicmodeling/containers

Could the test (plot) be extended to show insertion performance for different allocators :)
September 01, 2015
On Tuesday, 1 September 2015 at 04:03:48 UTC, Brian Schott wrote:
> https://github.com/economicmodeling/containers


The link to documentation doesn't seem to have anything on it.
September 01, 2015
On Tuesday, 1 September 2015 at 13:51:45 UTC, jmh530 wrote:
> The link to documentation doesn't seem to have anything on it.

The package name on the left is expandable.
September 01, 2015
On Tuesday, 1 September 2015 at 20:58:45 UTC, Brian Schott wrote:
> On Tuesday, 1 September 2015 at 13:51:45 UTC, jmh530 wrote:
>> The link to documentation doesn't seem to have anything on it.
>
> The package name on the left is expandable.

D'oh
September 01, 2015
On Tuesday, 1 September 2015 at 08:05:34 UTC, Per Nordlöw wrote:
> On Tuesday, 1 September 2015 at 04:03:48 UTC, Brian Schott wrote:
>> https://github.com/economicmodeling/containers
>
> Could the test (plot) be extended to show insertion performance for different allocators :)

I could do that but I won't because I'd rather work on other things.

I will tell you, however, that you can destroy the performance advantage these containers have by having the allocator create 1k blocks instead of 16 blocks. I think that this demonstrates that using std.experimental.allocator gives users several high-impact ways to optimize their programs.
September 01, 2015
On Tuesday, 1 September 2015 at 23:13:09 UTC, Brian Schott wrote:
> instead of 16 blocks

That should be "16k blocks".


September 12, 2015
On Tuesday, 1 September 2015 at 04:03:48 UTC, Brian Schott wrote:
> Please report bugs on Github here: https://github.com/economicmodeling/containers/issues

Move semantics anyone?

https://github.com/economicmodeling/containers/issues/25