From 35a3a1f8ee10d2e4414f30204400526d48b52743 Mon Sep 17 00:00:00 2001 From: Florent Pruvost <florent.pruvost@inria.fr> Date: Thu, 22 Jan 2015 13:50:52 +0000 Subject: [PATCH] use an environnement variable instead of a fixed factor --- runtime/starpu/codelets/codelet_zgemm.c | 11 ++++++++--- runtime/starpu/codelets/codelet_ztrsm.c | 9 +++++++-- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/runtime/starpu/codelets/codelet_zgemm.c b/runtime/starpu/codelets/codelet_zgemm.c index 93d233524..1e3689f5f 100644 --- a/runtime/starpu/codelets/codelet_zgemm.c +++ b/runtime/starpu/codelets/codelet_zgemm.c @@ -54,11 +54,16 @@ void MORSE_TASK_zgemm(MORSE_option_t *options, int rank_changed=0; // force execution on the rank owning the largest data (tile) - // the numerical facto 10 should be an environnement variable - if ( sizeA > 10*sizeC ){ + int threshold; + char* env = getenv("MORSE_COMM_FACTOR_THRESHOLD"); + if (env != NULL) + threshold = (unsigned)atoi(env); + else + threshold = 10; + if ( sizeA > threshold*sizeC ){ execution_rank = A->get_rankof( A, Am, An ); rank_changed = 1; - }else if( sizeB > 10*sizeC ){ + }else if( sizeB > threshold*sizeC ){ execution_rank = B->get_rankof( B, Bm, Bn ); rank_changed = 1; } diff --git a/runtime/starpu/codelets/codelet_ztrsm.c b/runtime/starpu/codelets/codelet_ztrsm.c index 2ed832347..a920ce770 100644 --- a/runtime/starpu/codelets/codelet_ztrsm.c +++ b/runtime/starpu/codelets/codelet_ztrsm.c @@ -52,8 +52,13 @@ void MORSE_TASK_ztrsm(MORSE_option_t *options, int rank_changed=0; // force execution on the rank owning the largest data (tile) - // the numerical facto 10 should be an environnement variable - if ( sizeA > 10*sizeB ){ + int threshold; + char* env = getenv("MORSE_COMM_FACTOR_THRESHOLD"); + if (env != NULL) + threshold = (unsigned)atoi(env); + else + threshold = 10; + if ( sizeA > threshold*sizeB ){ execution_rank = A->get_rankof( A, Am, An ); rank_changed=1; } -- GitLab