Skip to content

Commit 86f28ff

Browse files
committed
(feat): use anndata_to_GPU
1 parent 82ec06b commit 86f28ff

5 files changed

Lines changed: 19 additions & 21 deletions

File tree

benchmarks/benchmarks/preprocessing.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ class PreprocessingSuite:
1616
param_names = ["input_data"]
1717

1818
def setup(self, input_data: str):
19-
self.adata = self._data_dict[input_data].copy()
19+
self.adata = rsc.get.anndata_to_GPU(self._data_dict[input_data].copy(), copy=True)
2020

2121
def time_calculate_qc_metrics(self, *_):
2222
self.adata.var["mt"] = self.adata.var_names.str.startswith("MT-")

benchmarks/benchmarks/readwrite.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,26 +34,25 @@
3434
from collections.abc import Callable
3535
from pathlib import Path
3636

37+
import pathlib
38+
39+
sc.settings.datasetdir = pathlib.Path(__file__).parent.resolve() / "data"
3740

3841
@dataclass
3942
class Dataset:
4043
path: Path
4144
get: Callable[[], anndata.AnnData]
4245

43-
44-
pbmc3k = Dataset(
45-
path=sc.settings.datasetdir / "pbmc3k_raw.h5ad", get=sc.datasets.pbmc3k
46-
)
46+
path="/p/project/training2406/team_scverse/gold2/rapids_singlecell/benchmarks/data/pbmc3k_raw.h5ad"
4747

4848

4949
class ToGPUSuite:
50-
_data_dict = dict(pbmc3k=pbmc3k)
50+
_data_dict = dict(pbmc3k=anndata.read_h5ad(path))
5151
params = _data_dict.keys()
5252
param_names = ["input_data"]
5353

5454
def setup(self, input_data: str):
55-
self.path = self._data_dict[input_data].path
56-
self.data = self._data_dict[input_data].get()
55+
self.data = self._data_dict[input_data]
5756

5857
def time_to_gpu(self, *_):
5958
anndata_to_GPU(self.data)

benchmarks/benchmarks/squidpy.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,21 @@
77

88
from itertools import product
99

10-
import scanpy as sc
10+
import anndata as ad
1111

1212
import rapids_singlecell as rsc
1313

14+
import pathlib
1415

1516
class ToolsSuite:
1617
_data_dict = dict(
17-
visium_sge=sc.datasets.visium_sge(),
18+
visium_sge=ad.read_h5ad("/p/project/training2406/team_scverse/gold2/rapids_singlecell/benchmarks/data/paul15.h5ad"),
1819
)
1920
params = _data_dict.keys()
2021
param_names = ["input_data"]
2122

2223
def setup(self, input_data):
23-
self.adata = self._data_dict[input_data].copy()
24-
assert "X_pca" in self.adata.obsm
24+
self.adata = rsc.get.anndata_to_GPU(self._data_dict[input_data].copy(), copy=True)
2525

2626
def time_ligrec(self, *_):
2727
gene_ids = self.adata.var.index
@@ -31,8 +31,7 @@ def time_ligrec(self, *_):
3131
"leiden",
3232
interactions=interactions,
3333
n_perms=5,
34-
use_raw=True,
35-
copy=True,
34+
use_raw=False,
3635
)
3736

3837
def peakmem_ligrec(self, *_):
@@ -43,8 +42,7 @@ def peakmem_ligrec(self, *_):
4342
"leiden",
4443
interactions=interactions,
4544
n_perms=5,
46-
use_raw=True,
47-
copy=True,
45+
use_raw=False,
4846
)
4947

5048
def time_autocorr_moran(self, *_):

benchmarks/benchmarks/tools.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99

1010
import rapids_singlecell as rsc
1111

12+
import pathlib
13+
1214

1315
class ToolsSuite:
1416
_data_dict = dict(
@@ -18,7 +20,7 @@ class ToolsSuite:
1820
param_names = ["input_data"]
1921

2022
def setup(self, input_data):
21-
self.adata = self._data_dict[input_data].copy()
23+
self.adata = rsc.get.anndata_to_GPU(self._data_dict[input_data].copy(), copy=True)
2224
assert "X_pca" in self.adata.obsm
2325

2426
def time_umap(self, *_):
@@ -40,7 +42,7 @@ def peakmem_leiden(self, *_):
4042
rsc.tl.leiden(self.adata)
4143

4244
def time_embedding_denity(self, *_):
43-
rsc.tl.embedding_density(self.adata, basis="X_umap")
45+
rsc.tl.embedding_density(self.adata, basis="umap")
4446

4547
def peakmem_embedding_denity(self, *_):
46-
rsc.tl.embedding_density(self.adata, basis="X_umap")
48+
rsc.tl.embedding_density(self.adata, basis="umap")

benchmarks/environment.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
name: test_asv
21
channels:
32
- rapidsai
43
- nvidia
54
- conda-forge
65
dependencies:
76
- python=3.11
8-
- cuda-version=11.8
7+
- cuda-version=12
98
- cudf=24.4
109
- cuml=24.4
1110
- cugraph=24.4

0 commit comments

Comments
 (0)