com.multicorebsp.bspedupack
Class BSPmv_driver

java.lang.Object
  extended by java.lang.Thread
      extended by com.multicorebsp.core.BSP_PROGRAM
          extended by com.multicorebsp.bspedupack.BSPmv_driver
All Implemented Interfaces:
java.lang.Runnable
Direct Known Subclasses:
BSPmv_fully_buffered, BSPmv_half_buffered, BSPmv_interleaved

public abstract class BSPmv_driver
extends com.multicorebsp.core.BSP_PROGRAM

Distributed-/shared-memory sparse matrix--vector driver application. Does all I/O and initialisation for either one of the available SpMV kernel codes; see below.

See Also:
BSPmv_fully_buffered, BSPmv_half_buffered,
By default, BSPmv_half_buffered is used. See the static main function for switching to other variants.

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
protected  com.multicorebsp.util.TS<com.multicorebsp.util.IntegerData> colglobal
           
protected  int[][] cols2global
           
protected  int[][] dxs
           
protected  int[][] dys
           
protected  int[] input_length
           
protected  com.multicorebsp.util.MMobject matrix
           
protected  int[] output_length
           
protected  int[][] oxs
           
protected  int[][] oys
           
protected  com.multicorebsp.util.TS<com.multicorebsp.util.IntegerData> rowglobal
           
protected  int[][] rows2global
           
protected  com.multicorebsp.bspedupack.BSPmv_driver.Settings settings
          Run-time settings
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
BSPmv_driver()
           
 
Method Summary
protected  void emm_init()
           
protected  void main_part()
           
static void main(java.lang.String[] args)
           
protected  void parallel_part()
           
protected  void test_on_mm_matrix()
           
protected  void test_on_random_matrix()
           
static int[][] varmat2raw(com.multicorebsp.util.VectorCollection<com.multicorebsp.util.IntegerData> varmat)
           
 
Methods inherited from class com.multicorebsp.core.BSP_PROGRAM
bsp_abort, bsp_begin, bsp_nprocs, bsp_pid, bsp_sync, getPid, run, waitForEnd
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

settings

protected com.multicorebsp.bspedupack.BSPmv_driver.Settings settings
Run-time settings


matrix

protected com.multicorebsp.util.MMobject matrix

rowglobal

protected com.multicorebsp.util.TS<com.multicorebsp.util.IntegerData> rowglobal

colglobal

protected com.multicorebsp.util.TS<com.multicorebsp.util.IntegerData> colglobal

rows2global

protected int[][] rows2global

cols2global

protected int[][] cols2global

oxs

protected int[][] oxs

oys

protected int[][] oys

dxs

protected int[][] dxs

dys

protected int[][] dys

input_length

protected int[] input_length

output_length

protected int[] output_length
Constructor Detail

BSPmv_driver

public BSPmv_driver()
Method Detail

main_part

protected void main_part()
                  throws java.lang.InterruptedException
Specified by:
main_part in class com.multicorebsp.core.BSP_PROGRAM
Throws:
java.lang.InterruptedException

test_on_random_matrix

protected void test_on_random_matrix()
                              throws java.lang.InterruptedException,
                                     java.lang.IllegalAccessException
Throws:
java.lang.InterruptedException
java.lang.IllegalAccessException

test_on_mm_matrix

protected void test_on_mm_matrix()
                          throws java.lang.InterruptedException,
                                 java.lang.IllegalAccessException
Throws:
java.lang.InterruptedException
java.lang.IllegalAccessException

emm_init

protected void emm_init()
                 throws java.lang.InterruptedException,
                        java.lang.IllegalAccessException
Throws:
java.lang.InterruptedException
java.lang.IllegalAccessException

parallel_part

protected void parallel_part()
                      throws java.lang.InterruptedException,
                             java.lang.IllegalAccessException
Specified by:
parallel_part in class com.multicorebsp.core.BSP_PROGRAM
Throws:
java.lang.InterruptedException
java.lang.IllegalAccessException

varmat2raw

public static int[][] varmat2raw(com.multicorebsp.util.VectorCollection<com.multicorebsp.util.IntegerData> varmat)

main

public static void main(java.lang.String[] args)
Parameters:
args -