diff --git a/runtime/parsec/CMakeLists.txt b/runtime/parsec/CMakeLists.txt index 9ff06bd0b2a4c9d106b028bd3299bcad5c798197..7360137bd8d9e23c2ea32ea17227cae67f8188b1 100644 --- a/runtime/parsec/CMakeLists.txt +++ b/runtime/parsec/CMakeLists.txt @@ -85,7 +85,6 @@ set(RUNTIME_COMMON control/runtime_descriptor.c control/runtime_options.c control/runtime_profiling.c - codelets/codelet_dataflush.c ${RUNTIME_COMMON_GENERATED} ) diff --git a/runtime/parsec/control/runtime_async.c b/runtime/parsec/control/runtime_async.c index faa41447a25824a15dbce315f4dd30ddc2ab2e40..67661a475bbeb8030327ba6ef82945ebc99f472a 100644 --- a/runtime/parsec/control/runtime_async.c +++ b/runtime/parsec/control/runtime_async.c @@ -25,7 +25,7 @@ int RUNTIME_sequence_create( MORSE_context_t *morse, parsec_context_t *parsec = (parsec_context_t *)morse->schedopt; parsec_taskpool_t *parsec_dtd_tp = parsec_dtd_taskpool_new(); - parsec_enqueue(parsec, (parsec_taskpool_t *) parsec_dtd_tp); + parsec_enqueue( parsec, (parsec_taskpool_t *)parsec_dtd_tp ); sequence->schedopt = parsec_dtd_tp; parsec_context_start(parsec); @@ -47,10 +47,9 @@ int RUNTIME_sequence_destroy( MORSE_context_t *morse, // TODO: switch to a partial wait //parsec_dtd_taskpool_wait(parsec, parsec_dtd_tp); - parsec_context_wait(parsec); - - parsec_taskpool_free(parsec_dtd_tp); + parsec_context_wait( parsec ); + parsec_taskpool_free( parsec_dtd_tp ); sequence->schedopt = NULL; return MORSE_SUCCESS; } @@ -65,8 +64,7 @@ int RUNTIME_sequence_wait( MORSE_context_t *morse, parsec_taskpool_t *parsec_dtd_tp = (parsec_taskpool_t *) sequence->schedopt; assert( parsec_dtd_tp ); - - parsec_dtd_taskpool_wait(parsec, parsec_dtd_tp); + parsec_dtd_taskpool_wait( parsec, parsec_dtd_tp ); return MORSE_SUCCESS; } diff --git a/runtime/parsec/control/runtime_descriptor.c b/runtime/parsec/control/runtime_descriptor.c index 0af56f510bf44edbe540675efda34171d2906925..889391269769fe0163ed9ed2d4305f0a4fd6aa27 100644 --- a/runtime/parsec/control/runtime_descriptor.c +++ b/runtime/parsec/control/runtime_descriptor.c @@ -308,25 +308,26 @@ int RUNTIME_desc_release( const MORSE_desc_t *desc ) } /******************************************************************************* - * Get data on cpu - Synchronous call + * Flush cached data **/ -int RUNTIME_desc_getoncpu( const MORSE_desc_t *desc ) +void RUNTIME_flush() { - (void)desc; - return MORSE_SUCCESS; } -/******************************************************************************* - * Get data on cpu - Asynchronous call - **/ -int RUNTIME_desc_getoncpu_async( const MORSE_desc_t *desc, - MORSE_sequence_t *sequence ) +void RUNTIME_desc_flush( const MORSE_desc_t *desc, + const MORSE_sequence_t *sequence ) { parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(sequence->schedopt); parsec_dtd_data_flush_all( PARSEC_dtd_taskpool, (parsec_data_collection_t*)(desc->schedopt) ); +} - return MORSE_SUCCESS; +void RUNTIME_data_flush( const MORSE_sequence_t *sequence, + const MORSE_desc_t *A, int Am, int An ) +{ + parsec_taskpool_t* PARSEC_dtd_taskpool = (parsec_taskpool_t *)(sequence->schedopt); + + parsec_dtd_data_flush( PARSEC_dtd_taskpool, RTBLKADDR( A, MORSE_Complex64_t, Am, An ) ); } /******************************************************************************* diff --git a/runtime/starpu/control/runtime_async.c b/runtime/starpu/control/runtime_async.c index 70e9597f054468ff15b90021d72e79e699e54445..9ecd094216da6bf92cc7c7c52c7d37c71d72f82b 100644 --- a/runtime/starpu/control/runtime_async.c +++ b/runtime/starpu/control/runtime_async.c @@ -74,6 +74,5 @@ void RUNTIME_sequence_flush( MORSE_context_t *morse, sequence->request = request; sequence->status = status; request->status = status; - starpu_task_wait_for_all(); return; }