Recyclable.Collections benchmarks adjusted to be closer to real use-cases. Initialization with predefined capacity removed.

This commit is contained in:
mlemanczyk committed 2023-07-15 14:42:35 +02:00
1 parent 484c46470c
commit 38f53fc8f3
4 files changed
+20 -18

No files matched your search

@@ -7,28 +7,28 @@ namespace Recyclable.Collections.Benchmarks
public void List_AddRangeWhenSourceIsArray()
{
var data = TestObjects;
var list = new List<long>(TestObjectCount);
var list = new List<long>();
list.AddRange(data);
}
public void PooledList_AddRangeWhenSourceIsArray()
{
var data = TestObjects;
using var list = new PooledList<long>(capacity: TestObjectCount, ClearMode.Auto);
using var list = new PooledList<long>(ClearMode.Auto);
list.AddRange(data);
}
public void RecyclableList_AddRangeWhenSourceIsArray()
{
var data = TestObjects;
using var list = new RecyclableList<long>(TestObjectCount);
using var list = new RecyclableList<long>();
list.AddRange(data);
}
public void RecyclableLongList_AddRangeWhenSourceIsArray()
{
var data = TestObjects;
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize, expectedItemsCount: TestObjectCount);
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize);
list.AddRange(data);
}
}
@@ -7,28 +7,28 @@ namespace Recyclable.Collections.Benchmarks
public void List_AddRangeWhenSourceIsIEnumerable()
{
var data = TestObjectsAsIEnumerable;
var list = new List<long>(TestObjectCount);
var list = new List<long>();
list.AddRange(data);
}
public void PooledList_AddRangeWhenSourceIsIEnumerable()
{
var data = TestObjectsAsIEnumerable;
using var list = new PooledList<long>(capacity: TestObjectCount, ClearMode.Auto);
using var list = new PooledList<long>(ClearMode.Auto);
list.AddRange(data);
}
public void RecyclableList_AddRangeWhenSourceIsIEnumerable()
{
var data = TestObjectsAsIEnumerable;
using var list = new RecyclableList<long>(TestObjectCount);
using var list = new RecyclableList<long>();
list.AddRange(data);
}
public void RecyclableLongList_AddRangeWhenSourceIsIEnumerable()
{
var data = TestObjectsAsIEnumerable;
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize, expectedItemsCount: TestObjectCount);
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize);
list.AddRange(data);
}
}
@@ -7,34 +7,35 @@ namespace Recyclable.Collections.Benchmarks
public void Array_AddRangeWhenSourceIsIList()
{
var data = (IList<long>)TestObjectsAsRecyclableLongList;
data.CopyTo(TestObjects, 0);
var list = new long[TestObjectCount];
data.CopyTo(list, 0);
}
public void List_AddRangeWhenSourceIsIList()
{
var data = (IList<long>)TestObjectsAsRecyclableLongList;
var list = new List<long>(TestObjectCount);
var list = new List<long>();
list.AddRange(data);
}
public void PooledList_AddRangeWhenSourceIsIList()
{
var data = (IList<long>)TestObjectsAsRecyclableLongList;
using var list = new PooledList<long>(capacity: TestObjectCount, ClearMode.Auto);
using var list = new PooledList<long>(ClearMode.Auto);
list.AddRange(data);
}
public void RecyclableList_AddRangeWhenSourceIsIList()
{
var data = (IList<long>)TestObjectsAsRecyclableLongList;
using var list = new RecyclableList<long>(TestObjectCount);
using var list = new RecyclableList<long>();
list.AddRange(data);
}
public void RecyclableLongList_AddRangeWhenSourceIsIList()
{
var data = (IList<long>)TestObjectsAsRecyclableLongList;
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize, expectedItemsCount: TestObjectCount);
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize);
list.AddRange(data);
}
}
@@ -7,34 +7,35 @@ namespace Recyclable.Collections.Benchmarks
public void Array_AddRangeWhenSourceIsList()
{
var data = TestObjectsAsList;
data.CopyTo(TestObjects, 0);
var list = new long[TestObjectCount];
data.CopyTo(list, 0);
}
public void List_AddRangeWhenSourceIsList()
{
var data = TestObjectsAsList;
var list = new List<long>(TestObjectCount);
var list = new List<long>();
list.AddRange(data);
}
public void PooledList_AddRangeWhenSourceIsList()
{
var data = TestObjectsAsList;
using var list = new PooledList<long>(capacity: TestObjectCount, ClearMode.Auto);
using var list = new PooledList<long>(ClearMode.Auto);
list.AddRange(data);
}
public void RecyclableList_AddRangeWhenSourceIsList()
{
var data = TestObjectsAsList;
using var list = new RecyclableList<long>(TestObjectCount);
using var list = new RecyclableList<long>();
list.AddRange(data);
}
public void RecyclableLongList_AddRangeWhenSourceIsList()
{
var data = TestObjectsAsList;
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize, expectedItemsCount: TestObjectCount);
using var list = new RecyclableLongList<long>(minBlockSize: BlockSize);
list.AddRange(data);
}
}