diff --git a/ChangeLog b/ChangeLog index 23cd6845ae17427484f1122274166e723f43554b..545761d09776fcc7b48035e90992eff90d4b6227 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,6 @@ chameleon-1.4.0 ------------------------------------------------------------------------ + - StarPU: Update the minimum requirement from 1.3 to 1.4 - StarPU: When using starpu > 1.4.8, use the new distributed submit interface in the codelets instead of the classical insert task interface. - ci: use -Werror to prevent from adding warning to the code - Fix: all warning reported by the switch to -Werror diff --git a/runtime/starpu/CMakeLists.txt b/runtime/starpu/CMakeLists.txt index 4fe2a9e765e1bd62b8f6b85df32ddf7630beccd3..e7f330d1be0fc38d4e66eb8fa9baf5889ca77dd9 100644 --- a/runtime/starpu/CMakeLists.txt +++ b/runtime/starpu/CMakeLists.txt @@ -36,7 +36,7 @@ include(CheckSymbolExists) include(CheckStructHasMember) include(CheckCSourceRuns) -set(CHAMELEON_STARPU_VERSION "1.3" CACHE STRING "necessary STARPU API version") +set(CHAMELEON_STARPU_VERSION "1.4" CACHE STRING "necessary STARPU API version") find_package(STARPU ${CHAMELEON_STARPU_VERSION} REQUIRED) diff --git a/runtime/starpu/include/chameleon_starpu_internal.h b/runtime/starpu/include/chameleon_starpu_internal.h index 9beea7b0eb9f1624692989d7053e6e282ae25250..c202955a80a5454fdb7c64bbb1f9db5ccd29db17 100644 --- a/runtime/starpu/include/chameleon_starpu_internal.h +++ b/runtime/starpu/include/chameleon_starpu_internal.h @@ -347,7 +347,7 @@ starpu_cham_exchange_data_before_execution( const RUNTIME_option_t int An, enum starpu_data_access_mode mode ) { - unsigned need_submit = 0; + unsigned need_submit = params.do_execute; starpu_data_handle_t *ptrtile = chameleon_starpu_data_gethandle( A, Am, An ); /* @@ -369,7 +369,7 @@ starpu_cham_exchange_data_before_execution( const RUNTIME_option_t need_submit = 1; } - if ( !need_submit && !params->do_execute ) { + if ( !need_submit ) { return; } diff --git a/runtime/starpu/include/runtime_codelet_profile.h b/runtime/starpu/include/runtime_codelet_profile.h index 361aeeb75bdcb0577c68e7fc883c95a4dcf43d2b..eac734b1fc5294e0c728e336c7cad593a6406c59 100644 --- a/runtime/starpu/include/runtime_codelet_profile.h +++ b/runtime/starpu/include/runtime_codelet_profile.h @@ -73,7 +73,6 @@ #define CHAMELEON_CL_CB_HEADER(name) \ extern struct starpu_perfmodel*cl_##name##_save; \ - extern struct starpu_perfmodel cl_##name##_fake; \ void cl_##name##_callback(); \ void profiling_display_##name##_info(void) diff --git a/runtime/starpu/include/runtime_codelets.h b/runtime/starpu/include/runtime_codelets.h index e274d643a2e118fd4a3f984beec2ce22bae281e9..8e5b5b891ae66c390812265b8b3eb8e339bb2a69 100644 --- a/runtime/starpu/include/runtime_codelets.h +++ b/runtime/starpu/include/runtime_codelets.h @@ -54,7 +54,7 @@ #if defined(CHAMELEON_USE_CUDA) #define CODELET_GPU_FIELDS( gpu_func_name, gpu_flags ) \ CODELET_CUDA_FLAGS( gpu_flags ) \ - .cuda_func = ((gpu_func_name)), + .cuda_funcs = {(gpu_func_name)}, #elif defined(CHAMELEON_USE_HIP) #define CODELET_GPU_FIELDS( gpu_func_name, gpu_flags ) \ CODELET_HIP_FLAGS( gpu_flags ) \ @@ -64,11 +64,6 @@ #endif #define CODELETS_ALL(cl_name, cpu_func_name, gpu_func_name, _original_location_, gpu_flags) \ - struct starpu_perfmodel cl_##cl_name##_fake = { \ - .type = STARPU_HISTORY_BASED, \ - .symbol = "fake_"#cl_name \ - }; \ - \ struct starpu_perfmodel cl_##cl_name##_model = { \ .type = STARPU_HISTORY_BASED, \ .symbol = ""#cl_name \ @@ -76,7 +71,7 @@ \ struct starpu_codelet cl_##cl_name = { \ .where = (_original_location_), \ - .cpu_func = ((cpu_func_name)), \ + .cpu_funcs = {(cpu_func_name)}, \ CODELET_GPU_FIELDS( gpu_func_name, gpu_flags ) \ .nbuffers = STARPU_VARIABLE_NBUFFERS, \ .model = &cl_##cl_name##_model, \ @@ -92,11 +87,6 @@ void cl_##cl_name##_restore_where(void) \ { \ cl_##cl_name.where = (_original_location_); \ - } \ - \ - void cl_##cl_name##_restore_model(void) \ - { \ - cl_##cl_name.model = &cl_##cl_name##_model; \ } #if defined(CHAMELEON_SIMULATION) @@ -117,8 +107,6 @@ #define CODELETS_ALL_HEADER(name) \ CHAMELEON_CL_CB_HEADER(name); \ - void cl_##name##_load_fake_model(void); \ - void cl_##name##_restore_model(void); \ extern struct starpu_codelet cl_##name; \ void cl_##name##_restrict_where(uint32_t where); \ void cl_##name##_restore_where(void) diff --git a/runtime/starpu/include/runtime_profiling.h b/runtime/starpu/include/runtime_profiling.h index e366c620ce779e6af9abcd8f44151ac89543e791..dd71ca13fccd61d0c9d043825ab168e2dfedd8b6 100644 --- a/runtime/starpu/include/runtime_profiling.h +++ b/runtime/starpu/include/runtime_profiling.h @@ -43,14 +43,4 @@ void RUNTIME_profiling_cdisplay_all(void); void RUNTIME_profiling_ddisplay_all(void); void RUNTIME_profiling_sdisplay_all(void); -void CHAMELEON_zload_FakeModel(); -void CHAMELEON_cload_FakeModel(); -void CHAMELEON_dload_FakeModel(); -void CHAMELEON_sload_FakeModel(); - -void CHAMELEON_zrestore_Model(); -void CHAMELEON_crestore_Model(); -void CHAMELEON_drestore_Model(); -void CHAMELEON_srestore_Model(); - #endif /* _runtime_profiling_h_ */