Skip to content

Commit 03bc98c

Browse files
committed
Refactor semaphore implementation and introduce new traits for image segmentation and processing
- Removed the existing semaphore implementation in `src/semaphore.rs`. - Added a new file `src/traits.rs` defining various traits for image segmentation models, batch processing, image processing pipelines, worker pools, message queues, batching, and configuration management. - Implemented a new worker pool in `src/worker.rs` with CPU parallel processing capabilities, including preprocessing and postprocessing workers. - Created integration tests for batch processing and distributed processing pipelines in `tests/batch_processing_test.rs` and `tests/distributed_integration_test.rs`. - Added unit tests for configuration validation, supported image formats, path handling, and image processor functionality in `tests/integration_test.rs`.
1 parent 7d2c038 commit 03bc98c

25 files changed

Lines changed: 4396 additions & 1547 deletions

.github/workflows/build-release-binaries.yml

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,22 @@ jobs:
3030
compress_command: tar -czvf
3131

3232
steps:
33+
- name: Free Disk Space (Ubuntu)
34+
uses: jlumbroso/free-disk-space@main
35+
with:
36+
# this might remove tools that are actually needed,
37+
# if set to "true" but frees about 6 GB
38+
tool-cache: false
39+
40+
# all of these default to true, but feel free to set to
41+
# "false" if necessary for your workflow
42+
android: true
43+
dotnet: true
44+
haskell: true
45+
large-packages: true
46+
docker-images: true
47+
swap-storage: true
48+
3349
- name: Checkout repository
3450
uses: actions/checkout@v4
3551
with:
@@ -45,11 +61,8 @@ jobs:
4561
uses: Jimver/cuda-toolkit@master
4662
id: cuda-toolkit
4763
with:
48-
cuda: '12.4.1'
4964
method: 'network'
50-
sub-packages: '["nvcc"]'
51-
non-cuda-sub-packages: '["cudnn9-cuda"]'
52-
log-file-suffix: '${{matrix.os}}.txt'
65+
non-cuda-sub-packages: '["libcudnn", "nvcc"]'
5366

5467
- name: Build Release Binaries
5568
run: cargo build --release --locked --features cuda,image,image-extra

.gitignore

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1 @@
1-
# Generated by Cargo
2-
# will have compiled files and executables
3-
debug/
41
target/
5-
6-
# These are backup files generated by rustfmt
7-
**/*.rs.bk
8-
9-
# MSVC Windows builds of rustc generate these, which store debugging information
10-
*.pdb

0 commit comments

Comments
 (0)