Conversation
Deletes examples/imagenet_diffusion, examples/mnist_diffusion, the HuggingFace diffusers wrapper, the diffusion Lightning wrapper, the imagenet diffusion benchmark, and related tests and slurm scripts. Drops DiffusionConfig / DiffusionExperimentConfig from default_cfg.py and the HF-adapters section from docs/api_reference/networks.rst. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Deletes nvsubquadratic/networks/jit.py and jit_utils.py (port of LTH14/JiT under MIT), scripts/data/generate_jit_fid_stats.py, and LICENSE/third_party.txt (which existed solely to attribute the JiT code). Removes the JiT sections from docs/api_reference/networks.rst and drops third_party.txt from the pyproject.toml license-files list. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Deletes nvsubquadratic/ops/fftconv_fp16.py and circular_fftconv_fp16.py along with their tests. Removes the use_fp16_fft parameter from CKConvND (imports, FFT_FUNCTIONS_FP16 tables, validation blocks, dispatch logic, extra_repr). Drops the use_fp16_fft=False call-site keyword from all well/ example configs. Removes the fp16 sections from docs/api_reference/ops.rst and cleans up the fftconv.py module docstring. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Deletes nvsubquadratic/ops/fftconv_multihead.py, nvsubquadratic/modules/ckconv_multihead_nd.py, tests/test_multihead_lowrank.py, and the two multihead vit5_imagenet example configs. Removes the CKConvMultiheadND entry from docs/api_reference/modules.rst and the multi-head FFT section from docs/api_reference/ops.rst. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Removes the DiffusionExperimentConfig, DiffusionConfig, and DiffusionWrapper autosummary entries that were missed in the diffusion removal commit, causing a docs build failure. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tions Follow-up to the fp16/JiT/diffusion/multihead removals. Deletes the now orphaned docs/ops/FP16_FFTCONV_DERIVATION.md and benchmarks/ops/FP16_FFTCONV_RESULTS.md (the fp16 FFT-conv ops they describe are gone), and prunes the dangling fp16/multihead references left behind in docs/ops/README.md, docs/architecture.md, docs/benchmarks.md, docs/api_reference/ops.rst, benchmarks/ops/README.md, and docs-tracker.md (also clears the stale JiT/diffusion tracker rows). Converts the mixed-BC tracker (MIXED_BC_PLAN.md) into proper feature documentation (mixed_boundary_conditions.md): the per-axis BC feature is fully shipped (fp32 mixed_fftconv ops + CKConvND wiring), so the plan/branch/owner/changelog framing and the deferred fp16/multihead sections (now deleted code) are dropped in favor of motivation, the fft_padding API, the per-axis algorithm, and current limitations. Inbound code comments updated to the new filename. Docs build green under -W --keep-going. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
These task examples are not part of the paper's experiments. Deletes
examples/{mnist,smnist,ucf101}_classification and their doc references
in docs/examples/index.md (Classification/Diffusion sections) and the
docs/repository_overview.md tree. Also clears the already-broken
mnist_diffusion/imagenet_diffusion links left in those two docs by the
earlier diffusion removal.
The mnist config was the only code consumer (tests/modules/
test_torch_compile.py imported it). That config is now inlined verbatim
into the test as a local fixture, so the torch.compile-compatibility
test is self-contained and no longer depends on examples/. Verified on
GPU (RTX A6000): 3 passed, 2 xpassed.
MNISTDataModule is retained — it is still used by spatial_recall_dataset
and tests/test_pixel_scaling. run.py's --config help example repointed
to a kept config. Docs build green under -W --keep-going.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Drop diffusers>=0.25.0 from pyproject.toml dependencies: its only consumer (nvsubquadratic/networks/huggingface_diffusers.py) was removed with the diffusion code, and no diffusers imports remain. - Delete experiments/datamodules/ucf101.py (UCF101DataModule): the ucf101_classification example was its only consumer and was removed; nothing imports it now. Drop its docs/api_reference/experiments.rst autosummary entry and docs-tracker row. Docs build green under -W --keep-going. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
FID evaluation existed only to score diffusion-model samples, which were
removed. scripts/evaluation/eval_cfid.py ("generate samples from a
trained diffusion model and compute CleanFID") hard-requires
config.diffusion and so raised unconditionally after DiffusionConfig was
deleted; it was the sole consumer of nvsubquadratic/metrics/cleanfid.py,
whose sole external dep was clean-fid. All three are removed.
Also clears the references they left behind: the Metrics section +
intro mention in docs/api_reference/core.rst, the metrics/ and
scripts/evaluation tree rows + "FID stats" note in
docs/repository_overview.md, the metrics/ row in docs-tracker.md, the
stale cleanfid/diffusers/torch_fidelity entries in docs/conf.py's
autodoc_mock_imports, and the deleted-diffusion-test rows in
tests/README.md.
Docs build green under -W --keep-going.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
nvsubquadratic/networks/baselines/unet_convnext.py is a line-for-line port of the_well.benchmark.models.unet_convnext (PolymathicAI/the_well, BSD-3-Clause) — verified against upstream: identical module docstring, class set (LayerNorm/Block/Stage/Upsample/Downsample/UNetConvNext), and the reproduced skips[0] decoder bug. The Well's file is itself an adaptation of facebookresearch/ConvNeXt (MIT). unet_convnext_v2.py builds on it. Both shipped with only the NVIDIA Apache-2.0 header and no third-party attribution. Reinstates LICENSE/third_party.txt (it had been removed with the JiT port) with verbatim BSD-3-Clause (The Well, (c) 2024 Polymathic AI) and MIT (ConvNeXt, (c) Meta Platforms) texts; adds a second SPDX-FileCopyrightText (Polymathic AI) + a "Portions ported from..." notice to both files; re-adds third_party.txt to pyproject.toml license-files. license-check hook passes. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The implicit-long-convs/ccnn_v2 repo is private/404, so the "Adapted from https://github.com/implicit-long-convs/ccnn_v2" provenance lines (11 header comments + 9 docstring lines across 12 core library / experiments files) were dead links on the public site. ccnn_v2 is the authors' own prior CCNN-v2 codebase (David Romero, now at NVIDIA), so this is self-attribution with no external license obligation; the underlying methods remain cited via the CKConv/CCNN papers in the relevant module docstrings. Also drops 3 stale "# TODO: Add licence header" placeholder comments (files already carry the SPDX header). license-check hook passes; docs build green under -W --keep-going. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The make-repo-public portal's "Check status" requires a LICENSE file at the repo root and rejects the LICENSE/ directory layout. Since a file named LICENSE and a directory LICENSE/ cannot coexist, restructure: LICENSE/License.txt -> LICENSE (Apache-2.0) LICENSE/third_party.txt -> THIRD_PARTY_NOTICES.txt (The Well BSD-3 + ConvNeXt MIT) Updates pyproject.toml license-files to ["LICENSE", "THIRD_PARTY_NOTICES.txt"] and the per-file notices in unet_convnext.py / unet_convnext_v2.py to point at THIRD_PARTY_NOTICES.txt. Content is unchanged (git tracks both as renames); license-check hook passes. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Environment setup
Create the conda environment (required to run tests):
Pre-commit
Run locally before pushing:
Test plan
Documentation checklist
For every new or modified public symbol in
nvsubquadratic/orexperiments/:Args:andReturns:blocks with tensor shapes where applicable.r"""..."""(required by ruff D301).docs-tracker.mdwith status[x].