Name: cpublaster Author: Catalin(ux) M. BOIE - catab at embedromix dot ro Start date: 2012-02-10 Description: Because of cpu aliasing problems, there are a lot of problems with stalled pipelines. A famous problem is at: http://stackoverflow.com/questions/8547778/why-is-one-loop-so-much-slower-than-two-loops This library tries to intercept the memory allocations to skew the allocations to different offsets, so the performance penalty to disappear. Applications that process a lot of data in big memory allocations will benefit from this application without recompiling the sources (if available). License: GPLv3 How it works: cpublaster is a shared object that hooks memory allocation functions and add an small offset to them. Fine tuning can be done using environment variables described below. Examples: 0. Output debug stuff in a log file (for debugging): export CPUBLASTER_VERBOSE=999 export CPUBLASTER_LOG="xxx.log" your_program_here 1. Force bind to 127.0.0.1, port 33, verbose operations: export CPUBLASTER_VERBOSE=999 export CPUBLASTER_LOG="xxx.log" export CPUBLASTER_MINIM_ALLOCATION=128 export CPUBLASTER_INCREMENT=128 your_program_here Installation: - ./configure - make - make install