Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use FPC algorithm for UTF8List capacity grow #187

Closed
wants to merge 1 commit into from

Conversation

Projects
None yet
2 participants
@pavelmash
Copy link
Collaborator

commented Apr 13, 2019

My application widely use TRawUTF8List to store name-value pairs and minimum capacity of 256 is seams to be too large.

Both C++ vector and FPC TFPList use more flexible algorithms. I'm copy-paste FPC algorithm and test it with my real use-case (/usr/bin/time myApp)

Current algo:

Maximum resident set size (kbytes): 278840
Minor (reclaiming a frame) page faults: 81035

FPC algo:

Maximum resident set size (kbytes): 274920
Minor (reclaiming a frame) page faults: 79774

Memory allocation is better with FPC algorithm.
Benchmark performance is also increased.

@synopse

This comment has been minimized.

Copy link
Owner

commented Apr 15, 2019

I guess a84dfa7 is a more systematic way of applying such a better array growing stategy.

@pavelmash

This comment has been minimized.

Copy link
Collaborator Author

commented Apr 15, 2019

For sure. Thanks

@pavelmash pavelmash closed this Apr 15, 2019

@pavelmash pavelmash deleted the perf/listCapacityGrow branch Apr 15, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.