Skip to content
Open

V4 #47

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
503a34b
testing
avidalto Mar 6, 2026
8181043
testing
avidalto Mar 6, 2026
21e18d9
testing
avidalto Mar 6, 2026
8e08fc4
testing
avidalto Mar 6, 2026
8fa8819
testing
avidalto Mar 6, 2026
a233af9
testing
avidalto Mar 6, 2026
06a6755
testing
avidalto Mar 6, 2026
b995e02
testing
avidalto Mar 6, 2026
0eb563b
testing
avidalto Mar 6, 2026
fd879ef
testing
avidalto Mar 6, 2026
efa8386
testing
avidalto Mar 6, 2026
44726ca
testing
avidalto Mar 6, 2026
fbcff83
Add merge step
avidalto Mar 9, 2026
f069d4a
Add merge step
avidalto Mar 9, 2026
679f730
Add streaming
avidalto Mar 9, 2026
1e8ebfc
Add endtime estimation
avidalto Mar 9, 2026
ed17911
Add endtime estimation
avidalto Mar 9, 2026
d507210
Only run merge if more than one job was submitted
avidalto Mar 9, 2026
000f82d
testing
avidalto Mar 9, 2026
38a90ec
Add usage metering
avidalto Mar 9, 2026
4d610d9
Add usage metering
avidalto Mar 9, 2026
3a3ca0e
Add usage metering
avidalto Mar 9, 2026
b207a1d
Add usage metering
avidalto Mar 9, 2026
d2113c1
Increase SSH Session Limit
avidalto Mar 10, 2026
476d8b6
Add 20 jobs to merge dependency
avidalto Mar 10, 2026
962705b
Add 20 jobs to merge dependency
avidalto Mar 10, 2026
ba67c26
Use matrix feature
avidalto Mar 16, 2026
1975184
Fix issue with paths to FEA directory
avidalto Mar 16, 2026
c29736e
Testing
avidalto Mar 19, 2026
a65be41
Testing
avidalto Mar 19, 2026
c661334
Testing
avidalto Mar 19, 2026
8f23a87
Testing metering
avidalto Mar 19, 2026
b015858
Testing metering
avidalto Mar 19, 2026
122eb04
Support 40 workers
avidalto Mar 24, 2026
c40495a
Update update-3dcs-usage.py
avidalto Apr 20, 2026
36c8e9e
chore: cleanup endpoint in comment (#46)
giraffesyo Jun 9, 2026
e7cca5e
Use Github to reference subworkflows
avidalto Sep 1, 2026
9df7b54
Checkout repo in local_preprocessing and drop stale conda source
avidalto Sep 1, 2026
4710f9b
Strip spaces from merge result filenames before bucket upload
avidalto Sep 8, 2026
5441bbb
Fix dry-run merge script rename
avidalto Sep 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,22 @@
## 3DCS Parallel Workflow
This workflow enables running a 3DCS Monte Carlo or contributor analysis job using multiple workers on a SLURM cluster in the cloud. Heres how to use it:
This workflow enables running a 3DCS Monte Carlo or contributor analysis job using multiple workers on a SLURM cluster in the cloud. Here's how to use it:

### 1. Upload Files
- Upload your models files to a cloud bucket on the platform (see this [link](https://parallelworks.com/docs/storage/transferring-data/obtaining-credentials)).
- Upload your model's files to a cloud bucket on the platform (see this [link](https://parallelworks.com/docs/storage/transferring-data/obtaining-credentials)).

### 2. Run the Job
- Fill in the workflows input form.
- Fill in the workflow's input form.
- Click the execute button.
- For parameter descriptions, hover over the help (?) icon next to each parameter's name.

### 3. Job Execution
- The job is divided into sub-jobs based on the selected number of workers.
- Each worker uses the specified number of threads.
- Before running, the workflow checks that your group has sufficient 3DCS allocation balance.
- The job is divided into sub-jobs based on the selected number of workers (up to 20).
- Each worker is submitted as an individual SLURM job and uses the specified number of threads.
- The simulation runs in the resource defined in the simulation executor section of the input form.

### 4. Node Utilization
- The "max workers per node" parameter sets the maximum number of workers per node.
- To reduce compute costs, estimate the required memory for a single worker and maximize memory utilization by fitting as many workers as possible on a single node.
- Required memory for N workers is N times the memory for a single worker. However, the required memory for N threads is more than N times the memory for a single thread.
- The `#SBATCH --exclusive` flag is set by default in the SLURM directives due to issues running multiple 3DCS workers on a single node. This means each worker occupies a full node.

![Sample Configuration](https://raw.githubusercontent.com/parallelworks/dcs-workflow/main/2-Nodes_4-Workers_2-Threads_Per_Worker_Configuration.png)

Expand All @@ -33,3 +32,4 @@ This workflow enables running a 3DCS Monte Carlo or contributor analysis job usi
- 3DCS usage is calculated based on the total number of hours a node uses any number of 3DCS workers.
- For example, if 2 nodes run a 3DCS job for 10 hours with 3 workers per node and 4 threads per worker, the usage is 2 nodes x 10 hours = 20 hours.
- To minimize 3DCS license usage, fit as many workers as possible on a single node.
- Usage data is continuously transferred to the metering server during the run.
Loading