diff --git a/runtime/starpu/CMakeLists.txt b/runtime/starpu/CMakeLists.txt index 98cde2e99338479488dd82191307eb2923c90dc4..3e3a03ad3916fd528b4428adecc28456bf2a1860 100644 --- a/runtime/starpu/CMakeLists.txt +++ b/runtime/starpu/CMakeLists.txt @@ -28,6 +28,7 @@ ### cmake_minimum_required(VERSION 3.1) +include(CheckSymbolExists) include(CheckStructHasMember) set(CHAMELEON_STARPU_VERSION "1.3" CACHE STRING "necessary STARPU API version") @@ -39,8 +40,7 @@ find_package(STARPU ${CHAMELEON_STARPU_VERSION} REQUIRED) if ( STARPU_FOUND ) message("-- ${Blue}Add definition CHAMELEON_SCHED_STARPU" " - Activate StarPU in Chameleon${ColourReset}") - get_target_property(CMAKE_REQUIRED_LIBRARIES MORSE::STARPU INTERFACE_LINK_LIBRARIES) - get_target_property(CMAKE_REQUIRED_INCLUDES MORSE::STARPU INTERFACE_INCLUDE_DIRECTORIES) + morse_cmake_required_set( STARPU ) check_function_exists(starpu_data_idle_prefetch_on_node HAVE_STARPU_IDLE_PREFETCH) if ( HAVE_STARPU_IDLE_PREFETCH ) message("-- ${Blue}Add definition HAVE_STARPU_IDLE_PREFETCH${ColourReset}") @@ -80,7 +80,6 @@ if ( STARPU_FOUND ) if (CHAMELEON_USE_MPI) # Add MPI in case StarPU don't have a public dependency on it - set(CMAKE_REQUIRED_LIBRARIES "${CMAKE_REQUIRED_LIBRARIES};MPI::MPI_C") check_function_exists(starpu_mpi_init_conf HAVE_STARPU_MPI_INIT_CONF) if ( HAVE_STARPU_MPI_INIT_CONF ) message("-- ${Blue}Add definition HAVE_STARPU_MPI_INIT_CONF${ColourReset}") @@ -126,8 +125,7 @@ if ( STARPU_FOUND ) message("-- ${Blue}Add definition HAVE_STARPU_MPI_COMM_GET_ATTR${ColourReset}") endif() endif() - unset(CMAKE_REQUIRED_LIBRARIES) - unset(CMAKE_REQUIRED_INCLUDES) + morse_cmake_required_unset() endif ( STARPU_FOUND ) configure_file("include/chameleon_starpu.h.in" @@ -153,6 +151,7 @@ set(RUNTIME_HDRS include/runtime_codelets.h include/runtime_profiling.h include/runtime_workspace.h + include/cham_tile_interface.h ) # Add generated headers diff --git a/runtime/starpu/control/runtime_descriptor.c b/runtime/starpu/control/runtime_descriptor.c index 4ab987d2bb4546a3ab0db510806d6c56b7d04eda..f3f3ecd30d2d15e9b28731a7de99b3c28a3f7e1f 100644 --- a/runtime/starpu/control/runtime_descriptor.c +++ b/runtime/starpu/control/runtime_descriptor.c @@ -329,18 +329,19 @@ void RUNTIME_flush() /** * Different implementations of the flush call based on StarPU version */ -#ifdef HAVE_STARPU_DATA_WONT_USE +#if defined(HAVE_STARPU_DATA_WONT_USE) static inline void chameleon_starpu_data_wont_use( starpu_data_handle_t handle ) { starpu_data_wont_use( handle ); } -#elif defined HAVE_STARPU_IDLE_PREFETCH +#elif defined(HAVE_STARPU_IDLE_PREFETCH) static inline void -chameleon_starpu_data_flush( starpu_data_handle_t handle) +chameleon_starpu_data_flush( void *_handle) { + starpu_data_handle_t handle = (starpu_data_handle_t)_handle; starpu_data_idle_prefetch_on_node(handle, STARPU_MAIN_RAM, 1); starpu_data_release_on_node(handle, -1); } diff --git a/runtime/starpu/control/runtime_profiling.c b/runtime/starpu/control/runtime_profiling.c index fb8fc039fc8a06e4ac09aa05f9cf613f9a709d03..317a3210fffdb546f3cf740d9e2cde3bcb33b4a9 100644 --- a/runtime/starpu/control/runtime_profiling.c +++ b/runtime/starpu/control/runtime_profiling.c @@ -46,6 +46,7 @@ void RUNTIME_iteration_push( CHAM_context_t *chamctxt, unsigned long iteration ) #if defined(HAVE_STARPU_ITERATION_PUSH) starpu_iteration_push(iteration); #endif + (void)iteration; } void RUNTIME_iteration_pop( CHAM_context_t *chamctxt ) diff --git a/runtime/starpu/interface/cham_tile_interface.c b/runtime/starpu/interface/cham_tile_interface.c index 30348afe17667e5a2f005a19f2ea7b470c07e06a..493c9eade6d65821974fb5f57f64bd6c5d8115d3 100644 --- a/runtime/starpu/interface/cham_tile_interface.c +++ b/runtime/starpu/interface/cham_tile_interface.c @@ -573,11 +573,11 @@ static int cti_copy_any_to_any( void *src_interface, unsigned src_node, starpu_cham_tile_interface_t *cham_tile_src = (starpu_cham_tile_interface_t *) src_interface; starpu_cham_tile_interface_t *cham_tile_dst = (starpu_cham_tile_interface_t *) dst_interface; size_t elemsize = CHAMELEON_Element_Size( cham_tile_src->flttype ); - size_t m = cham_tile_src->tile.m; - size_t n = cham_tile_src->tile.n; - size_t ld_src = cham_tile_src->tile.ld; - size_t ld_dst = cham_tile_dst->tile.ld; - int ret = 0; + size_t m = cham_tile_src->tile.m; + size_t n = cham_tile_src->tile.n; + size_t ld_src = cham_tile_src->tile.ld; + size_t ld_dst = cham_tile_dst->tile.ld; + int ret = 0; void *src_mat = CHAM_tile_get_ptr( &(cham_tile_src->tile) ); void *dst_mat = CHAM_tile_get_ptr( &(cham_tile_dst->tile) );