|
@@ -284,10 +284,10 @@ flow of tasks between the components of the modular scheduler.
|
|
|
|
|
|
\subsubsection TimeBetweenSendRecvDataUse Analyzing Time Between MPI Data Transfer and Use by Tasks
|
|
|
|
|
|
-<c>starpu_fxt_tool</c> produces a file called <c>comms.rec</c> which describes all
|
|
|
-MPI communications. The script <c>starpu_send_recv_data_use.py</c> uses this file
|
|
|
-and <c>tasks.rec</c> in order to produce two graphs: the first one shows durations
|
|
|
-between the reception of data and their usage by a task and the second one plots the
|
|
|
+<c>starpu_fxt_tool</c> produces a file called <c>comms.rec</c> which describes all
|
|
|
+MPI communications. The script <c>starpu_send_recv_data_use.py</c> uses this file
|
|
|
+and <c>tasks.rec</c> in order to produce two graphs: the first one shows durations
|
|
|
+between the reception of data and their usage by a task and the second one plots the
|
|
|
same graph but with elapsed time between send and usage of a data by the sender.
|
|
|
|
|
|
\image html trace_recv_use.png
|
|
@@ -403,7 +403,7 @@ starpu_perfmodel_load_symbol(). The source code of the tool
|
|
|
|
|
|
An XML output can also be printed by using the <c>-x</c> option:
|
|
|
\verbatim
|
|
|
-$ tools/starpu_perfmodel_display -x -s non_linear_memset_regression_based
|
|
|
+$ tools/starpu_perfmodel_display -x -s non_linear_memset_regression_based
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<!DOCTYPE StarPUPerfmodel SYSTEM "starpu-perfmodel.dtd">
|
|
|
<!-- symbol non_linear_memset_regression_based -->
|
|
@@ -429,7 +429,7 @@ models. It writes a <c>.gp</c> file in the current directory, to be
|
|
|
run with the tool <c>gnuplot</c>, which shows the corresponding curve.
|
|
|
|
|
|
\verbatim
|
|
|
-$ tools/starpu_perfmodel_plot -s non_linear_memset_regression_based
|
|
|
+$ tools/starpu_perfmodel_plot -s non_linear_memset_regression_based
|
|
|
$ gnuplot starpu_non_linear_memset_regression_based.gp
|
|
|
$ gv starpu_non_linear_memset_regression_based.eps
|
|
|
\endverbatim
|
|
@@ -841,50 +841,99 @@ An example of visualization follows:
|
|
|
\image html starvz_visu_r.png
|
|
|
\image latex starvz_visu_r.pdf "" width=\textwidth
|
|
|
|
|
|
-\section EclipsePlugin Eclipse Plugin
|
|
|
-The StarPU Eclipse Plugin provides the ability to generate the different traces directly from the Eclipse IDE.
|
|
|
-After executing the StarPU application (C/C++), one can use the StarPU plugin to generate and visualise the task graph of the application. The StarPU plugin eclipse is either available through the icons in the upper toolbar, or from the dropdown menu StarPU.
|
|
|
+\section EclipsePluginUsage StarPU Eclipse Plugin
|
|
|
|
|
|
-\image html plugin_eclipse.png
|
|
|
-\image latex plugin_eclipse.pdf "" width=\textwidth
|
|
|
+The StarPU Eclipse Plugin provides the ability to generate the
|
|
|
+different traces directly from the Eclipse IDE. Once StarPU has been
|
|
|
+configured and installed with its Eclipse plugin (see Section \ref
|
|
|
+EclipsePlugin), you first need to set up your environment for StarPU.
|
|
|
|
|
|
-To start, one first need to run the <c>StarPU FxT tool</c>, either through the FxT icon of the toolbar, or from the menu StarPU.
|
|
|
+\verbatim
|
|
|
+cd $HOME/usr/local/starpu
|
|
|
+source ./bin/starpu_env
|
|
|
+\endverbatim
|
|
|
+
|
|
|
+To generate traces from the application, it is necessary to set \ref
|
|
|
+STARPU_FXT_TRACE to 1.
|
|
|
|
|
|
-To generate traces from the application, it is necessary to set \ref STARPU_FXT_TRACE to 1 and build StarPU with FxT.
|
|
|
-When FxT is enabled, a trace is generated when StarPU is terminated by calling starpu_shutdown().
|
|
|
+\verbatim
|
|
|
+export STARPU_FXT_TRACE=1
|
|
|
+\endverbatim
|
|
|
+
|
|
|
+The eclipse workspace together with an example is available in \c
|
|
|
+lib/starpu/eclipse-plugin.
|
|
|
+
|
|
|
+\verbatim
|
|
|
+cd ./lib/starpu/eclipse-plugin
|
|
|
+eclipse -data workspace
|
|
|
+\endverbatim
|
|
|
|
|
|
-\image html fxt_tool.png
|
|
|
-\image latex fxt_tool.pdf "" width=\textwidth
|
|
|
+You can then open the file \c hello/hello.c, and build the application
|
|
|
+by pressing \c Ctrl-B.
|
|
|
|
|
|
-Setting the environment variable \ref STARPU_FXT_TRACE to 1 before application execution will make StarPU generate the prof_file_XXX_YYY file automatically at application shutdown.
|
|
|
-When the FxT trace file prof_file_something has been generated, it is possible to generate different trace formats by running the first command of StarPU menu, or the FXT icon in the toolbar. A message dialog box is displayed to confirm the generation of the different traces.
|
|
|
+\image html eclipse_hello_build.png
|
|
|
+\image latex eclipse_hello_build.png "" width=\textwidth
|
|
|
|
|
|
-\image html generated_traces.png
|
|
|
-\image latex generated_traces.pdf "" width=\textwidth
|
|
|
+The application can now be executed.
|
|
|
|
|
|
-One of the generated files is a trace in the <c>paje format</c>. The file is named \ref paje.trace. It can be viewed with ViTE, which is a trace explorer. To open and visualise the file paje.trace with ViTE, one can select the second command of the StarPU menu, which is named <c>Generate Paje Trace</c>, or click on the second icon named <c>Trace</c> in the toolbar of eclipse.
|
|
|
+\image html eclipse_hello_run.png
|
|
|
+\image latex eclipse_hello_run.png "" width=\textwidth
|
|
|
|
|
|
-\image html paje_trace.png
|
|
|
-\image latex paje_trace.pdf "" width=\textwidth
|
|
|
+After executing the C/C++ StarPU application, one can use the StarPU
|
|
|
+plugin to generate and visualise the task graph of the application.
|
|
|
+The StarPU plugin eclipse is either available through the icons in the
|
|
|
+upper toolbar, or from the dropdown menu \c StarPU.
|
|
|
|
|
|
-\image html vite.png
|
|
|
-\image latex vite.pdf "" width=\textwidth
|
|
|
+\image html eclipse_plugin.png
|
|
|
+\image latex eclipse_plugin.png "" width=\textwidth
|
|
|
+
|
|
|
+To start, one first need to run the StarPU FxT tool, either through
|
|
|
+the \c FxT icon of the toolbar, or from the menu \c StarPU / <c>StarPU
|
|
|
+FxT Tool</c>. This will call the tool \c starpu_fxt_tool to generate
|
|
|
+traces for your application execution.
|
|
|
+
|
|
|
+A message dialog box is displayed to confirm the generation of the
|
|
|
+different traces.
|
|
|
+
|
|
|
+\image html eclipse_hello_fxt.png
|
|
|
+\image latex eclipse_hello_fxt.png "" width=\textwidth
|
|
|
+
|
|
|
+One of the generated files is a Paje trace which can be viewed with
|
|
|
+ViTE, a trace explorer. To open and visualise the file \c paje.trace with
|
|
|
+ViTE, one can select the second command of the StarPU menu, which is
|
|
|
+named <c>Generate Paje Trace</c>, or click on the second icon named
|
|
|
+<c>Trace</c> in the toolbar.
|
|
|
+
|
|
|
+\image html eclipse_paje_trace.png
|
|
|
+\image latex eclipse_paje_trace.png "" width=\textwidth
|
|
|
+
|
|
|
+\image html eclipse_vite.png
|
|
|
+\image latex eclipse_vite.png "" width=\textwidth
|
|
|
+
|
|
|
+Another generated trace file is a task graph described using the DOT
|
|
|
+language. It is possible to get a graphical output of the graph by
|
|
|
+calling the <c>graphviz library</c>. To do this, one can click on the
|
|
|
+third command of StarPU menu. A task graph of the application in
|
|
|
+the \c png format is then generated.
|
|
|
|
|
|
-Another generated trace file is a task graph described using the DOT language. It is possible to get a graphical output of the graph by calling the <c>graphviz library</c>. To do this, one can click on the third command of StarPU menu. A task graph of the application in (.PNG) format is then generated.
|
|
|
-\image html run_task_graph.png
|
|
|
-\image latex run_task_graph.pdf "" width=\textwidth
|
|
|
+\image html eclipse_hello_graph.png
|
|
|
+\image latex eclipse_hello_graph.png "" width=\textwidth
|
|
|
|
|
|
-\image html task_graph.png
|
|
|
-\image latex task_graph.pdf "" width=\textwidth
|
|
|
-In StarPU eclipse plugin, one can display the graph task directly from eclipse, or through a web browser. To do this, there is another command named <c> Generate SVG graph</c> in the StarPU menu or HGraph in the toolbar of eclipse.
|
|
|
+In StarPU eclipse plugin, one can display the graph task directly from
|
|
|
+eclipse, or through a web browser. To do this, there is another
|
|
|
+command named <c> Generate SVG graph</c> in the StarPU menu or HGraph
|
|
|
+in the toolbar of eclipse.
|
|
|
|
|
|
-From the HTML file, you can see the graph task, and by clicking on a task name, it will open the C file in which the task submission was called.
|
|
|
+From the HTML file, you can see the graph task, and by clicking on a
|
|
|
+task name, it will open the C file in which the task submission was
|
|
|
+called (if you have an editor which understands the syntax \c
|
|
|
+href="file.c#123").
|
|
|
|
|
|
-\image html svg_graph.png
|
|
|
-\image latex svg_graph.pdf "" width=\textwidth
|
|
|
+\image html eclipse_svg_graph.png
|
|
|
+\image latex eclipse_svg_graph.png "" width=\textwidth
|
|
|
|
|
|
-\image html hgraph.png
|
|
|
-\image latex hgraph.pdf "" width=\textwidth
|
|
|
+\image html eclipse_hgraph.png
|
|
|
+\image latex eclipse_hgraph.png "" width=\textwidth
|
|
|
|
|
|
\section MemoryFeedback Memory Feedback
|
|
|
|