Skip to content

v1.0.25

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Jul 19:25

JanusX v1.0.25 Release Notes

Compared with v1.0.24, v1.0.25 mainly focuses on scaling mixed-model GWAS to larger cohorts, simplifying BLUP usage in GS, and further reducing peak memory across GWAS/GS/GRM workflows while improving cross-tool consistency.

Added

  • Added splmm and splmm-exact, together with sparse-GRM build and sparse null-model routes for very large GWAS cohorts. splmm-exact provides an exact sparse mixed-model test, while splmm provides a faster approximate route for large-scale scans.
  • Added fvlmm and related low-rank/FaST-LMM style execution paths, providing an intermediate option between dense LMM and sparse LMM on large datasets.
  • Added richer REML outputs, including narrow-sense heritability estimation and PVEc for sparse-REML correction, plus new memory-control knobs in jx grm, jx gs, and related workflows.
  • Added fastpop as the JanusX population-structure entry.

Changed

  • Unified -GBLUP and -rrBLUP into -BLUP; JanusX now switches solver routes automatically according to marker and sample scale.
  • Removed the GS -GBLUP ad/d path in preparation for a future multi-random-effect solver, and reworked BLUP/rrBLUP exact and PCG routes to better align centered scaling and estimates with GBLUP.
  • Reworked GWAS metadata scanning, packed BED routing, CLI output, and progress display so dense LMM, FvLMM, SparseLMM, FarmCPU, and related routes can reuse faster statistics and memory-control paths.
  • Updated fastpop/PCA/postGWAS/postGS utility behavior and benchmark defaults to better match large real-data workflows.

Fixed

  • Fixed a phenotype-recognition bug in GWAS and related modules where a phenotype column could be skipped when its first row was NA.
  • Fixed multiple FarmCPU packed-BED fallback, redundant-copy, and high-RSS issues, reducing unnecessary full-genotype duplication during trait-wise runs.
  • Fixed SparseLMM/SparseGRM issues in scaling, metadata scanning, peak-RSS reporting, approximate null-marker sampling, and CLI/progress output.
  • Fixed rrBLUP/BLUP exact and PCG bugs, fallback regressions, lambda/PVE inconsistencies, and several memory/performance edge cases.
  • Fixed additional regressions in RSVD/PCA, plotting/postGWAS prefixes, benchmark scripts, Python 3.11 behavior, Windows/Linux build dependencies, and other workflow edge cases.

相较于 v1.0.24,v1.0.25 主要聚焦于把 mixed-model GWAS 扩展到更大样本规模、简化 GS 中 BLUP 的使用方式,并继续降低 GWAS/GS/GRM 工作流的峰值内存,同时提升与其它常用工具之间的一致性。

新增

  • 新增 splmmsplmm-exact,并补充 sparse GRM 构建与 sparse null model 路径,用于超大样本规模的 GWAS。splmm-exact 提供精确的 sparse mixed-model 检验,splmm 提供更快的近似扫描路径。
  • 新增 fvlmm 及相关 low-rank/FaST-LMM 风格执行路径,为大规模数据集提供 dense LMM 与 sparse LMM 之间的中间方案。
  • 新增更丰富的 reml 输出,包括狭义遗传力估计以及用于 sparse-REML 校正的 PVEc,同时为 jx grmjx gs 等流程补充了内存控制参数。
  • 新增 fastpop 作为 JanusX 的群体结构分析入口。

变更

  • -GBLUP-rrBLUP 融合为 -BLUP,JanusX 会根据位点数和样本规模自动切换求解路径。
  • 移除了 GS 模块中的 -GBLUP ad/d 路径,为后续更强的多随机效应求解器预留接口;同时重构了 BLUP/rrBLUP 的 exact 与 PCG 路径,使中心化缩放与估计结果更好地对齐 GBLUP。
  • 重构了 GWAS metadata 扫描、packed BED 路由、CLI 输出与进度显示,使 dense LMM、FvLMM、SparseLMM、FarmCPU 等路径可以复用更快的统计与内存控制逻辑。
  • 更新了 fastpop、PCA、postGWAS、postGS 相关工具的行为与 benchmark 默认设置,使其更适合真实大规模数据工作流。

修复

  • 修复了 GWAS 等模块中的表型识别问题:当某一表型列第一行是 NA 时,整列可能被错误跳过。
  • 修复了 FarmCPU 中多处 packed BED fallback、冗余拷贝与高 RSS 问题,减少了按性状运行时不必要的整份基因型重复占用。
  • 修复了 SparseLMM/SparseGRM 在缩放、metadata 扫描、峰值 RSS 统计、近似 null marker 采样以及 CLI/进度输出上的多项问题。
  • 修复了 rrBLUP/BLUP 的 exact 与 PCG 路径中的若干 bug、fallback 回归、lambda/PVE 不一致以及多类内存/性能边界问题。
  • 修复了 RSVD/PCA、绘图/postGWAS prefix、benchmark 脚本、Python 3.11 行为、Windows/Linux 构建依赖等其它工作流边界问题。