| Last change
 on this file since afb3d68 was             08ed947, checked in by Michael Brooks <mlbrooks@…>, 4 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                 100755 | 
        
          | File size:
            415 bytes | 
      
      
| Line |  | 
|---|
| 1 |  | 
|---|
| 2 | set SIZES='20 50 100 200 500' | 
|---|
| 3 | set CFA_EXPANSIONS='0.02 0.05 0.1 0.2 0.5 0.9' | 
|---|
| 4 |  | 
|---|
| 5 | for size in $SIZES ; do | 
|---|
| 6 | echo a | 
|---|
| 7 | for expansion in $CFA_EXPANSIONS ; do | 
|---|
| 8 | echo LD_PRELOAD=~/plg2/mubeen-stat-shim/malloc/mallocWrappers.so ~/plg2/cfa2/cfa-cc/tests/zombies/string-perf/perfexp-cfa-pall-ll-share-na 1000 1.006 $expansion 1 caaaat ~/plg2/cfa2/cfa-cc/tests/zombies/string-perf/corpus-1-$size-1.txt | 
|---|
| 9 | done ; | 
|---|
| 10 | done | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.