| 
            Last change
 on this file since df56e25 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.