next up previous contents
Next: A quick reference to Up: Getting your new kernel Previous: Getting your new kernel   Contents

Details I doubt you care about

The executable that tests and times all input kernels and chooses a winner to be included in ATLAS is x<blas>srch. So, for instance, the search executable for AXPY can be built by typing make xaxpysrch in ATLAS/tune/blas/level1/<arch>.

Each BLAS's search routine creates a file res/<pre><blas>_SUMM. All summation file have the same format, which is:

<# of specific cases>
<ID> <ialpha> <ibeta> <incX> <incY> <rout> <auth>
<ID> <ialpha> <ibeta> <incX> <incY> <rout> <auth>

For instance, if you want to see what went into making your DAXPY, you'd

speedy. cat res/dAXPY_SUMM 
  3   2   2   1   1 axpy32_x1y1.c "R. Clint Whaley"
  1   2   2   0   0 axpy1_x0y0.c "R. Clint Whaley"

So, we see that the search has found two routines to build DAXPY out of. For incX = incY = 1, it will call axpy32_x1y1.c, and for all other cases, it will call axpy1_x0y0.c

R. Clint Whaley 2001-08-04