hint.h

Go to the documentation of this file.
00001 
00014 #if !defined(INC_OSKI_HINT_H) && !defined(OSKI_UNBIND)
00015 
00016 #define INC_OSKI_HINT_H
00017 
00018 #include <oski/common.h>
00019 #include <oski/matrix.h>
00020 
00021 #if defined(DO_NAME_MANGLING)
00022 
00024 #define oski_SetHintMatMult  \
00025         MANGLE_(oski_SetHintMatMult)
00026 #define oski_SetHintMatTrisolve  \
00027         MANGLE_(oski_SetHintMatTrisolve)
00028 #define oski_SetHintMatMultAndMatTransMult  \
00029         MANGLE_(oski_SetHintMatMultAndMatTransMult)
00030 #define oski_SetHintMatTransMatMult \
00031         MANGLE_(oski_SetHintMatTransMatMult)
00032 #define oski_SetHintMatPowMult \
00033         MANGLE_(oski_SetHintMatPowMult)
00034 
00035 #define oski_SetHint   MANGLE_(oski_SetHint)
00036 
00037 #endif
00038 
00039 /* ------------------------------------------------------ */
00040 
00046 
00050 int oski_SetHint (oski_matrix_t A_tunable, oski_tunehint_t hint, ...);
00051 
00055 int oski_SetHintMatMult (oski_matrix_t A_tunable, oski_matop_t opA,
00056              oski_value_t alpha, const oski_vecview_t x_view,
00057              oski_value_t beta, const oski_vecview_t y_view,
00058              int num_calls);
00059 
00063 int oski_SetHintMatTrisolve (oski_matrix_t T_tunable,
00064                  oski_matop_t opT,
00065                  oski_value_t alpha, const oski_vecview_t x_view,
00066                  int num_calls);
00067 
00071 int oski_SetHintMatTransMatMult (oski_matrix_t A_tunable,
00072                  oski_ataop_t opA,
00073                  oski_value_t alpha,
00074                  const oski_vecview_t x_view,
00075                  oski_value_t beta,
00076                  const oski_vecview_t y_view,
00077                  const oski_vecview_t t_view, int num_calls);
00078 
00083 int oski_SetHintMatMultAndMatTransMult (oski_matrix_t A_tunable,
00084                     oski_value_t alpha,
00085                     const oski_vecview_t x_view,
00086                     oski_value_t beta,
00087                     const oski_vecview_t y_view,
00088                     oski_matop_t opA, oski_value_t omega,
00089                     const oski_vecview_t w_view,
00090                     oski_value_t zeta,
00091                     const oski_vecview_t z_view,
00092                     int num_calls);
00093 
00097 int oski_SetHintMatPowMult (oski_matrix_t A_tunable,
00098                 oski_matop_t opA, int power,
00099                 oski_value_t alpha, const oski_vecview_t x_view,
00100                 oski_value_t beta, const oski_vecview_t y_view,
00101                 const oski_vecview_t T_view, int num_calls);
00104 #endif /* !defined(INC_OSKI_HINT_H) */
00105 
00106 #if defined(OSKI_UNBIND)
00107 #  include <oski/matrix.h>
00108 #  undef INC_OSKI_HINT_H
00109 #  undef oski_SetHintMatMult
00110 #  undef oski_SetHintMatTrisolve
00111 #  undef oski_SetHintMatMultAndMatTransMult
00112 #  undef oski_SetHintMatTransMatMult
00113 #  undef oski_SetHintMatPowMult
00114 #  undef oski_SetHint
00115 #endif
00116 
00117 /* eof */

Generated on Wed Sep 19 16:41:18 2007 for BeBOP Optimized Sparse Kernel Interface Library by  doxygen 1.4.6