diff --git a/doc/guide.md b/doc/guide.md index 5ade66be69..690c1846eb 100644 --- a/doc/guide.md +++ b/doc/guide.md @@ -6,8 +6,31 @@ Guide {#guide} @WRENCHInternalDoc
Internal Documentation
@endWRENCHDoc +This page provides pointers to high-level information for WRENCH users who +want to build simulators. The examples provided in the ```example/``` +directory are a great first start. This page goes further by detailing what +possibilities are available to users beyond what is shown in the examples. -WRENCH currently provide the following (simulated) CyberInfrastructure Service implementations: +--- + +## Simulated Platform Hardware Configurations + +A WRENCH simulator must specify the hardware configuration of the platform +to be simulator (i.e., compute resources, storage resources, network +resources). WRENCH does not do anything specific and accepts any valid +[SimGrid platform description in +XML](https://simgrid.org/doc/latest/platform.html). The documentation is +extensive, as many options are possible. We strongly suggest users to +inspect the platform files provided with the WRENCH examples (in +directory ```examples/simple-example/platform_files/```). These files are +simply passed to the ```wrench::Simulation::instantiatePlatform()``` +method. + +--- + +## Simulated CyberInfrastructure Services + +A WRENCH simulation consists in a WMS (Workflow Management System) that interacts with CyberInfrastructure Service. Several such (simulated) services are implemented in WRENCH and can thus be instantiated on the simulation platform out-of-the-box. The examples in the ```examples``` directory showcase the use of some of these services, but there are others! WRENCH currently provide the following CyberInfrastructure services: 1. Compute Services @@ -27,3 +50,24 @@ WRENCH currently provide the following (simulated) CyberInfrastructure Service i 1. [Network Proximity Service](@ref guide-networkproximity) --- + +## Simulation Output + +The goal of any simulator is to generate output that describes a simulated +execution, the outcomes of which can be analyzed for whatever purposes. The +class ```wrench::SimulationOutput``` contains all relevant information +(once the simulation has completed). This information can be accessed via +this class' API (see the relevant documentation in the API Reference +section). Note that there are also methods to configure the type and amount of +output generated (see the +```wrench::SimulationOutput::enable*Timestamps()``` methods). + +The simulation output can be exported to a JSON file, using one of the +```wrench::SimulationOutput::dump*JSON()``` methods. See the documentation of each method to see the structure of the JSON output, in case you want to parse/process the JSON yourself. Alternately, you can use the +**WRENCH dashboard** to open the JSON and gain access to interactive visualization/inspection tools. To do so simple run ```tools/wrench/wrench-dashboard```. + + + + +--- +