From e97393e9cd7f338526c740bc34a2b8b2c13a04c8 Mon Sep 17 00:00:00 2001 From: TeachRaccooon Date: Thu, 6 Feb 2025 18:48:24 -0800 Subject: [PATCH] Update --- .../bench_BQRRP/BQRRP_runtime_breakdown.cc | 6 ++--- .../BQRRP_speed_comparisons_block_size.cc | 6 ++--- .../bench_BQRRP/BQRRP_subroutines_speed.cc | 22 +++++++++++-------- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/benchmark/bench_BQRRP/BQRRP_runtime_breakdown.cc b/benchmark/bench_BQRRP/BQRRP_runtime_breakdown.cc index 8cca00ae..db7074fa 100644 --- a/benchmark/bench_BQRRP/BQRRP_runtime_breakdown.cc +++ b/benchmark/bench_BQRRP/BQRRP_runtime_breakdown.cc @@ -120,8 +120,8 @@ int main(int argc, char *argv[]) { int64_t m = std::stol(size); int64_t n = std::stol(size); double d_factor = 1.0; - std::vector b_sz = {25, 50, 125, 250, 500, 1000, 2000, 4000, 8000}; - //std::vector b_sz = {32, 64, 128, 256, 512, 1024, 2048, 4096, 8192}; + std::vector b_sz = {250, 500, 1000, 2000, 4000, 8000}; + //std::vector b_sz = {256, 512, 1024, 2048, 4096, 8192}; auto state = RandBLAS::RNGState(); auto state_constant = state; // Timing results @@ -154,7 +154,7 @@ int main(int argc, char *argv[]) { file.flush(); int i = 0; - for (;i <= b_sz.size(); ++i) { + for (;i < b_sz.size(); ++i) { call_all_algs(m_info, numruns, b_sz[i], qr_tall, all_data, state_constant, output_filename); } } diff --git a/benchmark/bench_BQRRP/BQRRP_speed_comparisons_block_size.cc b/benchmark/bench_BQRRP/BQRRP_speed_comparisons_block_size.cc index 029850ef..9944db77 100644 --- a/benchmark/bench_BQRRP/BQRRP_speed_comparisons_block_size.cc +++ b/benchmark/bench_BQRRP/BQRRP_speed_comparisons_block_size.cc @@ -198,8 +198,8 @@ int main(int argc, char *argv[]) { int64_t m = std::stol(size); int64_t n = std::stol(size); double d_factor = 1.0; - std::vector b_sz = {25, 50, 125, 250, 500, 1000, 2000, 4000, 8000}; - //std::vector b_sz = {32, 64, 128, 256, 512, 1024, 2048, 4096, 8192}; + std::vector b_sz = {250, 500, 1000, 2000, 4000, 8000}; + //std::vector b_sz = {256, 512, 1024, 2048, 4096, 8192}; auto state = RandBLAS::RNGState(); auto state_constant = state; // Timing results @@ -231,7 +231,7 @@ int main(int argc, char *argv[]) { file.flush(); int i = 0; - for (;i <= b_sz.size(); ++i) { + for (;i < b_sz.size(); ++i) { call_all_algs(m_info, numruns, b_sz[i], all_data, state_constant, output_filename); } } diff --git a/benchmark/bench_BQRRP/BQRRP_subroutines_speed.cc b/benchmark/bench_BQRRP/BQRRP_subroutines_speed.cc index c03c6af3..c3c88127 100644 --- a/benchmark/bench_BQRRP/BQRRP_subroutines_speed.cc +++ b/benchmark/bench_BQRRP/BQRRP_subroutines_speed.cc @@ -308,7 +308,7 @@ static void call_apply_q( std::string output_filename) { auto m = all_data.row; - std::vector nb_gemqrt = {25, 50, 125, 250, 500, 1000, 2000, 4000, 8000}; + std::vector nb_gemqrt = {250, 500, 1000, 2000, 4000, 8000}; // timing vars long dur_ormqr = 0; @@ -323,6 +323,10 @@ static void call_apply_q( for(k = 0; k <= nb_gemqrt.size(); ++k) { printf("Apply Q iteration %d; n==%d start.\n", i, n); nb = nb_gemqrt[k]; + printf("%d\n", nb); + printf("%d\n", m); + printf("%d\n", m - n); + printf("%d\n", n); // Performing CholQR blas::syrk(Layout::ColMajor, Uplo::Upper, Op::Trans, n, m, (T) 1.0, all_data.A.data(), m, (T) 0.0, all_data.R.data(), n); lapack::potrf(Uplo::Upper, n, all_data.R.data(), n); @@ -366,8 +370,8 @@ int main(int argc, char *argv[]) { int64_t i = 0; // Declare parameters int64_t m = std::stol(size); - std::vector n = {25, 50, 125, 250, 500, 1000, 2000, 4000, 8000}; - //std::vector b_sz = {32, 64, 128, 256, 512, 1024, 2048, 4096, 8192}; + std::vector n = {250, 500, 1000, 2000, 4000, 8000}; + //std::vector b_sz = {256, 512, 1024, 2048, 4096, 8192}; int64_t nb_start = 256; auto state = RandBLAS::RNGState(); @@ -405,13 +409,13 @@ int main(int argc, char *argv[]) { "\n"; file.flush(); - for (i = n.front(); i <= n.back(); i *= 2) - call_wide_qrcp(m_info, numruns, i, all_data, state, output_filename); + for (i = 0; i <= n.size(); ++i) + call_wide_qrcp(m_info, numruns, n[i], all_data, state, output_filename); - for (i = n.front(); i <= n.back(); i *= 2) - call_tsqr(m_info, numruns, i, nb_start, all_data, state, output_filename); + for (i = 0; i <= n.size(); ++i) + call_tsqr(m_info, numruns, n[i], nb_start, all_data, state, output_filename); - for (i = n.front(); i <= n.back(); i *= 2) - call_apply_q(m_info, numruns, i, nb_start, all_data, state, state_B, output_filename); + for (i = 0; i <= n.size(); ++i) + call_apply_q(m_info, numruns, n[i], nb_start, all_data, state, state_B, output_filename); } #endif