Skip to content

Commit efa5787

Browse files
authored
Merge pull request #2050 from verilog-to-routing/doc_broken_link
Fix Broken Links in CI Test Documentation
2 parents bd009b7 + c21d7c4 commit efa5787

File tree

1 file changed

+44
-33
lines changed

1 file changed

+44
-33
lines changed

README.developers.md

Lines changed: 44 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,33 @@ $ ./run_reg_test.py vtr_reg_basic vtr_reg_strong -j4
302302
For the very large runs, you can submit your runs on a large cluster. A template of submission script to
303303
a Slurm-managed cluster can be found under vtr_flow/tasks/slurm/
304304

305+
## Continuous integration (CI)
306+
For the following tests, you can use remote servers instead of running them locally. Once the changes are pushed into the
307+
remote repository, or a PR is created, the [Test Workflow](https://github.com/verilog-to-routing/vtr-verilog-to-routing/blob/master/.github/workflows/test.yml)
308+
will be triggered. The following tests are included in the workflow:
309+
* [vtr_reg_nightly_test1-3](#vtr_reg_nightly_test1-3)
310+
* [vtr_reg_strong](#vtr_reg_strong)
311+
* vtr_reg_yosys
312+
* vtr_reg_yosys_odin
313+
* odin_tech_strong
314+
* odin_reg_strong
315+
316+
instructions on how to gather QoR results of CI runs can be found [here](#example-extracting-qor-data-from-ci-runs).
317+
318+
#### Re-run CI Tests
319+
In the case that you want to re-run the CI tests, due to certain issues such as infrastructure failure,
320+
go to the "Action" tab and find your workflow under Test Workflow.
321+
Select the test which you want to re-run. There is a re-run button on the top-right corner of the newly appeared window.
322+
![Rerun CI Test](https://raw.githubusercontent.com/verilog-to-routing/vtr-verilog-to-routing/master/doc/src/dev/eval_qor/re_run_tests.png)
323+
324+
**Attention** If the previous run is not finished, you will not be able to re-run the CI tests. To circumvent this limitation,
325+
there are two options:
326+
1. Cancel the workflow. After a few minutes, you would be able to re-run the workflow
327+
![Rerun CI Test](https://raw.githubusercontent.com/verilog-to-routing/vtr-verilog-to-routing/master/doc/src/dev/eval_qor/cancel_workflow.png)
328+
2. Wait until the workflow finishes, then re-run the failed jobs
329+
330+
331+
305332
## Odin Functionality Tests
306333

307334
Odin has its own set of tests to verify the correctness of its synthesis results:
@@ -546,47 +573,28 @@ k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml clstm_like.large.v common
546573
k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml lstm.v common 38901.96 35.76 651868 7 30532.88 -1 -1 606240 -1 -1 6626 17 305 -1 success v8.0.0-4470-ge625fdfe9 release IPO VTR_ASSERT_LEVEL=2 GNU 7.5.0 on Linux-4.15.0-124-generic x86_64 2021-06-18T14:02:07 jupiter0 /export/aman/vtr_aman/vtr-verilog-to-routing/vtr_flow/tasks 6036204 17 19 252939 204226 1 121211 7577 200 200 40000 dsp_top auto 4576.24 1453809 1136.46 3.95 8.38544 -386636 -8.385448.38544 54.87 0.944433 0.763732 237.758 176.282 -1 1876011 15 1.28987e+09 3.81683e+08 8.80433e+08 22010.877.53 284.979 214.902 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
547574
```
548575

549-
### Example: CI Tests QoR Measurement
550-
Once the changes are pushed into the remote repository, or a PR is created, the [Test Workflow](https://github.com/verilog-to-routing/vtr-verilog-to-routing/blob/master/.github/workflows/test.yml)
551-
will be triggered. The following tests are included in the workflow:
552-
* [vtr_reg_nightly_test1-3](./README.developers.md#vtr_reg_nightly_test1-3)
553-
* [vtr_reg_strong](./README.developers.md#vtr_reg_strong)
554-
* vtr_reg_yosys
555-
* vtr_reg_yosys_odin
556-
* odin_tech_strong
557-
* odin_reg_strong
576+
### Example: Extracting QoR Data from CI Runs
558577

559-
To get the QoR results of the above tests, go to the "Action" tab. On the menu on the left,
560-
choose "Test" and select your workflow. If running the tests is done, scroll down and click on "artifact".
561-
This would download the results for all CI tests.
578+
Instead of running tests/designs locally to generate QoR data, you can also extract the QoR data from any of the standard
579+
test runs performed automatically by CI on a pull request. To get the QoR results of the above tests, go to the "Action"
580+
tab. On the menu on the left, choose "Test" and select your workflow. If running the tests is done, scroll down and click
581+
on "artifact". This would download the results for all CI tests.
562582

563583
1. Go to "Action" tab
564-
![Action Button](./doc/src/dev/eval_qor/action_button.png)
584+
![Action Button](https://raw.githubusercontent.com/verilog-to-routing/vtr-verilog-to-routing/master/doc/src/dev/eval_qor/action_button.png)
565585
2. Select "Test" and choose your workflow
566-
![Test Button](./doc/src/dev/eval_qor/test.png)
586+
![Test Button](https://raw.githubusercontent.com/verilog-to-routing/vtr-verilog-to-routing/master/doc/src/dev/eval_qor/test.png)
567587
3. Scroll down and download "artifact"
568-
![Artifact](./doc/src/dev/eval_qor/artifact.png)
588+
![Artifact](https://raw.githubusercontent.com/verilog-to-routing/vtr-verilog-to-routing/master/doc/src/dev/eval_qor/artifact.png)
569589

570590
Assume that we want to get the QoR results for "vtr_reg_nightly_test3". In the artifact, there is a file named
571591
"qor_results_vtr_reg_nightly_test3.tar.gz." Unzip this file, and a new directory named "vtr_flow" is created. Go to
572-
"vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3." In this directory, you can find a directory for each test circuit
573-
containing in this test suit(vtr_reg_nightly_test3.) For instance, results related to *vtr_reg_qor* are located in
574-
"vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3/vtr_reg_qor." In this directory, results for each run are stored separately.
575-
For example, if you want to get the results for the first run, there is a file in *run001* directory named *parse_results.txt*.
576-
Using these parsed results, you can do a detailed QoR comparison using the instructions given [here](./README.developers.md#Comparing QoR Measurements).
577-
![Parse File Dir](./doc/src/dev/eval_qor/parse_result_dir.png)
578-
579-
#### Re-run CI Tests
580-
In the case that you want to re-run the CI tests, due to certain issues such as infrastructure failure,
581-
go to the "Action" tab and find your workflow under Test Workflow.
582-
Select the test which you want to re-run. There is a re-run button on the top-right corner of the newly appeared window.
583-
![Rerun CI Test](./doc/src/dev/eval_qor/re_run_tests.png)
584-
585-
** **Attention** ** If the previous run is not finished, you will not be able to re-run the CI tests. To circumvent this limitation,
586-
there are two options:
587-
1. Cancel the workflow. After a few minutes, you would be able to re-run the workflow
588-
![Rerun CI Test](./doc/src/dev/eval_qor/cancel_workflow.png)
589-
2. Wait until the workflow finishes, then re-run the failed jobs
592+
"vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3." In this directory, you can find a directory for each benchmark
593+
contained in this test suite (vtr_reg_nightly_test3.) In the directory for each sub-test, there is another directory
594+
named *run001*. Two files are here: *qor_results.txt*, and *parse_results.txt*. QoR results for all circuits tested in this
595+
benchmark are stored in these files.
596+
Using these parsed results, you can do a detailed QoR comparison using the instructions given [here](#comparing-qor-measurements).
597+
![Parse File Dir](https://raw.githubusercontent.com/verilog-to-routing/vtr-verilog-to-routing/master/doc/src/dev/eval_qor/parse_result_dir.png)
590598

591599

592600

@@ -738,6 +746,9 @@ There may be times when a regression test fails its QoR test because its golden_
738746
```
739747
Once the `-check_golden` command passes, the changes to the golden result can be committed so that the reg test will pass in future runs of vtr_reg_nightly_test3.
740748

749+
**Attention** Even though the parsed files are located in different locations, the names of the parsed files
750+
should be different.
751+
741752
# Adding Tests
742753

743754
Any time you add a feature to VTR you **must** add a test which exercises the feature.

0 commit comments

Comments
 (0)