Last change
on this file since 94aa202 was
08ed947,
checked in by Michael Brooks <mlbrooks@…>, 3 years ago
|
Roll up of string changes for performance testing/improvement, and a couple API features supporting them.
String API changes:
Defining a tuning knob to control the heap growth policy (relapaces former 10% hardcode, downgraded to a default)
Implementing findFrom (allowing find-non-first); leaving find as find-first.
String implementation perf improvements:
Calling C-malloc directly instead of via CFA-alloc.
Replacings loops that copy with memmove calls.
Replacings loops that search for a value with memchr calls.
String perf testing realized:
Makefile supporting several prog-*.cfa, chosen by OPERATION value (implies prog.cfa changes to support the adjusted protocol)
Adjusting the starter/accumulater declarations in PEQ and PTA to behave consistently in cfa v cpp.
Adding tests: allocation, find, normalize, pass-by-val, pass-by-x.
Adding helper shell scripts for: generating flame graphs, collecting/crunching allocation stats using Mubeen's malloc wrappers
|
-
Property mode set to
100644
|
File size:
516 bytes
|
Line | |
---|
1 | corpus-100-* are for general-purpose mixed tests |
---|
2 | corpus-1-* are single-item corpori, for running exact-length variations (made by hand with a clipboard) |
---|
3 | corpusx-* are purposed for getting started with the "normalize" test, using randomness to have rare -s, yet awkwardly avoiding SSO with min-length 16 |
---|
4 | x means 1% -s |
---|
5 | |
---|
6 | IIRC, ./make-corpus 100 20 DROVE corpus-100-20-1.txt |
---|
7 | ergo, ./make-corpus 100 5 15 0.01 IS FOR corpusx-100-20-1.txt |
---|
8 | |
---|
9 | ./make-corpus 100 5 15 0.01 > corpusx-100-20-1.txt |
---|
Note: See
TracBrowser
for help on using the repository browser.