Skip to content

Commit 2064252

Browse files
committed
conflicts
2 parents bbc7a32 + 53d00ea commit 2064252

File tree

6 files changed

+76
-2
lines changed

6 files changed

+76
-2
lines changed

.github/kokoro/steps/vtr-test.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,10 @@ find vtr_flow/benchmarks/titan_blif/ -type f -not -name 'README.*' -delete
6969
find . -type f -regex ".*\.tar\.\(gz\|xz\)" -delete
7070

7171
#Gzip output files from vtr_reg_nightly tests to lower working directory disk space
72-
find vtr_flow/tasks/regression_tests/vtr_reg_nightly/ -type f -print0 | xargs -0 -P $(nproc) gzip
72+
find vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/ -type f -print0 | xargs -0 -P $(nproc) gzip
73+
find vtr_flow/tasks/regression_tests/vtr_reg_nightly_test2/ -type f -print0 | xargs -0 -P $(nproc) gzip
74+
find vtr_flow/tasks/regression_tests/vtr_reg_nightly_test3/ -type f -print0 | xargs -0 -P $(nproc) gzip
75+
7376

7477
# Make sure working directory doesn't exceed disk space limit!
7578
echo "Working directory size: $(du -sh)"

README.developers.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -280,6 +280,9 @@ You can also run multiple regression tests together:
280280
#Run both the basic and strong regression, with up to 4 tests in parallel
281281
$ ./run_reg_test.py vtr_reg_basic vtr_reg_strong -j4
282282
```
283+
## Running in a large cluster using SLURM
284+
For the very large runs, you can submit your runs on a large cluster. A template of submission script to
285+
a Slurm-managed cluster can be found under vtr_flow/tasks/slurm/
283286

284287
## Odin Functionality Tests
285288

vtr_flow/scripts/slurm/README.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
submission_template.sh is a template used to submit jobs using SLURM on a large cluster
2+
- This script is tested on computecanada cluster (Niagara) system
3+
4+
To use this script:
5+
- First, generate all the shell scripts to run a task using:
6+
* run_vtr_task.py -system scripts (Sec. 3.9.3 in the documentation)
7+
* this will create a new run directory under the specified task (e.g. run001)
8+
9+
- Second, edit the submission_template.sh script to match your run
10+
* All lines starting with #SBATCH go to SLURM
11+
* Edit all these line depending on the number of cores you want, number of parallel jobs you want,
12+
the job name, your email and the job time limit
13+
* Edit the relative path to your task (path_to_task) and the specific run directory where the
14+
generated shell scripts are (dir)
15+
16+
- Third, submit these jobs to SLURM using the following command
17+
* sbatch submission_template.sh
18+
19+
You can check the state of the submitted job (or all the jobs that you submitted) using
20+
squeue --me
21+
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
#! /bin/bash
2+
3+
#======================================================================================
4+
#Please Make a copy of this template in the same directory and edit it to fit your run.
5+
#Please do not submit your copy of this template to the repo.
6+
#======================================================================================
7+
8+
9+
#The following section controls the parameters of your run, feel free to edit:
10+
#=============================================================================
11+
#SBATCH --nodes=1 # Number of nodes in our pool
12+
#SBATCH --ntasks=80 # Number of parallel tasks
13+
#SBATCH --ntasks-per-node=40 # maximum number of tasks simultaneously running on a node
14+
#SBATCH --job-name=vtr_test # Job name
15+
#SBATCH --mail-type=FAIL,END # When to send an email
16+
#SBATCH [email protected] # The user's email
17+
#SBATCH --output=parallel_%j.log # Determine the output log file; (%j) is the jobid
18+
#SBATCH --error=error_%j.log # Determine the error log file
19+
#SBATCH --time=10:00:00 # The job time limit in hh:mm:ss
20+
21+
#You can also overwrite the values of some of these paramters using environment variables
22+
#========================================================================================
23+
# - SBATCH_JOB_NAME instead of --job-name
24+
# - SBATCH_TIMELIMIT instead of --time
25+
26+
#Preload the required environment modules
27+
module load gcc/9.2.0
28+
module load python/3.8.5
29+
30+
#Choose the run directory
31+
path_to_task="../../tasks/regression_tests/vtr_reg_nightly/vtr_reg_qor_chain_large"
32+
dir="run001"
33+
34+
35+
for script in ${path_to_task}/${dir}/*/*/common*/vtr_flow.sh
36+
do
37+
echo $script
38+
$script &
39+
done
40+
wait

vtr_flow/tasks/regression_tests/README_nightly_regression_parallelism.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# Parallesim Startegy for vtr_reg_nightly:
2+
## Current Sub-suites:
23

34
* The nightly regression suite is broken up into multiple sub-suites to minimize the wall-clock when ran by CI using Kokoro machines.
45
* The lower bound for the run-time of the nightly regression tests is the longest vtr_flow run in all suites (currently this flow is in vtr_reg_nightly_test2/vtr_reg_qor)
@@ -9,5 +10,9 @@
910
of all suites (~2 hours using -j8).
1011
* If tasks with long flows that exceed ~1.5-2 hours are to be added, it is best to seperate them from the other suites and put it in a seperate test
1112
at the bottom of the task list.
13+
14+
## Adding Sub-suites:
15+
* To add additional suites, a config file (.cfg) has to be added to [the config list for Kokoro machines](https://github.com/verilog-to-routing/vtr-verilog-to-routing/tree/master/.github/kokoro/presubmit). The new config should be indentical to the other config file for nightly tests, with the only difference being the value for VTR_TEST (i.e. the value should be changed to the directory name for the new suite).
16+
1217

1318

vtr_flow/tasks/regression_tests/vtr_reg_nightly_test1/task_list.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1+
#Refer to Issue #1770 for details.
2+
#regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/adder_trees
3+
14
regression_tests/vtr_reg_nightly_test1/vpr_reg_mcnc
25
regression_tests/vtr_reg_nightly_test1/vtr_reg_fpu_soft_logic_arch
36
regression_tests/vtr_reg_nightly_test1/vtr_reg_fpu_hard_block_arch
4-
regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/adder_trees
57
regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/figure_8
68
regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/FIR_filters
79
regression_tests/vtr_reg_nightly_test1/arithmetic_tasks/FIR_filters_frac

0 commit comments

Comments
 (0)