xref: /petsc/doc/tutorials/performance/guide_to_TAS.md (revision 7ab0661e7bf890d52e64979ba468952a11c5843a)
1*aa9a5b67SBarry Smith# Time, Accuracy, Speed Analysis (TAS)
2*aa9a5b67SBarry Smith
3*aa9a5b67SBarry Smith```{highlight} none
4*aa9a5b67SBarry Smith```
5*aa9a5b67SBarry Smith
6*aa9a5b67SBarry SmithBelow is the guide to running TAS using ex13, which is a Poisson Problem in 2D and 3D with Finite Elements:
7*aa9a5b67SBarry Smith
8*aa9a5b67SBarry Smith1. Compile `ex13.c`
9*aa9a5b67SBarry Smith
10*aa9a5b67SBarry Smith> 1. This example source file, and the corresponding `makefile` are located in `PETSC_DIR/src/snes/tutorials/`
11*aa9a5b67SBarry Smith>
12*aa9a5b67SBarry Smith> 2. Compile with the command:
13*aa9a5b67SBarry Smith>
14*aa9a5b67SBarry Smith>    > ```console
15*aa9a5b67SBarry Smith>    > $ make ex13
16*aa9a5b67SBarry Smith>    > ```
17*aa9a5b67SBarry Smith
18*aa9a5b67SBarry Smith2. Run ex13 with the following command:
19*aa9a5b67SBarry Smith
20*aa9a5b67SBarry Smith   ```
21*aa9a5b67SBarry Smith   mpiexec -n 2 ./ex13 -log_view :/home/<user name>/PETSC_DIR/lib/petsc/bin/ex_13_test.py:ascii_info_detail \
22*aa9a5b67SBarry Smith     -dm_distribute \
23*aa9a5b67SBarry Smith     -dm_plex_box_faces 8,8 \
24*aa9a5b67SBarry Smith     -potential_petscspace_degree 1 \
25*aa9a5b67SBarry Smith     -snes_convergence_estimate \
26*aa9a5b67SBarry Smith     -convest_num_refine 5
27*aa9a5b67SBarry Smith   ```
28*aa9a5b67SBarry Smith
29*aa9a5b67SBarry Smith3. A log file in the above directory called `ex_13_test.py` should now be present. This is also the same directory that contains the TAS python3 script `petsc_tas_analysis.py`
30*aa9a5b67SBarry Smith
31*aa9a5b67SBarry Smith4. Now run `petsc_tas_analysis.py`:
32*aa9a5b67SBarry Smith
33*aa9a5b67SBarry Smith   ```
34*aa9a5b67SBarry Smith   ./petsc_tas_analysis.py -f ex_13_test
35*aa9a5b67SBarry Smith   ```
36*aa9a5b67SBarry Smith
37*aa9a5b67SBarry Smith5. You should see something similar to the following in your terminal window:
38*aa9a5b67SBarry Smith
39*aa9a5b67SBarry Smith   > ```{literalinclude} exampleTASOutPut.txt
40*aa9a5b67SBarry Smith   > ```
41*aa9a5b67SBarry Smith
42*aa9a5b67SBarry Smith6. Finally the graphs will appear in the subdirectory `graphs/`
43*aa9a5b67SBarry Smith
44*aa9a5b67SBarry SmithFor more detailed help in using TAS:
45*aa9a5b67SBarry Smith: 1. See detailed user's guide
46*aa9a5b67SBarry Smith  2. On the command line use `./petsc_tas_analysis.py -h`
47