repowiserepowise
Sign in
nvidia/nccl
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowisenvidia/nccl
NC
NC

nvidia / nccl

cppmaster9287574172.6K linessynced 2mo ago

Code health

5.6out of 10Fair

This codebase scores 5.6 out of 10 for code health, which we rate fair. It also scores maintainability 7.6 and static performance 9.9 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 106 of 834 files are git hotspots, and they average 2.9 — which is where the fixes pay off most.

Full health report →
Score validation14/205.6× baselineTop-ranked files that did go on to need a bug fixDead code1,118exportsUnused exports that nothing in the graph reaches

Do next

1 thing worth doing this quarter.

Worth planning

  • Delete 1,086 unused symbols and files (16,327 lines)

    Nothing in the graph reaches them, across 111 files; every reader and agent pays to skip them.

    symbols
    1086
    lines
    16,327
    safe to delete
    Yes(inferred)
    Medium effort

Improve what Repowise can see

  • Add a test coverage report

    Without one, Repowise cannot tell tested code from untested code, so every test-related action says “unknown”.

    line coverage
    Unknown, no report
    Small effort
  • Review the 67 proposed decisions

    None is accepted yet, so nothing can drift from one and agents get no enforced guidance from them.

    proposed
    67
    accepted
    0
    Medium effort
Lines of code
172.6K
Files
834
Symbols
13,104
Modules
8
Languages
6

Recent activity

All commits →

Commits

  • 99932967contrib/nccl_m2n: rename NCCL Xfer to M2N3mo ago
  • 0e3bb523nccl4py 0.3.13mo ago
  • 0bf94a07docs: fix window registration flag name4mo ago
  • 9d22d5dfNCCL EP 0.1.04mo ago
  • b245138bdocs: udpate ncclTeamRail definition to better reflect MNNVL4mo ago
  • 48a4bab8Add new GIN features to docs4mo ago

Decisions

  • Use size-based ABI versioning for cross-boundary structsproposed · 2mo ago
  • Forward declare nvmlDevice_t on Windows to avoid including nvml.hproposed · 2mo ago
  • Define PATH_MAX on Windowsproposed · 2mo ago
  • Refactor RMA proxy descriptor APIproposed · 2mo ago
  • Remove SHM CE proxy code and thread contextproposed · 2mo ago
  • Add resource sharing thread and mode support to GDAKI APIsproposed · 2mo ago
▸

Everything we found

4,094 open

Every detector's open count by area, each with its worst example. An inventory, not a to-do list: the actions above are the part worth doing.

  • worst item is critical severity. Code health2,299Untested hotspot · src/transport.cc21 findings · 9.5 deducted→
  • worst item is medium severity. Refactoring108__init__+1.2 health, S effort · contrib/nccl_ubx/ubx/_nccl_backend.py→
  • worst item is medium severity. Decisions173contrib/nccl_ep/nccl_ep.cc67 awaiting review · 106 hotspots ungoverned→
  • worst item is medium severity. Ownership391bindings/nccl4py/nccl/ep/__init__.py96% single-owner concentration, 14 commits in 90d→
  • worst item is low severity. Dead code1,123GroupUnreachable class (89 lines)→

Composition

Open the graph →
cpp 74%python 17%
makefile 8%shell 1%c 1%Other 0%

Explore this codebase

  • Docs0 pages across 8 modules→
  • ChatAsk this codebase a question and get an answer with its sources.→
  • Files834 files with per-file docs, health and history→
  • ArchitectureDependency graph, layers, and 13 entry points→
  • Code healthPer-file scores, 2,387 open findings, coverage and refactoring targets→
  • Knowledge graphEntities, communities, and the paths between them→
  • Change couplingFiles that keep changing together, mined from commit history→
  • CommitsChange-risk ranked history with agent provenance→
  • ContributorsBus factor, per-file maintainers, and the human/agent split→
  • StatsSize class, origin, lifetime churn, rhythm and records→
  • CostsWhat indexing this snapshot cost, by model and by run.→