Browse Source

mlr: improving documentation

Luka Stanisic 8 years ago
parent
commit
a8044e7e4e

+ 12 - 10
doc/doxygen/chapters/370_online_performance_tools.doxy

@@ -403,28 +403,30 @@ is based on multiple linear regression. In this model, the user
 defines both the relevant parameters and the equation for computing the
 defines both the relevant parameters and the equation for computing the
 task duration.
 task duration.
 
 
+
 \f[
 \f[
-T_{kernel} = a + b(M^{\alpha_1}\times N^{\beta_1} \times K^{\gamma_1}) + c(M^{\alpha_2}\times N^{\beta_2} \times K^{\gamma_2}) + ...
+T_{kernel} = a + b(M^{\alpha_1} * N^{\beta_1} * K^{\gamma_1}) + c(M^{\alpha_2} * N^{\beta_2} * K^{\gamma_2}) + ...
 \f]
 \f]
 
 
+
 \f$M, N, K\f$ are the parameters of the task, added at the task
 \f$M, N, K\f$ are the parameters of the task, added at the task
 creation. These need to be extracted by the <c>cl_perf_func</c>
 creation. These need to be extracted by the <c>cl_perf_func</c>
 function, which should be defined by the user. \f$\alpha, \beta,
 function, which should be defined by the user. \f$\alpha, \beta,
-\gamma\f$ are the exponents defined by user in
+\gamma\f$ are the exponents defined by the user in
-<c>model->combinations<\c> matrix. Finally, coefficients $\fa, b, c\f$
+<c>model->combinations</c> table. Finally, coefficients \f$a, b, c\f$
 are computed automatically at the end of the execution, using least
 are computed automatically at the end of the execution, using least
 squares method of the <c>dgels_</c> LAPACK function.
 squares method of the <c>dgels_</c> LAPACK function.
 
 
 <c>examples/basic_examples/mlr.c</c> example provides more details on
 <c>examples/basic_examples/mlr.c</c> example provides more details on
 the usage of ::STARPU_MULTIPLE_REGRESSION_BASED models.
 the usage of ::STARPU_MULTIPLE_REGRESSION_BASED models.
 
 
-Computing of the coefficient is done at the end of the execution, and
+Coefficients computation is done at the end of the execution, and the
-the results are stored in standard codelet perfmodel files. Additional
+results are stored in standard codelet perfmodel files. Additional
-files containing the duration of each task together with the value of
+files containing the duration of task together with the value of each
-each parameter is stored in .starpu/sampling/codelets/tmp/
+parameter are stored in <c>.starpu/sampling/codelets/tmp/</c>
-directory. These files are reused when ::STARPU_CALIBRATE
+directory. These files are reused when \ref STARPU_CALIBRATE environment
-environment variable is set to 1, to recompute coefficients based on
+variable is set to <c>1</c>, to recompute coefficients based on the current,
-the current, but also on the previous executions.
+but also on the previous executions.
 
 
 </li>
 </li>
 
 

+ 13 - 1
doc/doxygen/chapters/api/performance_model.doxy

@@ -63,7 +63,7 @@ is the type of performance model
 ::STARPU_NL_REGRESSION_BASED: No other fields needs to be provided,
 ::STARPU_NL_REGRESSION_BASED: No other fields needs to be provided,
 this is purely history-based.
 this is purely history-based.
 </li>
 </li>
-<li> ::STARPU_MULTIPLE_REGRESSION_BASED: Need to provide fields starpu_perfmodel::nparameters (number of different parameters),  starpu_perfmodel::ncombinations (number of parameters combinations-tuples) and matrix starpu_perfmodel::combinations which defines exponents of the equation. Function cl_perf_func also needs to define how to extract parameters from the task.
+<li> ::STARPU_MULTIPLE_REGRESSION_BASED: Need to provide fields starpu_perfmodel::nparameters (number of different parameters),  starpu_perfmodel::ncombinations (number of parameters combinations-tuples) and table starpu_perfmodel::combinations which defines exponents of the equation. Function cl_perf_func also needs to define how to extract parameters from the task.
 </li>
 </li>
 <li> ::STARPU_PER_ARCH: either field starpu_perfmodel::arch_cost_function has to be
 <li> ::STARPU_PER_ARCH: either field starpu_perfmodel::arch_cost_function has to be
 filled with a function that returns the cost in micro-seconds on the arch given
 filled with a function that returns the cost in micro-seconds on the arch given
@@ -104,6 +104,18 @@ Whether the performance model is already loaded from the disk.
 todo
 todo
 \var starpu_perfmodel_state_t starpu_perfmodel::state
 \var starpu_perfmodel_state_t starpu_perfmodel::state
 \private
 \private
+\var const char ** starpu_perfmodel::parameters_names
+\private
+Names of parameters used for multiple linear regression models (M, N, K)
+\var unsigned starpu_perfmodel::nparameters
+\private
+Number of parameters used for multiple linear regression models
+\var unsigned ** starpu_perfmodel::combinations
+\private
+Table of combinations of parameters (and the exponents) used for multiple linear regression models
+\var unsigned starpu_perfmodel::ncombinations
+\private
+Number of combination of parameters used for multiple linear regression models
 
 
 
 
 \struct starpu_perfmodel_regression_model
 \struct starpu_perfmodel_regression_model