Stxxl
1.4.0
|
#include <matrix_arithmetic.h>
Definition at line 998 of file matrix_arithmetic.h.
typedef swappable_block_matrix_type::block_scheduler_type stxxl::matrix_operations< ValueType, BlockSideLength >::block_scheduler_type |
Definition at line 1005 of file matrix_arithmetic.h.
typedef column_vector<ValueType> stxxl::matrix_operations< ValueType, BlockSideLength >::column_vector_type |
Definition at line 1009 of file matrix_arithmetic.h.
typedef block_scheduler_type::internal_block_type stxxl::matrix_operations< ValueType, BlockSideLength >::internal_block_type |
Definition at line 1007 of file matrix_arithmetic.h.
typedef row_vector<ValueType> stxxl::matrix_operations< ValueType, BlockSideLength >::row_vector_type |
Definition at line 1010 of file matrix_arithmetic.h.
typedef swappable_block_matrix_type::size_type stxxl::matrix_operations< ValueType, BlockSideLength >::size_type |
Definition at line 1008 of file matrix_arithmetic.h.
typedef swappable_block_matrix_type::swappable_block_identifier_type stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_identifier_type |
Definition at line 1006 of file matrix_arithmetic.h.
typedef swappable_block_matrix<ValueType, BlockSideLength> stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_type |
Definition at line 1004 of file matrix_arithmetic.h.
typedef column_vector_type::size_type stxxl::matrix_operations< ValueType, BlockSideLength >::vector_size_type |
Definition at line 1011 of file matrix_arithmetic.h.
static void stxxl::matrix_operations< ValueType, BlockSideLength >::choose_level_for_feedable_sw | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
Definition at line 1501 of file matrix_arithmetic.h.
References C(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::log2_ceil().
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::element_op | ( | swappable_block_matrix_type & | C, |
const swappable_block_matrix_type & | A, | ||
const swappable_block_matrix_type & | B, | ||
Op | op = Op() |
||
) | [inline, static] |
Definition at line 1050 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, C(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed().
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::element_op | ( | swappable_block_matrix_type & | C, |
const swappable_block_matrix_type & | A, | ||
Op | op = Op() |
||
) | [inline, static] |
Definition at line 1065 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, C(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed().
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::element_op | ( | swappable_block_matrix_type & | C, |
Op | op = Op() |
||
) | [inline, static] |
static void stxxl::matrix_operations< ValueType, BlockSideLength >::element_op_swappable_block | ( | const swappable_block_identifier_type | c, |
const bool | c_is_transposed, | ||
block_scheduler_type & | bs_c, | ||
const swappable_block_identifier_type | a, | ||
bool | a_is_transposed, | ||
block_scheduler_type & | bs_a, | ||
const swappable_block_identifier_type | b, | ||
bool | b_is_transposed, | ||
block_scheduler_type & | bs_b, | ||
Op | op = Op() |
||
) | [inline, static] |
Definition at line 1089 of file matrix_arithmetic.h.
References stxxl::block_scheduler< SwappableBlockType >::acquire(), stxxl::block_scheduler< SwappableBlockType >::deinitialize(), stxxl::block_scheduler< SwappableBlockType >::is_initialized(), stxxl::block_scheduler< SwappableBlockType >::is_simulating(), and stxxl::block_scheduler< SwappableBlockType >::release().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::element_op_swappable_block | ( | const swappable_block_identifier_type | c, |
const bool | c_is_transposed, | ||
block_scheduler_type & | bs_c, | ||
const swappable_block_identifier_type | a, | ||
const bool | a_is_transposed, | ||
block_scheduler_type & | bs_a, | ||
Op | op = Op() |
||
) | [inline, static] |
Definition at line 1167 of file matrix_arithmetic.h.
References stxxl::block_scheduler< SwappableBlockType >::acquire(), stxxl::block_scheduler< SwappableBlockType >::is_initialized(), stxxl::block_scheduler< SwappableBlockType >::is_simulating(), and stxxl::block_scheduler< SwappableBlockType >::release().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::element_op_swappable_block | ( | const swappable_block_identifier_type | c, |
block_scheduler_type & | bs_c, | ||
Op | op = Op() |
||
) | [inline, static] |
Definition at line 1206 of file matrix_arithmetic.h.
References stxxl::block_scheduler< SwappableBlockType >::acquire(), stxxl::block_scheduler< SwappableBlockType >::is_initialized(), stxxl::block_scheduler< SwappableBlockType >::is_simulating(), and stxxl::block_scheduler< SwappableBlockType >::release().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::element_op_twice_nontransposed | ( | swappable_block_matrix_type & | c1, |
swappable_block_matrix_type & | c2, | ||
const swappable_block_matrix_type & | a, | ||
Op | op = Op() |
||
) | [inline, static] |
static void stxxl::matrix_operations< ValueType, BlockSideLength >::matrix_col_vector_multiply_and_add_swappable_block | ( | const swappable_block_identifier_type | a, |
const bool | a_is_transposed, | ||
block_scheduler_type & | bs_a, | ||
const column_vector_type & | x, | ||
column_vector_type & | z, | ||
const vector_size_type | offset_x = 0 , |
||
const vector_size_type | offset_z = 0 |
||
) | [inline, static] |
Definition at line 1863 of file matrix_arithmetic.h.
References stxxl::block_scheduler< SwappableBlockType >::acquire(), stxxl::block_scheduler< SwappableBlockType >::is_initialized(), stxxl::block_scheduler< SwappableBlockType >::is_simulating(), stxxl::block_scheduler< SwappableBlockType >::release(), and stxxl::vector< Tp_, PgSz_, PgTp_, BlkSize_, AllocStr_, SzTp_ >::size().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::matrix_from_vectors_swappable_block | ( | swappable_block_identifier_type | a, |
const bool | a_is_transposed, | ||
block_scheduler_type & | bs_a, | ||
const column_vector_type & | l, | ||
const row_vector_type & | r, | ||
vector_size_type | offset_l, | ||
vector_size_type | offset_r | ||
) | [inline, static] |
Definition at line 1998 of file matrix_arithmetic.h.
References stxxl::block_scheduler< SwappableBlockType >::acquire(), stxxl::block_scheduler< SwappableBlockType >::is_simulating(), stxxl::block_scheduler< SwappableBlockType >::release(), and stxxl::vector< Tp_, PgSz_, PgTp_, BlkSize_, AllocStr_, SzTp_ >::size().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::matrix_row_vector_multiply_and_add_swappable_block | ( | const row_vector_type & | y, |
const swappable_block_identifier_type | a, | ||
const bool | a_is_transposed, | ||
block_scheduler_type & | bs_a, | ||
row_vector_type & | z, | ||
const vector_size_type | offset_y = 0 , |
||
const vector_size_type | offset_z = 0 |
||
) | [inline, static] |
Definition at line 1931 of file matrix_arithmetic.h.
References stxxl::block_scheduler< SwappableBlockType >::acquire(), stxxl::block_scheduler< SwappableBlockType >::is_initialized(), stxxl::block_scheduler< SwappableBlockType >::is_simulating(), stxxl::block_scheduler< SwappableBlockType >::release(), and stxxl::vector< Tp_, PgSz_, PgTp_, BlkSize_, AllocStr_, SzTp_ >::size().
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::multi_level_strassen_winograd_multiply_and_add | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
calculates C = A * B + C
Definition at line 1484 of file matrix_arithmetic.h.
References C(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::log2_ceil(), and stxxl::round_up_to_power_of_two().
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::multi_level_strassen_winograd_multiply_and_add_block_grained | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
calculates C = A * B + C
Definition at line 1395 of file matrix_arithmetic.h.
References C(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::log2_ceil(), stxxl::round_up_to_power_of_two(), STXXL_MATRIX_MULTI_LEVEL_STRASSEN_WINOGRAD_BASE_CASE, and STXXL_MATRIX_MULTI_LEVEL_STRASSEN_WINOGRAD_MAX_NUM_LEVELS.
static void stxxl::matrix_operations< ValueType, BlockSideLength >::multiply_and_add_swappable_block | ( | const swappable_block_identifier_type | a, |
const bool | a_is_transposed, | ||
block_scheduler_type & | bs_a, | ||
const swappable_block_identifier_type | b, | ||
const bool | b_is_transposed, | ||
block_scheduler_type & | bs_b, | ||
const swappable_block_identifier_type | c, | ||
const bool | c_is_transposed, | ||
block_scheduler_type & | bs_c | ||
) | [inline, static] |
Definition at line 1793 of file matrix_arithmetic.h.
References stxxl::block_scheduler< SwappableBlockType >::acquire(), stxxl::block_scheduler< SwappableBlockType >::is_initialized(), stxxl::block_scheduler< SwappableBlockType >::is_simulating(), and stxxl::block_scheduler< SwappableBlockType >::release().
static column_vector_type& stxxl::matrix_operations< ValueType, BlockSideLength >::naive_matrix_col_vector_multiply_and_add | ( | const swappable_block_matrix_type & | A, |
const column_vector_type & | x, | ||
column_vector_type & | z, | ||
const vector_size_type | offset_x = 0 , |
||
const vector_size_type | offset_z = 0 |
||
) | [inline, static] |
Definition at line 1852 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::naive_matrix_from_vectors | ( | swappable_block_matrix_type | A, |
const column_vector_type & | l, | ||
const row_vector_type & | r, | ||
vector_size_type | offset_l = 0 , |
||
vector_size_type | offset_r = 0 |
||
) | [inline, static] |
Definition at line 1989 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed().
static row_vector_type& stxxl::matrix_operations< ValueType, BlockSideLength >::naive_matrix_row_vector_multiply_and_add | ( | const row_vector_type & | y, |
const swappable_block_matrix_type & | A, | ||
row_vector_type & | z, | ||
const vector_size_type | offset_y = 0 , |
||
const vector_size_type | offset_z = 0 |
||
) | [inline, static] |
Definition at line 1920 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed().
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::naive_multiply_and_add | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
calculates C = A * B + C
Definition at line 1777 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, C(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::op_swappable_block_nontransposed | ( | swappable_block_matrix_type & | c, |
swappable_block_matrix_type & | a, | ||
Op | op, | ||
swappable_block_matrix_type & | b, | ||
size_type & | row, | ||
size_type & | col | ||
) | [inline, static] |
Definition at line 1311 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs.
static void stxxl::matrix_operations< ValueType, BlockSideLength >::op_swappable_block_nontransposed | ( | swappable_block_matrix_type & | c, |
Op | op, | ||
swappable_block_matrix_type & | a, | ||
size_type & | row, | ||
size_type & | col | ||
) | [inline, static] |
Definition at line 1322 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs.
static column_vector_type& stxxl::matrix_operations< ValueType, BlockSideLength >::recursive_matrix_col_vector_multiply_and_add | ( | const swappable_block_matrix_type & | A, |
const column_vector_type & | x, | ||
column_vector_type & | z, | ||
const vector_size_type | offset_x = 0 , |
||
const vector_size_type | offset_z = 0 |
||
) | [inline, static] |
calculates z = A * x
Definition at line 1828 of file matrix_arithmetic.h.
References stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dl, stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dr, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ul, and stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ur.
static void stxxl::matrix_operations< ValueType, BlockSideLength >::recursive_matrix_from_vectors | ( | swappable_block_matrix_type | A, |
const column_vector_type & | l, | ||
const row_vector_type & | r, | ||
vector_size_type | offset_l = 0 , |
||
vector_size_type | offset_r = 0 |
||
) | [inline, static] |
Definition at line 1966 of file matrix_arithmetic.h.
References stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dl, stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dr, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ul, and stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ur.
static row_vector_type& stxxl::matrix_operations< ValueType, BlockSideLength >::recursive_matrix_row_vector_multiply_and_add | ( | const row_vector_type & | y, |
const swappable_block_matrix_type & | A, | ||
row_vector_type & | z, | ||
const vector_size_type | offset_y = 0 , |
||
const vector_size_type | offset_z = 0 |
||
) | [inline, static] |
calculates z = y * A
Definition at line 1896 of file matrix_arithmetic.h.
References stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dl, stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dr, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ul, and stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ur.
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::recursive_multiply_and_add | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
calculates C = A * B + C
Definition at line 1747 of file matrix_arithmetic.h.
References C(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dl, stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::dr, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ul, and stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_approximative_quarterer::ur.
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::strassen_winograd_multiply | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
calculates C = A * B
Definition at line 1596 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, C(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::dl, stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::dr, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::set_zero(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::ul, and stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::ur.
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::strassen_winograd_multiply_and_add | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
calculates C = A * B + C
Definition at line 1696 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, C(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::dl, stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::dr, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::ul, and stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::ur.
static swappable_block_matrix_type& stxxl::matrix_operations< ValueType, BlockSideLength >::strassen_winograd_multiply_and_add_interleaved | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
calculates C = A * B + C
Definition at line 1645 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, C(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::dl, stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::dr, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::is_transposed(), stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::ul, and stxxl::matrix_operations< ValueType, BlockSideLength >::swappable_block_matrix_padding_quarterer::ur.
static void stxxl::matrix_operations< ValueType, BlockSideLength >::strassen_winograd_postaddition | ( | swappable_block_matrix_type & | c11, |
swappable_block_matrix_type & | c12, | ||
swappable_block_matrix_type & | c21, | ||
swappable_block_matrix_type & | c22, | ||
swappable_block_matrix_type & | p1, | ||
swappable_block_matrix_type & | p3, | ||
swappable_block_matrix_type & | p5 | ||
) | [inline, static] |
Definition at line 1271 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::strassen_winograd_preaddition_a | ( | swappable_block_matrix_type & | a11, |
swappable_block_matrix_type & | a12, | ||
swappable_block_matrix_type & | a21, | ||
swappable_block_matrix_type & | a22, | ||
swappable_block_matrix_type & | s1, | ||
swappable_block_matrix_type & | s2, | ||
swappable_block_matrix_type & | s3, | ||
swappable_block_matrix_type & | s4 | ||
) | [inline, static] |
Definition at line 1231 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::strassen_winograd_preaddition_b | ( | swappable_block_matrix_type & | b11, |
swappable_block_matrix_type & | b12, | ||
swappable_block_matrix_type & | b21, | ||
swappable_block_matrix_type & | b22, | ||
swappable_block_matrix_type & | t1, | ||
swappable_block_matrix_type & | t2, | ||
swappable_block_matrix_type & | t3, | ||
swappable_block_matrix_type & | t4 | ||
) | [inline, static] |
Definition at line 1251 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), and stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::use_feedable_sw | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
Definition at line 1529 of file matrix_arithmetic.h.
References stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::begin_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::begin_reading_block(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_feeding_block(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::end_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::end_reading_block(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::feed_and_add_element(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::get_height_in_blocks(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::get_width_in_blocks(), stxxl::feedable_strassen_winograd< ValueType, BlockSideLength, Level, AExists, BExists >::read_element(), and stxxl::matrix_to_quadtree< ValueType, BlockSideLength, Level >::read_element().
static void stxxl::matrix_operations< ValueType, BlockSideLength >::use_feedable_sw_block_grained | ( | const swappable_block_matrix_type & | A, |
const swappable_block_matrix_type & | B, | ||
swappable_block_matrix_type & | C | ||
) | [inline, static] |
Definition at line 1445 of file matrix_arithmetic.h.
References stxxl::swappable_block_matrix< ValueType, BlockSideLength >::bs, stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_height(), stxxl::matrix_to_quadtree_block_grained< ValueType, BlockSideLength, Level, Granularity >::get_height(), stxxl::swappable_block_matrix< ValueType, BlockSideLength >::get_width(), and stxxl::matrix_to_quadtree_block_grained< ValueType, BlockSideLength, Level, Granularity >::get_width().
const int_type stxxl::matrix_operations< ValueType, BlockSideLength >::strassen_winograd_base_case_size = 3 [static] |
Definition at line 1002 of file matrix_arithmetic.h.