4.0 KiB
4.0 KiB
VisioGrid
目錄
專案介紹
VisioGrid 是一個使用 Rust 開發的異質性分布式計算平台,專注於影像辨識。該項目旨在建立一個高效的分布式系統,用於處理大規模影像辨識。通過在多代理環境中並行處理任務,VisioGrid 提高了影像辨識的效率和速度。
主要特性
- 高效率:得益於 Tokio 異步運行時高效的 I/O 處理,VisioGrid 能夠快速處理大量影像數據。
- 穩定性:透過實時監控代理以及主動處理所有錯誤,保證系統運行穩定,避免程序崩潰。
- 影像辨識:支持多種影像辨識模型,靈活應對不同的應用場景。
技術棧
- Rust:充分利用 Rust 的高性能和安全特性,確保系統高效運行。
- Actix Web:提供用戶友好的 Web 管理介面,方便管理和監控系統。
- Tokio:使用 Tokio 的異步運行時進行性能最佳化,提升 I/O 處理效率。
- GStreamer:用於處理媒體流和媒體內容,支持多媒體數據的高效處理。
- Ultralytics:集成 Ultralytics 進行影像辨識,支持多種先進的影像辨識模型。
安裝與運行
系統要求
- Nvidia GPU:本程序僅能在配備 Nvidia GPU 的機器上運行。
從源代碼編譯
管理節點
-
克隆倉庫
git clone https://github.com/DaLaw2/VisioGrid cd VisioGrid -
安裝所需套件
bash Build/ManagementDepend.sh -
編譯專案
cargo build --release --package Management -
編輯配置文件
vim management.toml -
運行節點
cargo run --package Management --release
代理節點
-
克隆倉庫
git clone https://github.com/DaLaw2/VisioGrid cd VisioGrid -
安裝所需套件
bash Build/AgentDepend.sh -
啟動虛擬環境並安裝依賴
python3 -m venv AgentVenv source AgentVenv/bin/activate pip3 install -r Build/requirements.txt -
編譯專案
cargo build --release --package Management -
編輯配置文件
vim agent.toml -
運行節點
cargo run --package Agent --release
使用 Docker
VisioGrid 提供包含所有必要依賴的 Docker 容器,無需手動安裝。
- 創建 Docker 網路
docker network create VisioGrid - 構建管理節點容器
cd Build docker build -t management -f ManagementDockerfile - 運行管理節點容器
docker run -it --rm --gpus all --network VisioGrid -p 8080:8080 management - 構建代理容器
cd Build docker build -t agent -f AgentDockerfile - 運行代理容器
docker run -it --rm --gpus all --network VisioGrid agent
使用方法
通過瀏覽器訪問 http://localhost:8080,可以查看管理介面。管理介面提供了系統的監控和管理功能,用戶可以查看系統狀態、添加代理節點、查看任務進度等。






