org.ejml
Class EjmlParameters

java.lang.Object
  extended by org.ejml.EjmlParameters

public class EjmlParameters
extends Object

This is a list of parameters that are used across the code. To tune performance for a particular system change these values.

Author:
Peter Abeles

Nested Class Summary
static class EjmlParameters.MemoryUsage
           
 
Field Summary
static int BLOCK_SIZE
          Number of elements in a block.
static int BLOCK_WIDTH
           In modern computers there are high speed memory caches.
static int BLOCK_WIDTH_CHOL
           
static EjmlParameters.MemoryUsage MEMORY
          Used to adjust which algorithms are used.
static int MULT_COLUMN_SWITCH
          At what point does it switch from a small matrix multiply to the reorder version.
static int MULT_INNER_SWITCH
           
static int MULT_TRANAB_COLUMN_SWITCH
           
static int SWITCH_BLOCK64_CHOLESKY
           At which point should it switch to the block cholesky algorithm.
static int SWITCH_BLOCK64_QR
           
static int TRANSPOSE_SWITCH
           
 
Constructor Summary
EjmlParameters()
           
 
Method Summary
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MEMORY

public static EjmlParameters.MemoryUsage MEMORY
Used to adjust which algorithms are used. Often there is a trade off between memory usage and speed.


BLOCK_WIDTH

public static int BLOCK_WIDTH

In modern computers there are high speed memory caches. It is assumed that a square block with this width can be contained entirely in one of those caches. Settings this value too large can have a dramatic effect on performance in some situations. Setting it too low results in a less dramatic performance hit. The optimal value is dependent on the computer's memory architecture.


BLOCK_WIDTH_CHOL

public static int BLOCK_WIDTH_CHOL

BLOCK_SIZE

public static int BLOCK_SIZE
Number of elements in a block.


TRANSPOSE_SWITCH

public static int TRANSPOSE_SWITCH

MULT_COLUMN_SWITCH

public static int MULT_COLUMN_SWITCH
At what point does it switch from a small matrix multiply to the reorder version.


MULT_TRANAB_COLUMN_SWITCH

public static int MULT_TRANAB_COLUMN_SWITCH

MULT_INNER_SWITCH

public static int MULT_INNER_SWITCH

SWITCH_BLOCK64_CHOLESKY

public static int SWITCH_BLOCK64_CHOLESKY

At which point should it switch to the block cholesky algorithm.

In benchmarks the basic actually performed slightly better at 1000 but in JVM 1.6 it some times get stuck in a mode where the basic version was very slow in that case the block performed much better.


SWITCH_BLOCK64_QR

public static int SWITCH_BLOCK64_QR
Constructor Detail

EjmlParameters

public EjmlParameters()


Copyright © 2012. All Rights Reserved.