MetisFL
1.0.0
MetisFL - C++ と Python3 で実装された最初のオープンな Federated Learning フレームワーク。
オペレーティング システム間 (Centos と MacOS など) でライブラリの不一致が見られたため、Docker イメージを構築し、プロジェクト全体をコンテナ内で実行する必要があると結論付けました。 Dockerfile には、必要な手順がすべて含まれています。
システムの前提条件:
Docker を介してプロジェクトをコンパイルして実行するには、プロジェクトの親ディレクトリに移動して、次の操作を行います。
chmod +x ./configure.sh && ./configure.sh
を実行して metis fl プロジェクトを構成します。
注: すべてのプロジェクトの依存関係を構成するため、Docker イメージをビルドする前に上記のコマンドを実行します。
プロジェクト全体の Docker イメージをビルドします。
docker build -t projectmetis_ubuntu_22_04 -f DockerfileUbuntu .
docker build -t projectmetis_dev -f DockerfileDev .
docker build -t projectmetis_rockylinux_8 -f DockerfileRockyLinux .
次のイメージのおおよそのサイズ (Docker を使用): ~9GB (CUDA なし)、~12GB (CUDA あり)Docker CUDA イメージをビルドします (Ubuntu および RockyLinux イメージにのみ適用されます)。
cd docker_images/cuda/ubuntu/11.7 && docker build -t projectmetis_ubuntu_22_04_cuda -f Dockerfile .
cd docker_images/cuda/rockylinux/11.3 && docker build -t projectmetis_rockylinux_8_cuda -f Dockerfile .
nvidia-docker run --rm --gpus all projectmetis_ubuntu_22_04_cuda nvidia-smi
brew install googletest
)brew install protobuf
として)プロジェクト ファイルが識別できない場合は、Bazel を同期する必要があります。そのためには:
https://trello.com/b/bYLUYqGK/metis-v01