mlemanczyk
|
30c9a6cedc
|
RecyclableListExtensions.CopyTo fixed
|
2023-01-31 02:21:42 +01:00 |
|
mlemanczyk
|
2be660e7f0
|
Merge branch 'recyclable-block-list-added' of https://github.com/mlemanczyk/Recyclable.Collections into recyclable-block-list-added
|
2023-01-29 21:39:19 +01:00 |
|
mlemanczyk
|
c923383a71
|
Tiny code readability improvement
|
2023-01-29 21:39:16 +01:00 |
|
mlemanczyk
|
32fcc1ad04
|
Tiny code readability improvement
|
2023-01-29 21:36:30 +01:00 |
|
mlemanczyk
|
85fcf69c75
|
Local int vars converted to stackalloc'ed array for performance measures. Recyclable.Add benchmarks yield 0.42 - 0.45 vs List.Add
|
2023-01-29 21:34:14 +01:00 |
|
mlemanczyk
|
7f90fcc969
|
Tiny cleanup & readability improvement
|
2023-01-29 21:32:04 +01:00 |
|
mlemanczyk
|
b24adc6d93
|
Unnecessary local var removed.
|
2023-01-29 21:31:25 +01:00 |
|
mlemanczyk
|
650a63828f
|
Unnecessary _capacity assignment removed. It's already set by RecyclableList.Clear.
|
2023-01-29 21:30:15 +01:00 |
|
mlemanczyk
|
d07c77c906
|
Unnecessary field initializer removed
|
2023-01-29 21:29:11 +01:00 |
|
mlemanczyk
|
4f920cf89a
|
RecyclableList.Count redirected to _longCount for better performance
|
2023-01-29 21:26:22 +01:00 |
|
mlemanczyk
|
71544f8a47
|
Finished RecyclableList implementation of array pool overriding.
|
2023-01-29 18:05:27 +01:00 |
|
mlemanczyk
|
76b03345a4
|
Merge branch 'recyclable-block-list-added' of https://github.com/mlemanczyk/Recyclable.Collections into recyclable-block-list-added
|
2023-01-29 18:04:34 +01:00 |
|
mlemanczyk
|
ea29108731
|
Code cleanup - renaming blockSize => minBlockSize to better reflect the use.
|
2023-01-29 18:04:25 +01:00 |
|
mlemanczyk
|
463ad3a365
|
Code cleanup - renaming blockSize => minBlockSize to better reflect the use.
|
2023-01-29 14:50:47 +01:00 |
|
mlemanczyk
|
b01dc63165
|
Too early typecasting fixed.
|
2023-01-29 14:50:00 +01:00 |
|
mlemanczyk
|
326999c682
|
Performance improvement - reuse local var
|
2023-01-29 14:48:30 +01:00 |
|
mlemanczyk
|
a3335bf4e7
|
IF's inverted to match expected most frequent scenarios.
|
2023-01-29 14:20:59 +01:00 |
|
mlemanczyk
|
6270f79291
|
Switches converted back to IFs. They are IF's in IL anyway.
|
2023-01-29 14:19:59 +01:00 |
|
mlemanczyk
|
16acdff58a
|
Code readability - newArraySpan renamed => newMemoryBlocksSpan to match naming convention
|
2023-01-29 14:13:31 +01:00 |
|
mlemanczyk
|
a9012dc25d
|
Tiny cleanup. Declaration moved closer to usage.
|
2023-01-29 14:09:41 +01:00 |
|
mlemanczyk
|
96f4912cd3
|
Unnecessary case removed.
|
2023-01-29 14:07:34 +01:00 |
|
mlemanczyk
|
604ee06697
|
Merge branch 'recyclable-block-list-added' of https://github.com/mlemanczyk/Recyclable.Collections into recyclable-block-list-added
|
2023-01-28 23:54:55 +01:00 |
|
mlemanczyk
|
1b3c24bf74
|
Performance improvement - removed unneeded case. We never hit it in our benchmarks or tests. We'll use Memory<T> instead of Span<T> again, where applicable.
|
2023-01-28 23:54:53 +01:00 |
|
mlemanczyk
|
8b7c4407d5
|
Performance improvement - removed unneeded case. We never hit it in our benchmarks or tests.
|
2023-01-28 23:48:28 +01:00 |
|
mlemanczyk
|
06ef3d4fa4
|
Tiny cleanup
|
2023-01-28 23:19:26 +01:00 |
|
mlemanczyk
|
ea1d7d91ba
|
Solutions from RecyclableList.SetNewLength migrated to RecyclableList.SetNewLength.
|
2023-01-28 23:17:30 +01:00 |
|
mlemanczyk
|
3cfe0b7e79
|
We'll now use Span<T> instead of memory to eliminate 1 more local var.
|
2023-01-28 23:04:55 +01:00 |
|
mlemanczyk
|
3d6536beea
|
RecyclableList.Add marked for aggressive inlining for the best performance
|
2023-01-28 22:49:10 +01:00 |
|
mlemanczyk
|
6da67ede0d
|
RecyclableArrayList.Add marked for aggresive inlining for the best performance.
|
2023-01-28 22:40:48 +01:00 |
|
mlemanczyk
|
315acb5a68
|
Fixing condition for taking array from the pool
|
2023-01-28 15:02:50 +01:00 |
|
mlemanczyk
|
3ce5c52d54
|
Adjusting default block size to what .Net currently returns to avoid sub-optimal execution paths.
|
2023-01-28 14:32:19 +01:00 |
|
mlemanczyk
|
41c9eccd81
|
Adjusting const to ^2
|
2023-01-28 14:28:51 +01:00 |
|
mlemanczyk
|
d545d31aea
|
Merge branch 'recyclable-block-list-added' of https://github.com/mlemanczyk/Recyclable.Collections into recyclable-block-list-added
|
2023-01-28 14:19:56 +01:00 |
|
mlemanczyk
|
c72b18ad1d
|
Source code cleanup
|
2023-01-28 14:19:50 +01:00 |
|
mlemanczyk
|
10717c4bd4
|
Source code cleanup
|
2023-01-28 14:19:31 +01:00 |
|
mlemanczyk
|
680776f259
|
Performance improvement - Removing unneeded check. There is no case the new block count == current block count.
|
2023-01-28 14:18:34 +01:00 |
|
mlemanczyk
|
35ccb12efc
|
Performance improvements
|
2023-01-28 14:05:30 +01:00 |
|
mlemanczyk
|
b9b4c40cf9
|
Performance improvement. Removing unnecessary var.
|
2023-01-27 23:48:56 +01:00 |
|
mlemanczyk
|
d4440134c8
|
ref removed. I seem to get better & more stable benchmarks without it.
|
2023-01-27 23:32:28 +01:00 |
|
mlemanczyk
|
4fcf3f2362
|
public MemoryBlocks property added to allow more efficient use.
|
2023-01-27 22:33:14 +01:00 |
|
mlemanczyk
|
c283cb562c
|
Read.me extended & updated.
|
2023-01-27 22:31:42 +01:00 |
|
mlemanczyk
|
f9b2d82629
|
RecyclableList.Clear, .RemoveAt, .RemoveBlock, .SetNewLength, Dispose performance improvements.
|
2023-01-25 22:48:37 +01:00 |
|
mlemanczyk
|
032908bc7d
|
_lastBlockIndex & _lastItemIndex fields added for performance gain. Tiny cleanup.
|
2023-01-24 22:41:43 +01:00 |
|
mlemanczyk
|
9db490d8e9
|
Fixed problem with RecyclableList.RemoveAt returning to the pool always the same block
|
2023-01-24 02:10:26 +01:00 |
|
mlemanczyk
|
43c2c6f13a
|
if converted to switch for performance improvements.
|
2023-01-23 01:40:11 +01:00 |
|
mlemanczyk
|
f45b6aac98
|
RecyclableList performance optimizations.
|
2023-01-23 01:22:41 +01:00 |
|
mlemanczyk
|
30dfd97336
|
ReleaseBlock method removed.
|
2023-01-23 00:16:02 +01:00 |
|
mlemanczyk
|
64be78d1c6
|
Benchmark list updated for current runs.
|
2023-01-23 00:15:25 +01:00 |
|
mlemanczyk
|
cbac777e43
|
Using cleanup
|
2023-01-22 23:46:20 +01:00 |
|
mlemanczyk
|
1691f07fbe
|
RecyclableList.AddRange will only call EnsureCapacity, if there is a need for it. Small source code cleanup.
|
2023-01-22 23:45:54 +01:00 |
|