Reduce some GC pressure that adds up in several unity workloads. #633

Merged
lucasmeijer merged 6 commits from master into master 2019-12-07 22:15:54 -06:00
lucasmeijer commented 2019-12-06 16:54:36 -06:00 (Migrated from github.com)
No description provided.
jbevain (Migrated from github.com) reviewed 2019-12-06 17:16:00 -06:00
jbevain (Migrated from github.com) commented 2019-12-06 17:16:00 -06:00

We already have one of those: it's used on line 99: Empty<T>.Array.

We already have one of those: it's used on line 99: `Empty<T>.Array`.
jbevain commented 2019-12-06 17:17:19 -06:00 (Migrated from github.com)

We just need to address the tidbit and that's good to go. Thanks for the contribution!

We just need to address the tidbit and that's good to go. Thanks for the contribution!
jbevain (Migrated from github.com) reviewed 2019-12-06 19:36:03 -06:00
jbevain (Migrated from github.com) commented 2019-12-06 19:36:02 -06:00

Is this necessary? The new Collection will be using Empty<TypeReference>.Array as it starts empty which is already allocated, and it will grow to 4, the default capacity, when needed.

Is this necessary? The new Collection will be using `Empty<TypeReference>.Array` as it starts empty which is already allocated, and it will grow to `4`, the default capacity, when needed.
lucasmeijer (Migrated from github.com) reviewed 2019-12-07 09:19:52 -06:00
lucasmeijer (Migrated from github.com) commented 2019-12-07 09:19:52 -06:00

oops, fixed.

oops, fixed.
lucasmeijer (Migrated from github.com) reviewed 2019-12-07 09:19:59 -06:00
lucasmeijer (Migrated from github.com) commented 2019-12-07 09:19:58 -06:00

you're right, reverted.

you're right, reverted.
jbevain commented 2019-12-07 22:16:03 -06:00 (Migrated from github.com)

Thanks again!

Thanks again!
SimonCropp commented 2019-12-08 17:01:38 -06:00 (Migrated from github.com)

@lucasmeijer do you have any indicative numbers on the perf improvements this results in?

@lucasmeijer do you have any indicative numbers on the perf improvements this results in?
lucasmeijer commented 2019-12-09 02:24:00 -06:00 (Migrated from github.com)

@SimonCropp no, the workload I was testing on has high varience, but on many dottrace traces Collection.Grow did show up, and the two causes were the sequencepoints and the generic instantiation arguments. This is definitely in the small fish category.

@SimonCropp no, the workload I was testing on has high varience, but on many dottrace traces Collection.Grow did show up, and the two causes were the sequencepoints and the generic instantiation arguments. This is definitely in the small fish category.
SimonCropp commented 2019-12-09 05:21:46 -06:00 (Migrated from github.com)

@lucasmeijer thanks for the clarification

@lucasmeijer thanks for the clarification
Sign in to join this conversation.
No reviewers
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
gh-jbevain/cecil!633
No description provided.