Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 97288236 authored by Mathieu Faverge's avatar Mathieu Faverge
Browse files

control: store the ncuda field in the options to know at insertion time if...

control: store the ncuda field in the options to know at insertion time if cuda kernels are enabled or not
parent c060cfd1
No related branches found
No related tags found
1 merge request!395Introduce half-precision conversion and gemm kernels for GPUs
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
# Univ. of California Berkeley, # Univ. of California Berkeley,
# Univ. of Colorado Denver. # Univ. of Colorado Denver.
# #
# @version 1.2.0 # @version 1.3.0
# @author Cedric Castagnede # @author Cedric Castagnede
# @author Emmanuel Agullo # @author Emmanuel Agullo
# @author Mathieu Faverge # @author Mathieu Faverge
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
# @author Alycia Lisito # @author Alycia Lisito
# @author Loris Lucido # @author Loris Lucido
# @author Nathan Précigout # @author Nathan Précigout
# @date 2023-01-30 # @date 2023-07-04
# #
### ###
cmake_minimum_required(VERSION 3.3) cmake_minimum_required(VERSION 3.3)
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
* @brief Chameleon control routines * @brief Chameleon control routines
* *
* @version 1.2.0 * @version 1.3.0
* @author Jakub Kurzak * @author Jakub Kurzak
* @author Mathieu Faverge * @author Mathieu Faverge
* @author Cedric Castagnede * @author Cedric Castagnede
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
* @author Samuel Thibault * @author Samuel Thibault
* @author Philippe Swartvagher * @author Philippe Swartvagher
* @author Loris Lucido * @author Loris Lucido
* @date 2023-01-30 * @date 2023-07-04
* *
*** ***
* *
...@@ -123,6 +123,7 @@ int __chameleon_initpar(int ncpus, int ngpus, int nthreads_per_worker) ...@@ -123,6 +123,7 @@ int __chameleon_initpar(int ncpus, int ngpus, int nthreads_per_worker)
} }
#endif #endif
chamctxt->ncudas = ngpus;
return RUNTIME_init( chamctxt, ncpus, ngpus, nthreads_per_worker ); return RUNTIME_init( chamctxt, ncpus, ngpus, nthreads_per_worker );
} }
......
...@@ -11,13 +11,13 @@ ...@@ -11,13 +11,13 @@
* *
* @brief Runtime structures * @brief Runtime structures
* *
* @version 1.2.0 * @version 1.3.0
* @author Cedric Augonnet * @author Cedric Augonnet
* @author Mathieu Faverge * @author Mathieu Faverge
* @author Cedric Castagnede * @author Cedric Castagnede
* @author Florent Pruvost * @author Florent Pruvost
* @author Philippe Virouleau * @author Philippe Virouleau
* @date 2022-02-22 * @date 2023-07-04
* *
*/ */
#ifndef _chameleon_runtime_struct_h_ #ifndef _chameleon_runtime_struct_h_
...@@ -85,6 +85,7 @@ typedef struct runtime_option_s { ...@@ -85,6 +85,7 @@ typedef struct runtime_option_s {
int priority; /**< Define the submitted task priority */ int priority; /**< Define the submitted task priority */
int workerid; /**< Define the prefered worker id to perform the tasks */ int workerid; /**< Define the prefered worker id to perform the tasks */
int forcesub; /**< Force task submission if true */ int forcesub; /**< Force task submission if true */
int withcuda; /**< Flag to know if cuda is enabled/disabled */
size_t ws_wsize; /**< Define the worker workspace size */ size_t ws_wsize; /**< Define the worker workspace size */
size_t ws_hsize; /**< Define the host workspace size for hybrid CPU/GPU kernel */ size_t ws_hsize; /**< Define the host workspace size for hybrid CPU/GPU kernel */
void *ws_worker; /**< Pointer to the worker workspace (structure) */ void *ws_worker; /**< Pointer to the worker workspace (structure) */
......
...@@ -11,12 +11,12 @@ ...@@ -11,12 +11,12 @@
* *
* @brief Chameleon StarPU options routines * @brief Chameleon StarPU options routines
* *
* @version 1.2.0 * @version 1.3.0
* @author Cedric Augonnet * @author Cedric Augonnet
* @author Mathieu Faverge * @author Mathieu Faverge
* @author Cedric Castagnede * @author Cedric Castagnede
* @author Florent Pruvost * @author Florent Pruvost
* @date 2022-02-22 * @date 2023-07-04
* *
*/ */
#include "chameleon_starpu.h" #include "chameleon_starpu.h"
...@@ -32,6 +32,7 @@ void RUNTIME_options_init( RUNTIME_option_t *options, CHAM_context_t *chamctxt, ...@@ -32,6 +32,7 @@ void RUNTIME_options_init( RUNTIME_option_t *options, CHAM_context_t *chamctxt,
options->priority = RUNTIME_PRIORITY_MIN; options->priority = RUNTIME_PRIORITY_MIN;
options->workerid = (schedopt == NULL) ? -1 : schedopt->workerid; options->workerid = (schedopt == NULL) ? -1 : schedopt->workerid;
options->forcesub = 0; options->forcesub = 0;
options->withcuda = (chamctxt->ncudas > 0);
options->ws_wsize = 0; options->ws_wsize = 0;
options->ws_hsize = 0; options->ws_hsize = 0;
options->ws_worker = NULL; options->ws_worker = NULL;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment