From a081126cc2deef5f8e4daee2022a923ade4d4015 Mon Sep 17 00:00:00 2001 From: jeandut Date: Mon, 18 Nov 2024 19:31:00 +0100 Subject: [PATCH 1/5] adding runtimes and pinning versions --- README.md | 10 +++++++++- setup.py | 24 +++++++++++++----------- 2 files changed, 22 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 5880655..2370e47 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ To install the package, create an env with python `3.9` with conda conda create -n fedeca python=3.9 conda activate fedeca ``` - +This should take under 20 seconds with a reasonably good connexion. Within the environment, install the package by running: ``` @@ -31,6 +31,8 @@ git clone https://github.com/owkin/fedeca.git cd fedeca pip install -e ".[all_extra]" ``` +The cloning should take less than 5 seconds and the pip install +should take around 1 min and 30 seconds. If you plan on developing, you should also install the pre-commit hooks @@ -40,10 +42,16 @@ pre-commit install This will run all the pre-commit hooks at each commit, ensuring a clean repo. +All estimated runtimes computations use as reference machine a Mac M3 Pro with 18G of RAM +and an internet connexion at 120Mbps as measured by fast.com. + ## Quickstart Go [here](./quickstart/quickstart.md). +Copy-pasting all cells of the tutorial into a regular python script gives a runtime of approximately 1 minute, +with less than 2 seconds spent on each run of the FedECA algorithm in-RAM. + ## Citing FedECA ``` diff --git a/setup.py b/setup.py index d3e6f75..0a66360 100644 --- a/setup.py +++ b/setup.py @@ -31,22 +31,24 @@ install_requires=[ # We cannot use the git+https / git+ssh syntax here because of docker # build issues related to git not being installed + # Commented pinned versions are only there as references but should + # not matter as long as the versions are compatible with the ones + # uncommented. "substrafl==0.46.0", - "argparse", "numpy==1.26.4", - "pandas", - "pre-commit", - "scipy", - "seaborn", - "opacus", - "lifelines", - "git-python", - "build", + "pandas",#==2.2.3 + "pre-commit",#==4.0.1 + "scipy",#==1.13.1 + "seaborn",#==0.13.2 + "opacus",#==1.4.0 + "lifelines",#==0.29.0 + "git-python",#==1.0.3 + "build",#==1.2.2.post1 "torch==1.13.1", "scikit-learn==1.2.1", - "pydantic", # Need to be updated to > 2.0 to use latest Substra + "pydantic", #==2.23.4 "indcomp==0.2.1", - "hydra-core", + "hydra-core",#==1.3.2 ], extras_require={ "all_extra": all_extra, From 22afb177d22158f6af0a7aa89ed6216234ac2a1e Mon Sep 17 00:00:00 2001 From: jeandut Date: Mon, 18 Nov 2024 22:13:11 +0100 Subject: [PATCH 2/5] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2370e47..c0f7539 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ and an internet connexion at 120Mbps as measured by fast.com. Go [here](./quickstart/quickstart.md). Copy-pasting all cells of the tutorial into a regular python script gives a runtime of approximately 1 minute, -with less than 2 seconds spent on each run of the FedECA algorithm in-RAM. +with less than 2 seconds spent on each run of the FedECA algorithm in-RAM (using the same Mac M3 Pro as a reference). ## Citing FedECA From 23a5e3191dbe99a6fce718ec7134d59f137f94d8 Mon Sep 17 00:00:00 2001 From: jeandut Date: Mon, 18 Nov 2024 22:13:17 +0100 Subject: [PATCH 3/5] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c0f7539..f7c1133 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ pre-commit install This will run all the pre-commit hooks at each commit, ensuring a clean repo. All estimated runtimes computations use as reference machine a Mac M3 Pro with 18G of RAM -and an internet connexion at 120Mbps as measured by fast.com. +and an internet connexion with a speed of 120Mbps (as measured by fast.com). ## Quickstart From 1e0ba09f4287b49466c6e5215566249efa56d88b Mon Sep 17 00:00:00 2001 From: jeandut Date: Mon, 18 Nov 2024 22:13:21 +0100 Subject: [PATCH 4/5] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f7c1133..b847873 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ git clone https://github.com/owkin/fedeca.git cd fedeca pip install -e ".[all_extra]" ``` -The cloning should take less than 5 seconds and the pip install +The cloning itself should take less than 5 seconds and the pip install should take around 1 min and 30 seconds. If you plan on developing, you should also install the pre-commit hooks From a0c7edce705e6f24e6db5b3188bf11507ea2ba7c Mon Sep 17 00:00:00 2001 From: jeandut Date: Mon, 18 Nov 2024 22:13:27 +0100 Subject: [PATCH 5/5] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b847873..d422848 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ To install the package, create an env with python `3.9` with conda conda create -n fedeca python=3.9 conda activate fedeca ``` -This should take under 20 seconds with a reasonably good connexion. +Creating the conda environment should take under 20 seconds on a modern computer with a reasonably good internet connexion (see below for details). Within the environment, install the package by running: ```