这是一场典型的 heat lab:代码没有变,数据规模变大以后,机器先开始发热。
实验设置
固定 Python 3.11、Scanpy 1.10 和 50 个 PCA 分量,只改变细胞数量与邻居数。所有运行都记录峰值内存和 wall time。
| cells | neighbors | peak memory | wall time |
|---|---|---|---|
| 10,000 | 15 | 4.2 GB | 38 s |
| 50,000 | 15 | 11.8 GB | 3 m 41 s |
| 100,000 | 30 | 24.6 GB | 11 m 08 s |
结论
邻居数增加会放大图结构和搜索成本。对大数据集,先保存 PCA 矩阵,再考虑近似最近邻和分块策略。