From 10146c61cf82377d7dddf6388435e885261ecaba Mon Sep 17 00:00:00 2001 From: Teodor-Dumitru Ene <34819528+tdene@users.noreply.github.com> Date: Thu, 6 Nov 2025 05:39:06 -0600 Subject: [PATCH 01/27] Add BytesIO to safe_globals (#2074) --- examples/inference/gpt/gpt_dynamic_inference.py | 5 ----- megatron/core/safe_globals.py | 2 ++ 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/examples/inference/gpt/gpt_dynamic_inference.py b/examples/inference/gpt/gpt_dynamic_inference.py index e5344fbb8be..c456f7ea289 100644 --- a/examples/inference/gpt/gpt_dynamic_inference.py +++ b/examples/inference/gpt/gpt_dynamic_inference.py @@ -60,11 +60,6 @@ import io import megatron -torch.serialization.add_safe_globals([io.BytesIO]) -torch.serialization.add_safe_globals([megatron.core.rerun_state_machine.RerunState]) -torch.serialization.add_safe_globals([megatron.core.rerun_state_machine.RerunDiagnostic]) - - def add_dynamic_inference_args(parser: ArgumentParser) -> ArgumentParser: """Dynamic inference arguments.""" diff --git a/megatron/core/safe_globals.py b/megatron/core/safe_globals.py index 94a05e03c41..d2baed2a4a0 100755 --- a/megatron/core/safe_globals.py +++ b/megatron/core/safe_globals.py @@ -1,6 +1,7 @@ # Copyright (c) 2025, NVIDIA CORPORATION. All rights reserved. from argparse import Namespace +from io import BytesIO from pathlib import PosixPath from types import SimpleNamespace @@ -26,6 +27,7 @@ RerunDiagnostic, RerunMode, RerunState, + BytesIO, ] From f167a85d603c720a4ed017ede46897455e65bce1 Mon Sep 17 00:00:00 2001 From: Dmytro Pykhtar <37850217+dimapihtar@users.noreply.github.com> Date: Thu, 6 Nov 2025 18:17:42 +0200 Subject: [PATCH 02/27] add deprecation warning for legacy tokenizer system (#2145) Signed-off-by: dimapihtar --- megatron/core/datasets/megatron_tokenizer.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/megatron/core/datasets/megatron_tokenizer.py b/megatron/core/datasets/megatron_tokenizer.py index 224de24a9f9..08b602c4766 100644 --- a/megatron/core/datasets/megatron_tokenizer.py +++ b/megatron/core/datasets/megatron_tokenizer.py @@ -1,11 +1,14 @@ # Copyright (c) 2024, NVIDIA CORPORATION. All rights reserved. import json +import logging from abc import ABC, abstractmethod from collections import OrderedDict from typing import Any import numpy +logger = logging.getLogger(__name__) + class MegatronLegacyTokenizer(ABC): """Abstract class for tokenizer @@ -20,6 +23,12 @@ class MegatronLegacyTokenizer(ABC): """ def __init__(self, *tokenizer_paths: str, **tokenizer_options: Any): + # Deprecation warning + logger.warning( + "You’re using the legacy tokenizer system, which is deprecated " + "and will be removed in a future release. Please migrate to the new tokenizer system " + "(`megatron.core.tokenizers.MegatronTokenizer`)." + ) self.unique_identifiers = OrderedDict() self.unique_identifiers["class"] = type(self).__name__ self.unique_identifiers["tokenizer_path"] = list(tokenizer_paths) From 23a1dcaf740ec5b9d667cb4968af327a2e1ad238 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Thu, 6 Nov 2025 20:34:45 +0100 Subject: [PATCH 03/27] replay: ci: Bump LTS container (#2157) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- .github/workflows/cicd-main.yml | 34 +- .gitlab/stages/01.build.yml | 6 +- docker/.ngc_version.dev | 1 + docker/.ngc_version.lts | 1 + docker/Dockerfile.ci.dev | 6 +- docker/Dockerfile.ci.lts | 98 -- pyproject.toml | 19 +- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 315 ++++-- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 615 +++++++++-- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 615 +++++++++-- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 615 +++++++++-- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 315 ++++-- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 615 +++++++++-- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 998 +++++++++--------- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 521 +++++++-- .../gpt3_mcore_tp1_pp2/golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 313 ++++-- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 563 ++++++++-- .../gpt3_mcore_tp1_pp4/golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 313 ++++-- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 537 ++++++++++ .../golden_values_lts_dgx_a100.json | 538 +++++++++- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_dev.json | 287 +++++ .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../golden_values_dev.json | 287 +++++ .../golden_values_lts.json | 287 +++++ .../golden_values_lts_dgx_a100.json | 288 ++++- .../python_scripts/download_golden_values.py | 4 +- .../python_scripts/launch_jet_workload.py | 3 + uv.lock | 551 ++-------- 88 files changed, 34082 insertions(+), 1945 deletions(-) create mode 100644 docker/.ngc_version.dev create mode 100644 docker/.ngc_version.lts delete mode 100644 docker/Dockerfile.ci.lts create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_a2a_ovlp_8experts_etp1_ep4/golden_values_dev.json create mode 100644 tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts.json create mode 100644 tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_dev.json create mode 100644 tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts.json diff --git a/.github/workflows/cicd-main.yml b/.github/workflows/cicd-main.yml index 95a5dfc86c8..eadc35b9b82 100644 --- a/.github/workflows/cicd-main.yml +++ b/.github/workflows/cicd-main.yml @@ -232,11 +232,26 @@ jobs: with: python-version: 3.12 + - name: Install GH CLI + shell: bash -x -e -u -o pipefail {0} + run: | + apt-get update + apt-get install -y gh + - name: Get PR info id: get-pr-info if: startsWith(github.ref, 'refs/heads/pull-request/') uses: nv-gha-runners/get-pr-info@main + - name: Has lts label + id: has-lts-label + env: + GH_TOKEN: ${{ secrets.PAT }} + run: | + PR_NUMBER=${{ fromJSON(steps.get-pr-info.outputs.pr-info || '{}').number }} + HAS_LTS_LABEL=$(gh pr view $PR_NUMBER --json labels | jq '[.labels[].name] | any(. == "container::lts")') || echo "false" + echo "main=$HAS_LTS_LABEL" | tee -a $GITHUB_OUTPUT + - name: Download test data shell: bash env: @@ -275,6 +290,22 @@ jobs: echo "$LAST_PRS" | tee -a $GITHUB_OUTPUT echo "EOF" | tee -a $GITHUB_OUTPUT + - name: Parse baseimage + shell: bash + id: base-image + env: + HAS_LTS_LABEL: ${{ steps.has-lts-label.outputs.main }} + run: | + if [ "$HAS_LTS_LABEL" == "true" ]; then + NGC_VERSION=$(cat docker/.ngc_version.lts) + echo "version=$NGC_VERSION" | tee -a $GITHUB_OUTPUT + echo "image_type=lts" | tee -a $GITHUB_OUTPUT + else + NGC_VERSION=$(cat docker/.ngc_version.dev) + echo "version=$NGC_VERSION" | tee -a $GITHUB_OUTPUT + echo "image_type=dev" | tee -a $GITHUB_OUTPUT + fi + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 @@ -286,7 +317,8 @@ jobs: context: . target: main build-args: | - FROM_IMAGE_NAME=nvcr.io/nvidia/pytorch:25.09-py3 + FROM_IMAGE_NAME=${{ steps.base-image.outputs.version }} + IMAGE_TYPE=${{ steps.base-image.outputs.image_type }} cache-from: | type=registry,ref=${{ env.container-registry }}/megatron-lm:${{ fromJSON(steps.get-pr-info.outputs.pr-info || '{}').number || 0 }}-buildcache,mode=max type=registry,ref=${{ env.container-registry }}/megatron-lm:main-buildcache,mode=max diff --git a/.gitlab/stages/01.build.yml b/.gitlab/stages/01.build.yml index 0658daaa9ec..d67225311f6 100644 --- a/.gitlab/stages/01.build.yml +++ b/.gitlab/stages/01.build.yml @@ -53,10 +53,12 @@ test:build_image: parallel: matrix: - IMAGE: CI_MCORE_LTS_IMAGE - FILE: Dockerfile.ci.lts - BASE_IMAGE: nvcr.io/nvidia/pytorch:24.01-py3 + FILE: Dockerfile.ci.dev + IMAGE_TYPE: lts + BASE_IMAGE: nvcr.io/nvidia/pytorch:25.09-py3 - IMAGE: CI_MCORE_DEV_IMAGE FILE: Dockerfile.ci.dev + IMAGE_TYPE: dev BASE_IMAGE: nvcr.io/nvidia/pytorch:25.09-py3 - IMAGE: UTILITY_IMAGE FILE: Dockerfile.linting diff --git a/docker/.ngc_version.dev b/docker/.ngc_version.dev new file mode 100644 index 00000000000..6b72812b34f --- /dev/null +++ b/docker/.ngc_version.dev @@ -0,0 +1 @@ +nvcr.io/nvidia/pytorch:25.09-py3 \ No newline at end of file diff --git a/docker/.ngc_version.lts b/docker/.ngc_version.lts new file mode 100644 index 00000000000..6b72812b34f --- /dev/null +++ b/docker/.ngc_version.lts @@ -0,0 +1 @@ +nvcr.io/nvidia/pytorch:25.09-py3 \ No newline at end of file diff --git a/docker/Dockerfile.ci.dev b/docker/Dockerfile.ci.dev index 179c2aa21a6..709583d61fc 100644 --- a/docker/Dockerfile.ci.dev +++ b/docker/Dockerfile.ci.dev @@ -1,8 +1,6 @@ # syntax=docker/dockerfile:1.3-labs ARG FROM_IMAGE_NAME -ARG WHEEL_DIR=/workspace/wheels - FROM ${FROM_IMAGE_NAME} as main ENV PIP_CONSTRAINT="" ENV DEBIAN_FRONTEND=noninteractive @@ -25,16 +23,16 @@ RUN bash -ex <<"EOF" curl -LsSf https://astral.sh/uv/${UV_VERSION}/install.sh | sh EOF -ARG WHEEL_DIR COPY README.md pyproject.toml uv.lock /workspace/ COPY megatron/core/__init__.py /workspace/megatron/core/ COPY megatron/core/package_info.py /workspace/megatron/core/ +ARG IMAGE_TYPE=dev RUN --mount=type=cache,target=/root/.cache/uv \ bash -ex <<"EOF" export NVTE_CUDA_ARCHS="80;90;100" uv venv ${UV_PROJECT_ENVIRONMENT} --system-site-packages uv sync --only-group build - uv sync --extra dev --extra mlm --link-mode copy --locked \ + uv sync --extra ${IMAGE_TYPE} --extra mlm --link-mode copy --locked \ --no-install-package torch \ --no-install-package torchvision \ --no-install-package triton \ diff --git a/docker/Dockerfile.ci.lts b/docker/Dockerfile.ci.lts deleted file mode 100644 index 7da27a03f1d..00000000000 --- a/docker/Dockerfile.ci.lts +++ /dev/null @@ -1,98 +0,0 @@ -# syntax=docker/dockerfile:1.3-labs - -ARG FROM_IMAGE_NAME -ARG WHEEL_DIR=/workspace/wheels - -FROM $FROM_IMAGE_NAME as build_mamba -WORKDIR /opt -ARG WHEEL_DIR -RUN MAMBA_FORCE_BUILD=TRUE pip3 wheel -v git+https://github.com/state-spaces/mamba.git@v2.0.3 -w $WHEEL_DIR - -ARG FROM_IMAGE_NAME -FROM $FROM_IMAGE_NAME as build_causalconv1d -WORKDIR /opt -ARG WHEEL_DIR -RUN CAUSAL_CONV1D_FORCE_BUILD=TRUE pip3 wheel -v git+https://github.com/Dao-AILab/causal-conv1d.git@v1.2.2.post1 -w $WHEEL_DIR - -FROM $FROM_IMAGE_NAME as build_groupedgemm -WORKDIR /opt -ARG WHEEL_DIR -RUN pip3 wheel -v git+https://github.com/fanshiqing/grouped_gemm@v1.1.2 -w $WHEEL_DIR - - -ARG FROM_IMAGE_NAME -FROM $FROM_IMAGE_NAME as main -ENV DEBIAN_FRONTEND=noninteractive - -RUN bash -ex <<"EOF" - apt-get update - apt-get install -y --no-install-recommends gettext python3-venv psmisc - apt-get clean - python -m venv /opt/jet - wget https://github.com/mikefarah/yq/releases/download/v4.44.1/yq_linux_amd64 -O /usr/local/bin/yq - chmod a+x /usr/local/bin/yq -EOF - -ARG UV_VERSION=0.7.2 -ENV PATH="/root/.local/bin:$PATH" -RUN curl -LsSf https://astral.sh/uv/${UV_VERSION}/install.sh | sh -ENV UV_PROJECT_ENVIRONMENT=/opt/venv -ENV PATH="$UV_PROJECT_ENVIRONMENT/bin:$PATH" -ENV VIRTUAL_ENV=$UV_PROJECT_ENVIRONMENT -ENV UV_LINK_MODE=copy - -RUN -ARG WHEEL_DIR -COPY README.md pyproject.toml uv.lock /workspace/ -COPY megatron/core/__init__.py /workspace/megatron/core/ -COPY megatron/core/package_info.py /workspace/megatron/core/ -COPY docker/common/ /workspace/docker/common/ -COPY --from=build_mamba $WHEEL_DIR/*.whl $WHEEL_DIR/ -COPY --from=build_causalconv1d $WHEEL_DIR/*.whl $WHEEL_DIR/ -COPY --from=build_groupedgemm $WHEEL_DIR/*.whl $WHEEL_DIR/ -RUN bash -ex <<"EOF" - uv venv ${UV_PROJECT_ENVIRONMENT} --system-site-packages - - uv sync --extra lts --extra mlm --link-mode copy --locked \ - --no-install-package torch \ - --no-install-package torchvision \ - --no-install-package triton \ - --no-install-package nvidia-cublas-cu12 \ - --no-install-package nvidia-cuda-cupti-cu12 \ - --no-install-package nvidia-cuda-nvrtc-cu12 \ - --no-install-package nvidia-cuda-runtime-cu12 \ - --no-install-package nvidia-cudnn-cu12 \ - --no-install-package nvidia-cufft-cu12 \ - --no-install-package nvidia-cufile-cu12 \ - --no-install-package nvidia-curand-cu12 \ - --no-install-package nvidia-cusolver-cu12 \ - --no-install-package nvidia-cusparse-cu12 \ - --no-install-package nvidia-cusparselt-cu12 \ - --no-install-package nvidia-nccl-cu12 - - bash docker/common/install_source_wheels.sh --input-wheel-dir $WHEEL_DIR/ --environment lts -EOF -ENV PYTHONPATH="/opt/megatron-lm:$PYTHONPATH" -COPY assets/ /opt/data/ -ENV UV_PYTHON=$UV_PROJECT_ENVIRONMENT/bin/python - -##### For NVIDIANS only ##### -FROM main as jet -ARG JET_API_VERSION -ENV PATH="$PATH:/opt/jet/bin" -RUN --mount=type=secret,id=JET_INDEX_URLS bash -ex <<"EOF" - JET_INDEX_URLS=$(cat /run/secrets/JET_INDEX_URLS) - python -m venv /opt/jet - /opt/jet/bin/pip install --no-cache-dir $JET_INDEX_URLS \ - jet-api==$JET_API_VERSION -EOF - -RUN --mount=type=secret,id=JET_INDEX_URLS \ - --mount=type=secret,id=LOGGER_INDEX_URL bash -ex <<"EOF" - JET_INDEX_URLS=$(cat /run/secrets/JET_INDEX_URLS) - LOGGER_INDEX_URL=$(cat /run/secrets/LOGGER_INDEX_URL) - uv pip install --no-cache-dir --upgrade $LOGGER_INDEX_URL "one-logger" - uv pip install --no-cache-dir --upgrade "setuptools<80.0.0" - uv pip install --no-cache-dir --upgrade $JET_INDEX_URLS "jet-client~=3.0" -EOF -### \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 3dcfe98a9b7..9dfa88e541e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -69,7 +69,7 @@ mlm = ["flask-restful", "sentencepiece", "tiktoken", "wandb", "transformers"] dev = [ "nvidia-modelopt[torch]; sys_platform != 'darwin'", "transformer-engine[pytorch]>=2.9.0a0,<2.10.0", - "nvidia-resiliency-ext>=0.4.0a0,<0.5.0", + "nvidia-resiliency-ext", "tqdm", "einops~=0.8", "tensorstore~=0.1,!=0.1.46,!=0.1.72", @@ -89,13 +89,20 @@ dev = [ lts = [ "tqdm", - "einops", - "tensorstore!=0.1.46,!=0.1.72", - "nvtx", - "transformers", - "zarr", + "einops~=0.8", + "tensorstore~=0.1,!=0.1.46,!=0.1.72", + "nvtx~=0.2", + "multi-storage-client~=0.27", + "opentelemetry-api~=1.33.1", "setuptools<80.0.0", + "mamba-ssm~=2.2", + "causal-conv1d~=1.5", + "nv-grouped-gemm~=1.1", + "megatron-energon[av_decode]~=6.0", + "av<16.0.0", # At the time, av 16.0.0 is not compatible with Python 3.12 + "flashinfer-python", "wget", + "onnxscript", ] [dependency-groups] diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts.json new file mode 100644 index 00000000000..3f7a0c2cac5 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.84081, + "2": 10.8354, + "3": 10.83237, + "4": 10.81882, + "5": 10.84098, + "6": 10.87094, + "7": 10.83285, + "8": 10.8395, + "9": 10.84275, + "10": 10.80913, + "11": 10.85185, + "12": 10.84426, + "13": 10.86366, + "14": 10.86332, + "15": 10.80028, + "16": 10.79303, + "17": 10.7753, + "18": 10.80133, + "19": 10.79138, + "20": 10.70502, + "21": 10.68161, + "22": 10.56472, + "23": 10.70185, + "24": 10.58, + "25": 10.5355, + "26": 10.607, + "27": 10.59378, + "28": 10.56083, + "29": 10.57494, + "30": 10.35506, + "31": 10.12664, + "32": 10.46551, + "33": 10.45216, + "34": 10.22453, + "35": 10.27096, + "36": 10.22158, + "37": 10.33994, + "38": 10.18651, + "39": 10.39397, + "40": 10.07811, + "41": 10.13811, + "42": 10.20175, + "43": 9.83808, + "44": 9.94297, + "45": 9.82336, + "46": 9.82165, + "47": 10.13421, + "48": 9.84058, + "49": 9.52119, + "50": 9.90123 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1539.0, + "2": 1717.0, + "3": 1773.0, + "4": 1809.0, + "5": 1932.0, + "6": 1836.0, + "7": 1808.0, + "8": 1638.0, + "9": 1924.0, + "10": 1388.0, + "11": 1978.0, + "12": 1875.0, + "13": 1894.0, + "14": 1832.0, + "15": 1945.0, + "16": 1966.0, + "17": 1779.0, + "18": 1731.0, + "19": 1812.0, + "20": 1744.0, + "21": 1910.0, + "22": 1717.0, + "23": 2079.0, + "24": 1636.0, + "25": 1644.0, + "26": 1812.0, + "27": 1939.0, + "28": 1904.0, + "29": 2001.0, + "30": 2019.0, + "31": 1661.0, + "32": 1904.0, + "33": 2040.0, + "34": 1944.0, + "35": 1955.0, + "36": 1968.0, + "37": 2344.0, + "38": 2300.0, + "39": 2418.0, + "40": 2263.0, + "41": 2357.0, + "42": 2285.0, + "43": 1988.0, + "44": 2123.0, + "45": 2218.0, + "46": 2349.0, + "47": 2594.0, + "48": 2506.0, + "49": 2331.0, + "50": 2374.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 552128512.0, + "2": 552128512.0, + "3": 552128512.0, + "4": 552128512.0, + "5": 552128512.0, + "6": 552128512.0, + "7": 552128512.0, + "8": 552128512.0, + "9": 552128512.0, + "10": 552128512.0, + "11": 552128512.0, + "12": 552128512.0, + "13": 552128512.0, + "14": 552128512.0, + "15": 552128512.0, + "16": 552128512.0, + "17": 552128512.0, + "18": 552128512.0, + "19": 552128512.0, + "20": 552128512.0, + "21": 552128512.0, + "22": 552128512.0, + "23": 552128512.0, + "24": 552128512.0, + "25": 552128512.0, + "26": 552128512.0, + "27": 552128512.0, + "28": 552128512.0, + "29": 552128512.0, + "30": 552128512.0, + "31": 552128512.0, + "32": 552128512.0, + "33": 552128512.0, + "34": 552128512.0, + "35": 552128512.0, + "36": 552128512.0, + "37": 552128512.0, + "38": 552128512.0, + "39": 552128512.0, + "40": 552128512.0, + "41": 552128512.0, + "42": 552128512.0, + "43": 552128512.0, + "44": 552128512.0, + "45": 552128512.0, + "46": 552128512.0, + "47": 552128512.0, + "48": 552128512.0, + "49": 552128512.0, + "50": 552128512.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 4576453120.0, + "2": 4673069568.0, + "3": 4673069568.0, + "4": 4673069568.0, + "5": 4673069568.0, + "6": 4673069568.0, + "7": 4673069568.0, + "8": 4673069568.0, + "9": 4673069568.0, + "10": 4673069568.0, + "11": 4673069568.0, + "12": 4673069568.0, + "13": 4673069568.0, + "14": 4673069568.0, + "15": 4673069568.0, + "16": 4673069568.0, + "17": 4673069568.0, + "18": 4673069568.0, + "19": 4673069568.0, + "20": 4673069568.0, + "21": 4673069568.0, + "22": 4673069568.0, + "23": 4673069568.0, + "24": 4673069568.0, + "25": 4673069568.0, + "26": 4673069568.0, + "27": 4673069568.0, + "28": 4673069568.0, + "29": 4673069568.0, + "30": 4673069568.0, + "31": 4673069568.0, + "32": 4673069568.0, + "33": 4673069568.0, + "34": 4673069568.0, + "35": 4673069568.0, + "36": 4673069568.0, + "37": 4673069568.0, + "38": 4673069568.0, + "39": 4673069568.0, + "40": 4673069568.0, + "41": 4673069568.0, + "42": 4673069568.0, + "43": 4673069568.0, + "44": 4673069568.0, + "45": 4673069568.0, + "46": 4673069568.0, + "47": 4673069568.0, + "48": 4673069568.0, + "49": 4673069568.0, + "50": 4673069568.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 4.18387, + "2": 0.12504, + "3": 0.09705, + "4": 0.09652, + "5": 0.09748, + "6": 0.09683, + "7": 0.09565, + "8": 0.09466, + "9": 0.09428, + "10": 0.09486, + "11": 0.09436, + "12": 0.09386, + "13": 0.09434, + "14": 0.09599, + "15": 0.09464, + "16": 0.0943, + "17": 0.09447, + "18": 0.09424, + "19": 0.0942, + "20": 0.09425, + "21": 0.09401, + "22": 0.09476, + "23": 0.09408, + "24": 0.09462, + "25": 0.09414, + "26": 0.09442, + "27": 0.0939, + "28": 0.09352, + "29": 0.09364, + "30": 0.09376, + "31": 0.09494, + "32": 0.09358, + "33": 0.09378, + "34": 0.09361, + "35": 0.09442, + "36": 0.09437, + "37": 0.09367, + "38": 0.0934, + "39": 0.09328, + "40": 0.09295, + "41": 0.09331, + "42": 0.09302, + "43": 0.09373, + "44": 0.09287, + "45": 0.09264, + "46": 0.10047, + "47": 0.09374, + "48": 0.09248, + "49": 0.09248, + "50": 0.09148 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts_dgx_a100.json index a5a8b2f5f7e..dd30f7144c7 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_dist_optimizer_no_mmap_bin_files/golden_values_lts_dgx_a100.json @@ -2,91 +2,286 @@ "lm loss": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.8401, - "5": 10.84032, - "10": 10.8134, - "15": 10.80276, - "20": 10.705, - "25": 10.53849, - "30": 10.35521, - "35": 10.27148, - "40": 10.08049, - "45": 9.8229, - "50": 9.90118 + "1": 10.84081, + "2": 10.8354, + "3": 10.83237, + "4": 10.81882, + "5": 10.84098, + "6": 10.87094, + "7": 10.83285, + "8": 10.8395, + "9": 10.84275, + "10": 10.80913, + "11": 10.85185, + "12": 10.84426, + "13": 10.86366, + "14": 10.86332, + "15": 10.80028, + "16": 10.79303, + "17": 10.7753, + "18": 10.80133, + "19": 10.79138, + "20": 10.70502, + "21": 10.68161, + "22": 10.56472, + "23": 10.70185, + "24": 10.58, + "25": 10.5355, + "26": 10.607, + "27": 10.59378, + "28": 10.56083, + "29": 10.57494, + "30": 10.35506, + "31": 10.12664, + "32": 10.46551, + "33": 10.45216, + "34": 10.22453, + "35": 10.27096, + "36": 10.22158, + "37": 10.33994, + "38": 10.18651, + "39": 10.39397, + "40": 10.07811, + "41": 10.13811, + "42": 10.20175, + "43": 9.83808, + "44": 9.94297, + "45": 9.82336, + "46": 9.82165, + "47": 10.13421, + "48": 9.84058, + "49": 9.52119, + "50": 9.90123 } }, "num-zeros": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 1670.0, - "5": 1970.0, - "10": 1397.0, - "15": 1936.0, - "20": 1715.0, - "25": 1703.0, - "30": 1957.0, - "35": 1991.0, - "40": 2239.0, - "45": 2144.0, - "50": 2377.0 + "1": 1539.0, + "2": 1717.0, + "3": 1773.0, + "4": 1809.0, + "5": 1932.0, + "6": 1836.0, + "7": 1808.0, + "8": 1638.0, + "9": 1924.0, + "10": 1388.0, + "11": 1978.0, + "12": 1875.0, + "13": 1894.0, + "14": 1832.0, + "15": 1945.0, + "16": 1966.0, + "17": 1779.0, + "18": 1731.0, + "19": 1812.0, + "20": 1744.0, + "21": 1910.0, + "22": 1717.0, + "23": 2079.0, + "24": 1636.0, + "25": 1644.0, + "26": 1812.0, + "27": 1939.0, + "28": 1904.0, + "29": 2001.0, + "30": 2019.0, + "31": 1661.0, + "32": 1904.0, + "33": 2040.0, + "34": 1944.0, + "35": 1955.0, + "36": 1968.0, + "37": 2344.0, + "38": 2300.0, + "39": 2418.0, + "40": 2263.0, + "41": 2357.0, + "42": 2285.0, + "43": 1988.0, + "44": 2123.0, + "45": 2218.0, + "46": 2349.0, + "47": 2594.0, + "48": 2506.0, + "49": 2331.0, + "50": 2374.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 552238592.0, - "5": 552238592.0, - "10": 552238592.0, - "15": 552238592.0, - "20": 552238592.0, - "25": 552238592.0, - "30": 552238592.0, - "35": 552238592.0, - "40": 552238592.0, - "45": 552238592.0, - "50": 552238592.0 + "1": 552128512.0, + "2": 552128512.0, + "3": 552128512.0, + "4": 552128512.0, + "5": 552128512.0, + "6": 552128512.0, + "7": 552128512.0, + "8": 552128512.0, + "9": 552128512.0, + "10": 552128512.0, + "11": 552128512.0, + "12": 552128512.0, + "13": 552128512.0, + "14": 552128512.0, + "15": 552128512.0, + "16": 552128512.0, + "17": 552128512.0, + "18": 552128512.0, + "19": 552128512.0, + "20": 552128512.0, + "21": 552128512.0, + "22": 552128512.0, + "23": 552128512.0, + "24": 552128512.0, + "25": 552128512.0, + "26": 552128512.0, + "27": 552128512.0, + "28": 552128512.0, + "29": 552128512.0, + "30": 552128512.0, + "31": 552128512.0, + "32": 552128512.0, + "33": 552128512.0, + "34": 552128512.0, + "35": 552128512.0, + "36": 552128512.0, + "37": 552128512.0, + "38": 552128512.0, + "39": 552128512.0, + "40": 552128512.0, + "41": 552128512.0, + "42": 552128512.0, + "43": 552128512.0, + "44": 552128512.0, + "45": 552128512.0, + "46": 552128512.0, + "47": 552128512.0, + "48": 552128512.0, + "49": 552128512.0, + "50": 552128512.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 4576563200.0, - "5": 4673179648.0, - "10": 4673179648.0, - "15": 4673179648.0, - "20": 4673179648.0, - "25": 4673179648.0, - "30": 4673179648.0, - "35": 4673179648.0, - "40": 4673179648.0, - "45": 4673179648.0, - "50": 4673179648.0 + "1": 4576453120.0, + "2": 4673069568.0, + "3": 4673069568.0, + "4": 4673069568.0, + "5": 4673069568.0, + "6": 4673069568.0, + "7": 4673069568.0, + "8": 4673069568.0, + "9": 4673069568.0, + "10": 4673069568.0, + "11": 4673069568.0, + "12": 4673069568.0, + "13": 4673069568.0, + "14": 4673069568.0, + "15": 4673069568.0, + "16": 4673069568.0, + "17": 4673069568.0, + "18": 4673069568.0, + "19": 4673069568.0, + "20": 4673069568.0, + "21": 4673069568.0, + "22": 4673069568.0, + "23": 4673069568.0, + "24": 4673069568.0, + "25": 4673069568.0, + "26": 4673069568.0, + "27": 4673069568.0, + "28": 4673069568.0, + "29": 4673069568.0, + "30": 4673069568.0, + "31": 4673069568.0, + "32": 4673069568.0, + "33": 4673069568.0, + "34": 4673069568.0, + "35": 4673069568.0, + "36": 4673069568.0, + "37": 4673069568.0, + "38": 4673069568.0, + "39": 4673069568.0, + "40": 4673069568.0, + "41": 4673069568.0, + "42": 4673069568.0, + "43": 4673069568.0, + "44": 4673069568.0, + "45": 4673069568.0, + "46": 4673069568.0, + "47": 4673069568.0, + "48": 4673069568.0, + "49": 4673069568.0, + "50": 4673069568.0 } }, "iteration-time": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 9.0358, - "5": 0.10098, - "10": 0.10007, - "15": 0.09866, - "20": 0.0986, - "25": 0.09963, - "30": 0.09768, - "35": 0.09735, - "40": 0.09791, - "45": 0.09757, - "50": 0.09769 + "1": 4.57734, + "2": 0.12447, + "3": 0.1105, + "4": 0.11652, + "5": 0.11171, + "6": 0.10268, + "7": 0.0964, + "8": 0.09397, + "9": 0.09475, + "10": 0.09372, + "11": 0.09325, + "12": 0.09309, + "13": 0.09305, + "14": 0.09354, + "15": 0.09324, + "16": 0.09342, + "17": 0.09327, + "18": 0.09347, + "19": 0.09283, + "20": 0.09308, + "21": 0.09266, + "22": 0.09487, + "23": 0.09318, + "24": 0.09338, + "25": 0.09306, + "26": 0.09374, + "27": 0.09386, + "28": 0.09412, + "29": 0.09395, + "30": 0.09393, + "31": 0.09439, + "32": 0.09481, + "33": 0.09338, + "34": 0.09466, + "35": 0.0936, + "36": 0.09463, + "37": 0.09316, + "38": 0.09572, + "39": 0.09295, + "40": 0.09592, + "41": 0.09322, + "42": 0.09468, + "43": 0.09488, + "44": 0.09323, + "45": 0.09265, + "46": 0.09574, + "47": 0.09267, + "48": 0.09592, + "49": 0.09356, + "50": 0.09502 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts.json new file mode 100644 index 00000000000..d8d087006d9 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.84092, + "2": 10.83661, + "3": 10.83233, + "4": 10.81819, + "5": 10.84059, + "6": 10.86985, + "7": 10.83324, + "8": 10.83877, + "9": 10.84355, + "10": 10.80969, + "11": 10.85186, + "12": 10.84454, + "13": 10.8632, + "14": 10.86353, + "15": 10.79985, + "16": 10.79265, + "17": 10.77473, + "18": 10.80156, + "19": 10.79155, + "20": 10.70512, + "21": 10.68174, + "22": 10.56547, + "23": 10.70145, + "24": 10.5789, + "25": 10.53597, + "26": 10.60745, + "27": 10.59418, + "28": 10.56116, + "29": 10.57573, + "30": 10.35474, + "31": 10.12618, + "32": 10.46569, + "33": 10.45235, + "34": 10.22491, + "35": 10.27088, + "36": 10.22167, + "37": 10.33935, + "38": 10.18639, + "39": 10.39432, + "40": 10.07794, + "41": 10.13875, + "42": 10.20184, + "43": 9.83819, + "44": 9.94273, + "45": 9.82299, + "46": 9.82187, + "47": 10.13444, + "48": 9.84097, + "49": 9.52094, + "50": 9.90107, + "51": 9.83459, + "52": 9.73231, + "53": 10.04881, + "54": 9.93895, + "55": 9.86297, + "56": 9.613, + "57": 9.46964, + "58": 9.81136, + "59": 9.57107, + "60": 9.48153, + "61": 9.67881, + "62": 9.96579, + "63": 9.35276, + "64": 9.75644, + "65": 8.93769, + "66": 9.68152, + "67": 9.35669, + "68": 9.76806, + "69": 9.7739, + "70": 9.71012, + "71": 9.60009, + "72": 9.56796, + "73": 9.47739, + "74": 8.93177, + "75": 9.40721, + "76": 9.06847, + "77": 10.0464, + "78": 9.70984, + "79": 9.35731, + "80": 9.38978, + "81": 9.4662, + "82": 9.68056, + "83": 9.29144, + "84": 9.40194, + "85": 9.59734, + "86": 9.06207, + "87": 9.57921, + "88": 9.73262, + "89": 9.58838, + "90": 9.80354, + "91": 9.31991, + "92": 9.35013, + "93": 9.06378, + "94": 8.81909, + "95": 9.50572, + "96": 9.51068, + "97": 9.29244, + "98": 9.65579, + "99": 8.87401, + "100": 9.38837 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1628.0, + "2": 1744.0, + "3": 1662.0, + "4": 1801.0, + "5": 1937.0, + "6": 1866.0, + "7": 1855.0, + "8": 1584.0, + "9": 1901.0, + "10": 1325.0, + "11": 1963.0, + "12": 1833.0, + "13": 1863.0, + "14": 1928.0, + "15": 1948.0, + "16": 1999.0, + "17": 1838.0, + "18": 1703.0, + "19": 1898.0, + "20": 1610.0, + "21": 1944.0, + "22": 1728.0, + "23": 2116.0, + "24": 1613.0, + "25": 1634.0, + "26": 1788.0, + "27": 2059.0, + "28": 2067.0, + "29": 1978.0, + "30": 1929.0, + "31": 1782.0, + "32": 1850.0, + "33": 2169.0, + "34": 1815.0, + "35": 2007.0, + "36": 2010.0, + "37": 2385.0, + "38": 2413.0, + "39": 2474.0, + "40": 2254.0, + "41": 2373.0, + "42": 2253.0, + "43": 1900.0, + "44": 2058.0, + "45": 2153.0, + "46": 2385.0, + "47": 2514.0, + "48": 2475.0, + "49": 2362.0, + "50": 2335.0, + "51": 2452.0, + "52": 2576.0, + "53": 2914.0, + "54": 2741.0, + "55": 2408.0, + "56": 2650.0, + "57": 2264.0, + "58": 2853.0, + "59": 2757.0, + "60": 2509.0, + "61": 3076.0, + "62": 2709.0, + "63": 2563.0, + "64": 3041.0, + "65": 2687.0, + "66": 3089.0, + "67": 2767.0, + "68": 2930.0, + "69": 2911.0, + "70": 3286.0, + "71": 3105.0, + "72": 2507.0, + "73": 3063.0, + "74": 2022.0, + "75": 2763.0, + "76": 3002.0, + "77": 3382.0, + "78": 3470.0, + "79": 3109.0, + "80": 3357.0, + "81": 3798.0, + "82": 3348.0, + "83": 2763.0, + "84": 3271.0, + "85": 3245.0, + "86": 2587.0, + "87": 3650.0, + "88": 3103.0, + "89": 3471.0, + "90": 3086.0, + "91": 3050.0, + "92": 3368.0, + "93": 2828.0, + "94": 3495.0, + "95": 3424.0, + "96": 3559.0, + "97": 3289.0, + "98": 3727.0, + "99": 3275.0, + "100": 3401.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 552128512.0, + "2": 552128512.0, + "3": 552128512.0, + "4": 552128512.0, + "5": 552128512.0, + "6": 552128512.0, + "7": 552128512.0, + "8": 552128512.0, + "9": 552128512.0, + "10": 552128512.0, + "11": 552128512.0, + "12": 552128512.0, + "13": 552128512.0, + "14": 552128512.0, + "15": 552128512.0, + "16": 552128512.0, + "17": 552128512.0, + "18": 552128512.0, + "19": 552128512.0, + "20": 552128512.0, + "21": 552128512.0, + "22": 552128512.0, + "23": 552128512.0, + "24": 552128512.0, + "25": 552128512.0, + "26": 552128512.0, + "27": 552128512.0, + "28": 552128512.0, + "29": 552128512.0, + "30": 552128512.0, + "31": 552128512.0, + "32": 552128512.0, + "33": 552128512.0, + "34": 552128512.0, + "35": 552128512.0, + "36": 552128512.0, + "37": 552128512.0, + "38": 552128512.0, + "39": 552128512.0, + "40": 552128512.0, + "41": 552128512.0, + "42": 552128512.0, + "43": 552128512.0, + "44": 552128512.0, + "45": 552128512.0, + "46": 552128512.0, + "47": 552128512.0, + "48": 552128512.0, + "49": 552128512.0, + "50": 552128512.0, + "51": 552128512.0, + "52": 552128512.0, + "53": 552128512.0, + "54": 552128512.0, + "55": 552128512.0, + "56": 552128512.0, + "57": 552128512.0, + "58": 552128512.0, + "59": 552128512.0, + "60": 552128512.0, + "61": 552128512.0, + "62": 552128512.0, + "63": 552128512.0, + "64": 552128512.0, + "65": 552128512.0, + "66": 552128512.0, + "67": 552128512.0, + "68": 552128512.0, + "69": 552128512.0, + "70": 552128512.0, + "71": 552128512.0, + "72": 552128512.0, + "73": 552128512.0, + "74": 552128512.0, + "75": 552128512.0, + "76": 552128512.0, + "77": 552128512.0, + "78": 552128512.0, + "79": 552128512.0, + "80": 552128512.0, + "81": 552128512.0, + "82": 552128512.0, + "83": 552128512.0, + "84": 552128512.0, + "85": 552128512.0, + "86": 552128512.0, + "87": 552128512.0, + "88": 552128512.0, + "89": 552128512.0, + "90": 552128512.0, + "91": 552128512.0, + "92": 552128512.0, + "93": 552128512.0, + "94": 552128512.0, + "95": 552128512.0, + "96": 552128512.0, + "97": 552128512.0, + "98": 552128512.0, + "99": 552128512.0, + "100": 552128512.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2615097856.0, + "2": 2711714304.0, + "3": 2711714304.0, + "4": 2711714304.0, + "5": 2711714304.0, + "6": 2711714304.0, + "7": 2711714304.0, + "8": 2711714304.0, + "9": 2711714304.0, + "10": 2711714304.0, + "11": 2711714304.0, + "12": 2711714304.0, + "13": 2711714304.0, + "14": 2711714304.0, + "15": 2711714304.0, + "16": 2711714304.0, + "17": 2711714304.0, + "18": 2711714304.0, + "19": 2711714304.0, + "20": 2711714304.0, + "21": 2711714304.0, + "22": 2711714304.0, + "23": 2711714304.0, + "24": 2711714304.0, + "25": 2711714304.0, + "26": 2711714304.0, + "27": 2711714304.0, + "28": 2711714304.0, + "29": 2711714304.0, + "30": 2711714304.0, + "31": 2711714304.0, + "32": 2711714304.0, + "33": 2711714304.0, + "34": 2711714304.0, + "35": 2711714304.0, + "36": 2711714304.0, + "37": 2711714304.0, + "38": 2711714304.0, + "39": 2711714304.0, + "40": 2711714304.0, + "41": 2711714304.0, + "42": 2711714304.0, + "43": 2711714304.0, + "44": 2711714304.0, + "45": 2711714304.0, + "46": 2711714304.0, + "47": 2711714304.0, + "48": 2711714304.0, + "49": 2711714304.0, + "50": 2711714304.0, + "51": 2711714304.0, + "52": 2711714304.0, + "53": 2711714304.0, + "54": 2711714304.0, + "55": 2711714304.0, + "56": 2711714304.0, + "57": 2711714304.0, + "58": 2711714304.0, + "59": 2711714304.0, + "60": 2711714304.0, + "61": 2711714304.0, + "62": 2711714304.0, + "63": 2711714304.0, + "64": 2711714304.0, + "65": 2711714304.0, + "66": 2711714304.0, + "67": 2711714304.0, + "68": 2711714304.0, + "69": 2711714304.0, + "70": 2711714304.0, + "71": 2711714304.0, + "72": 2711714304.0, + "73": 2711714304.0, + "74": 2711714304.0, + "75": 2711714304.0, + "76": 2711714304.0, + "77": 2711714304.0, + "78": 2711714304.0, + "79": 2711714304.0, + "80": 2711714304.0, + "81": 2711714304.0, + "82": 2711714304.0, + "83": 2711714304.0, + "84": 2711714304.0, + "85": 2711714304.0, + "86": 2711714304.0, + "87": 2711714304.0, + "88": 2711714304.0, + "89": 2711714304.0, + "90": 2711714304.0, + "91": 2711714304.0, + "92": 2711714304.0, + "93": 2711714304.0, + "94": 2711714304.0, + "95": 2711714304.0, + "96": 2711714304.0, + "97": 2711714304.0, + "98": 2711714304.0, + "99": 2711714304.0, + "100": 2711714304.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 4.22026, + "2": 0.11508, + "3": 0.08784, + "4": 0.08853, + "5": 0.08761, + "6": 0.08872, + "7": 0.08738, + "8": 0.08924, + "9": 0.08542, + "10": 0.08527, + "11": 0.08496, + "12": 0.08437, + "13": 0.08471, + "14": 0.08501, + "15": 0.08468, + "16": 0.08444, + "17": 0.08421, + "18": 0.08402, + "19": 0.08444, + "20": 0.0841, + "21": 0.08395, + "22": 0.08442, + "23": 0.0846, + "24": 0.08394, + "25": 0.08371, + "26": 0.08416, + "27": 0.08354, + "28": 0.08445, + "29": 0.08405, + "30": 0.08414, + "31": 0.08444, + "32": 0.08369, + "33": 0.08356, + "34": 0.08435, + "35": 0.08405, + "36": 0.08358, + "37": 0.08349, + "38": 0.08439, + "39": 0.0837, + "40": 0.08444, + "41": 0.08399, + "42": 0.0835, + "43": 0.0843, + "44": 0.08389, + "45": 0.084, + "46": 0.08426, + "47": 0.0842, + "48": 0.08434, + "49": 0.08385, + "50": 0.08424, + "51": 0.09846, + "52": 0.08909, + "53": 0.08511, + "54": 0.0849, + "55": 0.1206, + "56": 0.0845, + "57": 0.08446, + "58": 0.08474, + "59": 0.08505, + "60": 0.08422, + "61": 0.08413, + "62": 0.0845, + "63": 0.08441, + "64": 0.08486, + "65": 0.08527, + "66": 0.08442, + "67": 0.08533, + "68": 0.08468, + "69": 0.08469, + "70": 0.08503, + "71": 0.08424, + "72": 0.085, + "73": 0.08469, + "74": 0.08484, + "75": 0.08396, + "76": 0.08437, + "77": 0.08458, + "78": 0.08553, + "79": 0.08492, + "80": 0.08459, + "81": 0.08431, + "82": 0.08515, + "83": 0.08407, + "84": 0.08429, + "85": 0.08413, + "86": 0.08499, + "87": 0.08442, + "88": 0.08461, + "89": 0.08478, + "90": 0.08469, + "91": 0.08469, + "92": 0.08478, + "93": 0.08453, + "94": 0.0842, + "95": 0.08391, + "96": 0.08383, + "97": 0.08459, + "98": 0.08469, + "99": 0.085, + "100": 0.08518 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts_dgx_a100.json index 66e69ad5f5e..9dad9972e22 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_dist_optimizer/golden_values_lts_dgx_a100.json @@ -2,141 +2,536 @@ "lm loss": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.8401, - "5": 10.84032, - "10": 10.8134, - "15": 10.80276, - "20": 10.705, - "25": 10.53849, - "30": 10.35521, - "35": 10.27148, - "40": 10.08049, - "45": 9.8229, - "50": 9.90118, - "55": 9.86424, - "60": 9.4803, - "65": 8.93743, - "70": 9.71026, - "75": 9.4088, - "80": 9.39078, - "85": 9.59741, - "90": 9.80389, - "95": 9.50562, - "100": 9.38808 + "1": 10.84092, + "2": 10.83661, + "3": 10.83233, + "4": 10.81819, + "5": 10.84059, + "6": 10.86985, + "7": 10.83324, + "8": 10.83877, + "9": 10.84355, + "10": 10.80969, + "11": 10.85186, + "12": 10.84454, + "13": 10.8632, + "14": 10.86353, + "15": 10.79985, + "16": 10.79265, + "17": 10.77473, + "18": 10.80156, + "19": 10.79155, + "20": 10.70512, + "21": 10.68174, + "22": 10.56547, + "23": 10.70145, + "24": 10.5789, + "25": 10.53597, + "26": 10.60745, + "27": 10.59418, + "28": 10.56116, + "29": 10.57573, + "30": 10.35474, + "31": 10.12618, + "32": 10.46569, + "33": 10.45235, + "34": 10.22491, + "35": 10.27088, + "36": 10.22167, + "37": 10.33935, + "38": 10.18639, + "39": 10.39432, + "40": 10.07794, + "41": 10.13875, + "42": 10.20184, + "43": 9.83819, + "44": 9.94273, + "45": 9.82299, + "46": 9.82187, + "47": 10.13444, + "48": 9.84097, + "49": 9.52094, + "50": 9.90107, + "51": 9.83459, + "52": 9.73231, + "53": 10.04881, + "54": 9.93895, + "55": 9.86297, + "56": 9.613, + "57": 9.46964, + "58": 9.81136, + "59": 9.57107, + "60": 9.48153, + "61": 9.67881, + "62": 9.96579, + "63": 9.35276, + "64": 9.75644, + "65": 8.93769, + "66": 9.68152, + "67": 9.35669, + "68": 9.76806, + "69": 9.7739, + "70": 9.71012, + "71": 9.60009, + "72": 9.56796, + "73": 9.47739, + "74": 8.93177, + "75": 9.40721, + "76": 9.06847, + "77": 10.0464, + "78": 9.70984, + "79": 9.35731, + "80": 9.38978, + "81": 9.4662, + "82": 9.68056, + "83": 9.29144, + "84": 9.40194, + "85": 9.59734, + "86": 9.06207, + "87": 9.57921, + "88": 9.73262, + "89": 9.58838, + "90": 9.80354, + "91": 9.31991, + "92": 9.35013, + "93": 9.06378, + "94": 8.81909, + "95": 9.50572, + "96": 9.51068, + "97": 9.29244, + "98": 9.65579, + "99": 8.87401, + "100": 9.38837 } }, "num-zeros": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 1670.0, - "5": 1970.0, - "10": 1397.0, - "15": 1936.0, - "20": 1715.0, - "25": 1703.0, - "30": 1957.0, - "35": 1991.0, - "40": 2239.0, - "45": 2144.0, - "50": 2377.0, - "55": 2436.0, - "60": 2445.0, - "65": 2645.0, - "70": 3337.0, - "75": 2726.0, - "80": 3356.0, - "85": 3336.0, - "90": 3044.0, - "95": 3484.0, - "100": 3467.0 + "1": 1628.0, + "2": 1744.0, + "3": 1662.0, + "4": 1801.0, + "5": 1937.0, + "6": 1866.0, + "7": 1855.0, + "8": 1584.0, + "9": 1901.0, + "10": 1325.0, + "11": 1963.0, + "12": 1833.0, + "13": 1863.0, + "14": 1928.0, + "15": 1948.0, + "16": 1999.0, + "17": 1838.0, + "18": 1703.0, + "19": 1898.0, + "20": 1610.0, + "21": 1944.0, + "22": 1728.0, + "23": 2116.0, + "24": 1613.0, + "25": 1634.0, + "26": 1788.0, + "27": 2059.0, + "28": 2067.0, + "29": 1978.0, + "30": 1929.0, + "31": 1782.0, + "32": 1850.0, + "33": 2169.0, + "34": 1815.0, + "35": 2007.0, + "36": 2010.0, + "37": 2385.0, + "38": 2413.0, + "39": 2474.0, + "40": 2254.0, + "41": 2373.0, + "42": 2253.0, + "43": 1900.0, + "44": 2058.0, + "45": 2153.0, + "46": 2385.0, + "47": 2514.0, + "48": 2475.0, + "49": 2362.0, + "50": 2335.0, + "51": 2452.0, + "52": 2576.0, + "53": 2914.0, + "54": 2741.0, + "55": 2408.0, + "56": 2650.0, + "57": 2264.0, + "58": 2853.0, + "59": 2757.0, + "60": 2509.0, + "61": 3076.0, + "62": 2709.0, + "63": 2563.0, + "64": 3041.0, + "65": 2687.0, + "66": 3089.0, + "67": 2767.0, + "68": 2930.0, + "69": 2911.0, + "70": 3286.0, + "71": 3105.0, + "72": 2507.0, + "73": 3063.0, + "74": 2022.0, + "75": 2763.0, + "76": 3002.0, + "77": 3382.0, + "78": 3470.0, + "79": 3109.0, + "80": 3357.0, + "81": 3798.0, + "82": 3348.0, + "83": 2763.0, + "84": 3271.0, + "85": 3245.0, + "86": 2587.0, + "87": 3650.0, + "88": 3103.0, + "89": 3471.0, + "90": 3086.0, + "91": 3050.0, + "92": 3368.0, + "93": 2828.0, + "94": 3495.0, + "95": 3424.0, + "96": 3559.0, + "97": 3289.0, + "98": 3727.0, + "99": 3275.0, + "100": 3401.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 552238592.0, - "5": 552238592.0, - "10": 552238592.0, - "15": 552238592.0, - "20": 552238592.0, - "25": 552238592.0, - "30": 552238592.0, - "35": 552238592.0, - "40": 552238592.0, - "45": 552238592.0, - "50": 552238592.0, - "55": 552238592.0, - "60": 552238592.0, - "65": 552238592.0, - "70": 552238592.0, - "75": 552238592.0, - "80": 552238592.0, - "85": 552238592.0, - "90": 552238592.0, - "95": 552238592.0, - "100": 552238592.0 + "1": 552128512.0, + "2": 552128512.0, + "3": 552128512.0, + "4": 552128512.0, + "5": 552128512.0, + "6": 552128512.0, + "7": 552128512.0, + "8": 552128512.0, + "9": 552128512.0, + "10": 552128512.0, + "11": 552128512.0, + "12": 552128512.0, + "13": 552128512.0, + "14": 552128512.0, + "15": 552128512.0, + "16": 552128512.0, + "17": 552128512.0, + "18": 552128512.0, + "19": 552128512.0, + "20": 552128512.0, + "21": 552128512.0, + "22": 552128512.0, + "23": 552128512.0, + "24": 552128512.0, + "25": 552128512.0, + "26": 552128512.0, + "27": 552128512.0, + "28": 552128512.0, + "29": 552128512.0, + "30": 552128512.0, + "31": 552128512.0, + "32": 552128512.0, + "33": 552128512.0, + "34": 552128512.0, + "35": 552128512.0, + "36": 552128512.0, + "37": 552128512.0, + "38": 552128512.0, + "39": 552128512.0, + "40": 552128512.0, + "41": 552128512.0, + "42": 552128512.0, + "43": 552128512.0, + "44": 552128512.0, + "45": 552128512.0, + "46": 552128512.0, + "47": 552128512.0, + "48": 552128512.0, + "49": 552128512.0, + "50": 552128512.0, + "51": 552128512.0, + "52": 552128512.0, + "53": 552128512.0, + "54": 552128512.0, + "55": 552128512.0, + "56": 552128512.0, + "57": 552128512.0, + "58": 552128512.0, + "59": 552128512.0, + "60": 552128512.0, + "61": 552128512.0, + "62": 552128512.0, + "63": 552128512.0, + "64": 552128512.0, + "65": 552128512.0, + "66": 552128512.0, + "67": 552128512.0, + "68": 552128512.0, + "69": 552128512.0, + "70": 552128512.0, + "71": 552128512.0, + "72": 552128512.0, + "73": 552128512.0, + "74": 552128512.0, + "75": 552128512.0, + "76": 552128512.0, + "77": 552128512.0, + "78": 552128512.0, + "79": 552128512.0, + "80": 552128512.0, + "81": 552128512.0, + "82": 552128512.0, + "83": 552128512.0, + "84": 552128512.0, + "85": 552128512.0, + "86": 552128512.0, + "87": 552128512.0, + "88": 552128512.0, + "89": 552128512.0, + "90": 552128512.0, + "91": 552128512.0, + "92": 552128512.0, + "93": 552128512.0, + "94": 552128512.0, + "95": 552128512.0, + "96": 552128512.0, + "97": 552128512.0, + "98": 552128512.0, + "99": 552128512.0, + "100": 552128512.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 4576563200.0, - "5": 4673179648.0, - "10": 4673179648.0, - "15": 4673179648.0, - "20": 4673179648.0, - "25": 4673179648.0, - "30": 4673179648.0, - "35": 4673179648.0, - "40": 4673179648.0, - "45": 4673179648.0, - "50": 4673179648.0, - "55": 4673179648.0, - "60": 4673179648.0, - "65": 4673179648.0, - "70": 4673179648.0, - "75": 4673179648.0, - "80": 4673179648.0, - "85": 4673179648.0, - "90": 4673179648.0, - "95": 4673179648.0, - "100": 4673179648.0 + "1": 2615097856.0, + "2": 2711714304.0, + "3": 2711714304.0, + "4": 2711714304.0, + "5": 2711714304.0, + "6": 2711714304.0, + "7": 2711714304.0, + "8": 2711714304.0, + "9": 2711714304.0, + "10": 2711714304.0, + "11": 2711714304.0, + "12": 2711714304.0, + "13": 2711714304.0, + "14": 2711714304.0, + "15": 2711714304.0, + "16": 2711714304.0, + "17": 2711714304.0, + "18": 2711714304.0, + "19": 2711714304.0, + "20": 2711714304.0, + "21": 2711714304.0, + "22": 2711714304.0, + "23": 2711714304.0, + "24": 2711714304.0, + "25": 2711714304.0, + "26": 2711714304.0, + "27": 2711714304.0, + "28": 2711714304.0, + "29": 2711714304.0, + "30": 2711714304.0, + "31": 2711714304.0, + "32": 2711714304.0, + "33": 2711714304.0, + "34": 2711714304.0, + "35": 2711714304.0, + "36": 2711714304.0, + "37": 2711714304.0, + "38": 2711714304.0, + "39": 2711714304.0, + "40": 2711714304.0, + "41": 2711714304.0, + "42": 2711714304.0, + "43": 2711714304.0, + "44": 2711714304.0, + "45": 2711714304.0, + "46": 2711714304.0, + "47": 2711714304.0, + "48": 2711714304.0, + "49": 2711714304.0, + "50": 2711714304.0, + "51": 2711714304.0, + "52": 2711714304.0, + "53": 2711714304.0, + "54": 2711714304.0, + "55": 2711714304.0, + "56": 2711714304.0, + "57": 2711714304.0, + "58": 2711714304.0, + "59": 2711714304.0, + "60": 2711714304.0, + "61": 2711714304.0, + "62": 2711714304.0, + "63": 2711714304.0, + "64": 2711714304.0, + "65": 2711714304.0, + "66": 2711714304.0, + "67": 2711714304.0, + "68": 2711714304.0, + "69": 2711714304.0, + "70": 2711714304.0, + "71": 2711714304.0, + "72": 2711714304.0, + "73": 2711714304.0, + "74": 2711714304.0, + "75": 2711714304.0, + "76": 2711714304.0, + "77": 2711714304.0, + "78": 2711714304.0, + "79": 2711714304.0, + "80": 2711714304.0, + "81": 2711714304.0, + "82": 2711714304.0, + "83": 2711714304.0, + "84": 2711714304.0, + "85": 2711714304.0, + "86": 2711714304.0, + "87": 2711714304.0, + "88": 2711714304.0, + "89": 2711714304.0, + "90": 2711714304.0, + "91": 2711714304.0, + "92": 2711714304.0, + "93": 2711714304.0, + "94": 2711714304.0, + "95": 2711714304.0, + "96": 2711714304.0, + "97": 2711714304.0, + "98": 2711714304.0, + "99": 2711714304.0, + "100": 2711714304.0 } }, "iteration-time": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 9.31173, - "5": 0.10511, - "10": 0.10337, - "15": 0.10143, - "20": 0.10201, - "25": 0.10088, - "30": 0.10154, - "35": 0.1006, - "40": 0.10106, - "45": 0.10038, - "50": 0.10112, - "55": 0.10263, - "60": 0.0993, - "65": 0.09963, - "70": 0.09998, - "75": 0.09811, - "80": 0.09929, - "85": 0.09785, - "90": 0.09909, - "95": 0.09864, - "100": 0.09877 + "1": 4.10688, + "2": 0.11397, + "3": 0.08797, + "4": 0.08663, + "5": 0.08687, + "6": 0.08702, + "7": 0.08653, + "8": 0.08674, + "9": 0.08696, + "10": 0.08678, + "11": 0.08635, + "12": 0.08637, + "13": 0.08738, + "14": 0.08674, + "15": 0.08706, + "16": 0.08684, + "17": 0.08681, + "18": 0.08601, + "19": 0.08591, + "20": 0.08645, + "21": 0.08634, + "22": 0.08598, + "23": 0.08618, + "24": 0.08622, + "25": 0.08632, + "26": 0.08621, + "27": 0.08644, + "28": 0.08581, + "29": 0.08622, + "30": 0.08652, + "31": 0.08679, + "32": 0.08526, + "33": 0.08525, + "34": 0.08525, + "35": 0.08519, + "36": 0.08535, + "37": 0.08568, + "38": 0.0852, + "39": 0.08521, + "40": 0.08523, + "41": 0.08535, + "42": 0.08486, + "43": 0.08614, + "44": 0.08491, + "45": 0.08554, + "46": 0.08508, + "47": 0.08524, + "48": 0.08608, + "49": 0.08565, + "50": 0.08559, + "51": 0.10342, + "52": 0.09048, + "53": 0.08707, + "54": 0.08719, + "55": 0.08631, + "56": 0.11667, + "57": 0.08592, + "58": 0.08517, + "59": 0.08612, + "60": 0.08514, + "61": 0.0855, + "62": 0.08527, + "63": 0.08586, + "64": 0.08556, + "65": 0.08633, + "66": 0.08532, + "67": 0.08593, + "68": 0.08563, + "69": 0.08537, + "70": 0.08538, + "71": 0.08507, + "72": 0.08593, + "73": 0.08623, + "74": 0.08561, + "75": 0.08536, + "76": 0.08551, + "77": 0.08526, + "78": 0.0859, + "79": 0.08518, + "80": 0.08601, + "81": 0.08574, + "82": 0.08618, + "83": 0.08532, + "84": 0.08505, + "85": 0.08545, + "86": 0.08554, + "87": 0.08542, + "88": 0.08575, + "89": 0.0861, + "90": 0.08516, + "91": 0.08552, + "92": 0.08581, + "93": 0.08558, + "94": 0.08577, + "95": 0.08708, + "96": 0.08574, + "97": 0.08543, + "98": 0.0855, + "99": 0.08537, + "100": 0.08541 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts.json new file mode 100644 index 00000000000..c6d7c9c90fa --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.84092, + "2": 10.83661, + "3": 10.83233, + "4": 10.81819, + "5": 10.84059, + "6": 10.86985, + "7": 10.83324, + "8": 10.83877, + "9": 10.84355, + "10": 10.80969, + "11": 10.85186, + "12": 10.84449, + "13": 10.86322, + "14": 10.86353, + "15": 10.79981, + "16": 10.79262, + "17": 10.77477, + "18": 10.80157, + "19": 10.79148, + "20": 10.70508, + "21": 10.68176, + "22": 10.56548, + "23": 10.70147, + "24": 10.57889, + "25": 10.53597, + "26": 10.60742, + "27": 10.59423, + "28": 10.56119, + "29": 10.57569, + "30": 10.35474, + "31": 10.12616, + "32": 10.46566, + "33": 10.45233, + "34": 10.22493, + "35": 10.27091, + "36": 10.22168, + "37": 10.33936, + "38": 10.18641, + "39": 10.39431, + "40": 10.07792, + "41": 10.13872, + "42": 10.20182, + "43": 9.83818, + "44": 9.94274, + "45": 9.82303, + "46": 9.82185, + "47": 10.13443, + "48": 9.84098, + "49": 9.52095, + "50": 9.90109, + "51": 9.83457, + "52": 9.73232, + "53": 10.0488, + "54": 9.93895, + "55": 9.863, + "56": 9.613, + "57": 9.46966, + "58": 9.81135, + "59": 9.57107, + "60": 9.48155, + "61": 9.6788, + "62": 9.96581, + "63": 9.35273, + "64": 9.75648, + "65": 8.93771, + "66": 9.68153, + "67": 9.35671, + "68": 9.76807, + "69": 9.7739, + "70": 9.71016, + "71": 9.60009, + "72": 9.56793, + "73": 9.4774, + "74": 8.93177, + "75": 9.4072, + "76": 9.06849, + "77": 10.0464, + "78": 9.70988, + "79": 9.35733, + "80": 9.38975, + "81": 9.4662, + "82": 9.68058, + "83": 9.2914, + "84": 9.40191, + "85": 9.59735, + "86": 9.06209, + "87": 9.57922, + "88": 9.73259, + "89": 9.58836, + "90": 9.80354, + "91": 9.31991, + "92": 9.35011, + "93": 9.06382, + "94": 8.81909, + "95": 9.50568, + "96": 9.51071, + "97": 9.29241, + "98": 9.65578, + "99": 8.87401, + "100": 9.38833 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1628.0, + "2": 1744.0, + "3": 1662.0, + "4": 1801.0, + "5": 1937.0, + "6": 1866.0, + "7": 1855.0, + "8": 1584.0, + "9": 1901.0, + "10": 1325.0, + "11": 1966.0, + "12": 1767.0, + "13": 1876.0, + "14": 1881.0, + "15": 1928.0, + "16": 1875.0, + "17": 1790.0, + "18": 1736.0, + "19": 1804.0, + "20": 1690.0, + "21": 2008.0, + "22": 1765.0, + "23": 2073.0, + "24": 1618.0, + "25": 1720.0, + "26": 1807.0, + "27": 1861.0, + "28": 2026.0, + "29": 1982.0, + "30": 1981.0, + "31": 1688.0, + "32": 1913.0, + "33": 2123.0, + "34": 1893.0, + "35": 2007.0, + "36": 1987.0, + "37": 2334.0, + "38": 2223.0, + "39": 2417.0, + "40": 2370.0, + "41": 2352.0, + "42": 2269.0, + "43": 1967.0, + "44": 2183.0, + "45": 2150.0, + "46": 2350.0, + "47": 2555.0, + "48": 2463.0, + "49": 2326.0, + "50": 2270.0, + "51": 2508.0, + "52": 2495.0, + "53": 2856.0, + "54": 2692.0, + "55": 2482.0, + "56": 2614.0, + "57": 2283.0, + "58": 2894.0, + "59": 2659.0, + "60": 2561.0, + "61": 3006.0, + "62": 2671.0, + "63": 2488.0, + "64": 3092.0, + "65": 2622.0, + "66": 3108.0, + "67": 2741.0, + "68": 2942.0, + "69": 2983.0, + "70": 3347.0, + "71": 3034.0, + "72": 2438.0, + "73": 3075.0, + "74": 1931.0, + "75": 2722.0, + "76": 2960.0, + "77": 3387.0, + "78": 3268.0, + "79": 3079.0, + "80": 3404.0, + "81": 3674.0, + "82": 3192.0, + "83": 2791.0, + "84": 3224.0, + "85": 3237.0, + "86": 2646.0, + "87": 3840.0, + "88": 3114.0, + "89": 3410.0, + "90": 3184.0, + "91": 3073.0, + "92": 3396.0, + "93": 2711.0, + "94": 3530.0, + "95": 3387.0, + "96": 3530.0, + "97": 3277.0, + "98": 3775.0, + "99": 3421.0, + "100": 3350.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1234585088.0, + "2": 1234585088.0, + "3": 1234585088.0, + "4": 1234585088.0, + "5": 1234585088.0, + "6": 1234585088.0, + "7": 1234585088.0, + "8": 1234585088.0, + "9": 1234585088.0, + "10": 1234585088.0, + "11": 1234585088.0, + "12": 1234585088.0, + "13": 1234585088.0, + "14": 1234585088.0, + "15": 1234585088.0, + "16": 1234585088.0, + "17": 1234585088.0, + "18": 1234585088.0, + "19": 1234585088.0, + "20": 1234585088.0, + "21": 1234585088.0, + "22": 1234585088.0, + "23": 1234585088.0, + "24": 1234585088.0, + "25": 1234585088.0, + "26": 1234585088.0, + "27": 1234585088.0, + "28": 1234585088.0, + "29": 1234585088.0, + "30": 1234585088.0, + "31": 1234585088.0, + "32": 1234585088.0, + "33": 1234585088.0, + "34": 1234585088.0, + "35": 1234585088.0, + "36": 1234585088.0, + "37": 1234585088.0, + "38": 1234585088.0, + "39": 1234585088.0, + "40": 1234585088.0, + "41": 1234585088.0, + "42": 1234585088.0, + "43": 1234585088.0, + "44": 1234585088.0, + "45": 1234585088.0, + "46": 1234585088.0, + "47": 1234585088.0, + "48": 1234585088.0, + "49": 1234585088.0, + "50": 1234585088.0, + "51": 1234585088.0, + "52": 1234585088.0, + "53": 1234585088.0, + "54": 1234585088.0, + "55": 1234585088.0, + "56": 1234585088.0, + "57": 1234585088.0, + "58": 1234585088.0, + "59": 1234585088.0, + "60": 1234585088.0, + "61": 1234585088.0, + "62": 1234585088.0, + "63": 1234585088.0, + "64": 1234585088.0, + "65": 1234585088.0, + "66": 1234585088.0, + "67": 1234585088.0, + "68": 1234585088.0, + "69": 1234585088.0, + "70": 1234585088.0, + "71": 1234585088.0, + "72": 1234585088.0, + "73": 1234585088.0, + "74": 1234585088.0, + "75": 1234585088.0, + "76": 1234585088.0, + "77": 1234585088.0, + "78": 1234585088.0, + "79": 1234585088.0, + "80": 1234585088.0, + "81": 1234585088.0, + "82": 1234585088.0, + "83": 1234585088.0, + "84": 1234585088.0, + "85": 1234585088.0, + "86": 1234585088.0, + "87": 1234585088.0, + "88": 1234585088.0, + "89": 1234585088.0, + "90": 1234585088.0, + "91": 1234585088.0, + "92": 1234585088.0, + "93": 1234585088.0, + "94": 1234585088.0, + "95": 1234585088.0, + "96": 1234585088.0, + "97": 1234585088.0, + "98": 1234585088.0, + "99": 1234585088.0, + "100": 1234585088.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1984492544.0, + "2": 2536167424.0, + "3": 2536167424.0, + "4": 2536167424.0, + "5": 2536167424.0, + "6": 2536167424.0, + "7": 2536167424.0, + "8": 2536167424.0, + "9": 2536167424.0, + "10": 2536167424.0, + "11": 2536167424.0, + "12": 2536167424.0, + "13": 2536167424.0, + "14": 2536167424.0, + "15": 2536167424.0, + "16": 2536167424.0, + "17": 2536167424.0, + "18": 2536167424.0, + "19": 2536167424.0, + "20": 2536167424.0, + "21": 2536167424.0, + "22": 2536167424.0, + "23": 2536167424.0, + "24": 2536167424.0, + "25": 2536167424.0, + "26": 2536167424.0, + "27": 2536167424.0, + "28": 2536167424.0, + "29": 2536167424.0, + "30": 2536167424.0, + "31": 2536167424.0, + "32": 2536167424.0, + "33": 2536167424.0, + "34": 2536167424.0, + "35": 2536167424.0, + "36": 2536167424.0, + "37": 2536167424.0, + "38": 2536167424.0, + "39": 2536167424.0, + "40": 2536167424.0, + "41": 2536167424.0, + "42": 2536167424.0, + "43": 2536167424.0, + "44": 2536167424.0, + "45": 2536167424.0, + "46": 2536167424.0, + "47": 2536167424.0, + "48": 2536167424.0, + "49": 2536167424.0, + "50": 2536167424.0, + "51": 2536167424.0, + "52": 2536167424.0, + "53": 2536167424.0, + "54": 2536167424.0, + "55": 2536167424.0, + "56": 2536167424.0, + "57": 2536167424.0, + "58": 2536167424.0, + "59": 2536167424.0, + "60": 2536167424.0, + "61": 2536167424.0, + "62": 2536167424.0, + "63": 2536167424.0, + "64": 2536167424.0, + "65": 2536167424.0, + "66": 2536167424.0, + "67": 2536167424.0, + "68": 2536167424.0, + "69": 2536167424.0, + "70": 2536167424.0, + "71": 2536167424.0, + "72": 2536167424.0, + "73": 2536167424.0, + "74": 2536167424.0, + "75": 2536167424.0, + "76": 2536167424.0, + "77": 2536167424.0, + "78": 2536167424.0, + "79": 2536167424.0, + "80": 2536167424.0, + "81": 2536167424.0, + "82": 2536167424.0, + "83": 2536167424.0, + "84": 2536167424.0, + "85": 2536167424.0, + "86": 2536167424.0, + "87": 2536167424.0, + "88": 2536167424.0, + "89": 2536167424.0, + "90": 2536167424.0, + "91": 2536167424.0, + "92": 2536167424.0, + "93": 2536167424.0, + "94": 2536167424.0, + "95": 2536167424.0, + "96": 2536167424.0, + "97": 2536167424.0, + "98": 2536167424.0, + "99": 2536167424.0, + "100": 2536167424.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 3.55988, + "2": 0.14641, + "3": 0.12458, + "4": 0.12359, + "5": 0.12323, + "6": 0.12296, + "7": 0.12273, + "8": 0.12322, + "9": 0.12253, + "10": 0.12257, + "11": 0.12186, + "12": 0.12242, + "13": 0.12302, + "14": 0.12233, + "15": 0.12201, + "16": 0.12138, + "17": 0.12155, + "18": 0.12113, + "19": 0.12159, + "20": 0.12132, + "21": 0.12202, + "22": 0.12206, + "23": 0.12186, + "24": 0.12276, + "25": 0.12238, + "26": 0.122, + "27": 0.12177, + "28": 0.12203, + "29": 0.12255, + "30": 0.12285, + "31": 0.1224, + "32": 0.12276, + "33": 0.12359, + "34": 0.12194, + "35": 0.12249, + "36": 0.12276, + "37": 0.12249, + "38": 0.12249, + "39": 0.12333, + "40": 0.12327, + "41": 0.12316, + "42": 0.12307, + "43": 0.12249, + "44": 0.12267, + "45": 0.12282, + "46": 0.12405, + "47": 0.12264, + "48": 0.12412, + "49": 0.12277, + "50": 0.12365, + "51": 0.1271, + "52": 0.12708, + "53": 0.12522, + "54": 0.1263, + "55": 0.12587, + "56": 0.12762, + "57": 0.12527, + "58": 0.12651, + "59": 0.12671, + "60": 0.12654, + "61": 0.12604, + "62": 0.12577, + "63": 0.12494, + "64": 0.12609, + "65": 0.12576, + "66": 0.12652, + "67": 0.12628, + "68": 0.12655, + "69": 0.12565, + "70": 0.12576, + "71": 0.12521, + "72": 0.12593, + "73": 0.12578, + "74": 0.12645, + "75": 0.12537, + "76": 0.12616, + "77": 0.12525, + "78": 0.12803, + "79": 0.1252, + "80": 0.12678, + "81": 0.12525, + "82": 0.12597, + "83": 0.12596, + "84": 0.12603, + "85": 0.1257, + "86": 0.12623, + "87": 0.12511, + "88": 0.12609, + "89": 0.12568, + "90": 0.12585, + "91": 0.12495, + "92": 0.12654, + "93": 0.12549, + "94": 0.12609, + "95": 0.12518, + "96": 0.12593, + "97": 0.12598, + "98": 0.12611, + "99": 0.12441, + "100": 0.12715 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts_dgx_a100.json index f24760a1ccb..bd7ca46935f 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp1_resume_torch_dist_uniform_full_recompute/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.8401, "5": 10.84032, "10": 10.81341, "15": 10.80278, "20": 10.70496, "25": 10.53846, "30": 10.35517, "35": 10.27147, "40": 10.08044, "45": 9.82292, "50": 9.90113, "55": 9.86422, "60": 9.48029, "65": 8.93749, "70": 9.71025, "75": 9.40879, "80": 9.39077, "85": 9.59743, "90": 9.80386, "95": 9.50565, "100": 9.38812}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1670.0, "5": 1970.0, "10": 1436.0, "15": 1918.0, "20": 1786.0, "25": 1610.0, "30": 2039.0, "35": 2001.0, "40": 2321.0, "45": 2205.0, "50": 2365.0, "55": 2489.0, "60": 2508.0, "65": 2719.0, "70": 3241.0, "75": 2643.0, "80": 3368.0, "85": 3336.0, "90": 2961.0, "95": 3533.0, "100": 3432.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1230390272.0, "5": 1230390272.0, "10": 1230390272.0, "15": 1230390272.0, "20": 1230390272.0, "25": 1230390272.0, "30": 1230390272.0, "35": 1230390272.0, "40": 1230390272.0, "45": 1230390272.0, "50": 1230390272.0, "55": 1230390272.0, "60": 1230390272.0, "65": 1230390272.0, "70": 1230390272.0, "75": 1230390272.0, "80": 1230390272.0, "85": 1230390272.0, "90": 1230390272.0, "95": 1230390272.0, "100": 1230390272.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1984492032.0, "5": 2531972608.0, "10": 2531972608.0, "15": 2531972608.0, "20": 2531972608.0, "25": 2531972608.0, "30": 2531972608.0, "35": 2531972608.0, "40": 2531972608.0, "45": 2531972608.0, "50": 2531972608.0, "55": 2531972608.0, "60": 2531972608.0, "65": 2531972608.0, "70": 2531972608.0, "75": 2531972608.0, "80": 2531972608.0, "85": 2531972608.0, "90": 2531972608.0, "95": 2531972608.0, "100": 2531972608.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 6.64146, "5": 0.13017, "10": 0.12892, "15": 0.12866, "20": 0.12752, "25": 0.12949, "30": 0.12766, "35": 0.12823, "40": 0.12721, "45": 0.12802, "50": 0.12653, "55": 0.13387, "60": 0.12431, "65": 0.12501, "70": 0.12535, "75": 0.12473, "80": 0.12431, "85": 0.12451, "90": 0.12436, "95": 0.12406, "100": 0.12423}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.84092, + "2": 10.83661, + "3": 10.83233, + "4": 10.81819, + "5": 10.84059, + "6": 10.86985, + "7": 10.83324, + "8": 10.83877, + "9": 10.84355, + "10": 10.80969, + "11": 10.85186, + "12": 10.84449, + "13": 10.86322, + "14": 10.86353, + "15": 10.79981, + "16": 10.79262, + "17": 10.77477, + "18": 10.80157, + "19": 10.79148, + "20": 10.70508, + "21": 10.68176, + "22": 10.56548, + "23": 10.70147, + "24": 10.57889, + "25": 10.53597, + "26": 10.60742, + "27": 10.59423, + "28": 10.56119, + "29": 10.57569, + "30": 10.35474, + "31": 10.12616, + "32": 10.46566, + "33": 10.45233, + "34": 10.22493, + "35": 10.27091, + "36": 10.22168, + "37": 10.33936, + "38": 10.18641, + "39": 10.39431, + "40": 10.07792, + "41": 10.13872, + "42": 10.20182, + "43": 9.83818, + "44": 9.94274, + "45": 9.82303, + "46": 9.82185, + "47": 10.13443, + "48": 9.84098, + "49": 9.52095, + "50": 9.90109, + "51": 9.83457, + "52": 9.73232, + "53": 10.0488, + "54": 9.93895, + "55": 9.863, + "56": 9.613, + "57": 9.46966, + "58": 9.81135, + "59": 9.57107, + "60": 9.48155, + "61": 9.6788, + "62": 9.96581, + "63": 9.35273, + "64": 9.75648, + "65": 8.93771, + "66": 9.68153, + "67": 9.35671, + "68": 9.76807, + "69": 9.7739, + "70": 9.71016, + "71": 9.60009, + "72": 9.56793, + "73": 9.4774, + "74": 8.93177, + "75": 9.4072, + "76": 9.06849, + "77": 10.0464, + "78": 9.70988, + "79": 9.35733, + "80": 9.38975, + "81": 9.4662, + "82": 9.68058, + "83": 9.2914, + "84": 9.40191, + "85": 9.59735, + "86": 9.06209, + "87": 9.57922, + "88": 9.73259, + "89": 9.58836, + "90": 9.80354, + "91": 9.31991, + "92": 9.35011, + "93": 9.06382, + "94": 8.81909, + "95": 9.50568, + "96": 9.51071, + "97": 9.29241, + "98": 9.65578, + "99": 8.87401, + "100": 9.38833 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1628.0, + "2": 1744.0, + "3": 1662.0, + "4": 1801.0, + "5": 1937.0, + "6": 1866.0, + "7": 1855.0, + "8": 1584.0, + "9": 1901.0, + "10": 1325.0, + "11": 1966.0, + "12": 1767.0, + "13": 1876.0, + "14": 1881.0, + "15": 1928.0, + "16": 1875.0, + "17": 1790.0, + "18": 1736.0, + "19": 1804.0, + "20": 1690.0, + "21": 2008.0, + "22": 1765.0, + "23": 2073.0, + "24": 1618.0, + "25": 1720.0, + "26": 1807.0, + "27": 1861.0, + "28": 2026.0, + "29": 1982.0, + "30": 1981.0, + "31": 1688.0, + "32": 1913.0, + "33": 2123.0, + "34": 1893.0, + "35": 2007.0, + "36": 1987.0, + "37": 2334.0, + "38": 2223.0, + "39": 2417.0, + "40": 2370.0, + "41": 2352.0, + "42": 2269.0, + "43": 1967.0, + "44": 2183.0, + "45": 2150.0, + "46": 2350.0, + "47": 2555.0, + "48": 2463.0, + "49": 2326.0, + "50": 2270.0, + "51": 2508.0, + "52": 2495.0, + "53": 2856.0, + "54": 2692.0, + "55": 2482.0, + "56": 2614.0, + "57": 2283.0, + "58": 2894.0, + "59": 2659.0, + "60": 2561.0, + "61": 3006.0, + "62": 2671.0, + "63": 2488.0, + "64": 3092.0, + "65": 2622.0, + "66": 3108.0, + "67": 2741.0, + "68": 2942.0, + "69": 2983.0, + "70": 3347.0, + "71": 3034.0, + "72": 2438.0, + "73": 3075.0, + "74": 1931.0, + "75": 2722.0, + "76": 2960.0, + "77": 3387.0, + "78": 3268.0, + "79": 3079.0, + "80": 3404.0, + "81": 3674.0, + "82": 3192.0, + "83": 2791.0, + "84": 3224.0, + "85": 3237.0, + "86": 2646.0, + "87": 3840.0, + "88": 3114.0, + "89": 3410.0, + "90": 3184.0, + "91": 3073.0, + "92": 3396.0, + "93": 2711.0, + "94": 3530.0, + "95": 3387.0, + "96": 3530.0, + "97": 3277.0, + "98": 3775.0, + "99": 3421.0, + "100": 3350.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1234585088.0, + "2": 1234585088.0, + "3": 1234585088.0, + "4": 1234585088.0, + "5": 1234585088.0, + "6": 1234585088.0, + "7": 1234585088.0, + "8": 1234585088.0, + "9": 1234585088.0, + "10": 1234585088.0, + "11": 1234585088.0, + "12": 1234585088.0, + "13": 1234585088.0, + "14": 1234585088.0, + "15": 1234585088.0, + "16": 1234585088.0, + "17": 1234585088.0, + "18": 1234585088.0, + "19": 1234585088.0, + "20": 1234585088.0, + "21": 1234585088.0, + "22": 1234585088.0, + "23": 1234585088.0, + "24": 1234585088.0, + "25": 1234585088.0, + "26": 1234585088.0, + "27": 1234585088.0, + "28": 1234585088.0, + "29": 1234585088.0, + "30": 1234585088.0, + "31": 1234585088.0, + "32": 1234585088.0, + "33": 1234585088.0, + "34": 1234585088.0, + "35": 1234585088.0, + "36": 1234585088.0, + "37": 1234585088.0, + "38": 1234585088.0, + "39": 1234585088.0, + "40": 1234585088.0, + "41": 1234585088.0, + "42": 1234585088.0, + "43": 1234585088.0, + "44": 1234585088.0, + "45": 1234585088.0, + "46": 1234585088.0, + "47": 1234585088.0, + "48": 1234585088.0, + "49": 1234585088.0, + "50": 1234585088.0, + "51": 1234585088.0, + "52": 1234585088.0, + "53": 1234585088.0, + "54": 1234585088.0, + "55": 1234585088.0, + "56": 1234585088.0, + "57": 1234585088.0, + "58": 1234585088.0, + "59": 1234585088.0, + "60": 1234585088.0, + "61": 1234585088.0, + "62": 1234585088.0, + "63": 1234585088.0, + "64": 1234585088.0, + "65": 1234585088.0, + "66": 1234585088.0, + "67": 1234585088.0, + "68": 1234585088.0, + "69": 1234585088.0, + "70": 1234585088.0, + "71": 1234585088.0, + "72": 1234585088.0, + "73": 1234585088.0, + "74": 1234585088.0, + "75": 1234585088.0, + "76": 1234585088.0, + "77": 1234585088.0, + "78": 1234585088.0, + "79": 1234585088.0, + "80": 1234585088.0, + "81": 1234585088.0, + "82": 1234585088.0, + "83": 1234585088.0, + "84": 1234585088.0, + "85": 1234585088.0, + "86": 1234585088.0, + "87": 1234585088.0, + "88": 1234585088.0, + "89": 1234585088.0, + "90": 1234585088.0, + "91": 1234585088.0, + "92": 1234585088.0, + "93": 1234585088.0, + "94": 1234585088.0, + "95": 1234585088.0, + "96": 1234585088.0, + "97": 1234585088.0, + "98": 1234585088.0, + "99": 1234585088.0, + "100": 1234585088.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1984492544.0, + "2": 2536167424.0, + "3": 2536167424.0, + "4": 2536167424.0, + "5": 2536167424.0, + "6": 2536167424.0, + "7": 2536167424.0, + "8": 2536167424.0, + "9": 2536167424.0, + "10": 2536167424.0, + "11": 2536167424.0, + "12": 2536167424.0, + "13": 2536167424.0, + "14": 2536167424.0, + "15": 2536167424.0, + "16": 2536167424.0, + "17": 2536167424.0, + "18": 2536167424.0, + "19": 2536167424.0, + "20": 2536167424.0, + "21": 2536167424.0, + "22": 2536167424.0, + "23": 2536167424.0, + "24": 2536167424.0, + "25": 2536167424.0, + "26": 2536167424.0, + "27": 2536167424.0, + "28": 2536167424.0, + "29": 2536167424.0, + "30": 2536167424.0, + "31": 2536167424.0, + "32": 2536167424.0, + "33": 2536167424.0, + "34": 2536167424.0, + "35": 2536167424.0, + "36": 2536167424.0, + "37": 2536167424.0, + "38": 2536167424.0, + "39": 2536167424.0, + "40": 2536167424.0, + "41": 2536167424.0, + "42": 2536167424.0, + "43": 2536167424.0, + "44": 2536167424.0, + "45": 2536167424.0, + "46": 2536167424.0, + "47": 2536167424.0, + "48": 2536167424.0, + "49": 2536167424.0, + "50": 2536167424.0, + "51": 2536167424.0, + "52": 2536167424.0, + "53": 2536167424.0, + "54": 2536167424.0, + "55": 2536167424.0, + "56": 2536167424.0, + "57": 2536167424.0, + "58": 2536167424.0, + "59": 2536167424.0, + "60": 2536167424.0, + "61": 2536167424.0, + "62": 2536167424.0, + "63": 2536167424.0, + "64": 2536167424.0, + "65": 2536167424.0, + "66": 2536167424.0, + "67": 2536167424.0, + "68": 2536167424.0, + "69": 2536167424.0, + "70": 2536167424.0, + "71": 2536167424.0, + "72": 2536167424.0, + "73": 2536167424.0, + "74": 2536167424.0, + "75": 2536167424.0, + "76": 2536167424.0, + "77": 2536167424.0, + "78": 2536167424.0, + "79": 2536167424.0, + "80": 2536167424.0, + "81": 2536167424.0, + "82": 2536167424.0, + "83": 2536167424.0, + "84": 2536167424.0, + "85": 2536167424.0, + "86": 2536167424.0, + "87": 2536167424.0, + "88": 2536167424.0, + "89": 2536167424.0, + "90": 2536167424.0, + "91": 2536167424.0, + "92": 2536167424.0, + "93": 2536167424.0, + "94": 2536167424.0, + "95": 2536167424.0, + "96": 2536167424.0, + "97": 2536167424.0, + "98": 2536167424.0, + "99": 2536167424.0, + "100": 2536167424.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 3.43734, + "2": 0.14648, + "3": 0.12542, + "4": 0.12603, + "5": 0.12388, + "6": 0.12524, + "7": 0.12279, + "8": 0.1239, + "9": 0.12244, + "10": 0.12336, + "11": 0.12345, + "12": 0.12322, + "13": 0.12318, + "14": 0.12381, + "15": 0.12343, + "16": 0.12319, + "17": 0.12276, + "18": 0.12324, + "19": 0.12355, + "20": 0.12315, + "21": 0.12294, + "22": 0.12326, + "23": 0.12303, + "24": 0.12294, + "25": 0.12286, + "26": 0.12388, + "27": 0.12341, + "28": 0.12301, + "29": 0.12267, + "30": 0.12315, + "31": 0.12371, + "32": 0.12359, + "33": 0.12298, + "34": 0.12283, + "35": 0.12266, + "36": 0.12356, + "37": 0.12377, + "38": 0.12388, + "39": 0.12525, + "40": 0.12501, + "41": 0.12357, + "42": 0.12376, + "43": 0.12304, + "44": 0.12342, + "45": 0.12284, + "46": 0.12332, + "47": 0.12324, + "48": 0.12279, + "49": 0.12276, + "50": 0.12391, + "51": 0.12862, + "52": 0.12214, + "53": 0.12006, + "54": 0.12101, + "55": 0.12062, + "56": 0.12088, + "57": 0.121, + "58": 0.12034, + "59": 0.12049, + "60": 0.12066, + "61": 0.11974, + "62": 0.11979, + "63": 0.12196, + "64": 0.12149, + "65": 0.12119, + "66": 0.12067, + "67": 0.12079, + "68": 0.12104, + "69": 0.12025, + "70": 0.12059, + "71": 0.12069, + "72": 0.12102, + "73": 0.12115, + "74": 0.1208, + "75": 0.12051, + "76": 0.12011, + "77": 0.11958, + "78": 0.12095, + "79": 0.11983, + "80": 0.12106, + "81": 0.1203, + "82": 0.12062, + "83": 0.12021, + "84": 0.12036, + "85": 0.12053, + "86": 0.12119, + "87": 0.12057, + "88": 0.12092, + "89": 0.12271, + "90": 0.12095, + "91": 0.1204, + "92": 0.12052, + "93": 0.12075, + "94": 0.12025, + "95": 0.12129, + "96": 0.12087, + "97": 0.12098, + "98": 0.12136, + "99": 0.12046, + "100": 0.12064 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts.json new file mode 100644 index 00000000000..02ac3f23ca4 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.84865, + "2": 10.84835, + "3": 10.84054, + "4": 10.82381, + "5": 10.86283, + "6": 10.87554, + "7": 10.87089, + "8": 10.85554, + "9": 10.86811, + "10": 10.82287, + "11": 10.90334, + "12": 10.87985, + "13": 10.8831, + "14": 10.89653, + "15": 10.81406, + "16": 10.81973, + "17": 10.79918, + "18": 10.82428, + "19": 10.8195, + "20": 10.71958, + "21": 10.67864, + "22": 10.53625, + "23": 10.72125, + "24": 10.57435, + "25": 10.52997, + "26": 10.60096, + "27": 10.61502, + "28": 10.57231, + "29": 10.58614, + "30": 10.33749, + "31": 10.06516, + "32": 10.46436, + "33": 10.43612, + "34": 10.17278, + "35": 10.24173, + "36": 10.19042, + "37": 10.32282, + "38": 10.14881, + "39": 10.37709, + "40": 10.05124, + "41": 10.11355, + "42": 10.17253, + "43": 9.76298, + "44": 9.89293, + "45": 9.7664, + "46": 9.7601, + "47": 10.09424, + "48": 9.78753, + "49": 9.454, + "50": 9.8548, + "51": 9.79157, + "52": 9.68731, + "53": 10.02181, + "54": 9.90398, + "55": 9.82389, + "56": 9.57081, + "57": 9.40818, + "58": 9.77678, + "59": 9.52729, + "60": 9.44284, + "61": 9.64071, + "62": 9.94046, + "63": 9.31099, + "64": 9.72506, + "65": 8.8916, + "66": 9.6525, + "67": 9.31718, + "68": 9.73957, + "69": 9.74304, + "70": 9.67942, + "71": 9.56228, + "72": 9.53149, + "73": 9.44531, + "74": 8.88431, + "75": 9.3677, + "76": 9.02482, + "77": 10.01647, + "78": 9.6813, + "79": 9.32719, + "80": 9.3577, + "81": 9.43335, + "82": 9.64804, + "83": 9.25573, + "84": 9.36738, + "85": 9.56091, + "86": 9.03567, + "87": 9.54622, + "88": 9.70041, + "89": 9.54992, + "90": 9.77126, + "91": 9.28801, + "92": 9.31055, + "93": 9.03195, + "94": 8.78121, + "95": 9.48115, + "96": 9.4759, + "97": 9.2489, + "98": 9.61705, + "99": 8.8368, + "100": 9.35043 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1658.0, + "2": 1892.0, + "3": 1844.0, + "4": 1851.0, + "5": 1895.0, + "6": 2058.0, + "7": 1902.0, + "8": 1808.0, + "9": 1894.0, + "10": 1583.0, + "11": 2044.0, + "12": 1889.0, + "13": 2101.0, + "14": 2062.0, + "15": 1981.0, + "16": 1922.0, + "17": 1845.0, + "18": 1842.0, + "19": 1890.0, + "20": 1769.0, + "21": 2048.0, + "22": 1800.0, + "23": 2134.0, + "24": 1822.0, + "25": 1861.0, + "26": 1864.0, + "27": 1886.0, + "28": 2050.0, + "29": 2009.0, + "30": 2118.0, + "31": 1688.0, + "32": 2112.0, + "33": 2153.0, + "34": 1963.0, + "35": 2014.0, + "36": 2023.0, + "37": 2222.0, + "38": 2239.0, + "39": 2367.0, + "40": 2161.0, + "41": 2422.0, + "42": 2240.0, + "43": 2116.0, + "44": 2343.0, + "45": 2127.0, + "46": 2189.0, + "47": 2411.0, + "48": 2347.0, + "49": 2271.0, + "50": 2345.0, + "51": 2482.0, + "52": 2570.0, + "53": 2835.0, + "54": 2589.0, + "55": 2450.0, + "56": 2744.0, + "57": 2429.0, + "58": 2684.0, + "59": 2748.0, + "60": 2464.0, + "61": 2995.0, + "62": 2518.0, + "63": 2570.0, + "64": 2843.0, + "65": 2648.0, + "66": 2842.0, + "67": 2954.0, + "68": 2833.0, + "69": 3027.0, + "70": 2993.0, + "71": 3010.0, + "72": 2597.0, + "73": 3002.0, + "74": 2325.0, + "75": 2882.0, + "76": 3143.0, + "77": 3062.0, + "78": 3272.0, + "79": 3303.0, + "80": 3280.0, + "81": 3517.0, + "82": 3283.0, + "83": 2834.0, + "84": 3365.0, + "85": 3288.0, + "86": 2562.0, + "87": 3493.0, + "88": 3388.0, + "89": 3102.0, + "90": 3230.0, + "91": 3154.0, + "92": 3263.0, + "93": 2967.0, + "94": 3520.0, + "95": 3175.0, + "96": 3317.0, + "97": 2999.0, + "98": 3549.0, + "99": 3248.0, + "100": 3227.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 892293120.0, + "2": 892293120.0, + "3": 892293120.0, + "4": 892293120.0, + "5": 892293120.0, + "6": 892293120.0, + "7": 892293120.0, + "8": 892293120.0, + "9": 892293120.0, + "10": 892293120.0, + "11": 892293120.0, + "12": 892293120.0, + "13": 892293120.0, + "14": 892293120.0, + "15": 892293120.0, + "16": 892293120.0, + "17": 892293120.0, + "18": 892293120.0, + "19": 892293120.0, + "20": 892293120.0, + "21": 892293120.0, + "22": 892293120.0, + "23": 892293120.0, + "24": 892293120.0, + "25": 892293120.0, + "26": 892293120.0, + "27": 892293120.0, + "28": 892293120.0, + "29": 892293120.0, + "30": 892293120.0, + "31": 892293120.0, + "32": 892293120.0, + "33": 892293120.0, + "34": 892293120.0, + "35": 892293120.0, + "36": 892293120.0, + "37": 892293120.0, + "38": 892293120.0, + "39": 892293120.0, + "40": 892293120.0, + "41": 892293120.0, + "42": 892293120.0, + "43": 892293120.0, + "44": 892293120.0, + "45": 892293120.0, + "46": 892293120.0, + "47": 892293120.0, + "48": 892293120.0, + "49": 892293120.0, + "50": 892293120.0, + "51": 892293120.0, + "52": 892293120.0, + "53": 892293120.0, + "54": 892293120.0, + "55": 892293120.0, + "56": 892293120.0, + "57": 892293120.0, + "58": 892293120.0, + "59": 892293120.0, + "60": 892293120.0, + "61": 892293120.0, + "62": 892293120.0, + "63": 892293120.0, + "64": 892293120.0, + "65": 892293120.0, + "66": 892293120.0, + "67": 892293120.0, + "68": 892293120.0, + "69": 892293120.0, + "70": 892293120.0, + "71": 892293120.0, + "72": 892293120.0, + "73": 892293120.0, + "74": 892293120.0, + "75": 892293120.0, + "76": 892293120.0, + "77": 892293120.0, + "78": 892293120.0, + "79": 892293120.0, + "80": 892293120.0, + "81": 892293120.0, + "82": 892293120.0, + "83": 892293120.0, + "84": 892293120.0, + "85": 892293120.0, + "86": 892293120.0, + "87": 892293120.0, + "88": 892293120.0, + "89": 892293120.0, + "90": 892293120.0, + "91": 892293120.0, + "92": 892293120.0, + "93": 892293120.0, + "94": 892293120.0, + "95": 892293120.0, + "96": 892293120.0, + "97": 892293120.0, + "98": 892293120.0, + "99": 892293120.0, + "100": 892293120.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2236674048.0, + "2": 2599285760.0, + "3": 2599285760.0, + "4": 2599285760.0, + "5": 2599285760.0, + "6": 2599285760.0, + "7": 2599285760.0, + "8": 2599285760.0, + "9": 2599285760.0, + "10": 2599285760.0, + "11": 2599285760.0, + "12": 2599285760.0, + "13": 2599285760.0, + "14": 2599285760.0, + "15": 2599285760.0, + "16": 2599285760.0, + "17": 2599285760.0, + "18": 2599285760.0, + "19": 2599285760.0, + "20": 2599285760.0, + "21": 2599285760.0, + "22": 2599285760.0, + "23": 2599285760.0, + "24": 2599285760.0, + "25": 2599285760.0, + "26": 2599285760.0, + "27": 2599285760.0, + "28": 2599285760.0, + "29": 2599285760.0, + "30": 2599285760.0, + "31": 2599285760.0, + "32": 2599285760.0, + "33": 2599285760.0, + "34": 2599285760.0, + "35": 2599285760.0, + "36": 2599285760.0, + "37": 2599285760.0, + "38": 2599285760.0, + "39": 2599285760.0, + "40": 2599285760.0, + "41": 2599285760.0, + "42": 2599285760.0, + "43": 2599285760.0, + "44": 2599285760.0, + "45": 2599285760.0, + "46": 2599285760.0, + "47": 2599285760.0, + "48": 2599285760.0, + "49": 2599285760.0, + "50": 2599285760.0, + "51": 2599285760.0, + "52": 2599285760.0, + "53": 2599285760.0, + "54": 2599285760.0, + "55": 2599285760.0, + "56": 2599285760.0, + "57": 2599285760.0, + "58": 2599285760.0, + "59": 2599285760.0, + "60": 2599285760.0, + "61": 2599285760.0, + "62": 2599285760.0, + "63": 2599285760.0, + "64": 2599285760.0, + "65": 2599285760.0, + "66": 2599285760.0, + "67": 2599285760.0, + "68": 2599285760.0, + "69": 2599285760.0, + "70": 2599285760.0, + "71": 2599285760.0, + "72": 2599285760.0, + "73": 2599285760.0, + "74": 2599285760.0, + "75": 2599285760.0, + "76": 2599285760.0, + "77": 2599285760.0, + "78": 2599285760.0, + "79": 2599285760.0, + "80": 2599285760.0, + "81": 2599285760.0, + "82": 2599285760.0, + "83": 2599285760.0, + "84": 2599285760.0, + "85": 2599285760.0, + "86": 2599285760.0, + "87": 2599285760.0, + "88": 2599285760.0, + "89": 2599285760.0, + "90": 2599285760.0, + "91": 2599285760.0, + "92": 2599285760.0, + "93": 2599285760.0, + "94": 2599285760.0, + "95": 2599285760.0, + "96": 2599285760.0, + "97": 2599285760.0, + "98": 2599285760.0, + "99": 2599285760.0, + "100": 2599285760.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 5.33769, + "2": 0.18532, + "3": 0.14816, + "4": 0.14635, + "5": 0.14643, + "6": 0.14673, + "7": 0.1465, + "8": 0.14731, + "9": 0.14559, + "10": 0.1459, + "11": 0.14535, + "12": 0.14613, + "13": 0.14618, + "14": 0.14642, + "15": 0.1462, + "16": 0.14548, + "17": 0.14502, + "18": 0.1449, + "19": 0.145, + "20": 0.14696, + "21": 0.14496, + "22": 0.14536, + "23": 0.14489, + "24": 0.14464, + "25": 0.14477, + "26": 0.14552, + "27": 0.14534, + "28": 0.14506, + "29": 0.14487, + "30": 0.14509, + "31": 0.14642, + "32": 0.14499, + "33": 0.14538, + "34": 0.14461, + "35": 0.14541, + "36": 0.14464, + "37": 0.14539, + "38": 0.14569, + "39": 0.14515, + "40": 0.14583, + "41": 0.14836, + "42": 0.14589, + "43": 0.14625, + "44": 0.14559, + "45": 0.14588, + "46": 0.14644, + "47": 0.146, + "48": 0.1459, + "49": 0.14609, + "50": 0.14597, + "51": 0.15206, + "52": 0.1459, + "53": 0.1452, + "54": 0.14745, + "55": 0.14578, + "56": 0.14459, + "57": 0.14524, + "58": 0.14545, + "59": 0.14527, + "60": 0.14448, + "61": 0.14539, + "62": 0.14462, + "63": 0.14474, + "64": 0.1447, + "65": 0.14564, + "66": 0.14463, + "67": 0.14466, + "68": 0.14483, + "69": 0.14562, + "70": 0.1456, + "71": 0.14516, + "72": 0.14481, + "73": 0.14539, + "74": 0.14568, + "75": 0.14464, + "76": 0.14465, + "77": 0.14427, + "78": 0.14541, + "79": 0.1445, + "80": 0.14535, + "81": 0.14526, + "82": 0.14617, + "83": 0.14445, + "84": 0.14483, + "85": 0.14457, + "86": 0.14459, + "87": 0.14462, + "88": 0.14433, + "89": 0.14514, + "90": 0.14416, + "91": 0.14667, + "92": 0.14432, + "93": 0.14551, + "94": 0.14453, + "95": 0.14488, + "96": 0.14441, + "97": 0.14545, + "98": 0.14459, + "99": 0.14481, + "100": 0.14918 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts_dgx_a100.json index d30c8d5b5e6..48aee8d379f 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp2_resume_torch_dist_rope_embeddings_interleaved_no_fusion/golden_values_lts_dgx_a100.json @@ -2,141 +2,536 @@ "lm loss": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.84474, - "5": 10.86418, - "10": 10.82155, - "15": 10.81195, - "20": 10.71872, - "25": 10.53036, - "30": 10.3358, - "35": 10.24081, - "40": 10.05008, - "45": 9.76762, - "50": 9.85505, - "55": 9.82465, - "60": 9.44306, - "65": 8.89104, - "70": 9.67902, - "75": 9.36836, - "80": 9.35799, - "85": 9.56032, - "90": 9.77055, - "95": 9.48101, - "100": 9.34997 + "1": 10.84865, + "2": 10.84835, + "3": 10.84054, + "4": 10.82381, + "5": 10.86283, + "6": 10.87554, + "7": 10.87089, + "8": 10.85554, + "9": 10.86811, + "10": 10.82287, + "11": 10.90334, + "12": 10.87985, + "13": 10.8831, + "14": 10.89653, + "15": 10.81406, + "16": 10.81973, + "17": 10.79918, + "18": 10.82428, + "19": 10.8195, + "20": 10.71958, + "21": 10.67864, + "22": 10.53625, + "23": 10.72125, + "24": 10.57435, + "25": 10.52997, + "26": 10.60096, + "27": 10.61502, + "28": 10.57231, + "29": 10.58614, + "30": 10.33749, + "31": 10.06516, + "32": 10.46436, + "33": 10.43612, + "34": 10.17278, + "35": 10.24173, + "36": 10.19042, + "37": 10.32282, + "38": 10.14881, + "39": 10.37709, + "40": 10.05124, + "41": 10.11355, + "42": 10.17253, + "43": 9.76298, + "44": 9.89293, + "45": 9.7664, + "46": 9.7601, + "47": 10.09424, + "48": 9.78753, + "49": 9.454, + "50": 9.8548, + "51": 9.79157, + "52": 9.68731, + "53": 10.02181, + "54": 9.90398, + "55": 9.82389, + "56": 9.57081, + "57": 9.40818, + "58": 9.77678, + "59": 9.52729, + "60": 9.44284, + "61": 9.64071, + "62": 9.94046, + "63": 9.31099, + "64": 9.72506, + "65": 8.8916, + "66": 9.6525, + "67": 9.31718, + "68": 9.73957, + "69": 9.74304, + "70": 9.67942, + "71": 9.56228, + "72": 9.53149, + "73": 9.44531, + "74": 8.88431, + "75": 9.3677, + "76": 9.02482, + "77": 10.01647, + "78": 9.6813, + "79": 9.32719, + "80": 9.3577, + "81": 9.43335, + "82": 9.64804, + "83": 9.25573, + "84": 9.36738, + "85": 9.56091, + "86": 9.03567, + "87": 9.54622, + "88": 9.70041, + "89": 9.54992, + "90": 9.77126, + "91": 9.28801, + "92": 9.31055, + "93": 9.03195, + "94": 8.78121, + "95": 9.48115, + "96": 9.4759, + "97": 9.2489, + "98": 9.61705, + "99": 8.8368, + "100": 9.35043 } }, "num-zeros": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 1776.0, - "5": 2128.0, - "10": 1615.0, - "15": 2021.0, - "20": 1775.0, - "25": 1916.0, - "30": 2029.0, - "35": 2107.0, - "40": 2174.0, - "45": 2110.0, - "50": 2363.0, - "55": 2460.0, - "60": 2462.0, - "65": 2724.0, - "70": 2952.0, - "75": 2823.0, - "80": 3222.0, - "85": 3314.0, - "90": 3087.0, - "95": 3146.0, - "100": 3331.0 + "1": 1658.0, + "2": 1892.0, + "3": 1844.0, + "4": 1851.0, + "5": 1895.0, + "6": 2058.0, + "7": 1902.0, + "8": 1808.0, + "9": 1894.0, + "10": 1583.0, + "11": 2044.0, + "12": 1889.0, + "13": 2101.0, + "14": 2062.0, + "15": 1981.0, + "16": 1922.0, + "17": 1845.0, + "18": 1842.0, + "19": 1890.0, + "20": 1769.0, + "21": 2048.0, + "22": 1800.0, + "23": 2134.0, + "24": 1822.0, + "25": 1861.0, + "26": 1864.0, + "27": 1886.0, + "28": 2050.0, + "29": 2009.0, + "30": 2118.0, + "31": 1688.0, + "32": 2112.0, + "33": 2153.0, + "34": 1963.0, + "35": 2014.0, + "36": 2023.0, + "37": 2222.0, + "38": 2239.0, + "39": 2367.0, + "40": 2161.0, + "41": 2422.0, + "42": 2240.0, + "43": 2116.0, + "44": 2343.0, + "45": 2127.0, + "46": 2189.0, + "47": 2411.0, + "48": 2347.0, + "49": 2271.0, + "50": 2345.0, + "51": 2482.0, + "52": 2570.0, + "53": 2835.0, + "54": 2589.0, + "55": 2450.0, + "56": 2744.0, + "57": 2429.0, + "58": 2684.0, + "59": 2748.0, + "60": 2464.0, + "61": 2995.0, + "62": 2518.0, + "63": 2570.0, + "64": 2843.0, + "65": 2648.0, + "66": 2842.0, + "67": 2954.0, + "68": 2833.0, + "69": 3027.0, + "70": 2993.0, + "71": 3010.0, + "72": 2597.0, + "73": 3002.0, + "74": 2325.0, + "75": 2882.0, + "76": 3143.0, + "77": 3062.0, + "78": 3272.0, + "79": 3303.0, + "80": 3280.0, + "81": 3517.0, + "82": 3283.0, + "83": 2834.0, + "84": 3365.0, + "85": 3288.0, + "86": 2562.0, + "87": 3493.0, + "88": 3388.0, + "89": 3102.0, + "90": 3230.0, + "91": 3154.0, + "92": 3263.0, + "93": 2967.0, + "94": 3520.0, + "95": 3175.0, + "96": 3317.0, + "97": 2999.0, + "98": 3549.0, + "99": 3248.0, + "100": 3227.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 888098304.0, - "5": 888098304.0, - "10": 888098304.0, - "15": 888098304.0, - "20": 888098304.0, - "25": 888098304.0, - "30": 888098304.0, - "35": 888098304.0, - "40": 888098304.0, - "45": 888098304.0, - "50": 888098304.0, - "55": 888098304.0, - "60": 888098304.0, - "65": 888098304.0, - "70": 888098304.0, - "75": 888098304.0, - "80": 888098304.0, - "85": 888098304.0, - "90": 888098304.0, - "95": 888098304.0, - "100": 888098304.0 + "1": 892293120.0, + "2": 892293120.0, + "3": 892293120.0, + "4": 892293120.0, + "5": 892293120.0, + "6": 892293120.0, + "7": 892293120.0, + "8": 892293120.0, + "9": 892293120.0, + "10": 892293120.0, + "11": 892293120.0, + "12": 892293120.0, + "13": 892293120.0, + "14": 892293120.0, + "15": 892293120.0, + "16": 892293120.0, + "17": 892293120.0, + "18": 892293120.0, + "19": 892293120.0, + "20": 892293120.0, + "21": 892293120.0, + "22": 892293120.0, + "23": 892293120.0, + "24": 892293120.0, + "25": 892293120.0, + "26": 892293120.0, + "27": 892293120.0, + "28": 892293120.0, + "29": 892293120.0, + "30": 892293120.0, + "31": 892293120.0, + "32": 892293120.0, + "33": 892293120.0, + "34": 892293120.0, + "35": 892293120.0, + "36": 892293120.0, + "37": 892293120.0, + "38": 892293120.0, + "39": 892293120.0, + "40": 892293120.0, + "41": 892293120.0, + "42": 892293120.0, + "43": 892293120.0, + "44": 892293120.0, + "45": 892293120.0, + "46": 892293120.0, + "47": 892293120.0, + "48": 892293120.0, + "49": 892293120.0, + "50": 892293120.0, + "51": 892293120.0, + "52": 892293120.0, + "53": 892293120.0, + "54": 892293120.0, + "55": 892293120.0, + "56": 892293120.0, + "57": 892293120.0, + "58": 892293120.0, + "59": 892293120.0, + "60": 892293120.0, + "61": 892293120.0, + "62": 892293120.0, + "63": 892293120.0, + "64": 892293120.0, + "65": 892293120.0, + "66": 892293120.0, + "67": 892293120.0, + "68": 892293120.0, + "69": 892293120.0, + "70": 892293120.0, + "71": 892293120.0, + "72": 892293120.0, + "73": 892293120.0, + "74": 892293120.0, + "75": 892293120.0, + "76": 892293120.0, + "77": 892293120.0, + "78": 892293120.0, + "79": 892293120.0, + "80": 892293120.0, + "81": 892293120.0, + "82": 892293120.0, + "83": 892293120.0, + "84": 892293120.0, + "85": 892293120.0, + "86": 892293120.0, + "87": 892293120.0, + "88": 892293120.0, + "89": 892293120.0, + "90": 892293120.0, + "91": 892293120.0, + "92": 892293120.0, + "93": 892293120.0, + "94": 892293120.0, + "95": 892293120.0, + "96": 892293120.0, + "97": 892293120.0, + "98": 892293120.0, + "99": 892293120.0, + "100": 892293120.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 3216302592.0, - "5": 3575768576.0, - "10": 3575768576.0, - "15": 3575768576.0, - "20": 3575768576.0, - "25": 3575768576.0, - "30": 3575768576.0, - "35": 3575768576.0, - "40": 3575768576.0, - "45": 3575768576.0, - "50": 3575768576.0, - "55": 3575768576.0, - "60": 3575768576.0, - "65": 3575768576.0, - "70": 3575768576.0, - "75": 3575768576.0, - "80": 3575768576.0, - "85": 3575768576.0, - "90": 3575768576.0, - "95": 3575768576.0, - "100": 3575768576.0 + "1": 2236674048.0, + "2": 2599285760.0, + "3": 2599285760.0, + "4": 2599285760.0, + "5": 2599285760.0, + "6": 2599285760.0, + "7": 2599285760.0, + "8": 2599285760.0, + "9": 2599285760.0, + "10": 2599285760.0, + "11": 2599285760.0, + "12": 2599285760.0, + "13": 2599285760.0, + "14": 2599285760.0, + "15": 2599285760.0, + "16": 2599285760.0, + "17": 2599285760.0, + "18": 2599285760.0, + "19": 2599285760.0, + "20": 2599285760.0, + "21": 2599285760.0, + "22": 2599285760.0, + "23": 2599285760.0, + "24": 2599285760.0, + "25": 2599285760.0, + "26": 2599285760.0, + "27": 2599285760.0, + "28": 2599285760.0, + "29": 2599285760.0, + "30": 2599285760.0, + "31": 2599285760.0, + "32": 2599285760.0, + "33": 2599285760.0, + "34": 2599285760.0, + "35": 2599285760.0, + "36": 2599285760.0, + "37": 2599285760.0, + "38": 2599285760.0, + "39": 2599285760.0, + "40": 2599285760.0, + "41": 2599285760.0, + "42": 2599285760.0, + "43": 2599285760.0, + "44": 2599285760.0, + "45": 2599285760.0, + "46": 2599285760.0, + "47": 2599285760.0, + "48": 2599285760.0, + "49": 2599285760.0, + "50": 2599285760.0, + "51": 2599285760.0, + "52": 2599285760.0, + "53": 2599285760.0, + "54": 2599285760.0, + "55": 2599285760.0, + "56": 2599285760.0, + "57": 2599285760.0, + "58": 2599285760.0, + "59": 2599285760.0, + "60": 2599285760.0, + "61": 2599285760.0, + "62": 2599285760.0, + "63": 2599285760.0, + "64": 2599285760.0, + "65": 2599285760.0, + "66": 2599285760.0, + "67": 2599285760.0, + "68": 2599285760.0, + "69": 2599285760.0, + "70": 2599285760.0, + "71": 2599285760.0, + "72": 2599285760.0, + "73": 2599285760.0, + "74": 2599285760.0, + "75": 2599285760.0, + "76": 2599285760.0, + "77": 2599285760.0, + "78": 2599285760.0, + "79": 2599285760.0, + "80": 2599285760.0, + "81": 2599285760.0, + "82": 2599285760.0, + "83": 2599285760.0, + "84": 2599285760.0, + "85": 2599285760.0, + "86": 2599285760.0, + "87": 2599285760.0, + "88": 2599285760.0, + "89": 2599285760.0, + "90": 2599285760.0, + "91": 2599285760.0, + "92": 2599285760.0, + "93": 2599285760.0, + "94": 2599285760.0, + "95": 2599285760.0, + "96": 2599285760.0, + "97": 2599285760.0, + "98": 2599285760.0, + "99": 2599285760.0, + "100": 2599285760.0 } }, "iteration-time": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 11.26216, - "5": 0.17522, - "10": 0.17308, - "15": 0.17129, - "20": 0.17153, - "25": 0.17072, - "30": 0.17154, - "35": 0.17096, - "40": 0.16956, - "45": 0.17006, - "50": 0.16739, - "55": 0.17674, - "60": 0.17809, - "65": 0.17803, - "70": 0.17656, - "75": 0.17665, - "80": 0.17686, - "85": 0.17744, - "90": 0.17611, - "95": 0.17687, - "100": 0.1753 + "1": 9.51973, + "2": 0.20593, + "3": 0.14945, + "4": 0.14775, + "5": 0.14785, + "6": 0.14767, + "7": 0.14754, + "8": 0.14649, + "9": 0.14636, + "10": 0.14713, + "11": 0.14628, + "12": 0.14658, + "13": 0.14581, + "14": 0.14652, + "15": 0.14657, + "16": 0.14585, + "17": 0.14783, + "18": 0.1469, + "19": 0.14603, + "20": 0.14662, + "21": 0.14635, + "22": 0.1461, + "23": 0.14688, + "24": 0.14579, + "25": 0.14587, + "26": 0.14836, + "27": 0.14598, + "28": 0.1458, + "29": 0.14604, + "30": 0.14624, + "31": 0.14719, + "32": 0.14625, + "33": 0.14582, + "34": 0.14603, + "35": 0.14619, + "36": 0.14587, + "37": 0.14585, + "38": 0.14625, + "39": 0.14572, + "40": 0.14629, + "41": 0.14561, + "42": 0.14587, + "43": 0.14672, + "44": 0.14572, + "45": 0.14618, + "46": 0.14622, + "47": 0.14572, + "48": 0.14538, + "49": 0.14571, + "50": 0.1457, + "51": 0.1553, + "52": 0.14793, + "53": 0.14797, + "54": 0.14774, + "55": 0.14702, + "56": 0.15765, + "57": 0.1544, + "58": 0.15368, + "59": 0.15399, + "60": 0.15366, + "61": 0.15362, + "62": 0.15351, + "63": 0.15339, + "64": 0.15353, + "65": 0.15154, + "66": 0.14531, + "67": 0.14661, + "68": 0.14599, + "69": 0.14546, + "70": 0.14633, + "71": 0.14568, + "72": 0.1461, + "73": 0.14601, + "74": 0.1469, + "75": 0.14561, + "76": 0.14575, + "77": 0.14581, + "78": 0.14634, + "79": 0.14619, + "80": 0.14627, + "81": 0.146, + "82": 0.14559, + "83": 0.14618, + "84": 0.14683, + "85": 0.14582, + "86": 0.1462, + "87": 0.14574, + "88": 0.14574, + "89": 0.14516, + "90": 0.14556, + "91": 0.146, + "92": 0.14702, + "93": 0.14541, + "94": 0.14625, + "95": 0.14586, + "96": 0.1455, + "97": 0.14559, + "98": 0.14614, + "99": 0.15005, + "100": 0.14598 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts.json new file mode 100644 index 00000000000..92fea79bc3d --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.79332, + "2": 10.80674, + "3": 10.8069, + "4": 10.77377, + "5": 10.84763, + "6": 10.86617, + "7": 10.8277, + "8": 10.81226, + "9": 10.83507, + "10": 10.77007, + "11": 10.89243, + "12": 10.84575, + "13": 10.85895, + "14": 10.883, + "15": 10.79054, + "16": 10.78048, + "17": 10.75666, + "18": 10.79491, + "19": 10.79656, + "20": 10.68058, + "21": 10.66001, + "22": 10.50257, + "23": 10.7118, + "24": 10.55327, + "25": 10.50697, + "26": 10.58286, + "27": 10.58643, + "28": 10.55758, + "29": 10.56227, + "30": 10.33257, + "31": 10.08654, + "32": 10.44724, + "33": 10.44499, + "34": 10.19999, + "35": 10.25465, + "36": 10.19443, + "37": 10.32044, + "38": 10.16641, + "39": 10.3774, + "40": 10.05603, + "41": 10.13739, + "42": 10.19161, + "43": 9.80954, + "44": 9.93054, + "45": 9.80619, + "46": 9.81395, + "47": 10.12881, + "48": 9.82729, + "49": 9.51291, + "50": 9.89126, + "51": 9.84055, + "52": 9.73438, + "53": 10.05482, + "54": 9.94058, + "55": 9.87124, + "56": 9.61045, + "57": 9.46116, + "58": 9.81654, + "59": 9.57887, + "60": 9.48507, + "61": 9.68515, + "62": 9.97438, + "63": 9.36298, + "64": 9.76793, + "65": 8.93913, + "66": 9.68918, + "67": 9.36638, + "68": 9.77507, + "69": 9.78344, + "70": 9.72196, + "71": 9.60806, + "72": 9.57714, + "73": 9.48934, + "74": 8.94008, + "75": 9.40867, + "76": 9.08075, + "77": 10.05717, + "78": 9.72281, + "79": 9.36465, + "80": 9.39746, + "81": 9.47553, + "82": 9.6886, + "83": 9.30263, + "84": 9.41008, + "85": 9.60793, + "86": 9.07115, + "87": 9.58676, + "88": 9.74129, + "89": 9.5986, + "90": 9.81041, + "91": 9.33113, + "92": 9.35502, + "93": 9.07481, + "94": 8.82745, + "95": 9.51149, + "96": 9.51876, + "97": 9.30173, + "98": 9.66726, + "99": 8.88087, + "100": 9.39727 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1624.0, + "2": 1758.0, + "3": 1678.0, + "4": 1680.0, + "5": 1824.0, + "6": 1899.0, + "7": 1871.0, + "8": 1677.0, + "9": 1802.0, + "10": 1414.0, + "11": 1904.0, + "12": 1630.0, + "13": 1956.0, + "14": 1777.0, + "15": 1902.0, + "16": 1801.0, + "17": 1830.0, + "18": 1630.0, + "19": 1835.0, + "20": 1642.0, + "21": 1752.0, + "22": 1696.0, + "23": 2085.0, + "24": 1618.0, + "25": 1593.0, + "26": 1722.0, + "27": 1778.0, + "28": 2042.0, + "29": 1900.0, + "30": 2001.0, + "31": 1592.0, + "32": 1757.0, + "33": 2116.0, + "34": 1924.0, + "35": 1904.0, + "36": 1852.0, + "37": 2382.0, + "38": 2195.0, + "39": 2267.0, + "40": 2335.0, + "41": 2223.0, + "42": 2317.0, + "43": 2069.0, + "44": 2060.0, + "45": 2140.0, + "46": 2397.0, + "47": 2464.0, + "48": 2455.0, + "49": 2276.0, + "50": 2374.0, + "51": 2574.0, + "52": 2457.0, + "53": 2905.0, + "54": 2609.0, + "55": 2220.0, + "56": 2663.0, + "57": 2258.0, + "58": 2898.0, + "59": 2676.0, + "60": 2397.0, + "61": 3048.0, + "62": 2533.0, + "63": 2370.0, + "64": 2975.0, + "65": 2591.0, + "66": 3065.0, + "67": 2732.0, + "68": 2870.0, + "69": 2955.0, + "70": 3112.0, + "71": 2989.0, + "72": 2451.0, + "73": 2881.0, + "74": 1859.0, + "75": 2649.0, + "76": 3026.0, + "77": 3316.0, + "78": 3212.0, + "79": 3183.0, + "80": 3262.0, + "81": 3669.0, + "82": 3187.0, + "83": 2798.0, + "84": 3209.0, + "85": 3309.0, + "86": 2738.0, + "87": 3804.0, + "88": 2989.0, + "89": 3327.0, + "90": 3031.0, + "91": 2720.0, + "92": 2972.0, + "93": 2719.0, + "94": 3387.0, + "95": 3321.0, + "96": 3342.0, + "97": 3191.0, + "98": 3533.0, + "99": 3214.0, + "100": 3318.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 716834304.0, + "2": 716834304.0, + "3": 716834304.0, + "4": 716834304.0, + "5": 716834304.0, + "6": 716834304.0, + "7": 716834304.0, + "8": 716834304.0, + "9": 716834304.0, + "10": 716834304.0, + "11": 716834304.0, + "12": 716834304.0, + "13": 716834304.0, + "14": 716834304.0, + "15": 716834304.0, + "16": 716834304.0, + "17": 716834304.0, + "18": 716834304.0, + "19": 716834304.0, + "20": 716834304.0, + "21": 716834304.0, + "22": 716834304.0, + "23": 716834304.0, + "24": 716834304.0, + "25": 716834304.0, + "26": 716834304.0, + "27": 716834304.0, + "28": 716834304.0, + "29": 716834304.0, + "30": 716834304.0, + "31": 716834304.0, + "32": 716834304.0, + "33": 716834304.0, + "34": 716834304.0, + "35": 716834304.0, + "36": 716834304.0, + "37": 716834304.0, + "38": 716834304.0, + "39": 716834304.0, + "40": 716834304.0, + "41": 716834304.0, + "42": 716834304.0, + "43": 716834304.0, + "44": 716834304.0, + "45": 716834304.0, + "46": 716834304.0, + "47": 716834304.0, + "48": 716834304.0, + "49": 716834304.0, + "50": 716834304.0, + "51": 716834304.0, + "52": 716834304.0, + "53": 716834304.0, + "54": 716834304.0, + "55": 716834304.0, + "56": 716834304.0, + "57": 716834304.0, + "58": 716834304.0, + "59": 716834304.0, + "60": 716834304.0, + "61": 716834304.0, + "62": 716834304.0, + "63": 716834304.0, + "64": 716834304.0, + "65": 716834304.0, + "66": 716834304.0, + "67": 716834304.0, + "68": 716834304.0, + "69": 716834304.0, + "70": 716834304.0, + "71": 716834304.0, + "72": 716834304.0, + "73": 716834304.0, + "74": 716834304.0, + "75": 716834304.0, + "76": 716834304.0, + "77": 716834304.0, + "78": 716834304.0, + "79": 716834304.0, + "80": 716834304.0, + "81": 716834304.0, + "82": 716834304.0, + "83": 716834304.0, + "84": 716834304.0, + "85": 716834304.0, + "86": 716834304.0, + "87": 716834304.0, + "88": 716834304.0, + "89": 716834304.0, + "90": 716834304.0, + "91": 716834304.0, + "92": 716834304.0, + "93": 716834304.0, + "94": 716834304.0, + "95": 716834304.0, + "96": 716834304.0, + "97": 716834304.0, + "98": 716834304.0, + "99": 716834304.0, + "100": 716834304.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1910424576.0, + "2": 2193074176.0, + "3": 2193074176.0, + "4": 2193074176.0, + "5": 2193074176.0, + "6": 2193074176.0, + "7": 2193074176.0, + "8": 2193074176.0, + "9": 2193074176.0, + "10": 2193074176.0, + "11": 2193074176.0, + "12": 2193074176.0, + "13": 2193074176.0, + "14": 2193074176.0, + "15": 2193074176.0, + "16": 2193074176.0, + "17": 2193074176.0, + "18": 2193074176.0, + "19": 2193074176.0, + "20": 2193074176.0, + "21": 2193074176.0, + "22": 2193074176.0, + "23": 2193074176.0, + "24": 2193074176.0, + "25": 2193074176.0, + "26": 2193074176.0, + "27": 2193074176.0, + "28": 2193074176.0, + "29": 2193074176.0, + "30": 2193074176.0, + "31": 2193074176.0, + "32": 2193074176.0, + "33": 2193074176.0, + "34": 2193074176.0, + "35": 2193074176.0, + "36": 2193074176.0, + "37": 2193074176.0, + "38": 2193074176.0, + "39": 2193074176.0, + "40": 2193074176.0, + "41": 2193074176.0, + "42": 2193074176.0, + "43": 2193074176.0, + "44": 2193074176.0, + "45": 2193074176.0, + "46": 2193074176.0, + "47": 2193074176.0, + "48": 2193074176.0, + "49": 2193074176.0, + "50": 2193074176.0, + "51": 2193074176.0, + "52": 2193074176.0, + "53": 2193074176.0, + "54": 2193074176.0, + "55": 2193074176.0, + "56": 2193074176.0, + "57": 2193074176.0, + "58": 2193074176.0, + "59": 2193074176.0, + "60": 2193074176.0, + "61": 2193074176.0, + "62": 2193074176.0, + "63": 2193074176.0, + "64": 2193074176.0, + "65": 2193074176.0, + "66": 2193074176.0, + "67": 2193074176.0, + "68": 2193074176.0, + "69": 2193074176.0, + "70": 2193074176.0, + "71": 2193074176.0, + "72": 2193074176.0, + "73": 2193074176.0, + "74": 2193074176.0, + "75": 2193074176.0, + "76": 2193074176.0, + "77": 2193074176.0, + "78": 2193074176.0, + "79": 2193074176.0, + "80": 2193074176.0, + "81": 2193074176.0, + "82": 2193074176.0, + "83": 2193074176.0, + "84": 2193074176.0, + "85": 2193074176.0, + "86": 2193074176.0, + "87": 2193074176.0, + "88": 2193074176.0, + "89": 2193074176.0, + "90": 2193074176.0, + "91": 2193074176.0, + "92": 2193074176.0, + "93": 2193074176.0, + "94": 2193074176.0, + "95": 2193074176.0, + "96": 2193074176.0, + "97": 2193074176.0, + "98": 2193074176.0, + "99": 2193074176.0, + "100": 2193074176.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 9.17541, + "2": 0.17628, + "3": 0.14823, + "4": 0.14828, + "5": 0.14489, + "6": 0.14681, + "7": 0.14589, + "8": 0.14567, + "9": 0.14899, + "10": 0.14748, + "11": 0.1469, + "12": 0.14571, + "13": 0.14519, + "14": 0.14594, + "15": 0.14553, + "16": 0.1461, + "17": 0.14672, + "18": 0.14616, + "19": 0.1455, + "20": 0.14588, + "21": 0.14801, + "22": 0.14714, + "23": 0.14721, + "24": 0.14624, + "25": 0.1462, + "26": 0.14548, + "27": 0.14684, + "28": 0.14765, + "29": 0.14671, + "30": 0.14515, + "31": 0.14617, + "32": 0.14666, + "33": 0.14596, + "34": 0.14868, + "35": 0.14573, + "36": 0.14694, + "37": 0.14585, + "38": 0.14605, + "39": 0.14599, + "40": 0.14558, + "41": 0.14673, + "42": 0.14745, + "43": 0.1456, + "44": 0.14744, + "45": 0.14524, + "46": 0.14572, + "47": 0.14533, + "48": 0.14632, + "49": 0.14734, + "50": 0.1453, + "51": 0.16371, + "52": 0.14839, + "53": 0.17852, + "54": 0.14579, + "55": 0.14651, + "56": 0.14872, + "57": 0.14723, + "58": 0.14775, + "59": 0.14896, + "60": 0.14649, + "61": 0.14672, + "62": 0.14696, + "63": 0.14572, + "64": 0.14639, + "65": 0.14739, + "66": 0.14722, + "67": 0.14732, + "68": 0.14566, + "69": 0.14664, + "70": 0.14693, + "71": 0.14641, + "72": 0.14742, + "73": 0.14691, + "74": 0.1482, + "75": 0.15006, + "76": 0.146, + "77": 0.14585, + "78": 0.14677, + "79": 0.14716, + "80": 0.14605, + "81": 0.14678, + "82": 0.14648, + "83": 0.14624, + "84": 0.14639, + "85": 0.14622, + "86": 0.14829, + "87": 0.14591, + "88": 0.14541, + "89": 0.14865, + "90": 0.14587, + "91": 0.14618, + "92": 0.14625, + "93": 0.14624, + "94": 0.14583, + "95": 0.14675, + "96": 0.14876, + "97": 0.14645, + "98": 0.14588, + "99": 0.14617, + "100": 0.14618 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts_dgx_a100.json index 4d218d51297..1246b8727ef 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_persistent_disable_bias_linear/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.79205, "5": 10.84695, "10": 10.77106, "15": 10.79093, "20": 10.68042, "25": 10.50715, "30": 10.33325, "35": 10.25545, "40": 10.05544, "45": 9.80575, "50": 9.89082, "55": 9.87063, "60": 9.48478, "65": 8.94022, "70": 9.72243, "75": 9.40907, "80": 9.3976, "85": 9.60746, "90": 9.81041, "95": 9.5116, "100": 9.39722}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1580.0, "5": 1901.0, "10": 1346.0, "15": 1926.0, "20": 1643.0, "25": 1683.0, "30": 1867.0, "35": 2020.0, "40": 2252.0, "45": 2243.0, "50": 2459.0, "55": 2291.0, "60": 2404.0, "65": 2474.0, "70": 3102.0, "75": 2603.0, "80": 3420.0, "85": 3388.0, "90": 2904.0, "95": 3333.0, "100": 3347.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 714736640.0, "5": 714736640.0, "10": 714736640.0, "15": 714736640.0, "20": 714736640.0, "25": 714736640.0, "30": 714736640.0, "35": 714736640.0, "40": 714736640.0, "45": 714736640.0, "50": 714736640.0, "55": 714736640.0, "60": 714736640.0, "65": 714736640.0, "70": 714736640.0, "75": 714736640.0, "80": 714736640.0, "85": 714736640.0, "90": 714736640.0, "95": 714736640.0, "100": 714736640.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 2399714304.0, "5": 2681315328.0, "10": 2681315328.0, "15": 2681315328.0, "20": 2681315328.0, "25": 2681315328.0, "30": 2681315328.0, "35": 2681315328.0, "40": 2681315328.0, "45": 2681315328.0, "50": 2681315328.0, "55": 2681315328.0, "60": 2681315328.0, "65": 2681315328.0, "70": 2681315328.0, "75": 2681315328.0, "80": 2681315328.0, "85": 2681315328.0, "90": 2681315328.0, "95": 2681315328.0, "100": 2681315328.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 9.04394, "5": 0.16449, "10": 0.16258, "15": 0.16166, "20": 0.18479, "25": 0.17915, "30": 0.18008, "35": 0.16013, "40": 0.15723, "45": 0.15769, "50": 0.15699, "55": 0.15776, "60": 0.15787, "65": 0.15913, "70": 0.15699, "75": 0.15748, "80": 0.15897, "85": 0.15762, "90": 0.15743, "95": 0.15733, "100": 0.15822}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.79332, + "2": 10.80674, + "3": 10.8069, + "4": 10.77377, + "5": 10.84763, + "6": 10.86617, + "7": 10.8277, + "8": 10.81226, + "9": 10.83507, + "10": 10.77007, + "11": 10.89243, + "12": 10.84575, + "13": 10.85895, + "14": 10.883, + "15": 10.79054, + "16": 10.78048, + "17": 10.75666, + "18": 10.79491, + "19": 10.79656, + "20": 10.68058, + "21": 10.66001, + "22": 10.50257, + "23": 10.7118, + "24": 10.55327, + "25": 10.50697, + "26": 10.58286, + "27": 10.58643, + "28": 10.55758, + "29": 10.56227, + "30": 10.33257, + "31": 10.08654, + "32": 10.44724, + "33": 10.44499, + "34": 10.19999, + "35": 10.25465, + "36": 10.19443, + "37": 10.32044, + "38": 10.16641, + "39": 10.3774, + "40": 10.05603, + "41": 10.13739, + "42": 10.19161, + "43": 9.80954, + "44": 9.93054, + "45": 9.80619, + "46": 9.81395, + "47": 10.12881, + "48": 9.82729, + "49": 9.51291, + "50": 9.89126, + "51": 9.84055, + "52": 9.73438, + "53": 10.05482, + "54": 9.94058, + "55": 9.87124, + "56": 9.61045, + "57": 9.46116, + "58": 9.81654, + "59": 9.57887, + "60": 9.48507, + "61": 9.68515, + "62": 9.97438, + "63": 9.36298, + "64": 9.76793, + "65": 8.93913, + "66": 9.68918, + "67": 9.36638, + "68": 9.77507, + "69": 9.78344, + "70": 9.72196, + "71": 9.60806, + "72": 9.57714, + "73": 9.48934, + "74": 8.94008, + "75": 9.40867, + "76": 9.08075, + "77": 10.05717, + "78": 9.72281, + "79": 9.36465, + "80": 9.39746, + "81": 9.47553, + "82": 9.6886, + "83": 9.30263, + "84": 9.41008, + "85": 9.60793, + "86": 9.07115, + "87": 9.58676, + "88": 9.74129, + "89": 9.5986, + "90": 9.81041, + "91": 9.33113, + "92": 9.35502, + "93": 9.07481, + "94": 8.82745, + "95": 9.51149, + "96": 9.51876, + "97": 9.30173, + "98": 9.66726, + "99": 8.88087, + "100": 9.39727 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1624.0, + "2": 1758.0, + "3": 1678.0, + "4": 1680.0, + "5": 1824.0, + "6": 1899.0, + "7": 1871.0, + "8": 1677.0, + "9": 1802.0, + "10": 1414.0, + "11": 1904.0, + "12": 1630.0, + "13": 1956.0, + "14": 1777.0, + "15": 1902.0, + "16": 1801.0, + "17": 1830.0, + "18": 1630.0, + "19": 1835.0, + "20": 1642.0, + "21": 1752.0, + "22": 1696.0, + "23": 2085.0, + "24": 1618.0, + "25": 1593.0, + "26": 1722.0, + "27": 1778.0, + "28": 2042.0, + "29": 1900.0, + "30": 2001.0, + "31": 1592.0, + "32": 1757.0, + "33": 2116.0, + "34": 1924.0, + "35": 1904.0, + "36": 1852.0, + "37": 2382.0, + "38": 2195.0, + "39": 2267.0, + "40": 2335.0, + "41": 2223.0, + "42": 2317.0, + "43": 2069.0, + "44": 2060.0, + "45": 2140.0, + "46": 2397.0, + "47": 2464.0, + "48": 2455.0, + "49": 2276.0, + "50": 2374.0, + "51": 2574.0, + "52": 2457.0, + "53": 2905.0, + "54": 2609.0, + "55": 2220.0, + "56": 2663.0, + "57": 2258.0, + "58": 2898.0, + "59": 2676.0, + "60": 2397.0, + "61": 3048.0, + "62": 2533.0, + "63": 2370.0, + "64": 2975.0, + "65": 2591.0, + "66": 3065.0, + "67": 2732.0, + "68": 2870.0, + "69": 2955.0, + "70": 3112.0, + "71": 2989.0, + "72": 2451.0, + "73": 2881.0, + "74": 1859.0, + "75": 2649.0, + "76": 3026.0, + "77": 3316.0, + "78": 3212.0, + "79": 3183.0, + "80": 3262.0, + "81": 3669.0, + "82": 3187.0, + "83": 2798.0, + "84": 3209.0, + "85": 3309.0, + "86": 2738.0, + "87": 3804.0, + "88": 2989.0, + "89": 3327.0, + "90": 3031.0, + "91": 2720.0, + "92": 2972.0, + "93": 2719.0, + "94": 3387.0, + "95": 3321.0, + "96": 3342.0, + "97": 3191.0, + "98": 3533.0, + "99": 3214.0, + "100": 3318.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 716834304.0, + "2": 716834304.0, + "3": 716834304.0, + "4": 716834304.0, + "5": 716834304.0, + "6": 716834304.0, + "7": 716834304.0, + "8": 716834304.0, + "9": 716834304.0, + "10": 716834304.0, + "11": 716834304.0, + "12": 716834304.0, + "13": 716834304.0, + "14": 716834304.0, + "15": 716834304.0, + "16": 716834304.0, + "17": 716834304.0, + "18": 716834304.0, + "19": 716834304.0, + "20": 716834304.0, + "21": 716834304.0, + "22": 716834304.0, + "23": 716834304.0, + "24": 716834304.0, + "25": 716834304.0, + "26": 716834304.0, + "27": 716834304.0, + "28": 716834304.0, + "29": 716834304.0, + "30": 716834304.0, + "31": 716834304.0, + "32": 716834304.0, + "33": 716834304.0, + "34": 716834304.0, + "35": 716834304.0, + "36": 716834304.0, + "37": 716834304.0, + "38": 716834304.0, + "39": 716834304.0, + "40": 716834304.0, + "41": 716834304.0, + "42": 716834304.0, + "43": 716834304.0, + "44": 716834304.0, + "45": 716834304.0, + "46": 716834304.0, + "47": 716834304.0, + "48": 716834304.0, + "49": 716834304.0, + "50": 716834304.0, + "51": 716834304.0, + "52": 716834304.0, + "53": 716834304.0, + "54": 716834304.0, + "55": 716834304.0, + "56": 716834304.0, + "57": 716834304.0, + "58": 716834304.0, + "59": 716834304.0, + "60": 716834304.0, + "61": 716834304.0, + "62": 716834304.0, + "63": 716834304.0, + "64": 716834304.0, + "65": 716834304.0, + "66": 716834304.0, + "67": 716834304.0, + "68": 716834304.0, + "69": 716834304.0, + "70": 716834304.0, + "71": 716834304.0, + "72": 716834304.0, + "73": 716834304.0, + "74": 716834304.0, + "75": 716834304.0, + "76": 716834304.0, + "77": 716834304.0, + "78": 716834304.0, + "79": 716834304.0, + "80": 716834304.0, + "81": 716834304.0, + "82": 716834304.0, + "83": 716834304.0, + "84": 716834304.0, + "85": 716834304.0, + "86": 716834304.0, + "87": 716834304.0, + "88": 716834304.0, + "89": 716834304.0, + "90": 716834304.0, + "91": 716834304.0, + "92": 716834304.0, + "93": 716834304.0, + "94": 716834304.0, + "95": 716834304.0, + "96": 716834304.0, + "97": 716834304.0, + "98": 716834304.0, + "99": 716834304.0, + "100": 716834304.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1910424576.0, + "2": 2193074176.0, + "3": 2193074176.0, + "4": 2193074176.0, + "5": 2193074176.0, + "6": 2193074176.0, + "7": 2193074176.0, + "8": 2193074176.0, + "9": 2193074176.0, + "10": 2193074176.0, + "11": 2193074176.0, + "12": 2193074176.0, + "13": 2193074176.0, + "14": 2193074176.0, + "15": 2193074176.0, + "16": 2193074176.0, + "17": 2193074176.0, + "18": 2193074176.0, + "19": 2193074176.0, + "20": 2193074176.0, + "21": 2193074176.0, + "22": 2193074176.0, + "23": 2193074176.0, + "24": 2193074176.0, + "25": 2193074176.0, + "26": 2193074176.0, + "27": 2193074176.0, + "28": 2193074176.0, + "29": 2193074176.0, + "30": 2193074176.0, + "31": 2193074176.0, + "32": 2193074176.0, + "33": 2193074176.0, + "34": 2193074176.0, + "35": 2193074176.0, + "36": 2193074176.0, + "37": 2193074176.0, + "38": 2193074176.0, + "39": 2193074176.0, + "40": 2193074176.0, + "41": 2193074176.0, + "42": 2193074176.0, + "43": 2193074176.0, + "44": 2193074176.0, + "45": 2193074176.0, + "46": 2193074176.0, + "47": 2193074176.0, + "48": 2193074176.0, + "49": 2193074176.0, + "50": 2193074176.0, + "51": 2193074176.0, + "52": 2193074176.0, + "53": 2193074176.0, + "54": 2193074176.0, + "55": 2193074176.0, + "56": 2193074176.0, + "57": 2193074176.0, + "58": 2193074176.0, + "59": 2193074176.0, + "60": 2193074176.0, + "61": 2193074176.0, + "62": 2193074176.0, + "63": 2193074176.0, + "64": 2193074176.0, + "65": 2193074176.0, + "66": 2193074176.0, + "67": 2193074176.0, + "68": 2193074176.0, + "69": 2193074176.0, + "70": 2193074176.0, + "71": 2193074176.0, + "72": 2193074176.0, + "73": 2193074176.0, + "74": 2193074176.0, + "75": 2193074176.0, + "76": 2193074176.0, + "77": 2193074176.0, + "78": 2193074176.0, + "79": 2193074176.0, + "80": 2193074176.0, + "81": 2193074176.0, + "82": 2193074176.0, + "83": 2193074176.0, + "84": 2193074176.0, + "85": 2193074176.0, + "86": 2193074176.0, + "87": 2193074176.0, + "88": 2193074176.0, + "89": 2193074176.0, + "90": 2193074176.0, + "91": 2193074176.0, + "92": 2193074176.0, + "93": 2193074176.0, + "94": 2193074176.0, + "95": 2193074176.0, + "96": 2193074176.0, + "97": 2193074176.0, + "98": 2193074176.0, + "99": 2193074176.0, + "100": 2193074176.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 6.43574, + "2": 0.18308, + "3": 0.16294, + "4": 0.15632, + "5": 0.15517, + "6": 0.15061, + "7": 0.15109, + "8": 0.1538, + "9": 0.15077, + "10": 0.15142, + "11": 0.15024, + "12": 0.15039, + "13": 0.14987, + "14": 0.15044, + "15": 0.1495, + "16": 0.15003, + "17": 0.14988, + "18": 0.1497, + "19": 0.15459, + "20": 0.15076, + "21": 0.1498, + "22": 0.15044, + "23": 0.15051, + "24": 0.15062, + "25": 0.14953, + "26": 0.15047, + "27": 0.14851, + "28": 0.14802, + "29": 0.14861, + "30": 0.1485, + "31": 0.1498, + "32": 0.14871, + "33": 0.1485, + "34": 0.14707, + "35": 0.14796, + "36": 0.14719, + "37": 0.15012, + "38": 0.14804, + "39": 0.1487, + "40": 0.14779, + "41": 0.14844, + "42": 0.1496, + "43": 0.15014, + "44": 0.14977, + "45": 0.1478, + "46": 0.14891, + "47": 0.14844, + "48": 0.1488, + "49": 0.14931, + "50": 0.14761, + "51": 0.15888, + "52": 0.1517, + "53": 0.14904, + "54": 0.17961, + "55": 0.14804, + "56": 0.1496, + "57": 0.1487, + "58": 0.14801, + "59": 0.14729, + "60": 0.14749, + "61": 0.14745, + "62": 0.1471, + "63": 0.14817, + "64": 0.1497, + "65": 0.14753, + "66": 0.14753, + "67": 0.14859, + "68": 0.14714, + "69": 0.14776, + "70": 0.14847, + "71": 0.14829, + "72": 0.14858, + "73": 0.14828, + "74": 0.14783, + "75": 0.14793, + "76": 0.14768, + "77": 0.14752, + "78": 0.14931, + "79": 0.15045, + "80": 0.14813, + "81": 0.1489, + "82": 0.1475, + "83": 0.14844, + "84": 0.1489, + "85": 0.14809, + "86": 0.14835, + "87": 0.14718, + "88": 0.14876, + "89": 0.14859, + "90": 0.1479, + "91": 0.14803, + "92": 0.14798, + "93": 0.14876, + "94": 0.14705, + "95": 0.14837, + "96": 0.14805, + "97": 0.14837, + "98": 0.14721, + "99": 0.14843, + "100": 0.14828 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts.json new file mode 100644 index 00000000000..801e633e981 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.90314, + "2": 10.88897, + "3": 10.89725, + "4": 10.88248, + "5": 10.89447, + "6": 10.91226, + "7": 10.89775, + "8": 10.88643, + "9": 10.89227, + "10": 10.8849, + "11": 10.91413, + "12": 10.88666, + "13": 10.89283, + "14": 10.90486, + "15": 10.83878, + "16": 10.84927, + "17": 10.83248, + "18": 10.83371, + "19": 10.83359, + "20": 10.74074, + "21": 10.7043, + "22": 10.59893, + "23": 10.72222, + "24": 10.60745, + "25": 10.57467, + "26": 10.62999, + "27": 10.62364, + "28": 10.57229, + "29": 10.6073, + "30": 10.37766, + "31": 10.15362, + "32": 10.47609, + "33": 10.48062, + "34": 10.24216, + "35": 10.29035, + "36": 10.25955, + "37": 10.36145, + "38": 10.21396, + "39": 10.44502, + "40": 10.11492, + "41": 10.1605, + "42": 10.23468, + "43": 9.85032, + "44": 9.97764, + "45": 9.85681, + "46": 9.8307, + "47": 10.17976, + "48": 9.85811, + "49": 9.54378, + "50": 9.93469, + "51": 9.86793, + "52": 9.76274, + "53": 10.10895, + "54": 9.95538, + "55": 9.8756, + "56": 9.64751, + "57": 9.48989, + "58": 9.85502, + "59": 9.59457, + "60": 9.52968, + "61": 9.69589, + "62": 10.01676, + "63": 9.38778, + "64": 9.80211, + "65": 8.95119, + "66": 9.72857, + "67": 9.37577, + "68": 9.80463, + "69": 9.81, + "70": 9.7662, + "71": 9.63135, + "72": 9.5784, + "73": 9.52148, + "74": 8.94976, + "75": 9.43087, + "76": 9.08489, + "77": 10.089, + "78": 9.72754, + "79": 9.37612, + "80": 9.40849, + "81": 9.49766, + "82": 9.71298, + "83": 9.33332, + "84": 9.43928, + "85": 9.63373, + "86": 9.07038, + "87": 9.61245, + "88": 9.78304, + "89": 9.60878, + "90": 9.85164, + "91": 9.34542, + "92": 9.38281, + "93": 9.07319, + "94": 8.81684, + "95": 9.51809, + "96": 9.54033, + "97": 9.34061, + "98": 9.70134, + "99": 8.88786, + "100": 9.43285 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 22727000.0, + "2": 22925616.0, + "3": 22596924.0, + "4": 23219540.0, + "5": 22714814.0, + "6": 23021786.0, + "7": 22771458.0, + "8": 22926012.0, + "9": 22842856.0, + "10": 22918360.0, + "11": 22500702.0, + "12": 22459866.0, + "13": 22916820.0, + "14": 22389026.0, + "15": 22821260.0, + "16": 22830812.0, + "17": 22818944.0, + "18": 22582240.0, + "19": 22618380.0, + "20": 22694352.0, + "21": 22740180.0, + "22": 22800024.0, + "23": 22540132.0, + "24": 22771492.0, + "25": 22818970.0, + "26": 22546852.0, + "27": 22468504.0, + "28": 22453052.0, + "29": 22529222.0, + "30": 22631432.0, + "31": 22955696.0, + "32": 22585238.0, + "33": 22557676.0, + "34": 22835412.0, + "35": 22788032.0, + "36": 22589678.0, + "37": 22497140.0, + "38": 22896132.0, + "39": 22801314.0, + "40": 22658064.0, + "41": 22659700.0, + "42": 22667816.0, + "43": 22976356.0, + "44": 22746708.0, + "45": 22675272.0, + "46": 22884382.0, + "47": 22634556.0, + "48": 22928080.0, + "49": 22727538.0, + "50": 22905284.0, + "51": 22791326.0, + "52": 22749392.0, + "53": 22925970.0, + "54": 22839434.0, + "55": 22518416.0, + "56": 22877660.0, + "57": 23113304.0, + "58": 22845008.0, + "59": 22715512.0, + "60": 22743058.0, + "61": 22723950.0, + "62": 22673248.0, + "63": 22846074.0, + "64": 22823228.0, + "65": 23060212.0, + "66": 22729902.0, + "67": 22907278.0, + "68": 22610092.0, + "69": 22584360.0, + "70": 22829348.0, + "71": 22749420.0, + "72": 22655446.0, + "73": 22740974.0, + "74": 23048296.0, + "75": 23053922.0, + "76": 22901008.0, + "77": 22272806.0, + "78": 22789370.0, + "79": 22743288.0, + "80": 22706236.0, + "81": 22890976.0, + "82": 22777092.0, + "83": 22839240.0, + "84": 23010352.0, + "85": 22712004.0, + "86": 23103740.0, + "87": 22734788.0, + "88": 22637620.0, + "89": 22499200.0, + "90": 22972420.0, + "91": 22766428.0, + "92": 22808890.0, + "93": 22659888.0, + "94": 22910970.0, + "95": 23048514.0, + "96": 22829470.0, + "97": 22608826.0, + "98": 22763528.0, + "99": 22905754.0, + "100": 23016268.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 719180288.0, + "2": 719180288.0, + "3": 719180288.0, + "4": 719180288.0, + "5": 719180288.0, + "6": 719180288.0, + "7": 719180288.0, + "8": 719180288.0, + "9": 719180288.0, + "10": 719180288.0, + "11": 719180288.0, + "12": 719180288.0, + "13": 719180288.0, + "14": 719180288.0, + "15": 719180288.0, + "16": 719180288.0, + "17": 719180288.0, + "18": 719180288.0, + "19": 719180288.0, + "20": 719180288.0, + "21": 719180288.0, + "22": 719180288.0, + "23": 719180288.0, + "24": 719180288.0, + "25": 719180288.0, + "26": 719180288.0, + "27": 719180288.0, + "28": 719180288.0, + "29": 719180288.0, + "30": 719180288.0, + "31": 719180288.0, + "32": 719180288.0, + "33": 719180288.0, + "34": 719180288.0, + "35": 719180288.0, + "36": 719180288.0, + "37": 719180288.0, + "38": 719180288.0, + "39": 719180288.0, + "40": 719180288.0, + "41": 719180288.0, + "42": 719180288.0, + "43": 719180288.0, + "44": 719180288.0, + "45": 719180288.0, + "46": 719180288.0, + "47": 719180288.0, + "48": 719180288.0, + "49": 719180288.0, + "50": 719180288.0, + "51": 719180288.0, + "52": 719180288.0, + "53": 719180288.0, + "54": 719180288.0, + "55": 719180288.0, + "56": 719180288.0, + "57": 719180288.0, + "58": 719180288.0, + "59": 719180288.0, + "60": 719180288.0, + "61": 719180288.0, + "62": 719180288.0, + "63": 719180288.0, + "64": 719180288.0, + "65": 719180288.0, + "66": 719180288.0, + "67": 719180288.0, + "68": 719180288.0, + "69": 719180288.0, + "70": 719180288.0, + "71": 719180288.0, + "72": 719180288.0, + "73": 719180288.0, + "74": 719180288.0, + "75": 719180288.0, + "76": 719180288.0, + "77": 719180288.0, + "78": 719180288.0, + "79": 719180288.0, + "80": 719180288.0, + "81": 719180288.0, + "82": 719180288.0, + "83": 719180288.0, + "84": 719180288.0, + "85": 719180288.0, + "86": 719180288.0, + "87": 719180288.0, + "88": 719180288.0, + "89": 719180288.0, + "90": 719180288.0, + "91": 719180288.0, + "92": 719180288.0, + "93": 719180288.0, + "94": 719180288.0, + "95": 719180288.0, + "96": 719180288.0, + "97": 719180288.0, + "98": 719180288.0, + "99": 719180288.0, + "100": 719180288.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1910562816.0, + "2": 2195420160.0, + "3": 2195420160.0, + "4": 2195420160.0, + "5": 2195420160.0, + "6": 2195420160.0, + "7": 2195420160.0, + "8": 2195420160.0, + "9": 2195420160.0, + "10": 2195420160.0, + "11": 2195420160.0, + "12": 2195420160.0, + "13": 2195420160.0, + "14": 2195420160.0, + "15": 2195420160.0, + "16": 2195420160.0, + "17": 2195420160.0, + "18": 2195420160.0, + "19": 2195420160.0, + "20": 2195420160.0, + "21": 2195420160.0, + "22": 2195420160.0, + "23": 2195420160.0, + "24": 2195420160.0, + "25": 2195420160.0, + "26": 2195420160.0, + "27": 2195420160.0, + "28": 2195420160.0, + "29": 2195420160.0, + "30": 2195420160.0, + "31": 2195420160.0, + "32": 2195420160.0, + "33": 2195420160.0, + "34": 2195420160.0, + "35": 2195420160.0, + "36": 2195420160.0, + "37": 2195420160.0, + "38": 2195420160.0, + "39": 2195420160.0, + "40": 2195420160.0, + "41": 2195420160.0, + "42": 2195420160.0, + "43": 2195420160.0, + "44": 2195420160.0, + "45": 2195420160.0, + "46": 2195420160.0, + "47": 2195420160.0, + "48": 2195420160.0, + "49": 2195420160.0, + "50": 2195420160.0, + "51": 2195420160.0, + "52": 2195420160.0, + "53": 2195420160.0, + "54": 2195420160.0, + "55": 2195420160.0, + "56": 2195420160.0, + "57": 2195420160.0, + "58": 2195420160.0, + "59": 2195420160.0, + "60": 2195420160.0, + "61": 2195420160.0, + "62": 2195420160.0, + "63": 2195420160.0, + "64": 2195420160.0, + "65": 2195420160.0, + "66": 2195420160.0, + "67": 2195420160.0, + "68": 2195420160.0, + "69": 2195420160.0, + "70": 2195420160.0, + "71": 2195420160.0, + "72": 2195420160.0, + "73": 2195420160.0, + "74": 2195420160.0, + "75": 2195420160.0, + "76": 2195420160.0, + "77": 2195420160.0, + "78": 2195420160.0, + "79": 2195420160.0, + "80": 2195420160.0, + "81": 2195420160.0, + "82": 2195420160.0, + "83": 2195420160.0, + "84": 2195420160.0, + "85": 2195420160.0, + "86": 2195420160.0, + "87": 2195420160.0, + "88": 2195420160.0, + "89": 2195420160.0, + "90": 2195420160.0, + "91": 2195420160.0, + "92": 2195420160.0, + "93": 2195420160.0, + "94": 2195420160.0, + "95": 2195420160.0, + "96": 2195420160.0, + "97": 2195420160.0, + "98": 2195420160.0, + "99": 2195420160.0, + "100": 2195420160.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 8.03051, + "2": 0.1884, + "3": 0.27987, + "4": 0.15687, + "5": 0.15614, + "6": 0.1563, + "7": 0.15622, + "8": 0.1563, + "9": 0.15473, + "10": 0.15615, + "11": 0.15528, + "12": 0.15754, + "13": 0.15661, + "14": 0.15677, + "15": 0.15572, + "16": 0.15582, + "17": 0.1571, + "18": 0.15664, + "19": 0.1556, + "20": 0.15592, + "21": 0.15572, + "22": 0.15642, + "23": 0.15643, + "24": 0.15743, + "25": 0.15666, + "26": 0.15552, + "27": 0.15475, + "28": 0.15586, + "29": 0.15603, + "30": 0.15463, + "31": 0.15712, + "32": 0.15442, + "33": 0.15543, + "34": 0.1557, + "35": 0.15682, + "36": 0.15539, + "37": 0.1553, + "38": 0.15578, + "39": 0.15667, + "40": 0.15715, + "41": 0.15704, + "42": 0.1566, + "43": 0.15655, + "44": 0.15629, + "45": 0.15584, + "46": 0.15734, + "47": 0.15735, + "48": 0.15572, + "49": 0.15706, + "50": 0.15561, + "51": 0.16957, + "52": 0.1587, + "53": 0.16014, + "54": 0.15805, + "55": 0.1578, + "56": 0.15801, + "57": 0.15813, + "58": 0.1574, + "59": 0.15781, + "60": 0.15923, + "61": 0.15655, + "62": 0.15633, + "63": 0.15583, + "64": 0.15734, + "65": 0.15761, + "66": 0.15822, + "67": 0.15755, + "68": 0.15815, + "69": 0.15816, + "70": 0.15813, + "71": 0.15747, + "72": 0.1574, + "73": 0.15783, + "74": 0.15766, + "75": 0.15527, + "76": 0.15579, + "77": 0.15483, + "78": 0.15482, + "79": 0.15404, + "80": 0.15431, + "81": 0.154, + "82": 0.15512, + "83": 0.15513, + "84": 0.15371, + "85": 0.15488, + "86": 0.15465, + "87": 0.15412, + "88": 0.15403, + "89": 0.15487, + "90": 0.15518, + "91": 0.15549, + "92": 0.154, + "93": 0.15405, + "94": 0.15438, + "95": 0.15444, + "96": 0.1534, + "97": 0.15487, + "98": 0.15398, + "99": 0.15434, + "100": 0.15391 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts_dgx_a100.json index 11578ee6c3e..307cec2659c 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_resume_torch_dist_untie_embeddings_and_outputs/golden_values_lts_dgx_a100.json @@ -2,141 +2,536 @@ "lm loss": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.90105, - "5": 10.89686, - "10": 10.88269, - "15": 10.83975, - "20": 10.74037, - "25": 10.57931, - "30": 10.37738, - "35": 10.29033, - "40": 10.1156, - "45": 9.85639, - "50": 9.93378, - "55": 9.87553, - "60": 9.528, - "65": 8.95041, - "70": 9.76634, - "75": 9.4304, - "80": 9.40916, - "85": 9.63365, - "90": 9.8516, - "95": 9.51874, - "100": 9.43257 + "1": 10.90314, + "2": 10.88897, + "3": 10.89725, + "4": 10.88248, + "5": 10.89447, + "6": 10.91226, + "7": 10.89775, + "8": 10.88643, + "9": 10.89227, + "10": 10.8849, + "11": 10.91413, + "12": 10.88666, + "13": 10.89283, + "14": 10.90486, + "15": 10.83878, + "16": 10.84927, + "17": 10.83248, + "18": 10.83371, + "19": 10.83359, + "20": 10.74074, + "21": 10.7043, + "22": 10.59893, + "23": 10.72222, + "24": 10.60745, + "25": 10.57467, + "26": 10.62999, + "27": 10.62364, + "28": 10.57229, + "29": 10.6073, + "30": 10.37766, + "31": 10.15362, + "32": 10.47609, + "33": 10.48062, + "34": 10.24216, + "35": 10.29035, + "36": 10.25955, + "37": 10.36145, + "38": 10.21396, + "39": 10.44502, + "40": 10.11492, + "41": 10.1605, + "42": 10.23468, + "43": 9.85032, + "44": 9.97764, + "45": 9.85681, + "46": 9.8307, + "47": 10.17976, + "48": 9.85811, + "49": 9.54378, + "50": 9.93469, + "51": 9.86793, + "52": 9.76274, + "53": 10.10895, + "54": 9.95538, + "55": 9.8756, + "56": 9.64751, + "57": 9.48989, + "58": 9.85502, + "59": 9.59457, + "60": 9.52968, + "61": 9.69589, + "62": 10.01676, + "63": 9.38778, + "64": 9.80211, + "65": 8.95119, + "66": 9.72857, + "67": 9.37577, + "68": 9.80463, + "69": 9.81, + "70": 9.7662, + "71": 9.63135, + "72": 9.5784, + "73": 9.52148, + "74": 8.94976, + "75": 9.43087, + "76": 9.08489, + "77": 10.089, + "78": 9.72754, + "79": 9.37612, + "80": 9.40849, + "81": 9.49766, + "82": 9.71298, + "83": 9.33332, + "84": 9.43928, + "85": 9.63373, + "86": 9.07038, + "87": 9.61245, + "88": 9.78304, + "89": 9.60878, + "90": 9.85164, + "91": 9.34542, + "92": 9.38281, + "93": 9.07319, + "94": 8.81684, + "95": 9.51809, + "96": 9.54033, + "97": 9.34061, + "98": 9.70134, + "99": 8.88786, + "100": 9.43285 } }, "num-zeros": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 22727086.0, - "5": 22714736.0, - "10": 22918912.0, - "15": 22821334.0, - "20": 22694008.0, - "25": 22818912.0, - "30": 22631266.0, - "35": 22787944.0, - "40": 22658196.0, - "45": 22675296.0, - "50": 22904808.0, - "55": 22518754.0, - "60": 22743504.0, - "65": 23060460.0, - "70": 22829772.0, - "75": 23054048.0, - "80": 22706308.0, - "85": 22712054.0, - "90": 22972128.0, - "95": 23048144.0, - "100": 23015824.0 + "1": 22727000.0, + "2": 22925616.0, + "3": 22596924.0, + "4": 23219540.0, + "5": 22714814.0, + "6": 23021786.0, + "7": 22771458.0, + "8": 22926012.0, + "9": 22842856.0, + "10": 22918360.0, + "11": 22500702.0, + "12": 22459866.0, + "13": 22916820.0, + "14": 22389026.0, + "15": 22821260.0, + "16": 22830812.0, + "17": 22818944.0, + "18": 22582240.0, + "19": 22618380.0, + "20": 22694352.0, + "21": 22740180.0, + "22": 22800024.0, + "23": 22540132.0, + "24": 22771492.0, + "25": 22818970.0, + "26": 22546852.0, + "27": 22468504.0, + "28": 22453052.0, + "29": 22529222.0, + "30": 22631432.0, + "31": 22955696.0, + "32": 22585238.0, + "33": 22557676.0, + "34": 22835412.0, + "35": 22788032.0, + "36": 22589678.0, + "37": 22497140.0, + "38": 22896132.0, + "39": 22801314.0, + "40": 22658064.0, + "41": 22659700.0, + "42": 22667816.0, + "43": 22976356.0, + "44": 22746708.0, + "45": 22675272.0, + "46": 22884382.0, + "47": 22634556.0, + "48": 22928080.0, + "49": 22727538.0, + "50": 22905284.0, + "51": 22791326.0, + "52": 22749392.0, + "53": 22925970.0, + "54": 22839434.0, + "55": 22518416.0, + "56": 22877660.0, + "57": 23113304.0, + "58": 22845008.0, + "59": 22715512.0, + "60": 22743058.0, + "61": 22723950.0, + "62": 22673248.0, + "63": 22846074.0, + "64": 22823228.0, + "65": 23060212.0, + "66": 22729902.0, + "67": 22907278.0, + "68": 22610092.0, + "69": 22584360.0, + "70": 22829348.0, + "71": 22749420.0, + "72": 22655446.0, + "73": 22740974.0, + "74": 23048296.0, + "75": 23053922.0, + "76": 22901008.0, + "77": 22272806.0, + "78": 22789370.0, + "79": 22743288.0, + "80": 22706236.0, + "81": 22890976.0, + "82": 22777092.0, + "83": 22839240.0, + "84": 23010352.0, + "85": 22712004.0, + "86": 23103740.0, + "87": 22734788.0, + "88": 22637620.0, + "89": 22499200.0, + "90": 22972420.0, + "91": 22766428.0, + "92": 22808890.0, + "93": 22659888.0, + "94": 22910970.0, + "95": 23048514.0, + "96": 22829470.0, + "97": 22608826.0, + "98": 22763528.0, + "99": 22905754.0, + "100": 23016268.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 717082624.0, - "5": 717082624.0, - "10": 717082624.0, - "15": 717082624.0, - "20": 717082624.0, - "25": 717082624.0, - "30": 717082624.0, - "35": 717082624.0, - "40": 717082624.0, - "45": 717082624.0, - "50": 717082624.0, - "55": 717082624.0, - "60": 717082624.0, - "65": 717082624.0, - "70": 717082624.0, - "75": 717082624.0, - "80": 717082624.0, - "85": 717082624.0, - "90": 717082624.0, - "95": 717082624.0, - "100": 717082624.0 + "1": 719180288.0, + "2": 719180288.0, + "3": 719180288.0, + "4": 719180288.0, + "5": 719180288.0, + "6": 719180288.0, + "7": 719180288.0, + "8": 719180288.0, + "9": 719180288.0, + "10": 719180288.0, + "11": 719180288.0, + "12": 719180288.0, + "13": 719180288.0, + "14": 719180288.0, + "15": 719180288.0, + "16": 719180288.0, + "17": 719180288.0, + "18": 719180288.0, + "19": 719180288.0, + "20": 719180288.0, + "21": 719180288.0, + "22": 719180288.0, + "23": 719180288.0, + "24": 719180288.0, + "25": 719180288.0, + "26": 719180288.0, + "27": 719180288.0, + "28": 719180288.0, + "29": 719180288.0, + "30": 719180288.0, + "31": 719180288.0, + "32": 719180288.0, + "33": 719180288.0, + "34": 719180288.0, + "35": 719180288.0, + "36": 719180288.0, + "37": 719180288.0, + "38": 719180288.0, + "39": 719180288.0, + "40": 719180288.0, + "41": 719180288.0, + "42": 719180288.0, + "43": 719180288.0, + "44": 719180288.0, + "45": 719180288.0, + "46": 719180288.0, + "47": 719180288.0, + "48": 719180288.0, + "49": 719180288.0, + "50": 719180288.0, + "51": 719180288.0, + "52": 719180288.0, + "53": 719180288.0, + "54": 719180288.0, + "55": 719180288.0, + "56": 719180288.0, + "57": 719180288.0, + "58": 719180288.0, + "59": 719180288.0, + "60": 719180288.0, + "61": 719180288.0, + "62": 719180288.0, + "63": 719180288.0, + "64": 719180288.0, + "65": 719180288.0, + "66": 719180288.0, + "67": 719180288.0, + "68": 719180288.0, + "69": 719180288.0, + "70": 719180288.0, + "71": 719180288.0, + "72": 719180288.0, + "73": 719180288.0, + "74": 719180288.0, + "75": 719180288.0, + "76": 719180288.0, + "77": 719180288.0, + "78": 719180288.0, + "79": 719180288.0, + "80": 719180288.0, + "81": 719180288.0, + "82": 719180288.0, + "83": 719180288.0, + "84": 719180288.0, + "85": 719180288.0, + "86": 719180288.0, + "87": 719180288.0, + "88": 719180288.0, + "89": 719180288.0, + "90": 719180288.0, + "91": 719180288.0, + "92": 719180288.0, + "93": 719180288.0, + "94": 719180288.0, + "95": 719180288.0, + "96": 719180288.0, + "97": 719180288.0, + "98": 719180288.0, + "99": 719180288.0, + "100": 719180288.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 2399852544.0, - "5": 2683661312.0, - "10": 2683661312.0, - "15": 2683661312.0, - "20": 2683661312.0, - "25": 2683661312.0, - "30": 2683661312.0, - "35": 2683661312.0, - "40": 2683661312.0, - "45": 2683661312.0, - "50": 2683661312.0, - "55": 2683661312.0, - "60": 2683661312.0, - "65": 2683661312.0, - "70": 2683661312.0, - "75": 2683661312.0, - "80": 2683661312.0, - "85": 2683661312.0, - "90": 2683661312.0, - "95": 2683661312.0, - "100": 2683661312.0 + "1": 1910562816.0, + "2": 2195420160.0, + "3": 2195420160.0, + "4": 2195420160.0, + "5": 2195420160.0, + "6": 2195420160.0, + "7": 2195420160.0, + "8": 2195420160.0, + "9": 2195420160.0, + "10": 2195420160.0, + "11": 2195420160.0, + "12": 2195420160.0, + "13": 2195420160.0, + "14": 2195420160.0, + "15": 2195420160.0, + "16": 2195420160.0, + "17": 2195420160.0, + "18": 2195420160.0, + "19": 2195420160.0, + "20": 2195420160.0, + "21": 2195420160.0, + "22": 2195420160.0, + "23": 2195420160.0, + "24": 2195420160.0, + "25": 2195420160.0, + "26": 2195420160.0, + "27": 2195420160.0, + "28": 2195420160.0, + "29": 2195420160.0, + "30": 2195420160.0, + "31": 2195420160.0, + "32": 2195420160.0, + "33": 2195420160.0, + "34": 2195420160.0, + "35": 2195420160.0, + "36": 2195420160.0, + "37": 2195420160.0, + "38": 2195420160.0, + "39": 2195420160.0, + "40": 2195420160.0, + "41": 2195420160.0, + "42": 2195420160.0, + "43": 2195420160.0, + "44": 2195420160.0, + "45": 2195420160.0, + "46": 2195420160.0, + "47": 2195420160.0, + "48": 2195420160.0, + "49": 2195420160.0, + "50": 2195420160.0, + "51": 2195420160.0, + "52": 2195420160.0, + "53": 2195420160.0, + "54": 2195420160.0, + "55": 2195420160.0, + "56": 2195420160.0, + "57": 2195420160.0, + "58": 2195420160.0, + "59": 2195420160.0, + "60": 2195420160.0, + "61": 2195420160.0, + "62": 2195420160.0, + "63": 2195420160.0, + "64": 2195420160.0, + "65": 2195420160.0, + "66": 2195420160.0, + "67": 2195420160.0, + "68": 2195420160.0, + "69": 2195420160.0, + "70": 2195420160.0, + "71": 2195420160.0, + "72": 2195420160.0, + "73": 2195420160.0, + "74": 2195420160.0, + "75": 2195420160.0, + "76": 2195420160.0, + "77": 2195420160.0, + "78": 2195420160.0, + "79": 2195420160.0, + "80": 2195420160.0, + "81": 2195420160.0, + "82": 2195420160.0, + "83": 2195420160.0, + "84": 2195420160.0, + "85": 2195420160.0, + "86": 2195420160.0, + "87": 2195420160.0, + "88": 2195420160.0, + "89": 2195420160.0, + "90": 2195420160.0, + "91": 2195420160.0, + "92": 2195420160.0, + "93": 2195420160.0, + "94": 2195420160.0, + "95": 2195420160.0, + "96": 2195420160.0, + "97": 2195420160.0, + "98": 2195420160.0, + "99": 2195420160.0, + "100": 2195420160.0 } }, "iteration-time": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 18.12809, - "5": 0.18057, - "10": 0.17706, - "15": 0.17756, - "20": 0.17731, - "25": 0.17728, - "30": 0.1768, - "35": 0.17506, - "40": 0.1753, - "45": 0.17703, - "50": 0.17481, - "55": 0.17327, - "60": 0.17184, - "65": 0.17221, - "70": 0.17198, - "75": 0.1719, - "80": 0.17197, - "85": 0.1726, - "90": 0.17157, - "95": 0.17135, - "100": 0.17214 + "1": 10.1537, + "2": 0.18498, + "3": 0.16024, + "4": 0.16059, + "5": 0.16002, + "6": 0.16103, + "7": 0.1591, + "8": 0.15912, + "9": 0.15909, + "10": 0.1574, + "11": 0.15721, + "12": 0.15764, + "13": 0.16009, + "14": 0.16035, + "15": 0.15973, + "16": 0.15641, + "17": 0.15673, + "18": 0.1565, + "19": 0.15684, + "20": 0.15713, + "21": 0.15762, + "22": 0.15859, + "23": 0.15877, + "24": 0.15973, + "25": 0.15946, + "26": 0.15909, + "27": 0.15855, + "28": 0.15876, + "29": 0.15921, + "30": 0.16148, + "31": 0.15991, + "32": 0.1576, + "33": 0.15829, + "34": 0.15886, + "35": 0.15948, + "36": 0.15819, + "37": 0.15886, + "38": 0.15896, + "39": 0.16029, + "40": 0.15802, + "41": 0.16038, + "42": 0.15965, + "43": 0.15985, + "44": 0.15882, + "45": 0.16056, + "46": 0.1592, + "47": 0.20747, + "48": 0.16124, + "49": 0.16012, + "50": 0.15759, + "51": 0.16615, + "52": 0.15685, + "53": 0.15965, + "54": 0.15787, + "55": 0.15762, + "56": 0.15748, + "57": 0.15807, + "58": 0.15831, + "59": 0.15671, + "60": 0.15765, + "61": 0.15997, + "62": 0.15756, + "63": 0.15822, + "64": 0.15898, + "65": 0.15778, + "66": 0.15853, + "67": 0.15855, + "68": 0.15784, + "69": 0.15777, + "70": 0.15791, + "71": 0.15907, + "72": 0.15986, + "73": 0.15727, + "74": 0.15842, + "75": 0.15738, + "76": 0.15786, + "77": 0.15749, + "78": 0.15761, + "79": 0.15838, + "80": 0.15955, + "81": 0.15796, + "82": 0.15816, + "83": 0.15953, + "84": 0.15849, + "85": 0.15905, + "86": 0.15852, + "87": 0.15827, + "88": 0.15773, + "89": 0.15778, + "90": 0.15679, + "91": 0.1583, + "92": 0.15749, + "93": 0.15843, + "94": 0.15878, + "95": 0.15805, + "96": 0.1588, + "97": 0.15983, + "98": 0.16098, + "99": 0.16131, + "100": 0.15935 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts.json new file mode 100644 index 00000000000..eee2d1c3d29 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.81478, + "2": 10.82042, + "3": 10.81232, + "4": 10.78901, + "5": 10.85168, + "6": 10.87098, + "7": 10.83086, + "8": 10.83472, + "9": 10.83886, + "10": 10.78749, + "11": 10.87935, + "12": 10.86017, + "13": 10.86578, + "14": 10.8781, + "15": 10.79513, + "16": 10.7958, + "17": 10.76832, + "18": 10.8109, + "19": 10.79887, + "20": 10.69131, + "21": 10.6801, + "22": 10.52152, + "23": 10.7071, + "24": 10.57678, + "25": 10.52316, + "26": 10.59563, + "27": 10.58607, + "28": 10.56175, + "29": 10.56945, + "30": 10.34623, + "31": 10.10035, + "32": 10.45432, + "33": 10.44591, + "34": 10.2072, + "35": 10.26185, + "36": 10.21228, + "37": 10.32449, + "38": 10.16803, + "39": 10.38353, + "40": 10.07219, + "41": 10.13754, + "42": 10.19755, + "43": 9.81134, + "44": 9.93287, + "45": 9.80998, + "46": 9.80859, + "47": 10.12583, + "48": 9.82132, + "49": 9.50738, + "50": 9.88351 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1544.0, + "2": 1712.0, + "3": 1660.0, + "4": 1767.0, + "5": 1795.0, + "6": 1799.0, + "7": 1805.0, + "8": 1664.0, + "9": 1769.0, + "10": 1340.0, + "11": 1830.0, + "12": 1812.0, + "13": 1837.0, + "14": 1710.0, + "15": 1894.0, + "16": 1731.0, + "17": 1848.0, + "18": 1705.0, + "19": 1686.0, + "20": 1620.0, + "21": 1840.0, + "22": 1764.0, + "23": 1937.0, + "24": 1620.0, + "25": 1728.0, + "26": 1727.0, + "27": 1821.0, + "28": 2042.0, + "29": 2029.0, + "30": 1825.0, + "31": 1594.0, + "32": 1903.0, + "33": 2041.0, + "34": 1895.0, + "35": 1908.0, + "36": 1906.0, + "37": 2224.0, + "38": 2150.0, + "39": 2327.0, + "40": 2074.0, + "41": 2314.0, + "42": 2230.0, + "43": 1920.0, + "44": 2115.0, + "45": 1962.0, + "46": 2287.0, + "47": 2481.0, + "48": 2407.0, + "49": 2270.0, + "50": 2349.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3837453824.0, + "2": 4119165440.0, + "3": 4119165440.0, + "4": 4119165440.0, + "5": 4119165440.0, + "6": 4119165440.0, + "7": 4119165440.0, + "8": 4119165440.0, + "9": 4119165440.0, + "10": 4119165440.0, + "11": 4119165440.0, + "12": 4119165440.0, + "13": 4119165440.0, + "14": 4119165440.0, + "15": 4119165440.0, + "16": 4119165440.0, + "17": 4119165440.0, + "18": 4119165440.0, + "19": 4119165440.0, + "20": 4119165440.0, + "21": 4119165440.0, + "22": 4119165440.0, + "23": 4119165440.0, + "24": 4119165440.0, + "25": 4119165440.0, + "26": 4119165440.0, + "27": 4119165440.0, + "28": 4119165440.0, + "29": 4119165440.0, + "30": 4119165440.0, + "31": 4119165440.0, + "32": 4119165440.0, + "33": 4119165440.0, + "34": 4119165440.0, + "35": 4119165440.0, + "36": 4119165440.0, + "37": 4119165440.0, + "38": 4119165440.0, + "39": 4119165440.0, + "40": 4119165440.0, + "41": 4119165440.0, + "42": 4119165440.0, + "43": 4119165440.0, + "44": 4119165440.0, + "45": 4119165440.0, + "46": 4119165440.0, + "47": 4119165440.0, + "48": 4119165440.0, + "49": 4119165440.0, + "50": 4119165440.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 12.00614, + "2": 0.18804, + "3": 0.28065, + "4": 0.14064, + "5": 0.1388, + "6": 0.13824, + "7": 0.13862, + "8": 0.13843, + "9": 0.14064, + "10": 0.13568, + "11": 0.13353, + "12": 0.13327, + "13": 0.13418, + "14": 0.13368, + "15": 0.13399, + "16": 0.13326, + "17": 0.13409, + "18": 0.13281, + "19": 0.13303, + "20": 0.13395, + "21": 0.13357, + "22": 0.13388, + "23": 0.13403, + "24": 0.1333, + "25": 0.13242, + "26": 0.13302, + "27": 0.134, + "28": 0.13304, + "29": 0.13302, + "30": 0.13398, + "31": 0.13424, + "32": 0.13315, + "33": 0.13365, + "34": 0.13391, + "35": 0.13392, + "36": 0.13316, + "37": 0.13254, + "38": 0.13292, + "39": 0.1333, + "40": 0.13401, + "41": 0.13408, + "42": 0.13349, + "43": 0.13469, + "44": 0.13282, + "45": 0.1344, + "46": 0.13536, + "47": 0.13291, + "48": 0.13374, + "49": 0.13338, + "50": 0.13336 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts_dgx_a100.json index 8faccf70250..4bf73c8b005 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.82005, "5": 10.85284, "10": 10.78455, "15": 10.79229, "20": 10.69211, "25": 10.52412, "30": 10.34552, "35": 10.26239, "40": 10.07241, "45": 9.81101, "50": 9.88422}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1559.0, "5": 1840.0, "10": 1380.0, "15": 1848.0, "20": 1601.0, "25": 1635.0, "30": 1936.0, "35": 1908.0, "40": 2100.0, "45": 2098.0, "50": 2333.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 732811264.0, "5": 732811264.0, "10": 732811264.0, "15": 732811264.0, "20": 732811264.0, "25": 732811264.0, "30": 732811264.0, "35": 732811264.0, "40": 732811264.0, "45": 732811264.0, "50": 732811264.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 3838895104.0, "5": 4122703872.0, "10": 4122703872.0, "15": 4122703872.0, "20": 4122703872.0, "25": 4122703872.0, "30": 4122703872.0, "35": 4122703872.0, "40": 4122703872.0, "45": 4122703872.0, "50": 4122703872.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 14.9121, "5": 0.1731, "10": 0.17256, "15": 0.1722, "20": 0.17555, "25": 0.17245, "30": 0.17067, "35": 0.17091, "40": 0.17274, "45": 0.17151, "50": 0.17108}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.81478, + "2": 10.82042, + "3": 10.81232, + "4": 10.78901, + "5": 10.85168, + "6": 10.87098, + "7": 10.83086, + "8": 10.83472, + "9": 10.83886, + "10": 10.78749, + "11": 10.87935, + "12": 10.86017, + "13": 10.86578, + "14": 10.8781, + "15": 10.79513, + "16": 10.7958, + "17": 10.76832, + "18": 10.8109, + "19": 10.79887, + "20": 10.69131, + "21": 10.6801, + "22": 10.52152, + "23": 10.7071, + "24": 10.57678, + "25": 10.52316, + "26": 10.59563, + "27": 10.58607, + "28": 10.56175, + "29": 10.56945, + "30": 10.34623, + "31": 10.10035, + "32": 10.45432, + "33": 10.44591, + "34": 10.2072, + "35": 10.26185, + "36": 10.21228, + "37": 10.32449, + "38": 10.16803, + "39": 10.38353, + "40": 10.07219, + "41": 10.13754, + "42": 10.19755, + "43": 9.81134, + "44": 9.93287, + "45": 9.80998, + "46": 9.80859, + "47": 10.12583, + "48": 9.82132, + "49": 9.50738, + "50": 9.88351 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1544.0, + "2": 1712.0, + "3": 1660.0, + "4": 1767.0, + "5": 1795.0, + "6": 1799.0, + "7": 1805.0, + "8": 1664.0, + "9": 1769.0, + "10": 1340.0, + "11": 1830.0, + "12": 1812.0, + "13": 1837.0, + "14": 1710.0, + "15": 1894.0, + "16": 1731.0, + "17": 1848.0, + "18": 1705.0, + "19": 1686.0, + "20": 1620.0, + "21": 1840.0, + "22": 1764.0, + "23": 1937.0, + "24": 1620.0, + "25": 1728.0, + "26": 1727.0, + "27": 1821.0, + "28": 2042.0, + "29": 2029.0, + "30": 1825.0, + "31": 1594.0, + "32": 1903.0, + "33": 2041.0, + "34": 1895.0, + "35": 1908.0, + "36": 1906.0, + "37": 2224.0, + "38": 2150.0, + "39": 2327.0, + "40": 2074.0, + "41": 2314.0, + "42": 2230.0, + "43": 1920.0, + "44": 2115.0, + "45": 1962.0, + "46": 2287.0, + "47": 2481.0, + "48": 2407.0, + "49": 2270.0, + "50": 2349.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3837453824.0, + "2": 4119165440.0, + "3": 4119165440.0, + "4": 4119165440.0, + "5": 4119165440.0, + "6": 4119165440.0, + "7": 4119165440.0, + "8": 4119165440.0, + "9": 4119165440.0, + "10": 4119165440.0, + "11": 4119165440.0, + "12": 4119165440.0, + "13": 4119165440.0, + "14": 4119165440.0, + "15": 4119165440.0, + "16": 4119165440.0, + "17": 4119165440.0, + "18": 4119165440.0, + "19": 4119165440.0, + "20": 4119165440.0, + "21": 4119165440.0, + "22": 4119165440.0, + "23": 4119165440.0, + "24": 4119165440.0, + "25": 4119165440.0, + "26": 4119165440.0, + "27": 4119165440.0, + "28": 4119165440.0, + "29": 4119165440.0, + "30": 4119165440.0, + "31": 4119165440.0, + "32": 4119165440.0, + "33": 4119165440.0, + "34": 4119165440.0, + "35": 4119165440.0, + "36": 4119165440.0, + "37": 4119165440.0, + "38": 4119165440.0, + "39": 4119165440.0, + "40": 4119165440.0, + "41": 4119165440.0, + "42": 4119165440.0, + "43": 4119165440.0, + "44": 4119165440.0, + "45": 4119165440.0, + "46": 4119165440.0, + "47": 4119165440.0, + "48": 4119165440.0, + "49": 4119165440.0, + "50": 4119165440.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 9.25479, + "2": 0.18004, + "3": 0.15444, + "4": 0.15284, + "5": 0.15391, + "6": 0.14333, + "7": 0.14244, + "8": 0.13997, + "9": 0.14112, + "10": 0.13863, + "11": 0.13707, + "12": 0.13575, + "13": 0.13558, + "14": 0.13535, + "15": 0.13556, + "16": 0.13648, + "17": 0.13495, + "18": 0.1343, + "19": 0.13442, + "20": 0.13441, + "21": 0.1344, + "22": 0.13478, + "23": 0.13473, + "24": 0.13476, + "25": 0.13536, + "26": 0.13345, + "27": 0.1342, + "28": 0.13421, + "29": 0.13479, + "30": 0.13378, + "31": 0.13418, + "32": 0.13411, + "33": 0.13351, + "34": 0.13374, + "35": 0.13406, + "36": 0.13396, + "37": 0.13435, + "38": 0.13356, + "39": 0.13367, + "40": 0.13361, + "41": 0.13454, + "42": 0.13463, + "43": 0.13524, + "44": 0.13356, + "45": 0.13403, + "46": 0.1347, + "47": 0.13379, + "48": 0.1343, + "49": 0.13391, + "50": 0.13371 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts.json new file mode 100644 index 00000000000..1553ecdd445 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.81478, + "2": 10.82042, + "3": 10.81232, + "4": 10.78901, + "5": 10.85168, + "6": 10.87098, + "7": 10.83086, + "8": 10.83472, + "9": 10.83886, + "10": 10.78749, + "11": 10.87935, + "12": 10.86017, + "13": 10.86578, + "14": 10.8781, + "15": 10.79514, + "16": 10.79576, + "17": 10.76832, + "18": 10.81092, + "19": 10.79889, + "20": 10.69131, + "21": 10.68008, + "22": 10.52146, + "23": 10.70713, + "24": 10.57677, + "25": 10.52315, + "26": 10.59564, + "27": 10.5861, + "28": 10.56176, + "29": 10.56942, + "30": 10.34624, + "31": 10.10032, + "32": 10.45433, + "33": 10.44592, + "34": 10.20725, + "35": 10.26186, + "36": 10.21223, + "37": 10.32453, + "38": 10.16801, + "39": 10.38354, + "40": 10.07222, + "41": 10.13752, + "42": 10.19756, + "43": 9.81134, + "44": 9.93285, + "45": 9.81001, + "46": 9.80858, + "47": 10.12582, + "48": 9.82129, + "49": 9.50739, + "50": 9.88351 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1544.0, + "2": 1712.0, + "3": 1660.0, + "4": 1767.0, + "5": 1795.0, + "6": 1799.0, + "7": 1805.0, + "8": 1664.0, + "9": 1769.0, + "10": 1340.0, + "11": 1830.0, + "12": 1812.0, + "13": 1837.0, + "14": 1710.0, + "15": 1839.0, + "16": 1776.0, + "17": 1750.0, + "18": 1612.0, + "19": 1764.0, + "20": 1649.0, + "21": 1854.0, + "22": 1750.0, + "23": 1909.0, + "24": 1616.0, + "25": 1654.0, + "26": 1755.0, + "27": 1860.0, + "28": 2042.0, + "29": 1953.0, + "30": 1905.0, + "31": 1684.0, + "32": 1831.0, + "33": 2101.0, + "34": 1769.0, + "35": 1915.0, + "36": 1885.0, + "37": 2324.0, + "38": 2169.0, + "39": 2300.0, + "40": 2069.0, + "41": 2353.0, + "42": 2236.0, + "43": 1978.0, + "44": 2022.0, + "45": 2103.0, + "46": 2292.0, + "47": 2413.0, + "48": 2305.0, + "49": 2218.0, + "50": 2321.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 523371008.0, + "2": 523371008.0, + "3": 523371008.0, + "4": 523371008.0, + "5": 523371008.0, + "6": 523371008.0, + "7": 523371008.0, + "8": 523371008.0, + "9": 523371008.0, + "10": 523371008.0, + "11": 523371008.0, + "12": 523371008.0, + "13": 523371008.0, + "14": 523371008.0, + "15": 523371008.0, + "16": 523371008.0, + "17": 523371008.0, + "18": 523371008.0, + "19": 523371008.0, + "20": 523371008.0, + "21": 523371008.0, + "22": 523371008.0, + "23": 523371008.0, + "24": 523371008.0, + "25": 523371008.0, + "26": 523371008.0, + "27": 523371008.0, + "28": 523371008.0, + "29": 523371008.0, + "30": 523371008.0, + "31": 523371008.0, + "32": 523371008.0, + "33": 523371008.0, + "34": 523371008.0, + "35": 523371008.0, + "36": 523371008.0, + "37": 523371008.0, + "38": 523371008.0, + "39": 523371008.0, + "40": 523371008.0, + "41": 523371008.0, + "42": 523371008.0, + "43": 523371008.0, + "44": 523371008.0, + "45": 523371008.0, + "46": 523371008.0, + "47": 523371008.0, + "48": 523371008.0, + "49": 523371008.0, + "50": 523371008.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3768846848.0, + "2": 3913263616.0, + "3": 3913263616.0, + "4": 3913263616.0, + "5": 3913263616.0, + "6": 3913263616.0, + "7": 3913263616.0, + "8": 3913263616.0, + "9": 3913263616.0, + "10": 3913263616.0, + "11": 3913263616.0, + "12": 3913263616.0, + "13": 3913263616.0, + "14": 3913263616.0, + "15": 3913263616.0, + "16": 3913263616.0, + "17": 3913263616.0, + "18": 3913263616.0, + "19": 3913263616.0, + "20": 3913263616.0, + "21": 3913263616.0, + "22": 3913263616.0, + "23": 3913263616.0, + "24": 3913263616.0, + "25": 3913263616.0, + "26": 3913263616.0, + "27": 3913263616.0, + "28": 3913263616.0, + "29": 3913263616.0, + "30": 3913263616.0, + "31": 3913263616.0, + "32": 3913263616.0, + "33": 3913263616.0, + "34": 3913263616.0, + "35": 3913263616.0, + "36": 3913263616.0, + "37": 3913263616.0, + "38": 3913263616.0, + "39": 3913263616.0, + "40": 3913263616.0, + "41": 3913263616.0, + "42": 3913263616.0, + "43": 3913263616.0, + "44": 3913263616.0, + "45": 3913263616.0, + "46": 3913263616.0, + "47": 3913263616.0, + "48": 3913263616.0, + "49": 3913263616.0, + "50": 3913263616.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 11.01582, + "2": 0.17662, + "3": 0.15135, + "4": 0.14999, + "5": 0.14829, + "6": 0.14621, + "7": 0.14816, + "8": 0.14731, + "9": 0.14766, + "10": 0.14515, + "11": 0.30054, + "12": 0.14534, + "13": 0.14429, + "14": 0.14592, + "15": 0.14632, + "16": 0.14618, + "17": 0.14537, + "18": 0.14666, + "19": 0.14384, + "20": 0.14453, + "21": 0.30388, + "22": 0.14466, + "23": 0.14511, + "24": 0.14435, + "25": 0.14401, + "26": 0.14328, + "27": 0.14376, + "28": 0.14434, + "29": 0.14386, + "30": 0.14418, + "31": 0.30313, + "32": 0.14394, + "33": 0.14406, + "34": 0.14377, + "35": 0.14417, + "36": 0.14415, + "37": 0.14393, + "38": 0.14577, + "39": 0.14494, + "40": 0.14489, + "41": 0.30235, + "42": 0.14494, + "43": 0.1472, + "44": 0.14577, + "45": 0.14497, + "46": 0.14619, + "47": 0.14474, + "48": 0.14551, + "49": 0.14554, + "50": 0.14507 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts_dgx_a100.json index dc393d0dffc..35ef87a5085 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_dist_optimizer_overlap_grad_reduce_param_gather_overlap_optimizer/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.82005, "5": 10.85284, "10": 10.78455, "15": 10.7923, "20": 10.69213, "25": 10.5241, "30": 10.34556, "35": 10.26241, "40": 10.07237, "45": 9.811, "50": 9.88419}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1559.0, "5": 1840.0, "10": 1380.0, "15": 1850.0, "20": 1699.0, "25": 1614.0, "30": 1905.0, "35": 1933.0, "40": 2169.0, "45": 2101.0, "50": 2421.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 523004928.0, "5": 523004928.0, "10": 523004928.0, "15": 523004928.0, "20": 523004928.0, "25": 523004928.0, "30": 523004928.0, "35": 523004928.0, "40": 523004928.0, "45": 523004928.0, "50": 523004928.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 3768873984.0, "5": 3912766464.0, "10": 3912766464.0, "15": 3912766464.0, "20": 3912766464.0, "25": 3912766464.0, "30": 3912766464.0, "35": 3912766464.0, "40": 3912766464.0, "45": 3912766464.0, "50": 3912766464.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 18.88705, "5": 0.16956, "10": 0.17448, "15": 0.16853, "20": 0.1715, "25": 0.17071, "30": 0.17343, "35": 0.17213, "40": 0.1719, "45": 0.17357, "50": 0.17228}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.81478, + "2": 10.82042, + "3": 10.81232, + "4": 10.78901, + "5": 10.85168, + "6": 10.87098, + "7": 10.83086, + "8": 10.83472, + "9": 10.83886, + "10": 10.78749, + "11": 10.87935, + "12": 10.86017, + "13": 10.86578, + "14": 10.8781, + "15": 10.79514, + "16": 10.79576, + "17": 10.76832, + "18": 10.81092, + "19": 10.79889, + "20": 10.69131, + "21": 10.68008, + "22": 10.52146, + "23": 10.70713, + "24": 10.57677, + "25": 10.52315, + "26": 10.59564, + "27": 10.5861, + "28": 10.56176, + "29": 10.56942, + "30": 10.34624, + "31": 10.10032, + "32": 10.45433, + "33": 10.44592, + "34": 10.20725, + "35": 10.26186, + "36": 10.21223, + "37": 10.32453, + "38": 10.16801, + "39": 10.38354, + "40": 10.07222, + "41": 10.13752, + "42": 10.19756, + "43": 9.81134, + "44": 9.93285, + "45": 9.81001, + "46": 9.80858, + "47": 10.12582, + "48": 9.82129, + "49": 9.50739, + "50": 9.88351 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1544.0, + "2": 1712.0, + "3": 1660.0, + "4": 1767.0, + "5": 1795.0, + "6": 1799.0, + "7": 1805.0, + "8": 1664.0, + "9": 1769.0, + "10": 1340.0, + "11": 1830.0, + "12": 1812.0, + "13": 1837.0, + "14": 1710.0, + "15": 1839.0, + "16": 1776.0, + "17": 1750.0, + "18": 1612.0, + "19": 1764.0, + "20": 1649.0, + "21": 1854.0, + "22": 1750.0, + "23": 1909.0, + "24": 1616.0, + "25": 1654.0, + "26": 1755.0, + "27": 1860.0, + "28": 2042.0, + "29": 1953.0, + "30": 1905.0, + "31": 1684.0, + "32": 1831.0, + "33": 2101.0, + "34": 1769.0, + "35": 1915.0, + "36": 1885.0, + "37": 2324.0, + "38": 2169.0, + "39": 2300.0, + "40": 2069.0, + "41": 2353.0, + "42": 2236.0, + "43": 1978.0, + "44": 2022.0, + "45": 2103.0, + "46": 2292.0, + "47": 2413.0, + "48": 2305.0, + "49": 2218.0, + "50": 2321.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 522452480.0, + "2": 522452480.0, + "3": 522452480.0, + "4": 522452480.0, + "5": 522452480.0, + "6": 522452480.0, + "7": 522452480.0, + "8": 522452480.0, + "9": 523501056.0, + "10": 522452480.0, + "11": 522452480.0, + "12": 523501056.0, + "13": 522452480.0, + "14": 522452480.0, + "15": 522452480.0, + "16": 522452480.0, + "17": 522452480.0, + "18": 522452480.0, + "19": 523501056.0, + "20": 523501056.0, + "21": 522452480.0, + "22": 522452480.0, + "23": 522452480.0, + "24": 523501056.0, + "25": 522452480.0, + "26": 522452480.0, + "27": 522452480.0, + "28": 522452480.0, + "29": 523501056.0, + "30": 522452480.0, + "31": 522452480.0, + "32": 522452480.0, + "33": 522452480.0, + "34": 522452480.0, + "35": 522452480.0, + "36": 522452480.0, + "37": 522452480.0, + "38": 522452480.0, + "39": 522452480.0, + "40": 522452480.0, + "41": 523371008.0, + "42": 522452480.0, + "43": 522452480.0, + "44": 522452480.0, + "45": 522452480.0, + "46": 523501056.0, + "47": 522452480.0, + "48": 522452480.0, + "49": 523501056.0, + "50": 522452480.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3768846848.0, + "2": 3913263616.0, + "3": 3913263616.0, + "4": 3913263616.0, + "5": 3913263616.0, + "6": 3913263616.0, + "7": 3913263616.0, + "8": 3913263616.0, + "9": 3913263616.0, + "10": 3913263616.0, + "11": 3913263616.0, + "12": 3913263616.0, + "13": 3913263616.0, + "14": 3913263616.0, + "15": 3913263616.0, + "16": 3913263616.0, + "17": 3913263616.0, + "18": 3913263616.0, + "19": 3913263616.0, + "20": 3913263616.0, + "21": 3913263616.0, + "22": 3913263616.0, + "23": 3913263616.0, + "24": 3913263616.0, + "25": 3913263616.0, + "26": 3913263616.0, + "27": 3913263616.0, + "28": 3913263616.0, + "29": 3913263616.0, + "30": 3913263616.0, + "31": 3913263616.0, + "32": 3913263616.0, + "33": 3913263616.0, + "34": 3913263616.0, + "35": 3913263616.0, + "36": 3913263616.0, + "37": 3913263616.0, + "38": 3913263616.0, + "39": 3913263616.0, + "40": 3913263616.0, + "41": 3913263616.0, + "42": 3913263616.0, + "43": 3913263616.0, + "44": 3913263616.0, + "45": 3913263616.0, + "46": 3913263616.0, + "47": 3913263616.0, + "48": 3913263616.0, + "49": 3913263616.0, + "50": 3913263616.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.5204, + "2": 0.1877, + "3": 0.15851, + "4": 0.15284, + "5": 0.15092, + "6": 0.15084, + "7": 0.14786, + "8": 0.14787, + "9": 0.14698, + "10": 0.15104, + "11": 0.29695, + "12": 0.14795, + "13": 0.14771, + "14": 0.14662, + "15": 0.14409, + "16": 0.14378, + "17": 0.14431, + "18": 0.14329, + "19": 0.14334, + "20": 0.14441, + "21": 0.28011, + "22": 0.14378, + "23": 0.14643, + "24": 0.14572, + "25": 0.14331, + "26": 0.14307, + "27": 0.14541, + "28": 0.14512, + "29": 0.14536, + "30": 0.14358, + "31": 0.28944, + "32": 0.14533, + "33": 0.14477, + "34": 0.14423, + "35": 0.14395, + "36": 0.14486, + "37": 0.14319, + "38": 0.14455, + "39": 0.14454, + "40": 0.14537, + "41": 0.29312, + "42": 0.14458, + "43": 0.14749, + "44": 0.14448, + "45": 0.14501, + "46": 0.14588, + "47": 0.14249, + "48": 0.14564, + "49": 0.14388, + "50": 0.14222 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts.json new file mode 100644 index 00000000000..59dee721816 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81271, + "4": 10.78877, + "5": 10.85169, + "6": 10.8704, + "7": 10.831, + "8": 10.83427, + "9": 10.83995, + "10": 10.78684, + "11": 10.88021, + "12": 10.85971, + "13": 10.86589, + "14": 10.87818, + "15": 10.79463, + "16": 10.79607, + "17": 10.7688, + "18": 10.81045, + "19": 10.79836, + "20": 10.69045, + "21": 10.67932, + "22": 10.52101, + "23": 10.70743, + "24": 10.57665, + "25": 10.52275, + "26": 10.595, + "27": 10.5855, + "28": 10.56131, + "29": 10.56894, + "30": 10.34527, + "31": 10.10019, + "32": 10.45229, + "33": 10.44356, + "34": 10.20397, + "35": 10.25844, + "36": 10.2103, + "37": 10.32252, + "38": 10.1661, + "39": 10.38156, + "40": 10.07025, + "41": 10.13542, + "42": 10.19416, + "43": 9.80626, + "44": 9.92627, + "45": 9.8024, + "46": 9.79983, + "47": 10.11662, + "48": 9.81307, + "49": 9.50044, + "50": 9.87631, + "51": 9.82781, + "52": 9.71723, + "53": 10.03979, + "54": 9.92177, + "55": 9.85515, + "56": 9.59253, + "57": 9.44144, + "58": 9.79602, + "59": 9.55567, + "60": 9.4664, + "61": 9.6666, + "62": 9.95363, + "63": 9.33626, + "64": 9.74152, + "65": 8.9178, + "66": 9.66632, + "67": 9.34424, + "68": 9.75273, + "69": 9.75727, + "70": 9.69242, + "71": 9.5868, + "72": 9.55099, + "73": 9.46289, + "74": 8.90671, + "75": 9.37793, + "76": 9.04952, + "77": 10.0301, + "78": 9.69192, + "79": 9.33464, + "80": 9.3667, + "81": 9.44418, + "82": 9.66164, + "83": 9.27209, + "84": 9.38066, + "85": 9.57618, + "86": 9.0424, + "87": 9.55703, + "88": 9.70385, + "89": 9.56619, + "90": 9.77295, + "91": 9.29396, + "92": 9.31912, + "93": 9.03406, + "94": 8.78526, + "95": 9.46938, + "96": 9.47497, + "97": 9.25688, + "98": 9.61835, + "99": 8.83233, + "100": 9.34557 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1668.0, + "4": 1721.0, + "5": 1897.0, + "6": 1823.0, + "7": 1719.0, + "8": 1637.0, + "9": 1742.0, + "10": 1358.0, + "11": 1882.0, + "12": 1781.0, + "13": 1847.0, + "14": 1753.0, + "15": 1883.0, + "16": 1755.0, + "17": 1752.0, + "18": 1683.0, + "19": 1817.0, + "20": 1663.0, + "21": 1795.0, + "22": 1698.0, + "23": 1996.0, + "24": 1620.0, + "25": 1658.0, + "26": 1727.0, + "27": 1781.0, + "28": 2085.0, + "29": 1952.0, + "30": 1821.0, + "31": 1646.0, + "32": 1879.0, + "33": 2034.0, + "34": 1861.0, + "35": 1834.0, + "36": 1913.0, + "37": 2333.0, + "38": 2070.0, + "39": 2245.0, + "40": 2126.0, + "41": 2311.0, + "42": 2213.0, + "43": 1907.0, + "44": 1951.0, + "45": 2001.0, + "46": 2218.0, + "47": 2533.0, + "48": 2436.0, + "49": 2188.0, + "50": 2342.0, + "51": 2562.0, + "52": 2529.0, + "53": 3031.0, + "54": 2744.0, + "55": 2264.0, + "56": 2794.0, + "57": 2183.0, + "58": 2882.0, + "59": 2769.0, + "60": 2399.0, + "61": 3031.0, + "62": 2706.0, + "63": 2388.0, + "64": 3046.0, + "65": 2597.0, + "66": 3092.0, + "67": 2730.0, + "68": 2858.0, + "69": 2982.0, + "70": 3202.0, + "71": 2964.0, + "72": 2450.0, + "73": 2817.0, + "74": 1834.0, + "75": 2609.0, + "76": 3000.0, + "77": 3180.0, + "78": 3113.0, + "79": 3145.0, + "80": 3258.0, + "81": 3645.0, + "82": 3075.0, + "83": 2812.0, + "84": 3295.0, + "85": 3368.0, + "86": 2730.0, + "87": 3717.0, + "88": 3056.0, + "89": 3252.0, + "90": 2954.0, + "91": 2798.0, + "92": 3089.0, + "93": 2742.0, + "94": 3420.0, + "95": 3225.0, + "96": 3362.0, + "97": 3118.0, + "98": 3671.0, + "99": 3341.0, + "100": 3428.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0, + "51": 730321408.0, + "52": 730321408.0, + "53": 730321408.0, + "54": 730321408.0, + "55": 730321408.0, + "56": 730321408.0, + "57": 730321408.0, + "58": 730321408.0, + "59": 730321408.0, + "60": 730321408.0, + "61": 730321408.0, + "62": 730321408.0, + "63": 730321408.0, + "64": 730321408.0, + "65": 730321408.0, + "66": 730321408.0, + "67": 730321408.0, + "68": 730321408.0, + "69": 730321408.0, + "70": 730321408.0, + "71": 730321408.0, + "72": 730321408.0, + "73": 730321408.0, + "74": 730321408.0, + "75": 730321408.0, + "76": 730321408.0, + "77": 730321408.0, + "78": 730321408.0, + "79": 730321408.0, + "80": 730321408.0, + "81": 730321408.0, + "82": 730321408.0, + "83": 730321408.0, + "84": 730321408.0, + "85": 730321408.0, + "86": 730321408.0, + "87": 730321408.0, + "88": 730321408.0, + "89": 730321408.0, + "90": 730321408.0, + "91": 730321408.0, + "92": 730321408.0, + "93": 730321408.0, + "94": 730321408.0, + "95": 730321408.0, + "96": 730321408.0, + "97": 730321408.0, + "98": 730321408.0, + "99": 730321408.0, + "100": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2366437376.0, + "2": 2648148992.0, + "3": 2648148992.0, + "4": 2648148992.0, + "5": 2648148992.0, + "6": 2648148992.0, + "7": 2648148992.0, + "8": 2648148992.0, + "9": 2648148992.0, + "10": 2648148992.0, + "11": 2648148992.0, + "12": 2648148992.0, + "13": 2648148992.0, + "14": 2648148992.0, + "15": 2648148992.0, + "16": 2648148992.0, + "17": 2648148992.0, + "18": 2648148992.0, + "19": 2648148992.0, + "20": 2648148992.0, + "21": 2648148992.0, + "22": 2648148992.0, + "23": 2648148992.0, + "24": 2648148992.0, + "25": 2648148992.0, + "26": 2648148992.0, + "27": 2648148992.0, + "28": 2648148992.0, + "29": 2648148992.0, + "30": 2648148992.0, + "31": 2648148992.0, + "32": 2648148992.0, + "33": 2648148992.0, + "34": 2648148992.0, + "35": 2648148992.0, + "36": 2648148992.0, + "37": 2648148992.0, + "38": 2648148992.0, + "39": 2648148992.0, + "40": 2648148992.0, + "41": 2648148992.0, + "42": 2648148992.0, + "43": 2648148992.0, + "44": 2648148992.0, + "45": 2648148992.0, + "46": 2648148992.0, + "47": 2648148992.0, + "48": 2648148992.0, + "49": 2648148992.0, + "50": 2648148992.0, + "51": 2648148992.0, + "52": 2648148992.0, + "53": 2648148992.0, + "54": 2648148992.0, + "55": 2648148992.0, + "56": 2648148992.0, + "57": 2648148992.0, + "58": 2648148992.0, + "59": 2648148992.0, + "60": 2648148992.0, + "61": 2648148992.0, + "62": 2648148992.0, + "63": 2648148992.0, + "64": 2648148992.0, + "65": 2648148992.0, + "66": 2648148992.0, + "67": 2648148992.0, + "68": 2648148992.0, + "69": 2648148992.0, + "70": 2648148992.0, + "71": 2648148992.0, + "72": 2648148992.0, + "73": 2648148992.0, + "74": 2648148992.0, + "75": 2648148992.0, + "76": 2648148992.0, + "77": 2648148992.0, + "78": 2648148992.0, + "79": 2648148992.0, + "80": 2648148992.0, + "81": 2648148992.0, + "82": 2648148992.0, + "83": 2648148992.0, + "84": 2648148992.0, + "85": 2648148992.0, + "86": 2648148992.0, + "87": 2648148992.0, + "88": 2648148992.0, + "89": 2648148992.0, + "90": 2648148992.0, + "91": 2648148992.0, + "92": 2648148992.0, + "93": 2648148992.0, + "94": 2648148992.0, + "95": 2648148992.0, + "96": 2648148992.0, + "97": 2648148992.0, + "98": 2648148992.0, + "99": 2648148992.0, + "100": 2648148992.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 11.77273, + "2": 0.15704, + "3": 0.19484, + "4": 0.13176, + "5": 0.13019, + "6": 0.12976, + "7": 0.1302, + "8": 0.12925, + "9": 0.12988, + "10": 0.13099, + "11": 0.13015, + "12": 0.1297, + "13": 0.12988, + "14": 0.13024, + "15": 0.12985, + "16": 0.12971, + "17": 0.12961, + "18": 0.1302, + "19": 0.12963, + "20": 0.12994, + "21": 0.1299, + "22": 0.13037, + "23": 0.13043, + "24": 0.12989, + "25": 0.13018, + "26": 0.13019, + "27": 0.12985, + "28": 0.13014, + "29": 0.13068, + "30": 0.13099, + "31": 0.13197, + "32": 0.13151, + "33": 0.13168, + "34": 0.1303, + "35": 0.13073, + "36": 0.13088, + "37": 0.1307, + "38": 0.13091, + "39": 0.13292, + "40": 0.13172, + "41": 0.134, + "42": 0.13157, + "43": 0.13272, + "44": 0.13144, + "45": 0.13142, + "46": 0.133, + "47": 0.13069, + "48": 0.13192, + "49": 0.13124, + "50": 0.13106, + "51": 0.13227, + "52": 0.13218, + "53": 0.13063, + "54": 0.13182, + "55": 0.13138, + "56": 0.13226, + "57": 0.13156, + "58": 0.13127, + "59": 0.13198, + "60": 0.13133, + "61": 0.13107, + "62": 0.13121, + "63": 0.13141, + "64": 0.13149, + "65": 0.13192, + "66": 0.13188, + "67": 0.13167, + "68": 0.1319, + "69": 0.1318, + "70": 0.13204, + "71": 0.13077, + "72": 0.13205, + "73": 0.13251, + "74": 0.13212, + "75": 0.13195, + "76": 0.13016, + "77": 0.12994, + "78": 0.13184, + "79": 0.13131, + "80": 0.13153, + "81": 0.13219, + "82": 0.13088, + "83": 0.13074, + "84": 0.13035, + "85": 0.12939, + "86": 0.12953, + "87": 0.1294, + "88": 0.12951, + "89": 0.13007, + "90": 0.12893, + "91": 0.13881, + "92": 0.1299, + "93": 0.12993, + "94": 0.13022, + "95": 0.1304, + "96": 0.12965, + "97": 0.13013, + "98": 0.1306, + "99": 0.12958, + "100": 0.13011 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts_dgx_a100.json index 855eefe74c4..6081b627567 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_decoupled_lr/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.82005, "5": 10.85285, "10": 10.78449, "15": 10.79226, "20": 10.69196, "25": 10.52318, "30": 10.34505, "35": 10.25888, "40": 10.07032, "45": 9.803, "50": 9.87675, "55": 9.85523, "60": 9.46634, "65": 8.91657, "70": 9.69276, "75": 9.37813, "80": 9.368, "85": 9.57598, "90": 9.77247, "95": 9.46912, "100": 9.34574}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1559.0, "5": 1915.0, "10": 1361.0, "15": 1831.0, "20": 1695.0, "25": 1650.0, "30": 1861.0, "35": 1916.0, "40": 2109.0, "45": 2098.0, "50": 2424.0, "55": 2309.0, "60": 2432.0, "65": 2660.0, "70": 3132.0, "75": 2555.0, "80": 3370.0, "85": 3434.0, "90": 2868.0, "95": 3273.0, "100": 3359.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 732811264.0, "5": 732811264.0, "10": 732811264.0, "15": 732811264.0, "20": 732811264.0, "25": 732811264.0, "30": 732811264.0, "35": 732811264.0, "40": 732811264.0, "45": 732811264.0, "50": 732811264.0, "55": 732811264.0, "60": 732811264.0, "65": 732811264.0, "70": 732811264.0, "75": 732811264.0, "80": 732811264.0, "85": 732811264.0, "90": 732811264.0, "95": 732811264.0, "100": 732811264.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 3838895104.0, "5": 4122703872.0, "10": 4122703872.0, "15": 4122703872.0, "20": 4122703872.0, "25": 4122703872.0, "30": 4122703872.0, "35": 4122703872.0, "40": 4122703872.0, "45": 4122703872.0, "50": 4122703872.0, "55": 4122703872.0, "60": 4122703872.0, "65": 4122703872.0, "70": 4122703872.0, "75": 4122703872.0, "80": 4122703872.0, "85": 4122703872.0, "90": 4122703872.0, "95": 4122703872.0, "100": 4122703872.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 21.12849, "5": 0.1796, "10": 0.17779, "15": 0.17478, "20": 0.17462, "25": 0.17506, "30": 0.17537, "35": 0.17332, "40": 0.17629, "45": 0.17732, "50": 0.17437, "55": 0.1738, "60": 0.17515, "65": 0.17451, "70": 0.17318, "75": 0.1729, "80": 0.17444, "85": 0.17406, "90": 0.17228, "95": 0.17346, "100": 0.17333}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81271, + "4": 10.78877, + "5": 10.85169, + "6": 10.8704, + "7": 10.831, + "8": 10.83427, + "9": 10.83995, + "10": 10.78684, + "11": 10.88021, + "12": 10.85971, + "13": 10.86589, + "14": 10.87818, + "15": 10.79463, + "16": 10.79607, + "17": 10.7688, + "18": 10.81045, + "19": 10.79836, + "20": 10.69045, + "21": 10.67932, + "22": 10.52101, + "23": 10.70743, + "24": 10.57665, + "25": 10.52275, + "26": 10.595, + "27": 10.5855, + "28": 10.56131, + "29": 10.56894, + "30": 10.34527, + "31": 10.10019, + "32": 10.45229, + "33": 10.44356, + "34": 10.20397, + "35": 10.25844, + "36": 10.2103, + "37": 10.32252, + "38": 10.1661, + "39": 10.38156, + "40": 10.07025, + "41": 10.13542, + "42": 10.19416, + "43": 9.80626, + "44": 9.92627, + "45": 9.8024, + "46": 9.79983, + "47": 10.11662, + "48": 9.81307, + "49": 9.50044, + "50": 9.87631, + "51": 9.82781, + "52": 9.71723, + "53": 10.03979, + "54": 9.92177, + "55": 9.85515, + "56": 9.59253, + "57": 9.44144, + "58": 9.79602, + "59": 9.55567, + "60": 9.4664, + "61": 9.6666, + "62": 9.95363, + "63": 9.33626, + "64": 9.74152, + "65": 8.9178, + "66": 9.66632, + "67": 9.34424, + "68": 9.75273, + "69": 9.75727, + "70": 9.69242, + "71": 9.5868, + "72": 9.55099, + "73": 9.46289, + "74": 8.90671, + "75": 9.37793, + "76": 9.04952, + "77": 10.0301, + "78": 9.69192, + "79": 9.33464, + "80": 9.3667, + "81": 9.44418, + "82": 9.66164, + "83": 9.27209, + "84": 9.38066, + "85": 9.57618, + "86": 9.0424, + "87": 9.55703, + "88": 9.70385, + "89": 9.56619, + "90": 9.77295, + "91": 9.29396, + "92": 9.31912, + "93": 9.03406, + "94": 8.78526, + "95": 9.46938, + "96": 9.47497, + "97": 9.25688, + "98": 9.61835, + "99": 8.83233, + "100": 9.34557 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1668.0, + "4": 1721.0, + "5": 1897.0, + "6": 1823.0, + "7": 1719.0, + "8": 1637.0, + "9": 1742.0, + "10": 1358.0, + "11": 1882.0, + "12": 1781.0, + "13": 1847.0, + "14": 1753.0, + "15": 1883.0, + "16": 1755.0, + "17": 1752.0, + "18": 1683.0, + "19": 1817.0, + "20": 1663.0, + "21": 1795.0, + "22": 1698.0, + "23": 1996.0, + "24": 1620.0, + "25": 1658.0, + "26": 1727.0, + "27": 1781.0, + "28": 2085.0, + "29": 1952.0, + "30": 1821.0, + "31": 1646.0, + "32": 1879.0, + "33": 2034.0, + "34": 1861.0, + "35": 1834.0, + "36": 1913.0, + "37": 2333.0, + "38": 2070.0, + "39": 2245.0, + "40": 2126.0, + "41": 2311.0, + "42": 2213.0, + "43": 1907.0, + "44": 1951.0, + "45": 2001.0, + "46": 2218.0, + "47": 2533.0, + "48": 2436.0, + "49": 2188.0, + "50": 2342.0, + "51": 2562.0, + "52": 2529.0, + "53": 3031.0, + "54": 2744.0, + "55": 2264.0, + "56": 2794.0, + "57": 2183.0, + "58": 2882.0, + "59": 2769.0, + "60": 2399.0, + "61": 3031.0, + "62": 2706.0, + "63": 2388.0, + "64": 3046.0, + "65": 2597.0, + "66": 3092.0, + "67": 2730.0, + "68": 2858.0, + "69": 2982.0, + "70": 3202.0, + "71": 2964.0, + "72": 2450.0, + "73": 2817.0, + "74": 1834.0, + "75": 2609.0, + "76": 3000.0, + "77": 3180.0, + "78": 3113.0, + "79": 3145.0, + "80": 3258.0, + "81": 3645.0, + "82": 3075.0, + "83": 2812.0, + "84": 3295.0, + "85": 3368.0, + "86": 2730.0, + "87": 3717.0, + "88": 3056.0, + "89": 3252.0, + "90": 2954.0, + "91": 2798.0, + "92": 3089.0, + "93": 2742.0, + "94": 3420.0, + "95": 3225.0, + "96": 3362.0, + "97": 3118.0, + "98": 3671.0, + "99": 3341.0, + "100": 3428.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0, + "51": 730321408.0, + "52": 730321408.0, + "53": 730321408.0, + "54": 730321408.0, + "55": 730321408.0, + "56": 730321408.0, + "57": 730321408.0, + "58": 730321408.0, + "59": 730321408.0, + "60": 730321408.0, + "61": 730321408.0, + "62": 730321408.0, + "63": 730321408.0, + "64": 730321408.0, + "65": 730321408.0, + "66": 730321408.0, + "67": 730321408.0, + "68": 730321408.0, + "69": 730321408.0, + "70": 730321408.0, + "71": 730321408.0, + "72": 730321408.0, + "73": 730321408.0, + "74": 730321408.0, + "75": 730321408.0, + "76": 730321408.0, + "77": 730321408.0, + "78": 730321408.0, + "79": 730321408.0, + "80": 730321408.0, + "81": 730321408.0, + "82": 730321408.0, + "83": 730321408.0, + "84": 730321408.0, + "85": 730321408.0, + "86": 730321408.0, + "87": 730321408.0, + "88": 730321408.0, + "89": 730321408.0, + "90": 730321408.0, + "91": 730321408.0, + "92": 730321408.0, + "93": 730321408.0, + "94": 730321408.0, + "95": 730321408.0, + "96": 730321408.0, + "97": 730321408.0, + "98": 730321408.0, + "99": 730321408.0, + "100": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2366437376.0, + "2": 2648148992.0, + "3": 2648148992.0, + "4": 2648148992.0, + "5": 2648148992.0, + "6": 2648148992.0, + "7": 2648148992.0, + "8": 2648148992.0, + "9": 2648148992.0, + "10": 2648148992.0, + "11": 2648148992.0, + "12": 2648148992.0, + "13": 2648148992.0, + "14": 2648148992.0, + "15": 2648148992.0, + "16": 2648148992.0, + "17": 2648148992.0, + "18": 2648148992.0, + "19": 2648148992.0, + "20": 2648148992.0, + "21": 2648148992.0, + "22": 2648148992.0, + "23": 2648148992.0, + "24": 2648148992.0, + "25": 2648148992.0, + "26": 2648148992.0, + "27": 2648148992.0, + "28": 2648148992.0, + "29": 2648148992.0, + "30": 2648148992.0, + "31": 2648148992.0, + "32": 2648148992.0, + "33": 2648148992.0, + "34": 2648148992.0, + "35": 2648148992.0, + "36": 2648148992.0, + "37": 2648148992.0, + "38": 2648148992.0, + "39": 2648148992.0, + "40": 2648148992.0, + "41": 2648148992.0, + "42": 2648148992.0, + "43": 2648148992.0, + "44": 2648148992.0, + "45": 2648148992.0, + "46": 2648148992.0, + "47": 2648148992.0, + "48": 2648148992.0, + "49": 2648148992.0, + "50": 2648148992.0, + "51": 2648148992.0, + "52": 2648148992.0, + "53": 2648148992.0, + "54": 2648148992.0, + "55": 2648148992.0, + "56": 2648148992.0, + "57": 2648148992.0, + "58": 2648148992.0, + "59": 2648148992.0, + "60": 2648148992.0, + "61": 2648148992.0, + "62": 2648148992.0, + "63": 2648148992.0, + "64": 2648148992.0, + "65": 2648148992.0, + "66": 2648148992.0, + "67": 2648148992.0, + "68": 2648148992.0, + "69": 2648148992.0, + "70": 2648148992.0, + "71": 2648148992.0, + "72": 2648148992.0, + "73": 2648148992.0, + "74": 2648148992.0, + "75": 2648148992.0, + "76": 2648148992.0, + "77": 2648148992.0, + "78": 2648148992.0, + "79": 2648148992.0, + "80": 2648148992.0, + "81": 2648148992.0, + "82": 2648148992.0, + "83": 2648148992.0, + "84": 2648148992.0, + "85": 2648148992.0, + "86": 2648148992.0, + "87": 2648148992.0, + "88": 2648148992.0, + "89": 2648148992.0, + "90": 2648148992.0, + "91": 2648148992.0, + "92": 2648148992.0, + "93": 2648148992.0, + "94": 2648148992.0, + "95": 2648148992.0, + "96": 2648148992.0, + "97": 2648148992.0, + "98": 2648148992.0, + "99": 2648148992.0, + "100": 2648148992.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 12.81482, + "2": 0.16445, + "3": 0.16681, + "4": 0.12923, + "5": 0.12855, + "6": 0.12774, + "7": 0.12794, + "8": 0.12857, + "9": 0.12785, + "10": 0.12889, + "11": 0.13344, + "12": 0.1302, + "13": 0.13007, + "14": 0.12962, + "15": 0.13044, + "16": 0.12918, + "17": 0.13075, + "18": 0.13004, + "19": 0.13052, + "20": 0.13025, + "21": 0.12825, + "22": 0.13322, + "23": 0.13274, + "24": 0.13114, + "25": 0.13075, + "26": 0.12979, + "27": 0.13026, + "28": 0.13147, + "29": 0.13072, + "30": 0.13098, + "31": 0.13095, + "32": 0.13054, + "33": 0.13038, + "34": 0.13142, + "35": 0.13065, + "36": 0.12923, + "37": 0.13039, + "38": 0.12981, + "39": 0.12995, + "40": 0.13035, + "41": 0.12966, + "42": 0.13013, + "43": 0.13031, + "44": 0.13066, + "45": 0.12952, + "46": 0.13059, + "47": 0.12932, + "48": 0.13133, + "49": 0.13099, + "50": 0.13032, + "51": 0.13345, + "52": 0.13027, + "53": 0.13035, + "54": 0.13064, + "55": 0.13026, + "56": 0.13053, + "57": 0.13106, + "58": 0.13032, + "59": 0.13178, + "60": 0.13233, + "61": 0.13005, + "62": 0.13045, + "63": 0.13061, + "64": 0.13066, + "65": 0.13102, + "66": 0.13143, + "67": 0.13033, + "68": 0.13066, + "69": 0.12904, + "70": 0.13059, + "71": 0.13052, + "72": 0.13076, + "73": 0.13215, + "74": 0.13173, + "75": 0.13126, + "76": 0.12946, + "77": 0.13071, + "78": 0.12973, + "79": 0.12962, + "80": 0.12976, + "81": 0.12993, + "82": 0.12829, + "83": 0.13132, + "84": 0.1304, + "85": 0.13095, + "86": 0.13112, + "87": 0.12994, + "88": 0.13287, + "89": 0.1284, + "90": 0.1303, + "91": 0.12966, + "92": 0.13139, + "93": 0.12932, + "94": 0.12687, + "95": 0.13012, + "96": 0.12919, + "97": 0.13166, + "98": 0.12958, + "99": 0.13126, + "100": 0.1303 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts.json new file mode 100644 index 00000000000..f108f63200b --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81272, + "4": 10.78885, + "5": 10.85169, + "6": 10.87038, + "7": 10.83098, + "8": 10.8343, + "9": 10.83996, + "10": 10.78686, + "11": 10.88025, + "12": 10.85974, + "13": 10.86596, + "14": 10.8782, + "15": 10.79466, + "16": 10.79613, + "17": 10.76887, + "18": 10.81076, + "19": 10.7986, + "20": 10.69061, + "21": 10.67945, + "22": 10.52114, + "23": 10.70755, + "24": 10.57741, + "25": 10.52373, + "26": 10.59597, + "27": 10.58619, + "28": 10.56176, + "29": 10.56945, + "30": 10.34573, + "31": 10.10078, + "32": 10.45392, + "33": 10.4461, + "34": 10.20721, + "35": 10.262, + "36": 10.21312, + "37": 10.32468, + "38": 10.16831, + "39": 10.38374, + "40": 10.07231, + "41": 10.13763, + "42": 10.19765, + "43": 9.81155, + "44": 9.93311, + "45": 9.8104, + "46": 9.80854, + "47": 10.12558, + "48": 9.82105, + "49": 9.50764, + "50": 9.88382, + "51": 9.83549, + "52": 9.72516, + "53": 10.04799, + "54": 9.93011, + "55": 9.8636, + "56": 9.60217, + "57": 9.45187, + "58": 9.8078, + "59": 9.56783, + "60": 9.47966, + "61": 9.67984, + "62": 9.96754, + "63": 9.35113, + "64": 9.75623, + "65": 8.9318, + "66": 9.68107, + "67": 9.35956, + "68": 9.76948, + "69": 9.77492, + "70": 9.71182, + "71": 9.60632, + "72": 9.57129, + "73": 9.48392, + "74": 8.92911, + "75": 9.40028, + "76": 9.07194, + "77": 10.05252, + "78": 9.71494, + "79": 9.35747, + "80": 9.38946, + "81": 9.46791, + "82": 9.68508, + "83": 9.29588, + "84": 9.40522, + "85": 9.60163, + "86": 9.06713, + "87": 9.58402, + "88": 9.73304, + "89": 9.59526, + "90": 9.80555, + "91": 9.32604, + "92": 9.35323, + "93": 9.06915, + "94": 8.82268, + "95": 9.50858, + "96": 9.51584, + "97": 9.2976, + "98": 9.66184, + "99": 8.87662, + "100": 9.39222 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1678.0, + "4": 1709.0, + "5": 1873.0, + "6": 1786.0, + "7": 1813.0, + "8": 1519.0, + "9": 1684.0, + "10": 1417.0, + "11": 1943.0, + "12": 1723.0, + "13": 1939.0, + "14": 1759.0, + "15": 1728.0, + "16": 1773.0, + "17": 1805.0, + "18": 1702.0, + "19": 1803.0, + "20": 1627.0, + "21": 1822.0, + "22": 1748.0, + "23": 1938.0, + "24": 1642.0, + "25": 1696.0, + "26": 1760.0, + "27": 1809.0, + "28": 2025.0, + "29": 1900.0, + "30": 1902.0, + "31": 1645.0, + "32": 1876.0, + "33": 2105.0, + "34": 1881.0, + "35": 1913.0, + "36": 1864.0, + "37": 2322.0, + "38": 2194.0, + "39": 2318.0, + "40": 2010.0, + "41": 2358.0, + "42": 2155.0, + "43": 1980.0, + "44": 2105.0, + "45": 2082.0, + "46": 2221.0, + "47": 2537.0, + "48": 2367.0, + "49": 2190.0, + "50": 2352.0, + "51": 2441.0, + "52": 2482.0, + "53": 2916.0, + "54": 2550.0, + "55": 2347.0, + "56": 2765.0, + "57": 2116.0, + "58": 2968.0, + "59": 2810.0, + "60": 2384.0, + "61": 2912.0, + "62": 2554.0, + "63": 2364.0, + "64": 3035.0, + "65": 2648.0, + "66": 2979.0, + "67": 2741.0, + "68": 2799.0, + "69": 3071.0, + "70": 3098.0, + "71": 2950.0, + "72": 2342.0, + "73": 2829.0, + "74": 1840.0, + "75": 2426.0, + "76": 2941.0, + "77": 3245.0, + "78": 3272.0, + "79": 3066.0, + "80": 3221.0, + "81": 3565.0, + "82": 3162.0, + "83": 2876.0, + "84": 3180.0, + "85": 3410.0, + "86": 2778.0, + "87": 3752.0, + "88": 2995.0, + "89": 3264.0, + "90": 2940.0, + "91": 2791.0, + "92": 3118.0, + "93": 2634.0, + "94": 3464.0, + "95": 3344.0, + "96": 3499.0, + "97": 3122.0, + "98": 3568.0, + "99": 3272.0, + "100": 3476.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 733860352.0, + "2": 733860352.0, + "3": 733860352.0, + "4": 733860352.0, + "5": 733860352.0, + "6": 733860352.0, + "7": 733860352.0, + "8": 733860352.0, + "9": 733860352.0, + "10": 733860352.0, + "11": 733860352.0, + "12": 733860352.0, + "13": 733860352.0, + "14": 733860352.0, + "15": 733860352.0, + "16": 733860352.0, + "17": 733860352.0, + "18": 733860352.0, + "19": 733860352.0, + "20": 733860352.0, + "21": 733860352.0, + "22": 733860352.0, + "23": 733860352.0, + "24": 733860352.0, + "25": 733860352.0, + "26": 733860352.0, + "27": 733860352.0, + "28": 733860352.0, + "29": 733860352.0, + "30": 733860352.0, + "31": 733860352.0, + "32": 733860352.0, + "33": 733860352.0, + "34": 733860352.0, + "35": 733860352.0, + "36": 733860352.0, + "37": 733860352.0, + "38": 733860352.0, + "39": 733860352.0, + "40": 733860352.0, + "41": 733860352.0, + "42": 733860352.0, + "43": 733860352.0, + "44": 733860352.0, + "45": 733860352.0, + "46": 733860352.0, + "47": 733860352.0, + "48": 733860352.0, + "49": 733860352.0, + "50": 733860352.0, + "51": 733860352.0, + "52": 733860352.0, + "53": 733860352.0, + "54": 733860352.0, + "55": 733860352.0, + "56": 733860352.0, + "57": 733860352.0, + "58": 733860352.0, + "59": 733860352.0, + "60": 733860352.0, + "61": 733860352.0, + "62": 733860352.0, + "63": 733860352.0, + "64": 733860352.0, + "65": 733860352.0, + "66": 733860352.0, + "67": 733860352.0, + "68": 733860352.0, + "69": 733860352.0, + "70": 733860352.0, + "71": 733860352.0, + "72": 733860352.0, + "73": 733860352.0, + "74": 733860352.0, + "75": 733860352.0, + "76": 733860352.0, + "77": 733860352.0, + "78": 733860352.0, + "79": 733860352.0, + "80": 733860352.0, + "81": 733860352.0, + "82": 733860352.0, + "83": 733860352.0, + "84": 733860352.0, + "85": 733860352.0, + "86": 733860352.0, + "87": 733860352.0, + "88": 733860352.0, + "89": 733860352.0, + "90": 733860352.0, + "91": 733860352.0, + "92": 733860352.0, + "93": 733860352.0, + "94": 733860352.0, + "95": 733860352.0, + "96": 733860352.0, + "97": 733860352.0, + "98": 733860352.0, + "99": 733860352.0, + "100": 733860352.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2367879168.0, + "2": 2651687936.0, + "3": 2651687936.0, + "4": 2651687936.0, + "5": 2651687936.0, + "6": 2651687936.0, + "7": 2651687936.0, + "8": 2651687936.0, + "9": 2651687936.0, + "10": 2651687936.0, + "11": 2651687936.0, + "12": 2651687936.0, + "13": 2651687936.0, + "14": 2651687936.0, + "15": 2651687936.0, + "16": 2651687936.0, + "17": 2651687936.0, + "18": 2651687936.0, + "19": 2651687936.0, + "20": 2651687936.0, + "21": 2651687936.0, + "22": 2651687936.0, + "23": 2651687936.0, + "24": 2651687936.0, + "25": 2651687936.0, + "26": 2651687936.0, + "27": 2651687936.0, + "28": 2651687936.0, + "29": 2651687936.0, + "30": 2651687936.0, + "31": 2651687936.0, + "32": 2651687936.0, + "33": 2651687936.0, + "34": 2651687936.0, + "35": 2651687936.0, + "36": 2651687936.0, + "37": 2651687936.0, + "38": 2651687936.0, + "39": 2651687936.0, + "40": 2651687936.0, + "41": 2651687936.0, + "42": 2651687936.0, + "43": 2651687936.0, + "44": 2651687936.0, + "45": 2651687936.0, + "46": 2651687936.0, + "47": 2651687936.0, + "48": 2651687936.0, + "49": 2651687936.0, + "50": 2651687936.0, + "51": 2651687936.0, + "52": 2651687936.0, + "53": 2651687936.0, + "54": 2651687936.0, + "55": 2651687936.0, + "56": 2651687936.0, + "57": 2651687936.0, + "58": 2651687936.0, + "59": 2651687936.0, + "60": 2651687936.0, + "61": 2651687936.0, + "62": 2651687936.0, + "63": 2651687936.0, + "64": 2651687936.0, + "65": 2651687936.0, + "66": 2651687936.0, + "67": 2651687936.0, + "68": 2651687936.0, + "69": 2651687936.0, + "70": 2651687936.0, + "71": 2651687936.0, + "72": 2651687936.0, + "73": 2651687936.0, + "74": 2651687936.0, + "75": 2651687936.0, + "76": 2651687936.0, + "77": 2651687936.0, + "78": 2651687936.0, + "79": 2651687936.0, + "80": 2651687936.0, + "81": 2651687936.0, + "82": 2651687936.0, + "83": 2651687936.0, + "84": 2651687936.0, + "85": 2651687936.0, + "86": 2651687936.0, + "87": 2651687936.0, + "88": 2651687936.0, + "89": 2651687936.0, + "90": 2651687936.0, + "91": 2651687936.0, + "92": 2651687936.0, + "93": 2651687936.0, + "94": 2651687936.0, + "95": 2651687936.0, + "96": 2651687936.0, + "97": 2651687936.0, + "98": 2651687936.0, + "99": 2651687936.0, + "100": 2651687936.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 12.1008, + "2": 0.16051, + "3": 0.12978, + "4": 0.12855, + "5": 0.12836, + "6": 0.12718, + "7": 0.12817, + "8": 0.12827, + "9": 0.12773, + "10": 0.12934, + "11": 0.1284, + "12": 0.1278, + "13": 0.12824, + "14": 0.12897, + "15": 0.12788, + "16": 0.12662, + "17": 0.12751, + "18": 0.12678, + "19": 0.12784, + "20": 0.12756, + "21": 0.12782, + "22": 0.12765, + "23": 0.12695, + "24": 0.12621, + "25": 0.12639, + "26": 0.12652, + "27": 0.1261, + "28": 0.12599, + "29": 0.12679, + "30": 0.12648, + "31": 0.12791, + "32": 0.1267, + "33": 0.12736, + "34": 0.1275, + "35": 0.12674, + "36": 0.12623, + "37": 0.12561, + "38": 0.12629, + "39": 0.12735, + "40": 0.12739, + "41": 0.12784, + "42": 0.12763, + "43": 0.12841, + "44": 0.12666, + "45": 0.12797, + "46": 0.12722, + "47": 0.12583, + "48": 0.1271, + "49": 0.12675, + "50": 0.12769, + "51": 0.13852, + "52": 0.1338, + "53": 0.1334, + "54": 0.13466, + "55": 0.13471, + "56": 0.13266, + "57": 0.13116, + "58": 0.13405, + "59": 0.13356, + "60": 0.13304, + "61": 0.13328, + "62": 0.13243, + "63": 0.13255, + "64": 0.13344, + "65": 0.13433, + "66": 0.13486, + "67": 0.13338, + "68": 0.13313, + "69": 0.13327, + "70": 0.1324, + "71": 0.13325, + "72": 0.13418, + "73": 0.1341, + "74": 0.1334, + "75": 0.13238, + "76": 0.13198, + "77": 0.13412, + "78": 0.1335, + "79": 0.13208, + "80": 0.13334, + "81": 0.13338, + "82": 0.13187, + "83": 0.13324, + "84": 0.13268, + "85": 0.13362, + "86": 0.13282, + "87": 0.13325, + "88": 0.13348, + "89": 0.13361, + "90": 0.13267, + "91": 0.13322, + "92": 0.13404, + "93": 0.13424, + "94": 0.13249, + "95": 0.1323, + "96": 0.13217, + "97": 0.16026, + "98": 0.13491, + "99": 0.13704, + "100": 0.13716 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts_dgx_a100.json index fbeaf7f4f0d..0cb12854799 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_calculate_per_token_loss/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.82005, "5": 10.85284, "10": 10.78455, "15": 10.79229, "20": 10.69211, "25": 10.52412, "30": 10.34552, "35": 10.26239, "40": 10.07241, "45": 9.81101, "50": 9.88422, "55": 9.86374, "60": 9.47965, "65": 8.93063, "70": 9.71215, "75": 9.40048, "80": 9.39077, "85": 9.60141, "90": 9.80501, "95": 9.50816, "100": 9.3924}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1559.0, "5": 1840.0, "10": 1380.0, "15": 1848.0, "20": 1601.0, "25": 1635.0, "30": 1936.0, "35": 1908.0, "40": 2100.0, "45": 2098.0, "50": 2333.0, "55": 2260.0, "60": 2399.0, "65": 2656.0, "70": 3077.0, "75": 2547.0, "80": 3315.0, "85": 3371.0, "90": 2943.0, "95": 3457.0, "100": 3292.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 732811264.0, "5": 732811264.0, "10": 732811264.0, "15": 732811264.0, "20": 732811264.0, "25": 732811264.0, "30": 732811264.0, "35": 732811264.0, "40": 732811264.0, "45": 732811264.0, "50": 732811264.0, "55": 732811264.0, "60": 732811264.0, "65": 732811264.0, "70": 732811264.0, "75": 732811264.0, "80": 732811264.0, "85": 732811264.0, "90": 732811264.0, "95": 732811264.0, "100": 732811264.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 3838895104.0, "5": 4122703872.0, "10": 4122703872.0, "15": 4122703872.0, "20": 4122703872.0, "25": 4122703872.0, "30": 4122703872.0, "35": 4122703872.0, "40": 4122703872.0, "45": 4122703872.0, "50": 4122703872.0, "55": 4122703872.0, "60": 4122703872.0, "65": 4122703872.0, "70": 4122703872.0, "75": 4122703872.0, "80": 4122703872.0, "85": 4122703872.0, "90": 4122703872.0, "95": 4122703872.0, "100": 4122703872.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 24.14685, "5": 0.1855, "10": 0.18669, "15": 0.18585, "20": 0.18594, "25": 0.18564, "30": 0.18382, "35": 0.18679, "40": 0.1866, "45": 0.18389, "50": 0.18294, "55": 0.17556, "60": 0.17509, "65": 0.17542, "70": 0.17558, "75": 0.176, "80": 0.17523, "85": 0.17384, "90": 0.17335, "95": 0.17222, "100": 0.17356}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81272, + "4": 10.78885, + "5": 10.85169, + "6": 10.87038, + "7": 10.83098, + "8": 10.8343, + "9": 10.83996, + "10": 10.78686, + "11": 10.88025, + "12": 10.85974, + "13": 10.86596, + "14": 10.8782, + "15": 10.79466, + "16": 10.79613, + "17": 10.76887, + "18": 10.81076, + "19": 10.7986, + "20": 10.69061, + "21": 10.67945, + "22": 10.52114, + "23": 10.70755, + "24": 10.57741, + "25": 10.52373, + "26": 10.59597, + "27": 10.58619, + "28": 10.56176, + "29": 10.56945, + "30": 10.34573, + "31": 10.10078, + "32": 10.45392, + "33": 10.4461, + "34": 10.20721, + "35": 10.262, + "36": 10.21312, + "37": 10.32468, + "38": 10.16831, + "39": 10.38374, + "40": 10.07231, + "41": 10.13763, + "42": 10.19765, + "43": 9.81155, + "44": 9.93311, + "45": 9.8104, + "46": 9.80854, + "47": 10.12558, + "48": 9.82105, + "49": 9.50764, + "50": 9.88382, + "51": 9.83549, + "52": 9.72516, + "53": 10.04799, + "54": 9.93011, + "55": 9.8636, + "56": 9.60217, + "57": 9.45187, + "58": 9.8078, + "59": 9.56783, + "60": 9.47966, + "61": 9.67984, + "62": 9.96754, + "63": 9.35113, + "64": 9.75623, + "65": 8.9318, + "66": 9.68107, + "67": 9.35956, + "68": 9.76948, + "69": 9.77492, + "70": 9.71182, + "71": 9.60632, + "72": 9.57129, + "73": 9.48392, + "74": 8.92911, + "75": 9.40028, + "76": 9.07194, + "77": 10.05252, + "78": 9.71494, + "79": 9.35747, + "80": 9.38946, + "81": 9.46791, + "82": 9.68508, + "83": 9.29588, + "84": 9.40522, + "85": 9.60163, + "86": 9.06713, + "87": 9.58402, + "88": 9.73304, + "89": 9.59526, + "90": 9.80555, + "91": 9.32604, + "92": 9.35323, + "93": 9.06915, + "94": 8.82268, + "95": 9.50858, + "96": 9.51584, + "97": 9.2976, + "98": 9.66184, + "99": 8.87662, + "100": 9.39222 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1678.0, + "4": 1709.0, + "5": 1873.0, + "6": 1786.0, + "7": 1813.0, + "8": 1519.0, + "9": 1684.0, + "10": 1417.0, + "11": 1943.0, + "12": 1723.0, + "13": 1939.0, + "14": 1759.0, + "15": 1728.0, + "16": 1773.0, + "17": 1805.0, + "18": 1702.0, + "19": 1803.0, + "20": 1627.0, + "21": 1822.0, + "22": 1748.0, + "23": 1938.0, + "24": 1642.0, + "25": 1696.0, + "26": 1760.0, + "27": 1809.0, + "28": 2025.0, + "29": 1900.0, + "30": 1902.0, + "31": 1645.0, + "32": 1876.0, + "33": 2105.0, + "34": 1881.0, + "35": 1913.0, + "36": 1864.0, + "37": 2322.0, + "38": 2194.0, + "39": 2318.0, + "40": 2010.0, + "41": 2358.0, + "42": 2155.0, + "43": 1980.0, + "44": 2105.0, + "45": 2082.0, + "46": 2221.0, + "47": 2537.0, + "48": 2367.0, + "49": 2190.0, + "50": 2352.0, + "51": 2441.0, + "52": 2482.0, + "53": 2916.0, + "54": 2550.0, + "55": 2347.0, + "56": 2765.0, + "57": 2116.0, + "58": 2968.0, + "59": 2810.0, + "60": 2384.0, + "61": 2912.0, + "62": 2554.0, + "63": 2364.0, + "64": 3035.0, + "65": 2648.0, + "66": 2979.0, + "67": 2741.0, + "68": 2799.0, + "69": 3071.0, + "70": 3098.0, + "71": 2950.0, + "72": 2342.0, + "73": 2829.0, + "74": 1840.0, + "75": 2426.0, + "76": 2941.0, + "77": 3245.0, + "78": 3272.0, + "79": 3066.0, + "80": 3221.0, + "81": 3565.0, + "82": 3162.0, + "83": 2876.0, + "84": 3180.0, + "85": 3410.0, + "86": 2778.0, + "87": 3752.0, + "88": 2995.0, + "89": 3264.0, + "90": 2940.0, + "91": 2791.0, + "92": 3118.0, + "93": 2634.0, + "94": 3464.0, + "95": 3344.0, + "96": 3499.0, + "97": 3122.0, + "98": 3568.0, + "99": 3272.0, + "100": 3476.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 733860352.0, + "2": 733860352.0, + "3": 733860352.0, + "4": 733860352.0, + "5": 733860352.0, + "6": 733860352.0, + "7": 733860352.0, + "8": 733860352.0, + "9": 733860352.0, + "10": 733860352.0, + "11": 733860352.0, + "12": 733860352.0, + "13": 733860352.0, + "14": 733860352.0, + "15": 733860352.0, + "16": 733860352.0, + "17": 733860352.0, + "18": 733860352.0, + "19": 733860352.0, + "20": 733860352.0, + "21": 733860352.0, + "22": 733860352.0, + "23": 733860352.0, + "24": 733860352.0, + "25": 733860352.0, + "26": 733860352.0, + "27": 733860352.0, + "28": 733860352.0, + "29": 733860352.0, + "30": 733860352.0, + "31": 733860352.0, + "32": 733860352.0, + "33": 733860352.0, + "34": 733860352.0, + "35": 733860352.0, + "36": 733860352.0, + "37": 733860352.0, + "38": 733860352.0, + "39": 733860352.0, + "40": 733860352.0, + "41": 733860352.0, + "42": 733860352.0, + "43": 733860352.0, + "44": 733860352.0, + "45": 733860352.0, + "46": 733860352.0, + "47": 733860352.0, + "48": 733860352.0, + "49": 733860352.0, + "50": 733860352.0, + "51": 733860352.0, + "52": 733860352.0, + "53": 733860352.0, + "54": 733860352.0, + "55": 733860352.0, + "56": 733860352.0, + "57": 733860352.0, + "58": 733860352.0, + "59": 733860352.0, + "60": 733860352.0, + "61": 733860352.0, + "62": 733860352.0, + "63": 733860352.0, + "64": 733860352.0, + "65": 733860352.0, + "66": 733860352.0, + "67": 733860352.0, + "68": 733860352.0, + "69": 733860352.0, + "70": 733860352.0, + "71": 733860352.0, + "72": 733860352.0, + "73": 733860352.0, + "74": 733860352.0, + "75": 733860352.0, + "76": 733860352.0, + "77": 733860352.0, + "78": 733860352.0, + "79": 733860352.0, + "80": 733860352.0, + "81": 733860352.0, + "82": 733860352.0, + "83": 733860352.0, + "84": 733860352.0, + "85": 733860352.0, + "86": 733860352.0, + "87": 733860352.0, + "88": 733860352.0, + "89": 733860352.0, + "90": 733860352.0, + "91": 733860352.0, + "92": 733860352.0, + "93": 733860352.0, + "94": 733860352.0, + "95": 733860352.0, + "96": 733860352.0, + "97": 733860352.0, + "98": 733860352.0, + "99": 733860352.0, + "100": 733860352.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2367879168.0, + "2": 2651687936.0, + "3": 2651687936.0, + "4": 2651687936.0, + "5": 2651687936.0, + "6": 2651687936.0, + "7": 2651687936.0, + "8": 2651687936.0, + "9": 2651687936.0, + "10": 2651687936.0, + "11": 2651687936.0, + "12": 2651687936.0, + "13": 2651687936.0, + "14": 2651687936.0, + "15": 2651687936.0, + "16": 2651687936.0, + "17": 2651687936.0, + "18": 2651687936.0, + "19": 2651687936.0, + "20": 2651687936.0, + "21": 2651687936.0, + "22": 2651687936.0, + "23": 2651687936.0, + "24": 2651687936.0, + "25": 2651687936.0, + "26": 2651687936.0, + "27": 2651687936.0, + "28": 2651687936.0, + "29": 2651687936.0, + "30": 2651687936.0, + "31": 2651687936.0, + "32": 2651687936.0, + "33": 2651687936.0, + "34": 2651687936.0, + "35": 2651687936.0, + "36": 2651687936.0, + "37": 2651687936.0, + "38": 2651687936.0, + "39": 2651687936.0, + "40": 2651687936.0, + "41": 2651687936.0, + "42": 2651687936.0, + "43": 2651687936.0, + "44": 2651687936.0, + "45": 2651687936.0, + "46": 2651687936.0, + "47": 2651687936.0, + "48": 2651687936.0, + "49": 2651687936.0, + "50": 2651687936.0, + "51": 2651687936.0, + "52": 2651687936.0, + "53": 2651687936.0, + "54": 2651687936.0, + "55": 2651687936.0, + "56": 2651687936.0, + "57": 2651687936.0, + "58": 2651687936.0, + "59": 2651687936.0, + "60": 2651687936.0, + "61": 2651687936.0, + "62": 2651687936.0, + "63": 2651687936.0, + "64": 2651687936.0, + "65": 2651687936.0, + "66": 2651687936.0, + "67": 2651687936.0, + "68": 2651687936.0, + "69": 2651687936.0, + "70": 2651687936.0, + "71": 2651687936.0, + "72": 2651687936.0, + "73": 2651687936.0, + "74": 2651687936.0, + "75": 2651687936.0, + "76": 2651687936.0, + "77": 2651687936.0, + "78": 2651687936.0, + "79": 2651687936.0, + "80": 2651687936.0, + "81": 2651687936.0, + "82": 2651687936.0, + "83": 2651687936.0, + "84": 2651687936.0, + "85": 2651687936.0, + "86": 2651687936.0, + "87": 2651687936.0, + "88": 2651687936.0, + "89": 2651687936.0, + "90": 2651687936.0, + "91": 2651687936.0, + "92": 2651687936.0, + "93": 2651687936.0, + "94": 2651687936.0, + "95": 2651687936.0, + "96": 2651687936.0, + "97": 2651687936.0, + "98": 2651687936.0, + "99": 2651687936.0, + "100": 2651687936.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 12.6402, + "2": 0.15932, + "3": 0.13183, + "4": 0.12969, + "5": 0.12913, + "6": 0.12942, + "7": 0.12823, + "8": 0.13014, + "9": 0.1305, + "10": 0.13004, + "11": 0.12983, + "12": 0.12943, + "13": 0.12925, + "14": 0.13022, + "15": 0.12947, + "16": 0.12988, + "17": 0.12984, + "18": 0.12989, + "19": 0.12987, + "20": 0.12935, + "21": 0.12974, + "22": 0.12965, + "23": 0.12983, + "24": 0.13037, + "25": 0.1293, + "26": 0.12914, + "27": 0.12908, + "28": 0.12909, + "29": 0.13186, + "30": 0.13433, + "31": 0.13401, + "32": 0.12902, + "33": 0.12808, + "34": 0.12907, + "35": 0.12884, + "36": 0.12913, + "37": 0.12932, + "38": 0.12992, + "39": 0.13072, + "40": 0.13131, + "41": 0.13172, + "42": 0.13072, + "43": 0.13259, + "44": 0.13124, + "45": 0.13129, + "46": 0.1291, + "47": 0.1308, + "48": 0.1301, + "49": 0.12906, + "50": 0.12828, + "51": 0.14265, + "52": 0.12979, + "53": 0.126, + "54": 0.12545, + "55": 0.12582, + "56": 0.12573, + "57": 0.12516, + "58": 0.1252, + "59": 0.12598, + "60": 0.12562, + "61": 0.12544, + "62": 0.12472, + "63": 0.12548, + "64": 0.12537, + "65": 0.12534, + "66": 0.12474, + "67": 0.12528, + "68": 0.12481, + "69": 0.12531, + "70": 0.12547, + "71": 0.12492, + "72": 0.12533, + "73": 0.12583, + "74": 0.1253, + "75": 0.12453, + "76": 0.12486, + "77": 0.12501, + "78": 0.12491, + "79": 0.12247, + "80": 0.1223, + "81": 0.1243, + "82": 0.12257, + "83": 0.12179, + "84": 0.12254, + "85": 0.12231, + "86": 0.12263, + "87": 0.12152, + "88": 0.12188, + "89": 0.1228, + "90": 0.12133, + "91": 0.1216, + "92": 0.12133, + "93": 0.12135, + "94": 0.12216, + "95": 0.12141, + "96": 0.12205, + "97": 0.12356, + "98": 0.12174, + "99": 0.12252, + "100": 0.1222 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json new file mode 100644 index 00000000000..9798744d286 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81272, + "4": 10.78885, + "5": 10.85169, + "6": 10.87038, + "7": 10.83098, + "8": 10.8343, + "9": 10.83996, + "10": 10.78686, + "11": 10.88025, + "12": 10.85974, + "13": 10.86596, + "14": 10.8782, + "15": 10.79466, + "16": 10.79611, + "17": 10.76888, + "18": 10.81074, + "19": 10.79865, + "20": 10.69058, + "21": 10.67945, + "22": 10.52113, + "23": 10.70755, + "24": 10.5774, + "25": 10.52375, + "26": 10.59601, + "27": 10.58621, + "28": 10.56178, + "29": 10.56944, + "30": 10.34575, + "31": 10.10079, + "32": 10.45392, + "33": 10.4461, + "34": 10.20725, + "35": 10.26198, + "36": 10.21312, + "37": 10.32467, + "38": 10.16829, + "39": 10.38371, + "40": 10.07233, + "41": 10.13762, + "42": 10.19766, + "43": 9.81156, + "44": 9.93307, + "45": 9.81043, + "46": 9.80854, + "47": 10.12558, + "48": 9.82104, + "49": 9.50761, + "50": 9.8838, + "51": 9.83548, + "52": 9.72518, + "53": 10.04799, + "54": 9.93007, + "55": 9.86362, + "56": 9.60218, + "57": 9.45185, + "58": 9.80781, + "59": 9.56786, + "60": 9.47966, + "61": 9.67985, + "62": 9.9675, + "63": 9.35111, + "64": 9.75622, + "65": 8.93178, + "66": 9.68108, + "67": 9.35959, + "68": 9.76948, + "69": 9.77494, + "70": 9.71179, + "71": 9.60631, + "72": 9.57134, + "73": 9.48393, + "74": 8.92913, + "75": 9.4003, + "76": 9.07189, + "77": 10.05248, + "78": 9.71492, + "79": 9.35744, + "80": 9.38946, + "81": 9.46798, + "82": 9.68509, + "83": 9.29591, + "84": 9.40521, + "85": 9.60161, + "86": 9.06713, + "87": 9.58406, + "88": 9.73301, + "89": 9.59528, + "90": 9.80559, + "91": 9.32603, + "92": 9.3532, + "93": 9.06916, + "94": 8.82266, + "95": 9.50858, + "96": 9.51587, + "97": 9.29763, + "98": 9.66187, + "99": 8.87661, + "100": 9.39222 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1678.0, + "4": 1709.0, + "5": 1873.0, + "6": 1786.0, + "7": 1813.0, + "8": 1519.0, + "9": 1684.0, + "10": 1417.0, + "11": 1943.0, + "12": 1723.0, + "13": 1939.0, + "14": 1759.0, + "15": 1772.0, + "16": 1750.0, + "17": 1812.0, + "18": 1646.0, + "19": 1818.0, + "20": 1655.0, + "21": 1879.0, + "22": 1759.0, + "23": 1944.0, + "24": 1650.0, + "25": 1708.0, + "26": 1750.0, + "27": 1815.0, + "28": 2091.0, + "29": 1958.0, + "30": 1934.0, + "31": 1588.0, + "32": 1891.0, + "33": 2099.0, + "34": 1765.0, + "35": 1894.0, + "36": 1947.0, + "37": 2279.0, + "38": 2134.0, + "39": 2350.0, + "40": 2091.0, + "41": 2318.0, + "42": 2137.0, + "43": 1849.0, + "44": 2109.0, + "45": 2020.0, + "46": 2263.0, + "47": 2593.0, + "48": 2323.0, + "49": 2177.0, + "50": 2363.0, + "51": 2554.0, + "52": 2619.0, + "53": 2863.0, + "54": 2688.0, + "55": 2406.0, + "56": 2649.0, + "57": 2175.0, + "58": 2856.0, + "59": 2775.0, + "60": 2307.0, + "61": 2914.0, + "62": 2644.0, + "63": 2362.0, + "64": 2946.0, + "65": 2578.0, + "66": 3122.0, + "67": 2697.0, + "68": 2687.0, + "69": 2956.0, + "70": 3157.0, + "71": 3028.0, + "72": 2294.0, + "73": 2876.0, + "74": 1887.0, + "75": 2523.0, + "76": 2937.0, + "77": 3162.0, + "78": 3318.0, + "79": 3074.0, + "80": 3213.0, + "81": 3664.0, + "82": 3238.0, + "83": 2838.0, + "84": 3251.0, + "85": 3275.0, + "86": 2748.0, + "87": 3758.0, + "88": 3023.0, + "89": 3267.0, + "90": 3085.0, + "91": 2812.0, + "92": 3116.0, + "93": 2665.0, + "94": 3380.0, + "95": 3236.0, + "96": 3462.0, + "97": 3002.0, + "98": 3545.0, + "99": 3265.0, + "100": 3458.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 520868352.0, + "2": 520868352.0, + "3": 520868352.0, + "4": 520868352.0, + "5": 520868352.0, + "6": 520868352.0, + "7": 520868352.0, + "8": 520868352.0, + "9": 520868352.0, + "10": 520868352.0, + "11": 520868352.0, + "12": 520868352.0, + "13": 520868352.0, + "14": 520868352.0, + "15": 520868352.0, + "16": 520868352.0, + "17": 520868352.0, + "18": 520868352.0, + "19": 520868352.0, + "20": 520868352.0, + "21": 520868352.0, + "22": 520868352.0, + "23": 520868352.0, + "24": 520868352.0, + "25": 520868352.0, + "26": 520868352.0, + "27": 520868352.0, + "28": 520868352.0, + "29": 520868352.0, + "30": 520868352.0, + "31": 520868352.0, + "32": 520868352.0, + "33": 520868352.0, + "34": 520868352.0, + "35": 520868352.0, + "36": 520868352.0, + "37": 520868352.0, + "38": 520868352.0, + "39": 520868352.0, + "40": 520868352.0, + "41": 520868352.0, + "42": 520868352.0, + "43": 520868352.0, + "44": 520868352.0, + "45": 520868352.0, + "46": 520868352.0, + "47": 520868352.0, + "48": 520868352.0, + "49": 520868352.0, + "50": 520868352.0, + "51": 520868352.0, + "52": 520868352.0, + "53": 520868352.0, + "54": 520868352.0, + "55": 520868352.0, + "56": 520868352.0, + "57": 520868352.0, + "58": 520868352.0, + "59": 520868352.0, + "60": 520868352.0, + "61": 520868352.0, + "62": 520868352.0, + "63": 520868352.0, + "64": 520868352.0, + "65": 520868352.0, + "66": 520868352.0, + "67": 520868352.0, + "68": 520868352.0, + "69": 520868352.0, + "70": 520868352.0, + "71": 520868352.0, + "72": 520868352.0, + "73": 520868352.0, + "74": 520868352.0, + "75": 520868352.0, + "76": 520868352.0, + "77": 520868352.0, + "78": 520868352.0, + "79": 520868352.0, + "80": 520868352.0, + "81": 520868352.0, + "82": 520868352.0, + "83": 520868352.0, + "84": 520868352.0, + "85": 520868352.0, + "86": 520868352.0, + "87": 520868352.0, + "88": 520868352.0, + "89": 520868352.0, + "90": 520868352.0, + "91": 520868352.0, + "92": 520868352.0, + "93": 520868352.0, + "94": 520868352.0, + "95": 520868352.0, + "96": 520868352.0, + "97": 520868352.0, + "98": 520868352.0, + "99": 520868352.0, + "100": 520868352.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2297829376.0, + "2": 2439744512.0, + "3": 2439744512.0, + "4": 2439744512.0, + "5": 2439744512.0, + "6": 2439744512.0, + "7": 2439744512.0, + "8": 2439744512.0, + "9": 2439744512.0, + "10": 2439744512.0, + "11": 2439744512.0, + "12": 2439744512.0, + "13": 2439744512.0, + "14": 2439744512.0, + "15": 2439744512.0, + "16": 2439744512.0, + "17": 2439744512.0, + "18": 2439744512.0, + "19": 2439744512.0, + "20": 2439744512.0, + "21": 2439744512.0, + "22": 2439744512.0, + "23": 2439744512.0, + "24": 2439744512.0, + "25": 2439744512.0, + "26": 2439744512.0, + "27": 2439744512.0, + "28": 2439744512.0, + "29": 2439744512.0, + "30": 2439744512.0, + "31": 2439744512.0, + "32": 2439744512.0, + "33": 2439744512.0, + "34": 2439744512.0, + "35": 2439744512.0, + "36": 2439744512.0, + "37": 2439744512.0, + "38": 2439744512.0, + "39": 2439744512.0, + "40": 2439744512.0, + "41": 2439744512.0, + "42": 2439744512.0, + "43": 2439744512.0, + "44": 2439744512.0, + "45": 2439744512.0, + "46": 2439744512.0, + "47": 2439744512.0, + "48": 2439744512.0, + "49": 2439744512.0, + "50": 2439744512.0, + "51": 2439744512.0, + "52": 2439744512.0, + "53": 2439744512.0, + "54": 2439744512.0, + "55": 2439744512.0, + "56": 2439744512.0, + "57": 2439744512.0, + "58": 2439744512.0, + "59": 2439744512.0, + "60": 2439744512.0, + "61": 2439744512.0, + "62": 2439744512.0, + "63": 2439744512.0, + "64": 2439744512.0, + "65": 2439744512.0, + "66": 2439744512.0, + "67": 2439744512.0, + "68": 2439744512.0, + "69": 2439744512.0, + "70": 2439744512.0, + "71": 2439744512.0, + "72": 2439744512.0, + "73": 2439744512.0, + "74": 2439744512.0, + "75": 2439744512.0, + "76": 2439744512.0, + "77": 2439744512.0, + "78": 2439744512.0, + "79": 2439744512.0, + "80": 2439744512.0, + "81": 2439744512.0, + "82": 2439744512.0, + "83": 2439744512.0, + "84": 2439744512.0, + "85": 2439744512.0, + "86": 2439744512.0, + "87": 2439744512.0, + "88": 2439744512.0, + "89": 2439744512.0, + "90": 2439744512.0, + "91": 2439744512.0, + "92": 2439744512.0, + "93": 2439744512.0, + "94": 2439744512.0, + "95": 2439744512.0, + "96": 2439744512.0, + "97": 2439744512.0, + "98": 2439744512.0, + "99": 2439744512.0, + "100": 2439744512.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 13.16911, + "2": 0.18867, + "3": 0.13882, + "4": 0.13669, + "5": 0.13645, + "6": 0.13563, + "7": 0.13741, + "8": 0.13506, + "9": 0.13477, + "10": 0.13539, + "11": 0.13546, + "12": 0.13513, + "13": 0.13494, + "14": 0.13581, + "15": 0.13521, + "16": 0.13419, + "17": 0.14048, + "18": 0.13853, + "19": 0.13344, + "20": 0.13345, + "21": 0.13394, + "22": 0.1343, + "23": 0.13285, + "24": 0.13319, + "25": 0.13222, + "26": 0.13344, + "27": 0.13252, + "28": 0.13239, + "29": 0.1336, + "30": 0.13332, + "31": 0.13361, + "32": 0.13239, + "33": 0.13272, + "34": 0.13285, + "35": 0.21759, + "36": 0.1331, + "37": 0.1319, + "38": 0.13293, + "39": 0.13316, + "40": 0.13306, + "41": 0.13419, + "42": 0.13323, + "43": 0.13347, + "44": 0.13313, + "45": 0.13281, + "46": 0.13654, + "47": 0.13861, + "48": 0.14195, + "49": 0.14972, + "50": 0.14396, + "51": 0.1402, + "52": 0.13309, + "53": 0.1319, + "54": 0.13165, + "55": 0.1313, + "56": 0.13223, + "57": 0.13257, + "58": 0.13107, + "59": 0.13218, + "60": 0.13223, + "61": 0.13169, + "62": 0.13257, + "63": 0.13313, + "64": 0.13312, + "65": 0.1329, + "66": 0.13333, + "67": 0.13273, + "68": 0.13284, + "69": 0.1315, + "70": 0.13199, + "71": 0.13227, + "72": 0.13324, + "73": 0.13323, + "74": 0.13184, + "75": 0.13306, + "76": 0.13246, + "77": 0.13205, + "78": 0.1314, + "79": 0.13214, + "80": 0.13251, + "81": 0.1324, + "82": 0.13223, + "83": 0.133, + "84": 0.13175, + "85": 0.1338, + "86": 0.13446, + "87": 0.13241, + "88": 0.13183, + "89": 0.13223, + "90": 0.13104, + "91": 0.13159, + "92": 0.13112, + "93": 0.13189, + "94": 0.13213, + "95": 0.13312, + "96": 0.13243, + "97": 0.21757, + "98": 0.1322, + "99": 0.13344, + "100": 0.13353 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json index 85ab75a97bf..5d20ab395ec 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.82005, "5": 10.85284, "10": 10.78455, "15": 10.79229, "20": 10.69212, "25": 10.52413, "30": 10.34552, "35": 10.26241, "40": 10.07236, "45": 9.81098, "50": 9.88418, "55": 9.86374, "60": 9.47963, "65": 8.93065, "70": 9.71218, "75": 9.4005, "80": 9.39078, "85": 9.60138, "90": 9.80502, "95": 9.50821, "100": 9.3924}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1559.0, "5": 1840.0, "10": 1380.0, "15": 1848.0, "20": 1621.0, "25": 1689.0, "30": 1907.0, "35": 1922.0, "40": 2045.0, "45": 2097.0, "50": 2368.0, "55": 2383.0, "60": 2509.0, "65": 2628.0, "70": 3129.0, "75": 2552.0, "80": 3279.0, "85": 3344.0, "90": 2980.0, "95": 3324.0, "100": 3467.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 522989568.0, "5": 522989568.0, "10": 522989568.0, "15": 522989568.0, "20": 522989568.0, "25": 522989568.0, "30": 522989568.0, "35": 522989568.0, "40": 522989568.0, "45": 522989568.0, "50": 522989568.0, "55": 522989568.0, "60": 522989568.0, "65": 522989568.0, "70": 522989568.0, "75": 522989568.0, "80": 522989568.0, "85": 522989568.0, "90": 522989568.0, "95": 522989568.0, "100": 522989568.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 3768872960.0, "5": 3911833600.0, "10": 3911833600.0, "15": 3911833600.0, "20": 3911833600.0, "25": 3911833600.0, "30": 3911833600.0, "35": 3911833600.0, "40": 3911833600.0, "45": 3911833600.0, "50": 3911833600.0, "55": 3911833600.0, "60": 3911833600.0, "65": 3911833600.0, "70": 3911833600.0, "75": 3911833600.0, "80": 3911833600.0, "85": 3911833600.0, "90": 3911833600.0, "95": 3911833600.0, "100": 3911833600.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 18.37086, "5": 0.17677, "10": 0.17771, "15": 0.1763, "20": 0.17346, "25": 0.17343, "30": 0.17441, "35": 0.17427, "40": 0.17562, "45": 0.1738, "50": 0.17384, "55": 0.17214, "60": 0.17159, "65": 0.17227, "70": 0.17173, "75": 0.17264, "80": 0.1723, "85": 0.1716, "90": 0.17085, "95": 0.17315, "100": 0.1716}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81272, + "4": 10.78885, + "5": 10.85169, + "6": 10.87038, + "7": 10.83098, + "8": 10.8343, + "9": 10.83996, + "10": 10.78686, + "11": 10.88025, + "12": 10.85974, + "13": 10.86596, + "14": 10.8782, + "15": 10.79466, + "16": 10.79611, + "17": 10.76888, + "18": 10.81074, + "19": 10.79865, + "20": 10.69058, + "21": 10.67945, + "22": 10.52113, + "23": 10.70755, + "24": 10.5774, + "25": 10.52375, + "26": 10.59601, + "27": 10.58621, + "28": 10.56178, + "29": 10.56944, + "30": 10.34575, + "31": 10.10079, + "32": 10.45392, + "33": 10.4461, + "34": 10.20725, + "35": 10.26198, + "36": 10.21312, + "37": 10.32467, + "38": 10.16829, + "39": 10.38371, + "40": 10.07233, + "41": 10.13762, + "42": 10.19766, + "43": 9.81156, + "44": 9.93307, + "45": 9.81043, + "46": 9.80854, + "47": 10.12558, + "48": 9.82104, + "49": 9.50761, + "50": 9.8838, + "51": 9.83548, + "52": 9.72518, + "53": 10.04799, + "54": 9.93007, + "55": 9.86362, + "56": 9.60218, + "57": 9.45185, + "58": 9.80781, + "59": 9.56786, + "60": 9.47966, + "61": 9.67985, + "62": 9.9675, + "63": 9.35111, + "64": 9.75622, + "65": 8.93178, + "66": 9.68108, + "67": 9.35959, + "68": 9.76948, + "69": 9.77494, + "70": 9.71179, + "71": 9.60631, + "72": 9.57134, + "73": 9.48393, + "74": 8.92913, + "75": 9.4003, + "76": 9.07189, + "77": 10.05248, + "78": 9.71492, + "79": 9.35744, + "80": 9.38946, + "81": 9.46798, + "82": 9.68509, + "83": 9.29591, + "84": 9.40521, + "85": 9.60161, + "86": 9.06713, + "87": 9.58406, + "88": 9.73301, + "89": 9.59528, + "90": 9.80559, + "91": 9.32603, + "92": 9.3532, + "93": 9.06916, + "94": 8.82266, + "95": 9.50858, + "96": 9.51587, + "97": 9.29763, + "98": 9.66187, + "99": 8.87661, + "100": 9.39222 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1678.0, + "4": 1709.0, + "5": 1873.0, + "6": 1786.0, + "7": 1813.0, + "8": 1519.0, + "9": 1684.0, + "10": 1417.0, + "11": 1943.0, + "12": 1723.0, + "13": 1939.0, + "14": 1759.0, + "15": 1772.0, + "16": 1750.0, + "17": 1812.0, + "18": 1646.0, + "19": 1818.0, + "20": 1655.0, + "21": 1879.0, + "22": 1759.0, + "23": 1944.0, + "24": 1650.0, + "25": 1708.0, + "26": 1750.0, + "27": 1815.0, + "28": 2091.0, + "29": 1958.0, + "30": 1934.0, + "31": 1588.0, + "32": 1891.0, + "33": 2099.0, + "34": 1765.0, + "35": 1894.0, + "36": 1947.0, + "37": 2279.0, + "38": 2134.0, + "39": 2350.0, + "40": 2091.0, + "41": 2318.0, + "42": 2137.0, + "43": 1849.0, + "44": 2109.0, + "45": 2020.0, + "46": 2263.0, + "47": 2593.0, + "48": 2323.0, + "49": 2177.0, + "50": 2363.0, + "51": 2554.0, + "52": 2619.0, + "53": 2863.0, + "54": 2688.0, + "55": 2406.0, + "56": 2649.0, + "57": 2175.0, + "58": 2856.0, + "59": 2775.0, + "60": 2307.0, + "61": 2914.0, + "62": 2644.0, + "63": 2362.0, + "64": 2946.0, + "65": 2578.0, + "66": 3122.0, + "67": 2697.0, + "68": 2687.0, + "69": 2956.0, + "70": 3157.0, + "71": 3028.0, + "72": 2294.0, + "73": 2876.0, + "74": 1887.0, + "75": 2523.0, + "76": 2937.0, + "77": 3162.0, + "78": 3318.0, + "79": 3074.0, + "80": 3213.0, + "81": 3664.0, + "82": 3238.0, + "83": 2838.0, + "84": 3251.0, + "85": 3275.0, + "86": 2748.0, + "87": 3758.0, + "88": 3023.0, + "89": 3267.0, + "90": 3085.0, + "91": 2812.0, + "92": 3116.0, + "93": 2665.0, + "94": 3380.0, + "95": 3236.0, + "96": 3462.0, + "97": 3002.0, + "98": 3545.0, + "99": 3265.0, + "100": 3458.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 521400832.0, + "2": 521400832.0, + "3": 521400832.0, + "4": 521400832.0, + "5": 521400832.0, + "6": 521400832.0, + "7": 521400832.0, + "8": 521400832.0, + "9": 521400832.0, + "10": 521400832.0, + "11": 521400832.0, + "12": 521400832.0, + "13": 521400832.0, + "14": 521400832.0, + "15": 521400832.0, + "16": 521400832.0, + "17": 521400832.0, + "18": 521400832.0, + "19": 521400832.0, + "20": 521400832.0, + "21": 521400832.0, + "22": 521400832.0, + "23": 521400832.0, + "24": 521400832.0, + "25": 521400832.0, + "26": 521400832.0, + "27": 521400832.0, + "28": 521400832.0, + "29": 521400832.0, + "30": 521400832.0, + "31": 521400832.0, + "32": 521400832.0, + "33": 521400832.0, + "34": 521400832.0, + "35": 521400832.0, + "36": 521400832.0, + "37": 521400832.0, + "38": 521400832.0, + "39": 521400832.0, + "40": 521400832.0, + "41": 521400832.0, + "42": 521400832.0, + "43": 521400832.0, + "44": 521400832.0, + "45": 521400832.0, + "46": 521400832.0, + "47": 521400832.0, + "48": 521400832.0, + "49": 521400832.0, + "50": 521400832.0, + "51": 521400832.0, + "52": 521400832.0, + "53": 521400832.0, + "54": 521400832.0, + "55": 521400832.0, + "56": 521400832.0, + "57": 521400832.0, + "58": 521400832.0, + "59": 521400832.0, + "60": 521400832.0, + "61": 521400832.0, + "62": 521400832.0, + "63": 521400832.0, + "64": 521400832.0, + "65": 521400832.0, + "66": 521400832.0, + "67": 521400832.0, + "68": 521400832.0, + "69": 521400832.0, + "70": 521400832.0, + "71": 521400832.0, + "72": 521400832.0, + "73": 521400832.0, + "74": 521400832.0, + "75": 521400832.0, + "76": 521400832.0, + "77": 521400832.0, + "78": 521400832.0, + "79": 521400832.0, + "80": 521400832.0, + "81": 521400832.0, + "82": 521400832.0, + "83": 521400832.0, + "84": 521400832.0, + "85": 521400832.0, + "86": 521400832.0, + "87": 521400832.0, + "88": 521400832.0, + "89": 521400832.0, + "90": 521400832.0, + "91": 521400832.0, + "92": 521400832.0, + "93": 521400832.0, + "94": 521400832.0, + "95": 521400832.0, + "96": 521400832.0, + "97": 521400832.0, + "98": 521400832.0, + "99": 521400832.0, + "100": 521400832.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2297829376.0, + "2": 2439228416.0, + "3": 2439228416.0, + "4": 2439228416.0, + "5": 2439228416.0, + "6": 2439228416.0, + "7": 2439228416.0, + "8": 2439228416.0, + "9": 2439228416.0, + "10": 2439228416.0, + "11": 2439228416.0, + "12": 2439228416.0, + "13": 2439228416.0, + "14": 2439228416.0, + "15": 2439228416.0, + "16": 2439228416.0, + "17": 2439228416.0, + "18": 2439228416.0, + "19": 2439228416.0, + "20": 2439228416.0, + "21": 2439228416.0, + "22": 2439228416.0, + "23": 2439228416.0, + "24": 2439228416.0, + "25": 2439228416.0, + "26": 2439228416.0, + "27": 2439228416.0, + "28": 2439228416.0, + "29": 2439228416.0, + "30": 2439228416.0, + "31": 2439228416.0, + "32": 2439228416.0, + "33": 2439228416.0, + "34": 2439228416.0, + "35": 2439228416.0, + "36": 2439228416.0, + "37": 2439228416.0, + "38": 2439228416.0, + "39": 2439228416.0, + "40": 2439228416.0, + "41": 2439228416.0, + "42": 2439228416.0, + "43": 2439228416.0, + "44": 2439228416.0, + "45": 2439228416.0, + "46": 2439228416.0, + "47": 2439228416.0, + "48": 2439228416.0, + "49": 2439228416.0, + "50": 2439228416.0, + "51": 2439228416.0, + "52": 2439228416.0, + "53": 2439228416.0, + "54": 2439228416.0, + "55": 2439228416.0, + "56": 2439228416.0, + "57": 2439228416.0, + "58": 2439228416.0, + "59": 2439228416.0, + "60": 2439228416.0, + "61": 2439228416.0, + "62": 2439228416.0, + "63": 2439228416.0, + "64": 2439228416.0, + "65": 2439228416.0, + "66": 2439228416.0, + "67": 2439228416.0, + "68": 2439228416.0, + "69": 2439228416.0, + "70": 2439228416.0, + "71": 2439228416.0, + "72": 2439228416.0, + "73": 2439228416.0, + "74": 2439228416.0, + "75": 2439228416.0, + "76": 2439228416.0, + "77": 2439228416.0, + "78": 2439228416.0, + "79": 2439228416.0, + "80": 2439228416.0, + "81": 2439228416.0, + "82": 2439228416.0, + "83": 2439228416.0, + "84": 2439228416.0, + "85": 2439228416.0, + "86": 2439228416.0, + "87": 2439228416.0, + "88": 2439228416.0, + "89": 2439228416.0, + "90": 2439228416.0, + "91": 2439228416.0, + "92": 2439228416.0, + "93": 2439228416.0, + "94": 2439228416.0, + "95": 2439228416.0, + "96": 2439228416.0, + "97": 2439228416.0, + "98": 2439228416.0, + "99": 2439228416.0, + "100": 2439228416.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 9.8604, + "2": 0.16953, + "3": 0.13987, + "4": 0.13824, + "5": 0.13775, + "6": 0.13549, + "7": 0.13611, + "8": 0.13584, + "9": 0.13626, + "10": 0.13922, + "11": 0.13526, + "12": 0.13455, + "13": 0.13222, + "14": 0.13324, + "15": 0.1325, + "16": 0.13211, + "17": 0.13198, + "18": 0.13145, + "19": 0.13207, + "20": 0.13182, + "21": 0.13297, + "22": 0.1322, + "23": 0.13275, + "24": 0.1319, + "25": 0.13822, + "26": 0.13214, + "27": 0.13169, + "28": 0.13196, + "29": 0.13229, + "30": 0.13285, + "31": 0.13112, + "32": 0.13222, + "33": 0.13056, + "34": 0.13076, + "35": 0.13218, + "36": 0.13126, + "37": 0.13091, + "38": 0.13048, + "39": 0.13082, + "40": 0.1308, + "41": 0.13202, + "42": 0.1314, + "43": 0.13222, + "44": 0.13074, + "45": 0.13237, + "46": 0.13272, + "47": 0.13239, + "48": 0.13266, + "49": 0.13226, + "50": 0.13164, + "51": 0.13425, + "52": 0.13044, + "53": 0.13037, + "54": 0.13007, + "55": 0.1301, + "56": 0.13001, + "57": 0.13054, + "58": 0.12972, + "59": 0.13049, + "60": 0.13042, + "61": 0.12903, + "62": 0.13042, + "63": 0.13104, + "64": 0.13008, + "65": 0.13158, + "66": 0.13091, + "67": 0.13089, + "68": 0.13084, + "69": 0.12903, + "70": 0.13015, + "71": 0.12957, + "72": 0.12997, + "73": 0.13025, + "74": 0.12989, + "75": 0.13018, + "76": 0.12962, + "77": 0.13065, + "78": 0.12915, + "79": 0.13007, + "80": 0.12972, + "81": 0.1301, + "82": 0.12927, + "83": 0.1302, + "84": 0.12991, + "85": 0.13129, + "86": 0.13063, + "87": 0.13028, + "88": 0.1305, + "89": 0.13046, + "90": 0.12991, + "91": 0.13058, + "92": 0.13044, + "93": 0.13009, + "94": 0.1306, + "95": 0.13082, + "96": 0.13068, + "97": 0.13403, + "98": 0.13199, + "99": 0.13191, + "100": 0.13014 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json new file mode 100644 index 00000000000..0532ff11573 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81272, + "4": 10.78885, + "5": 10.85169, + "6": 10.87038, + "7": 10.83098, + "8": 10.8343, + "9": 10.83996, + "10": 10.78686, + "11": 10.88025, + "12": 10.85974, + "13": 10.86596, + "14": 10.8782, + "15": 10.79466, + "16": 10.79611, + "17": 10.76888, + "18": 10.81074, + "19": 10.79865, + "20": 10.69058, + "21": 10.67945, + "22": 10.52113, + "23": 10.70755, + "24": 10.5774, + "25": 10.52375, + "26": 10.59601, + "27": 10.58621, + "28": 10.56178, + "29": 10.56944, + "30": 10.34575, + "31": 10.10079, + "32": 10.45392, + "33": 10.4461, + "34": 10.20725, + "35": 10.26198, + "36": 10.21312, + "37": 10.32467, + "38": 10.16829, + "39": 10.38371, + "40": 10.07233, + "41": 10.13762, + "42": 10.19766, + "43": 9.81156, + "44": 9.93307, + "45": 9.81043, + "46": 9.80854, + "47": 10.12558, + "48": 9.82104, + "49": 9.50761, + "50": 9.8838, + "51": 9.83548, + "52": 9.72518, + "53": 10.04799, + "54": 9.93007, + "55": 9.86362, + "56": 9.60218, + "57": 9.45185, + "58": 9.80781, + "59": 9.56786, + "60": 9.47966, + "61": 9.67985, + "62": 9.9675, + "63": 9.35111, + "64": 9.75622, + "65": 8.93178, + "66": 9.68108, + "67": 9.35959, + "68": 9.76948, + "69": 9.77494, + "70": 9.71179, + "71": 9.60631, + "72": 9.57134, + "73": 9.48393, + "74": 8.92913, + "75": 9.4003, + "76": 9.07189, + "77": 10.05248, + "78": 9.71492, + "79": 9.35744, + "80": 9.38946, + "81": 9.46798, + "82": 9.68509, + "83": 9.29591, + "84": 9.40521, + "85": 9.60161, + "86": 9.06713, + "87": 9.58406, + "88": 9.73301, + "89": 9.59528, + "90": 9.80559, + "91": 9.32603, + "92": 9.3532, + "93": 9.06916, + "94": 8.82266, + "95": 9.50858, + "96": 9.51587, + "97": 9.29763, + "98": 9.66187, + "99": 8.87661, + "100": 9.39222 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1678.0, + "4": 1709.0, + "5": 1873.0, + "6": 1786.0, + "7": 1813.0, + "8": 1519.0, + "9": 1684.0, + "10": 1417.0, + "11": 1943.0, + "12": 1723.0, + "13": 1939.0, + "14": 1759.0, + "15": 1772.0, + "16": 1750.0, + "17": 1812.0, + "18": 1646.0, + "19": 1818.0, + "20": 1655.0, + "21": 1879.0, + "22": 1759.0, + "23": 1944.0, + "24": 1650.0, + "25": 1708.0, + "26": 1750.0, + "27": 1815.0, + "28": 2091.0, + "29": 1958.0, + "30": 1934.0, + "31": 1588.0, + "32": 1891.0, + "33": 2099.0, + "34": 1765.0, + "35": 1894.0, + "36": 1947.0, + "37": 2279.0, + "38": 2134.0, + "39": 2350.0, + "40": 2091.0, + "41": 2318.0, + "42": 2137.0, + "43": 1849.0, + "44": 2109.0, + "45": 2020.0, + "46": 2263.0, + "47": 2593.0, + "48": 2323.0, + "49": 2177.0, + "50": 2363.0, + "51": 2554.0, + "52": 2619.0, + "53": 2863.0, + "54": 2688.0, + "55": 2406.0, + "56": 2649.0, + "57": 2175.0, + "58": 2856.0, + "59": 2775.0, + "60": 2307.0, + "61": 2914.0, + "62": 2644.0, + "63": 2362.0, + "64": 2946.0, + "65": 2578.0, + "66": 3122.0, + "67": 2697.0, + "68": 2687.0, + "69": 2956.0, + "70": 3157.0, + "71": 3028.0, + "72": 2294.0, + "73": 2876.0, + "74": 1887.0, + "75": 2523.0, + "76": 2937.0, + "77": 3162.0, + "78": 3318.0, + "79": 3074.0, + "80": 3213.0, + "81": 3664.0, + "82": 3238.0, + "83": 2838.0, + "84": 3251.0, + "85": 3275.0, + "86": 2748.0, + "87": 3758.0, + "88": 3023.0, + "89": 3267.0, + "90": 3085.0, + "91": 2812.0, + "92": 3116.0, + "93": 2665.0, + "94": 3380.0, + "95": 3236.0, + "96": 3462.0, + "97": 3002.0, + "98": 3545.0, + "99": 3265.0, + "100": 3458.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 519038464.0, + "2": 519038464.0, + "3": 519038464.0, + "4": 519038464.0, + "5": 519038464.0, + "6": 519038464.0, + "7": 519038464.0, + "8": 519038464.0, + "9": 519038464.0, + "10": 519038464.0, + "11": 519038464.0, + "12": 519038464.0, + "13": 519038464.0, + "14": 519038464.0, + "15": 519038464.0, + "16": 519038464.0, + "17": 519038464.0, + "18": 519038464.0, + "19": 519038464.0, + "20": 519038464.0, + "21": 519038464.0, + "22": 519038464.0, + "23": 519038464.0, + "24": 519038464.0, + "25": 519038464.0, + "26": 519038464.0, + "27": 519038464.0, + "28": 519038464.0, + "29": 519038464.0, + "30": 519038464.0, + "31": 519038464.0, + "32": 519038464.0, + "33": 519038464.0, + "34": 519038464.0, + "35": 519038464.0, + "36": 519038464.0, + "37": 519038464.0, + "38": 519038464.0, + "39": 519038464.0, + "40": 519038464.0, + "41": 519038464.0, + "42": 519038464.0, + "43": 519038464.0, + "44": 519038464.0, + "45": 519038464.0, + "46": 519038464.0, + "47": 519038464.0, + "48": 519038464.0, + "49": 519038464.0, + "50": 519038464.0, + "51": 519038464.0, + "52": 519038464.0, + "53": 519038464.0, + "54": 519038464.0, + "55": 519038464.0, + "56": 519038464.0, + "57": 519038464.0, + "58": 519038464.0, + "59": 519038464.0, + "60": 519038464.0, + "61": 519038464.0, + "62": 519038464.0, + "63": 519038464.0, + "64": 519038464.0, + "65": 519038464.0, + "66": 519038464.0, + "67": 519038464.0, + "68": 519038464.0, + "69": 519038464.0, + "70": 519038464.0, + "71": 519038464.0, + "72": 519038464.0, + "73": 519038464.0, + "74": 519038464.0, + "75": 519038464.0, + "76": 519038464.0, + "77": 519038464.0, + "78": 519038464.0, + "79": 519038464.0, + "80": 519038464.0, + "81": 519038464.0, + "82": 519038464.0, + "83": 519038464.0, + "84": 519038464.0, + "85": 519038464.0, + "86": 519038464.0, + "87": 519038464.0, + "88": 519038464.0, + "89": 519038464.0, + "90": 519038464.0, + "91": 519038464.0, + "92": 519038464.0, + "93": 519038464.0, + "94": 519038464.0, + "95": 519038464.0, + "96": 519038464.0, + "97": 519038464.0, + "98": 519038464.0, + "99": 519038464.0, + "100": 519038464.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2296009728.0, + "2": 2436866048.0, + "3": 2436866048.0, + "4": 2436866048.0, + "5": 2436866048.0, + "6": 2436866048.0, + "7": 2436866048.0, + "8": 2436866048.0, + "9": 2436866048.0, + "10": 2436866048.0, + "11": 2436866048.0, + "12": 2436866048.0, + "13": 2436866048.0, + "14": 2436866048.0, + "15": 2436866048.0, + "16": 2436866048.0, + "17": 2436866048.0, + "18": 2436866048.0, + "19": 2436866048.0, + "20": 2436866048.0, + "21": 2436866048.0, + "22": 2436866048.0, + "23": 2436866048.0, + "24": 2436866048.0, + "25": 2436866048.0, + "26": 2436866048.0, + "27": 2436866048.0, + "28": 2436866048.0, + "29": 2436866048.0, + "30": 2436866048.0, + "31": 2436866048.0, + "32": 2436866048.0, + "33": 2436866048.0, + "34": 2436866048.0, + "35": 2436866048.0, + "36": 2436866048.0, + "37": 2436866048.0, + "38": 2436866048.0, + "39": 2436866048.0, + "40": 2436866048.0, + "41": 2436866048.0, + "42": 2436866048.0, + "43": 2436866048.0, + "44": 2436866048.0, + "45": 2436866048.0, + "46": 2436866048.0, + "47": 2436866048.0, + "48": 2436866048.0, + "49": 2436866048.0, + "50": 2436866048.0, + "51": 2436866048.0, + "52": 2436866048.0, + "53": 2436866048.0, + "54": 2436866048.0, + "55": 2436866048.0, + "56": 2436866048.0, + "57": 2436866048.0, + "58": 2436866048.0, + "59": 2436866048.0, + "60": 2436866048.0, + "61": 2436866048.0, + "62": 2436866048.0, + "63": 2436866048.0, + "64": 2436866048.0, + "65": 2436866048.0, + "66": 2436866048.0, + "67": 2436866048.0, + "68": 2436866048.0, + "69": 2436866048.0, + "70": 2436866048.0, + "71": 2436866048.0, + "72": 2436866048.0, + "73": 2436866048.0, + "74": 2436866048.0, + "75": 2436866048.0, + "76": 2436866048.0, + "77": 2436866048.0, + "78": 2436866048.0, + "79": 2436866048.0, + "80": 2436866048.0, + "81": 2436866048.0, + "82": 2436866048.0, + "83": 2436866048.0, + "84": 2436866048.0, + "85": 2436866048.0, + "86": 2436866048.0, + "87": 2436866048.0, + "88": 2436866048.0, + "89": 2436866048.0, + "90": 2436866048.0, + "91": 2436866048.0, + "92": 2436866048.0, + "93": 2436866048.0, + "94": 2436866048.0, + "95": 2436866048.0, + "96": 2436866048.0, + "97": 2436866048.0, + "98": 2436866048.0, + "99": 2436866048.0, + "100": 2436866048.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 14.21193, + "2": 0.16972, + "3": 0.14361, + "4": 0.13668, + "5": 0.13411, + "6": 0.13482, + "7": 0.13456, + "8": 0.13436, + "9": 0.13229, + "10": 0.13468, + "11": 0.29227, + "12": 0.13377, + "13": 0.13424, + "14": 0.1347, + "15": 0.13353, + "16": 0.13405, + "17": 0.13386, + "18": 0.13335, + "19": 0.1337, + "20": 0.13441, + "21": 0.28803, + "22": 0.13435, + "23": 0.13391, + "24": 0.1344, + "25": 0.13379, + "26": 0.13318, + "27": 0.13391, + "28": 0.13299, + "29": 0.13332, + "30": 0.13439, + "31": 0.28662, + "32": 0.13342, + "33": 0.1334, + "34": 0.13306, + "35": 0.13383, + "36": 0.13334, + "37": 0.1329, + "38": 0.13424, + "39": 0.13255, + "40": 0.13274, + "41": 0.28399, + "42": 0.13366, + "43": 0.13392, + "44": 0.13317, + "45": 0.13301, + "46": 0.13375, + "47": 0.13359, + "48": 0.13309, + "49": 0.13333, + "50": 0.13346, + "51": 0.28956, + "52": 0.14009, + "53": 0.13828, + "54": 0.1377, + "55": 0.13637, + "56": 0.13795, + "57": 0.13737, + "58": 0.13417, + "59": 0.13327, + "60": 0.13391, + "61": 0.29272, + "62": 0.13275, + "63": 0.13346, + "64": 0.13336, + "65": 0.13291, + "66": 0.13365, + "67": 0.13307, + "68": 0.13243, + "69": 0.1327, + "70": 0.13323, + "71": 0.28929, + "72": 0.1323, + "73": 0.13407, + "74": 0.13317, + "75": 0.132, + "76": 0.13278, + "77": 0.13359, + "78": 0.13257, + "79": 0.13226, + "80": 0.13339, + "81": 0.28457, + "82": 0.13147, + "83": 0.13289, + "84": 0.13213, + "85": 0.13375, + "86": 0.13168, + "87": 0.13351, + "88": 0.13059, + "89": 0.13189, + "90": 0.13102, + "91": 0.28755, + "92": 0.13136, + "93": 0.13235, + "94": 0.13175, + "95": 0.13072, + "96": 0.13269, + "97": 0.13234, + "98": 0.1311, + "99": 0.13293, + "100": 0.13016 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json index cda47f321c8..e45c3949555 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.82005, "5": 10.85284, "10": 10.78455, "15": 10.79229, "20": 10.69212, "25": 10.52413, "30": 10.34552, "35": 10.26241, "40": 10.07236, "45": 9.81098, "50": 9.88418, "55": 9.86374, "60": 9.47963, "65": 8.93065, "70": 9.71218, "75": 9.4005, "80": 9.39078, "85": 9.60138, "90": 9.80502, "95": 9.50821, "100": 9.3924}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1559.0, "5": 1840.0, "10": 1380.0, "15": 1848.0, "20": 1621.0, "25": 1689.0, "30": 1907.0, "35": 1922.0, "40": 2045.0, "45": 2097.0, "50": 2368.0, "55": 2383.0, "60": 2509.0, "65": 2628.0, "70": 3129.0, "75": 2552.0, "80": 3279.0, "85": 3344.0, "90": 2980.0, "95": 3324.0, "100": 3467.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 522989568.0, "5": 522989568.0, "10": 522989568.0, "15": 522989568.0, "20": 522989568.0, "25": 522989568.0, "30": 522989568.0, "35": 522989568.0, "40": 522989568.0, "45": 522989568.0, "50": 522989568.0, "55": 522989568.0, "60": 522989568.0, "65": 522989568.0, "70": 522989568.0, "75": 522989568.0, "80": 522989568.0, "85": 522989568.0, "90": 522989568.0, "95": 522989568.0, "100": 522989568.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 3768872960.0, "5": 3911833600.0, "10": 3911833600.0, "15": 3911833600.0, "20": 3911833600.0, "25": 3911833600.0, "30": 3911833600.0, "35": 3911833600.0, "40": 3911833600.0, "45": 3911833600.0, "50": 3911833600.0, "55": 3911833600.0, "60": 3911833600.0, "65": 3911833600.0, "70": 3911833600.0, "75": 3911833600.0, "80": 3911833600.0, "85": 3911833600.0, "90": 3911833600.0, "95": 3911833600.0, "100": 3911833600.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 24.27643, "5": 0.18328, "10": 0.18099, "15": 0.17942, "20": 0.17956, "25": 0.1771, "30": 0.17799, "35": 0.17821, "40": 0.1777, "45": 0.17833, "50": 0.17766, "55": 0.17789, "60": 0.17744, "65": 0.17689, "70": 0.1767, "75": 0.17717, "80": 0.17685, "85": 0.17672, "90": 0.17477, "95": 0.17583, "100": 0.17624}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.81548, + "2": 10.8208, + "3": 10.81272, + "4": 10.78885, + "5": 10.85169, + "6": 10.87038, + "7": 10.83098, + "8": 10.8343, + "9": 10.83996, + "10": 10.78686, + "11": 10.88025, + "12": 10.85974, + "13": 10.86596, + "14": 10.8782, + "15": 10.79466, + "16": 10.79611, + "17": 10.76888, + "18": 10.81074, + "19": 10.79865, + "20": 10.69058, + "21": 10.67945, + "22": 10.52113, + "23": 10.70755, + "24": 10.5774, + "25": 10.52375, + "26": 10.59601, + "27": 10.58621, + "28": 10.56178, + "29": 10.56944, + "30": 10.34575, + "31": 10.10079, + "32": 10.45392, + "33": 10.4461, + "34": 10.20725, + "35": 10.26198, + "36": 10.21312, + "37": 10.32467, + "38": 10.16829, + "39": 10.38371, + "40": 10.07233, + "41": 10.13762, + "42": 10.19766, + "43": 9.81156, + "44": 9.93307, + "45": 9.81043, + "46": 9.80854, + "47": 10.12558, + "48": 9.82104, + "49": 9.50761, + "50": 9.8838, + "51": 9.83548, + "52": 9.72518, + "53": 10.04799, + "54": 9.93007, + "55": 9.86362, + "56": 9.60218, + "57": 9.45185, + "58": 9.80781, + "59": 9.56786, + "60": 9.47966, + "61": 9.67985, + "62": 9.9675, + "63": 9.35111, + "64": 9.75622, + "65": 8.93178, + "66": 9.68108, + "67": 9.35959, + "68": 9.76948, + "69": 9.77494, + "70": 9.71179, + "71": 9.60631, + "72": 9.57134, + "73": 9.48393, + "74": 8.92913, + "75": 9.4003, + "76": 9.07189, + "77": 10.05248, + "78": 9.71492, + "79": 9.35744, + "80": 9.38946, + "81": 9.46798, + "82": 9.68509, + "83": 9.29591, + "84": 9.40521, + "85": 9.60161, + "86": 9.06713, + "87": 9.58406, + "88": 9.73301, + "89": 9.59528, + "90": 9.80559, + "91": 9.32603, + "92": 9.3532, + "93": 9.06916, + "94": 8.82266, + "95": 9.50858, + "96": 9.51587, + "97": 9.29763, + "98": 9.66187, + "99": 8.87661, + "100": 9.39222 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1518.0, + "2": 1697.0, + "3": 1678.0, + "4": 1709.0, + "5": 1873.0, + "6": 1786.0, + "7": 1813.0, + "8": 1519.0, + "9": 1684.0, + "10": 1417.0, + "11": 1943.0, + "12": 1723.0, + "13": 1939.0, + "14": 1759.0, + "15": 1772.0, + "16": 1750.0, + "17": 1812.0, + "18": 1646.0, + "19": 1818.0, + "20": 1655.0, + "21": 1879.0, + "22": 1759.0, + "23": 1944.0, + "24": 1650.0, + "25": 1708.0, + "26": 1750.0, + "27": 1815.0, + "28": 2091.0, + "29": 1958.0, + "30": 1934.0, + "31": 1588.0, + "32": 1891.0, + "33": 2099.0, + "34": 1765.0, + "35": 1894.0, + "36": 1947.0, + "37": 2279.0, + "38": 2134.0, + "39": 2350.0, + "40": 2091.0, + "41": 2318.0, + "42": 2137.0, + "43": 1849.0, + "44": 2109.0, + "45": 2020.0, + "46": 2263.0, + "47": 2593.0, + "48": 2323.0, + "49": 2177.0, + "50": 2363.0, + "51": 2554.0, + "52": 2619.0, + "53": 2863.0, + "54": 2688.0, + "55": 2406.0, + "56": 2649.0, + "57": 2175.0, + "58": 2856.0, + "59": 2775.0, + "60": 2307.0, + "61": 2914.0, + "62": 2644.0, + "63": 2362.0, + "64": 2946.0, + "65": 2578.0, + "66": 3122.0, + "67": 2697.0, + "68": 2687.0, + "69": 2956.0, + "70": 3157.0, + "71": 3028.0, + "72": 2294.0, + "73": 2876.0, + "74": 1887.0, + "75": 2523.0, + "76": 2937.0, + "77": 3162.0, + "78": 3318.0, + "79": 3074.0, + "80": 3213.0, + "81": 3664.0, + "82": 3238.0, + "83": 2838.0, + "84": 3251.0, + "85": 3275.0, + "86": 2748.0, + "87": 3758.0, + "88": 3023.0, + "89": 3267.0, + "90": 3085.0, + "91": 2812.0, + "92": 3116.0, + "93": 2665.0, + "94": 3380.0, + "95": 3236.0, + "96": 3462.0, + "97": 3002.0, + "98": 3545.0, + "99": 3265.0, + "100": 3458.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 519038464.0, + "2": 519038464.0, + "3": 519038464.0, + "4": 519038464.0, + "5": 519038464.0, + "6": 519038464.0, + "7": 519038464.0, + "8": 519038464.0, + "9": 519038464.0, + "10": 519038464.0, + "11": 519038464.0, + "12": 519038464.0, + "13": 519038464.0, + "14": 519038464.0, + "15": 519038464.0, + "16": 519038464.0, + "17": 519038464.0, + "18": 519038464.0, + "19": 519038464.0, + "20": 519038464.0, + "21": 519038464.0, + "22": 519038464.0, + "23": 519038464.0, + "24": 519038464.0, + "25": 519038464.0, + "26": 519038464.0, + "27": 519038464.0, + "28": 519038464.0, + "29": 519038464.0, + "30": 519038464.0, + "31": 519038464.0, + "32": 519038464.0, + "33": 519038464.0, + "34": 519038464.0, + "35": 519038464.0, + "36": 519038464.0, + "37": 519038464.0, + "38": 519038464.0, + "39": 519038464.0, + "40": 519038464.0, + "41": 519038464.0, + "42": 519038464.0, + "43": 519038464.0, + "44": 519038464.0, + "45": 519038464.0, + "46": 519038464.0, + "47": 519038464.0, + "48": 519038464.0, + "49": 519038464.0, + "50": 519038464.0, + "51": 519038464.0, + "52": 519038464.0, + "53": 519038464.0, + "54": 519038464.0, + "55": 519038464.0, + "56": 519038464.0, + "57": 519038464.0, + "58": 519038464.0, + "59": 519038464.0, + "60": 519038464.0, + "61": 519038464.0, + "62": 519038464.0, + "63": 519038464.0, + "64": 519038464.0, + "65": 519038464.0, + "66": 519038464.0, + "67": 519038464.0, + "68": 519038464.0, + "69": 519038464.0, + "70": 519038464.0, + "71": 519038464.0, + "72": 519038464.0, + "73": 519038464.0, + "74": 519038464.0, + "75": 519038464.0, + "76": 519038464.0, + "77": 519038464.0, + "78": 519038464.0, + "79": 519038464.0, + "80": 519038464.0, + "81": 519038464.0, + "82": 519038464.0, + "83": 519038464.0, + "84": 519038464.0, + "85": 519038464.0, + "86": 519038464.0, + "87": 519038464.0, + "88": 519038464.0, + "89": 519038464.0, + "90": 519038464.0, + "91": 519038464.0, + "92": 519038464.0, + "93": 519038464.0, + "94": 519038464.0, + "95": 519038464.0, + "96": 519038464.0, + "97": 519038464.0, + "98": 519038464.0, + "99": 519038464.0, + "100": 519038464.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2296009728.0, + "2": 2436866048.0, + "3": 2436866048.0, + "4": 2436866048.0, + "5": 2436866048.0, + "6": 2436866048.0, + "7": 2436866048.0, + "8": 2436866048.0, + "9": 2436866048.0, + "10": 2436866048.0, + "11": 2436866048.0, + "12": 2436866048.0, + "13": 2436866048.0, + "14": 2436866048.0, + "15": 2436866048.0, + "16": 2436866048.0, + "17": 2436866048.0, + "18": 2436866048.0, + "19": 2436866048.0, + "20": 2436866048.0, + "21": 2436866048.0, + "22": 2436866048.0, + "23": 2436866048.0, + "24": 2436866048.0, + "25": 2436866048.0, + "26": 2436866048.0, + "27": 2436866048.0, + "28": 2436866048.0, + "29": 2436866048.0, + "30": 2436866048.0, + "31": 2436866048.0, + "32": 2436866048.0, + "33": 2436866048.0, + "34": 2436866048.0, + "35": 2436866048.0, + "36": 2436866048.0, + "37": 2436866048.0, + "38": 2436866048.0, + "39": 2436866048.0, + "40": 2436866048.0, + "41": 2436866048.0, + "42": 2436866048.0, + "43": 2436866048.0, + "44": 2436866048.0, + "45": 2436866048.0, + "46": 2436866048.0, + "47": 2436866048.0, + "48": 2436866048.0, + "49": 2436866048.0, + "50": 2436866048.0, + "51": 2436866048.0, + "52": 2436866048.0, + "53": 2436866048.0, + "54": 2436866048.0, + "55": 2436866048.0, + "56": 2436866048.0, + "57": 2436866048.0, + "58": 2436866048.0, + "59": 2436866048.0, + "60": 2436866048.0, + "61": 2436866048.0, + "62": 2436866048.0, + "63": 2436866048.0, + "64": 2436866048.0, + "65": 2436866048.0, + "66": 2436866048.0, + "67": 2436866048.0, + "68": 2436866048.0, + "69": 2436866048.0, + "70": 2436866048.0, + "71": 2436866048.0, + "72": 2436866048.0, + "73": 2436866048.0, + "74": 2436866048.0, + "75": 2436866048.0, + "76": 2436866048.0, + "77": 2436866048.0, + "78": 2436866048.0, + "79": 2436866048.0, + "80": 2436866048.0, + "81": 2436866048.0, + "82": 2436866048.0, + "83": 2436866048.0, + "84": 2436866048.0, + "85": 2436866048.0, + "86": 2436866048.0, + "87": 2436866048.0, + "88": 2436866048.0, + "89": 2436866048.0, + "90": 2436866048.0, + "91": 2436866048.0, + "92": 2436866048.0, + "93": 2436866048.0, + "94": 2436866048.0, + "95": 2436866048.0, + "96": 2436866048.0, + "97": 2436866048.0, + "98": 2436866048.0, + "99": 2436866048.0, + "100": 2436866048.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.90397, + "2": 0.16607, + "3": 0.13982, + "4": 0.14032, + "5": 0.13765, + "6": 0.13651, + "7": 0.13453, + "8": 0.13413, + "9": 0.13703, + "10": 0.13873, + "11": 0.28364, + "12": 0.13723, + "13": 0.13756, + "14": 0.1379, + "15": 0.14148, + "16": 0.1356, + "17": 0.13661, + "18": 0.13568, + "19": 0.13637, + "20": 0.1367, + "21": 0.28276, + "22": 0.13722, + "23": 0.13404, + "24": 0.13414, + "25": 0.1341, + "26": 0.13595, + "27": 0.13446, + "28": 0.13477, + "29": 0.13439, + "30": 0.13383, + "31": 0.27955, + "32": 0.13416, + "33": 0.13472, + "34": 0.13383, + "35": 0.13499, + "36": 0.13468, + "37": 0.13332, + "38": 0.13449, + "39": 0.13488, + "40": 0.1347, + "41": 0.2818, + "42": 0.13497, + "43": 0.13495, + "44": 0.13372, + "45": 0.13385, + "46": 0.13479, + "47": 0.13339, + "48": 0.13334, + "49": 0.13393, + "50": 0.13346, + "51": 0.2815, + "52": 0.13492, + "53": 0.13387, + "54": 0.13407, + "55": 0.13263, + "56": 0.13379, + "57": 0.13439, + "58": 0.13407, + "59": 0.13481, + "60": 0.13407, + "61": 0.28073, + "62": 0.13474, + "63": 0.13363, + "64": 0.13359, + "65": 0.13323, + "66": 0.13437, + "67": 0.13391, + "68": 0.13344, + "69": 0.21561, + "70": 0.1337, + "71": 0.27778, + "72": 0.13359, + "73": 0.13364, + "74": 0.13406, + "75": 0.13376, + "76": 0.13308, + "77": 0.13263, + "78": 0.13172, + "79": 0.13328, + "80": 0.13387, + "81": 0.28018, + "82": 0.13437, + "83": 0.13645, + "84": 0.13548, + "85": 0.13558, + "86": 0.13447, + "87": 0.13492, + "88": 0.13361, + "89": 0.13427, + "90": 0.13332, + "91": 0.27771, + "92": 0.13375, + "93": 0.1331, + "94": 0.13317, + "95": 0.13408, + "96": 0.13418, + "97": 0.13752, + "98": 0.13493, + "99": 0.13408, + "100": 0.13136 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts.json new file mode 100644 index 00000000000..6f64205e3c4 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.93693, + "2": 10.92078, + "3": 10.92311, + "4": 10.908, + "5": 10.93133, + "6": 10.93476, + "7": 10.92722, + "8": 10.91987, + "9": 10.93801, + "10": 10.91377, + "11": 10.94194, + "12": 10.93222, + "13": 10.92553, + "14": 10.94301, + "15": 10.86288, + "16": 10.87945, + "17": 10.86904, + "18": 10.88527, + "19": 10.86912, + "20": 10.77336, + "21": 10.75658, + "22": 10.62975, + "23": 10.76834, + "24": 10.65017, + "25": 10.60362, + "26": 10.66269, + "27": 10.66488, + "28": 10.60369, + "29": 10.64791, + "30": 10.40493, + "31": 10.16869, + "32": 10.5139, + "33": 10.50484, + "34": 10.27115, + "35": 10.31433, + "36": 10.27029, + "37": 10.38626, + "38": 10.23175, + "39": 10.45527, + "40": 10.12357, + "41": 10.19645, + "42": 10.25476, + "43": 9.86653, + "44": 9.99586, + "45": 9.87497, + "46": 9.86189, + "47": 10.19545, + "48": 9.87912, + "49": 9.56741, + "50": 9.94519, + "51": 9.89774, + "52": 9.78773, + "53": 10.12739, + "54": 9.98265, + "55": 9.90115, + "56": 9.66568, + "57": 9.49996, + "58": 9.87635, + "59": 9.61861, + "60": 9.55292, + "61": 9.71598, + "62": 10.03451, + "63": 9.41294, + "64": 9.81949, + "65": 8.96909, + "66": 9.7478, + "67": 9.39393, + "68": 9.82085, + "69": 9.82417, + "70": 9.77915, + "71": 9.64756, + "72": 9.59555, + "73": 9.53704, + "74": 8.96643, + "75": 9.44556, + "76": 9.09922, + "77": 10.10009, + "78": 9.73576, + "79": 9.38721, + "80": 9.41961, + "81": 9.50968, + "82": 9.72303, + "83": 9.34684, + "84": 9.44855, + "85": 9.64312, + "86": 9.07818, + "87": 9.61561, + "88": 9.79072, + "89": 9.61878, + "90": 9.85929, + "91": 9.35347, + "92": 9.38799, + "93": 9.07947, + "94": 8.82329, + "95": 9.52141, + "96": 9.54598, + "97": 9.34241, + "98": 9.70512, + "99": 8.8917, + "100": 9.43443 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 22727688.0, + "2": 22924916.0, + "3": 22596752.0, + "4": 23219574.0, + "5": 22715594.0, + "6": 23021444.0, + "7": 22771554.0, + "8": 22926856.0, + "9": 22842096.0, + "10": 22918196.0, + "11": 22500760.0, + "12": 22460572.0, + "13": 22917018.0, + "14": 22389964.0, + "15": 22820720.0, + "16": 22830308.0, + "17": 22819122.0, + "18": 22582876.0, + "19": 22617912.0, + "20": 22693480.0, + "21": 22740412.0, + "22": 22799838.0, + "23": 22539332.0, + "24": 22770580.0, + "25": 22818910.0, + "26": 22547838.0, + "27": 22468232.0, + "28": 22452766.0, + "29": 22528906.0, + "30": 22631718.0, + "31": 22955520.0, + "32": 22584888.0, + "33": 22558558.0, + "34": 22836286.0, + "35": 22788956.0, + "36": 22589940.0, + "37": 22496912.0, + "38": 22897132.0, + "39": 22801712.0, + "40": 22657514.0, + "41": 22659596.0, + "42": 22667300.0, + "43": 22976308.0, + "44": 22745816.0, + "45": 22675136.0, + "46": 22884540.0, + "47": 22633726.0, + "48": 22928020.0, + "49": 22727656.0, + "50": 22905162.0, + "51": 22791660.0, + "52": 22748630.0, + "53": 22925420.0, + "54": 22839176.0, + "55": 22518792.0, + "56": 22877648.0, + "57": 23113592.0, + "58": 22845136.0, + "59": 22715486.0, + "60": 22743726.0, + "61": 22724104.0, + "62": 22673746.0, + "63": 22846740.0, + "64": 22823862.0, + "65": 23061360.0, + "66": 22729628.0, + "67": 22907694.0, + "68": 22609888.0, + "69": 22584610.0, + "70": 22829190.0, + "71": 22749038.0, + "72": 22655052.0, + "73": 22739796.0, + "74": 23047606.0, + "75": 23054054.0, + "76": 22901052.0, + "77": 22271520.0, + "78": 22788892.0, + "79": 22743418.0, + "80": 22706694.0, + "81": 22890786.0, + "82": 22777316.0, + "83": 22839636.0, + "84": 23010088.0, + "85": 22712948.0, + "86": 23103380.0, + "87": 22735258.0, + "88": 22636824.0, + "89": 22498828.0, + "90": 22972694.0, + "91": 22767128.0, + "92": 22808892.0, + "93": 22659368.0, + "94": 22911112.0, + "95": 23047740.0, + "96": 22828678.0, + "97": 22608174.0, + "98": 22762982.0, + "99": 22905800.0, + "100": 23015792.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 519038464.0, + "2": 519038464.0, + "3": 519038464.0, + "4": 519038464.0, + "5": 519038464.0, + "6": 519038464.0, + "7": 519038464.0, + "8": 519038464.0, + "9": 519038464.0, + "10": 519038464.0, + "11": 519038464.0, + "12": 519038464.0, + "13": 519038464.0, + "14": 519038464.0, + "15": 519038464.0, + "16": 519038464.0, + "17": 519038464.0, + "18": 519038464.0, + "19": 519038464.0, + "20": 519038464.0, + "21": 519038464.0, + "22": 519038464.0, + "23": 519038464.0, + "24": 519038464.0, + "25": 519038464.0, + "26": 519038464.0, + "27": 519038464.0, + "28": 519038464.0, + "29": 519038464.0, + "30": 519038464.0, + "31": 519038464.0, + "32": 519038464.0, + "33": 519038464.0, + "34": 519038464.0, + "35": 519038464.0, + "36": 519038464.0, + "37": 519038464.0, + "38": 519038464.0, + "39": 519038464.0, + "40": 519038464.0, + "41": 519038464.0, + "42": 519038464.0, + "43": 519038464.0, + "44": 519038464.0, + "45": 519038464.0, + "46": 519038464.0, + "47": 519038464.0, + "48": 519038464.0, + "49": 519038464.0, + "50": 519038464.0, + "51": 519038464.0, + "52": 519038464.0, + "53": 519038464.0, + "54": 519038464.0, + "55": 519038464.0, + "56": 519038464.0, + "57": 519038464.0, + "58": 519038464.0, + "59": 519038464.0, + "60": 519038464.0, + "61": 519038464.0, + "62": 519038464.0, + "63": 519038464.0, + "64": 519038464.0, + "65": 519038464.0, + "66": 519038464.0, + "67": 519038464.0, + "68": 519038464.0, + "69": 519038464.0, + "70": 519038464.0, + "71": 519038464.0, + "72": 519038464.0, + "73": 519038464.0, + "74": 519038464.0, + "75": 519038464.0, + "76": 519038464.0, + "77": 519038464.0, + "78": 519038464.0, + "79": 519038464.0, + "80": 519038464.0, + "81": 519038464.0, + "82": 519038464.0, + "83": 519038464.0, + "84": 519038464.0, + "85": 519038464.0, + "86": 519038464.0, + "87": 519038464.0, + "88": 519038464.0, + "89": 519038464.0, + "90": 519038464.0, + "91": 519038464.0, + "92": 519038464.0, + "93": 519038464.0, + "94": 519038464.0, + "95": 519038464.0, + "96": 519038464.0, + "97": 519038464.0, + "98": 519038464.0, + "99": 519038464.0, + "100": 519038464.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2296009728.0, + "2": 2436866048.0, + "3": 2436866048.0, + "4": 2436866048.0, + "5": 2436866048.0, + "6": 2436866048.0, + "7": 2436866048.0, + "8": 2436866048.0, + "9": 2436866048.0, + "10": 2436866048.0, + "11": 2436866048.0, + "12": 2436866048.0, + "13": 2436866048.0, + "14": 2436866048.0, + "15": 2436866048.0, + "16": 2436866048.0, + "17": 2436866048.0, + "18": 2436866048.0, + "19": 2436866048.0, + "20": 2436866048.0, + "21": 2436866048.0, + "22": 2436866048.0, + "23": 2436866048.0, + "24": 2436866048.0, + "25": 2436866048.0, + "26": 2436866048.0, + "27": 2436866048.0, + "28": 2436866048.0, + "29": 2436866048.0, + "30": 2436866048.0, + "31": 2436866048.0, + "32": 2436866048.0, + "33": 2436866048.0, + "34": 2436866048.0, + "35": 2436866048.0, + "36": 2436866048.0, + "37": 2436866048.0, + "38": 2436866048.0, + "39": 2436866048.0, + "40": 2436866048.0, + "41": 2436866048.0, + "42": 2436866048.0, + "43": 2436866048.0, + "44": 2436866048.0, + "45": 2436866048.0, + "46": 2436866048.0, + "47": 2436866048.0, + "48": 2436866048.0, + "49": 2436866048.0, + "50": 2436866048.0, + "51": 2436866048.0, + "52": 2436866048.0, + "53": 2436866048.0, + "54": 2436866048.0, + "55": 2436866048.0, + "56": 2436866048.0, + "57": 2436866048.0, + "58": 2436866048.0, + "59": 2436866048.0, + "60": 2436866048.0, + "61": 2436866048.0, + "62": 2436866048.0, + "63": 2436866048.0, + "64": 2436866048.0, + "65": 2436866048.0, + "66": 2436866048.0, + "67": 2436866048.0, + "68": 2436866048.0, + "69": 2436866048.0, + "70": 2436866048.0, + "71": 2436866048.0, + "72": 2436866048.0, + "73": 2436866048.0, + "74": 2436866048.0, + "75": 2436866048.0, + "76": 2436866048.0, + "77": 2436866048.0, + "78": 2436866048.0, + "79": 2436866048.0, + "80": 2436866048.0, + "81": 2436866048.0, + "82": 2436866048.0, + "83": 2436866048.0, + "84": 2436866048.0, + "85": 2436866048.0, + "86": 2436866048.0, + "87": 2436866048.0, + "88": 2436866048.0, + "89": 2436866048.0, + "90": 2436866048.0, + "91": 2436866048.0, + "92": 2436866048.0, + "93": 2436866048.0, + "94": 2436866048.0, + "95": 2436866048.0, + "96": 2436866048.0, + "97": 2436866048.0, + "98": 2436866048.0, + "99": 2436866048.0, + "100": 2436866048.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 11.56211, + "2": 0.17032, + "3": 0.14703, + "4": 0.1399, + "5": 0.13723, + "6": 0.13231, + "7": 0.13564, + "8": 0.13449, + "9": 0.13358, + "10": 0.13307, + "11": 0.13725, + "12": 0.13165, + "13": 0.13322, + "14": 0.13288, + "15": 0.13324, + "16": 0.13281, + "17": 0.13322, + "18": 0.13237, + "19": 0.13164, + "20": 0.13184, + "21": 0.13286, + "22": 0.13291, + "23": 0.13443, + "24": 0.14138, + "25": 0.13774, + "26": 0.13805, + "27": 0.13868, + "28": 0.13766, + "29": 0.1395, + "30": 0.13538, + "31": 0.13589, + "32": 0.13529, + "33": 0.13562, + "34": 0.13525, + "35": 0.13556, + "36": 0.13544, + "37": 0.13549, + "38": 0.13569, + "39": 0.13558, + "40": 0.13561, + "41": 0.13653, + "42": 0.13569, + "43": 0.13645, + "44": 0.13586, + "45": 0.1354, + "46": 0.13606, + "47": 0.13517, + "48": 0.13615, + "49": 0.13593, + "50": 0.13488, + "51": 0.13643, + "52": 0.13115, + "53": 0.13291, + "54": 0.13115, + "55": 0.13085, + "56": 0.1309, + "57": 0.13094, + "58": 0.13092, + "59": 0.13092, + "60": 0.13094, + "61": 0.13102, + "62": 0.13092, + "63": 0.13052, + "64": 0.1313, + "65": 0.13151, + "66": 0.1314, + "67": 0.13094, + "68": 0.1308, + "69": 0.13079, + "70": 0.1309, + "71": 0.13083, + "72": 0.13083, + "73": 0.13091, + "74": 0.13061, + "75": 0.13042, + "76": 0.13145, + "77": 0.13079, + "78": 0.13108, + "79": 0.13106, + "80": 0.13055, + "81": 0.13075, + "82": 0.13043, + "83": 0.13151, + "84": 0.13173, + "85": 0.13126, + "86": 0.13187, + "87": 0.13084, + "88": 0.13098, + "89": 0.13086, + "90": 0.13054, + "91": 0.1317, + "92": 0.13098, + "93": 0.13084, + "94": 0.13088, + "95": 0.13054, + "96": 0.13148, + "97": 0.13154, + "98": 0.13179, + "99": 0.13086, + "100": 0.13121 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts_dgx_a100.json index e57b1a644a0..7848ef42dd8 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_untied/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.9359, "5": 10.93225, "10": 10.91083, "15": 10.85723, "20": 10.77088, "25": 10.60556, "30": 10.40549, "35": 10.31366, "40": 10.12334, "45": 9.87564, "50": 9.94452, "55": 9.90094, "60": 9.55238, "65": 8.96792, "70": 9.77835, "75": 9.44605, "80": 9.42014, "85": 9.64324, "90": 9.85827, "95": 9.52085, "100": 9.43415}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 22727686.0, "5": 22715312.0, "10": 22919060.0, "15": 22821200.0, "20": 22693840.0, "25": 22819524.0, "30": 22631232.0, "35": 22787888.0, "40": 22658144.0, "45": 22674630.0, "50": 22904452.0, "55": 22519094.0, "60": 22743052.0, "65": 23061016.0, "70": 22829332.0, "75": 23054164.0, "80": 22707344.0, "85": 22712182.0, "90": 22971846.0, "95": 23047676.0, "100": 23015938.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 522900480.0, "5": 522900480.0, "10": 522900480.0, "15": 522900480.0, "20": 522900480.0, "25": 522900480.0, "30": 522900480.0, "35": 522900480.0, "40": 522900480.0, "45": 522900480.0, "50": 522900480.0, "55": 522900480.0, "60": 522900480.0, "65": 522900480.0, "70": 522900480.0, "75": 522900480.0, "80": 522900480.0, "85": 522900480.0, "90": 522900480.0, "95": 522900480.0, "100": 522900480.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 3769943040.0, "5": 3912677376.0, "10": 3912677376.0, "15": 3912677376.0, "20": 3912677376.0, "25": 3912677376.0, "30": 3912677376.0, "35": 3912677376.0, "40": 3912677376.0, "45": 3912677376.0, "50": 3912677376.0, "55": 3912677376.0, "60": 3912677376.0, "65": 3912677376.0, "70": 3912677376.0, "75": 3912677376.0, "80": 3912677376.0, "85": 3912677376.0, "90": 3912677376.0, "95": 3912677376.0, "100": 3912677376.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 22.64226, "5": 0.17675, "10": 0.17674, "15": 0.17989, "20": 0.17736, "25": 0.1752, "30": 0.17793, "35": 0.17672, "40": 0.17711, "45": 0.17664, "50": 0.17313, "55": 0.17519, "60": 0.17937, "65": 0.17909, "70": 0.17798, "75": 0.17301, "80": 0.17354, "85": 0.17313, "90": 0.1739, "95": 0.17379, "100": 0.17144}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.93693, + "2": 10.92078, + "3": 10.92311, + "4": 10.908, + "5": 10.93133, + "6": 10.93476, + "7": 10.92722, + "8": 10.91987, + "9": 10.93801, + "10": 10.91377, + "11": 10.94194, + "12": 10.93222, + "13": 10.92553, + "14": 10.94301, + "15": 10.86288, + "16": 10.87945, + "17": 10.86904, + "18": 10.88527, + "19": 10.86912, + "20": 10.77336, + "21": 10.75658, + "22": 10.62975, + "23": 10.76834, + "24": 10.65017, + "25": 10.60362, + "26": 10.66269, + "27": 10.66488, + "28": 10.60369, + "29": 10.64791, + "30": 10.40493, + "31": 10.16869, + "32": 10.5139, + "33": 10.50484, + "34": 10.27115, + "35": 10.31433, + "36": 10.27029, + "37": 10.38626, + "38": 10.23175, + "39": 10.45527, + "40": 10.12357, + "41": 10.19645, + "42": 10.25476, + "43": 9.86653, + "44": 9.99586, + "45": 9.87497, + "46": 9.86189, + "47": 10.19545, + "48": 9.87912, + "49": 9.56741, + "50": 9.94519, + "51": 9.89774, + "52": 9.78773, + "53": 10.12739, + "54": 9.98265, + "55": 9.90115, + "56": 9.66568, + "57": 9.49996, + "58": 9.87635, + "59": 9.61861, + "60": 9.55292, + "61": 9.71598, + "62": 10.03451, + "63": 9.41294, + "64": 9.81949, + "65": 8.96909, + "66": 9.7478, + "67": 9.39393, + "68": 9.82085, + "69": 9.82417, + "70": 9.77915, + "71": 9.64756, + "72": 9.59555, + "73": 9.53704, + "74": 8.96643, + "75": 9.44556, + "76": 9.09922, + "77": 10.10009, + "78": 9.73576, + "79": 9.38721, + "80": 9.41961, + "81": 9.50968, + "82": 9.72303, + "83": 9.34684, + "84": 9.44855, + "85": 9.64312, + "86": 9.07818, + "87": 9.61561, + "88": 9.79072, + "89": 9.61878, + "90": 9.85929, + "91": 9.35347, + "92": 9.38799, + "93": 9.07947, + "94": 8.82329, + "95": 9.52141, + "96": 9.54598, + "97": 9.34241, + "98": 9.70512, + "99": 8.8917, + "100": 9.43443 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 22727688.0, + "2": 22924916.0, + "3": 22596752.0, + "4": 23219574.0, + "5": 22715594.0, + "6": 23021444.0, + "7": 22771554.0, + "8": 22926856.0, + "9": 22842096.0, + "10": 22918196.0, + "11": 22500760.0, + "12": 22460572.0, + "13": 22917018.0, + "14": 22389964.0, + "15": 22820720.0, + "16": 22830308.0, + "17": 22819122.0, + "18": 22582876.0, + "19": 22617912.0, + "20": 22693480.0, + "21": 22740412.0, + "22": 22799838.0, + "23": 22539332.0, + "24": 22770580.0, + "25": 22818910.0, + "26": 22547838.0, + "27": 22468232.0, + "28": 22452766.0, + "29": 22528906.0, + "30": 22631718.0, + "31": 22955520.0, + "32": 22584888.0, + "33": 22558558.0, + "34": 22836286.0, + "35": 22788956.0, + "36": 22589940.0, + "37": 22496912.0, + "38": 22897132.0, + "39": 22801712.0, + "40": 22657514.0, + "41": 22659596.0, + "42": 22667300.0, + "43": 22976308.0, + "44": 22745816.0, + "45": 22675136.0, + "46": 22884540.0, + "47": 22633726.0, + "48": 22928020.0, + "49": 22727656.0, + "50": 22905162.0, + "51": 22791660.0, + "52": 22748630.0, + "53": 22925420.0, + "54": 22839176.0, + "55": 22518792.0, + "56": 22877648.0, + "57": 23113592.0, + "58": 22845136.0, + "59": 22715486.0, + "60": 22743726.0, + "61": 22724104.0, + "62": 22673746.0, + "63": 22846740.0, + "64": 22823862.0, + "65": 23061360.0, + "66": 22729628.0, + "67": 22907694.0, + "68": 22609888.0, + "69": 22584610.0, + "70": 22829190.0, + "71": 22749038.0, + "72": 22655052.0, + "73": 22739796.0, + "74": 23047606.0, + "75": 23054054.0, + "76": 22901052.0, + "77": 22271520.0, + "78": 22788892.0, + "79": 22743418.0, + "80": 22706694.0, + "81": 22890786.0, + "82": 22777316.0, + "83": 22839636.0, + "84": 23010088.0, + "85": 22712948.0, + "86": 23103380.0, + "87": 22735258.0, + "88": 22636824.0, + "89": 22498828.0, + "90": 22972694.0, + "91": 22767128.0, + "92": 22808892.0, + "93": 22659368.0, + "94": 22911112.0, + "95": 23047740.0, + "96": 22828678.0, + "97": 22608174.0, + "98": 22762982.0, + "99": 22905800.0, + "100": 23015792.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 519038464.0, + "2": 519038464.0, + "3": 519038464.0, + "4": 519038464.0, + "5": 519038464.0, + "6": 519038464.0, + "7": 519038464.0, + "8": 519038464.0, + "9": 519038464.0, + "10": 519038464.0, + "11": 519038464.0, + "12": 519038464.0, + "13": 519038464.0, + "14": 519038464.0, + "15": 519038464.0, + "16": 519038464.0, + "17": 519038464.0, + "18": 519038464.0, + "19": 519038464.0, + "20": 519038464.0, + "21": 519038464.0, + "22": 519038464.0, + "23": 519038464.0, + "24": 519038464.0, + "25": 519038464.0, + "26": 519038464.0, + "27": 519038464.0, + "28": 519038464.0, + "29": 519038464.0, + "30": 519038464.0, + "31": 519038464.0, + "32": 519038464.0, + "33": 519038464.0, + "34": 519038464.0, + "35": 519038464.0, + "36": 519038464.0, + "37": 519038464.0, + "38": 519038464.0, + "39": 519038464.0, + "40": 519038464.0, + "41": 519038464.0, + "42": 519038464.0, + "43": 519038464.0, + "44": 519038464.0, + "45": 519038464.0, + "46": 519038464.0, + "47": 519038464.0, + "48": 519038464.0, + "49": 519038464.0, + "50": 519038464.0, + "51": 519038464.0, + "52": 519038464.0, + "53": 519038464.0, + "54": 519038464.0, + "55": 519038464.0, + "56": 519038464.0, + "57": 519038464.0, + "58": 519038464.0, + "59": 519038464.0, + "60": 519038464.0, + "61": 519038464.0, + "62": 519038464.0, + "63": 519038464.0, + "64": 519038464.0, + "65": 519038464.0, + "66": 519038464.0, + "67": 519038464.0, + "68": 519038464.0, + "69": 519038464.0, + "70": 519038464.0, + "71": 519038464.0, + "72": 519038464.0, + "73": 519038464.0, + "74": 519038464.0, + "75": 519038464.0, + "76": 519038464.0, + "77": 519038464.0, + "78": 519038464.0, + "79": 519038464.0, + "80": 519038464.0, + "81": 519038464.0, + "82": 519038464.0, + "83": 519038464.0, + "84": 519038464.0, + "85": 519038464.0, + "86": 519038464.0, + "87": 519038464.0, + "88": 519038464.0, + "89": 519038464.0, + "90": 519038464.0, + "91": 519038464.0, + "92": 519038464.0, + "93": 519038464.0, + "94": 519038464.0, + "95": 519038464.0, + "96": 519038464.0, + "97": 519038464.0, + "98": 519038464.0, + "99": 519038464.0, + "100": 519038464.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2296009728.0, + "2": 2436866048.0, + "3": 2436866048.0, + "4": 2436866048.0, + "5": 2436866048.0, + "6": 2436866048.0, + "7": 2436866048.0, + "8": 2436866048.0, + "9": 2436866048.0, + "10": 2436866048.0, + "11": 2436866048.0, + "12": 2436866048.0, + "13": 2436866048.0, + "14": 2436866048.0, + "15": 2436866048.0, + "16": 2436866048.0, + "17": 2436866048.0, + "18": 2436866048.0, + "19": 2436866048.0, + "20": 2436866048.0, + "21": 2436866048.0, + "22": 2436866048.0, + "23": 2436866048.0, + "24": 2436866048.0, + "25": 2436866048.0, + "26": 2436866048.0, + "27": 2436866048.0, + "28": 2436866048.0, + "29": 2436866048.0, + "30": 2436866048.0, + "31": 2436866048.0, + "32": 2436866048.0, + "33": 2436866048.0, + "34": 2436866048.0, + "35": 2436866048.0, + "36": 2436866048.0, + "37": 2436866048.0, + "38": 2436866048.0, + "39": 2436866048.0, + "40": 2436866048.0, + "41": 2436866048.0, + "42": 2436866048.0, + "43": 2436866048.0, + "44": 2436866048.0, + "45": 2436866048.0, + "46": 2436866048.0, + "47": 2436866048.0, + "48": 2436866048.0, + "49": 2436866048.0, + "50": 2436866048.0, + "51": 2436866048.0, + "52": 2436866048.0, + "53": 2436866048.0, + "54": 2436866048.0, + "55": 2436866048.0, + "56": 2436866048.0, + "57": 2436866048.0, + "58": 2436866048.0, + "59": 2436866048.0, + "60": 2436866048.0, + "61": 2436866048.0, + "62": 2436866048.0, + "63": 2436866048.0, + "64": 2436866048.0, + "65": 2436866048.0, + "66": 2436866048.0, + "67": 2436866048.0, + "68": 2436866048.0, + "69": 2436866048.0, + "70": 2436866048.0, + "71": 2436866048.0, + "72": 2436866048.0, + "73": 2436866048.0, + "74": 2436866048.0, + "75": 2436866048.0, + "76": 2436866048.0, + "77": 2436866048.0, + "78": 2436866048.0, + "79": 2436866048.0, + "80": 2436866048.0, + "81": 2436866048.0, + "82": 2436866048.0, + "83": 2436866048.0, + "84": 2436866048.0, + "85": 2436866048.0, + "86": 2436866048.0, + "87": 2436866048.0, + "88": 2436866048.0, + "89": 2436866048.0, + "90": 2436866048.0, + "91": 2436866048.0, + "92": 2436866048.0, + "93": 2436866048.0, + "94": 2436866048.0, + "95": 2436866048.0, + "96": 2436866048.0, + "97": 2436866048.0, + "98": 2436866048.0, + "99": 2436866048.0, + "100": 2436866048.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 13.44016, + "2": 0.17357, + "3": 0.14155, + "4": 0.14433, + "5": 0.14312, + "6": 0.14041, + "7": 0.14082, + "8": 0.13921, + "9": 0.1399, + "10": 0.13856, + "11": 0.13995, + "12": 0.13864, + "13": 0.13803, + "14": 0.13783, + "15": 0.13752, + "16": 0.13882, + "17": 0.13834, + "18": 0.13863, + "19": 0.13872, + "20": 0.1384, + "21": 0.13424, + "22": 0.13105, + "23": 0.13094, + "24": 0.1307, + "25": 0.13252, + "26": 0.13172, + "27": 0.12995, + "28": 0.13015, + "29": 0.13002, + "30": 0.13019, + "31": 0.13071, + "32": 0.13106, + "33": 0.1305, + "34": 0.13023, + "35": 0.13178, + "36": 0.13167, + "37": 0.13002, + "38": 0.13094, + "39": 0.13093, + "40": 0.13167, + "41": 0.13178, + "42": 0.13107, + "43": 0.1328, + "44": 0.13048, + "45": 0.13046, + "46": 0.13126, + "47": 0.12901, + "48": 0.12854, + "49": 0.12862, + "50": 0.12918, + "51": 0.14204, + "52": 0.13766, + "53": 0.13573, + "54": 0.13601, + "55": 0.13392, + "56": 0.13591, + "57": 0.13683, + "58": 0.13487, + "59": 0.13645, + "60": 0.13627, + "61": 0.13507, + "62": 0.13578, + "63": 0.13619, + "64": 0.13556, + "65": 0.13673, + "66": 0.13706, + "67": 0.13535, + "68": 0.13581, + "69": 0.1342, + "70": 0.13519, + "71": 0.13563, + "72": 0.13553, + "73": 0.13626, + "74": 0.13636, + "75": 0.1351, + "76": 0.13531, + "77": 0.1341, + "78": 0.13121, + "79": 0.13164, + "80": 0.1338, + "81": 0.13214, + "82": 0.13227, + "83": 0.13301, + "84": 0.13291, + "85": 0.13384, + "86": 0.13276, + "87": 0.13499, + "88": 0.13549, + "89": 0.13554, + "90": 0.13505, + "91": 0.13486, + "92": 0.13406, + "93": 0.13522, + "94": 0.13615, + "95": 0.1365, + "96": 0.13586, + "97": 0.13623, + "98": 0.13603, + "99": 0.13615, + "100": 0.13526 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts.json new file mode 100644 index 00000000000..03ebc195862 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.80831, + "2": 10.81091, + "3": 10.82881, + "4": 10.82888, + "5": 10.8518, + "6": 10.84129, + "7": 10.839, + "8": 10.80345, + "9": 10.87875, + "10": 10.88064, + "11": 10.87605, + "12": 10.82786, + "13": 10.84179, + "14": 10.81686, + "15": 10.80637, + "16": 10.79763, + "17": 10.76624, + "18": 10.78069, + "19": 10.75188, + "20": 10.63371, + "21": 10.68119, + "22": 10.63819, + "23": 10.75544, + "24": 10.61129, + "25": 10.47478, + "26": 10.59702, + "27": 10.53977, + "28": 10.45162, + "29": 10.39421, + "30": 10.39348, + "31": 10.49397, + "32": 10.32158, + "33": 10.27676, + "34": 10.44629, + "35": 9.96856, + "36": 10.11335, + "37": 10.02306, + "38": 10.37579, + "39": 9.78845, + "40": 10.10124, + "41": 10.12323, + "42": 10.02969, + "43": 10.19869, + "44": 10.05528, + "45": 9.68289, + "46": 9.98143, + "47": 9.92628, + "48": 9.66986, + "49": 9.9198, + "50": 9.9226, + "51": 9.79344, + "52": 9.32777, + "53": 9.65056, + "54": 9.8608, + "55": 9.98167, + "56": 9.81701, + "57": 9.74358, + "58": 9.83, + "59": 9.32869, + "60": 9.35336, + "61": 9.45108, + "62": 10.19054, + "63": 9.35643, + "64": 9.62865, + "65": 9.70227, + "66": 9.52515, + "67": 9.6623, + "68": 9.58775, + "69": 9.38554, + "70": 9.73858, + "71": 9.87574, + "72": 9.69164, + "73": 9.39216, + "74": 9.43911, + "75": 8.95557, + "76": 9.56378, + "77": 9.6144, + "78": 9.39189, + "79": 9.52909, + "80": 9.31414, + "81": 9.70167, + "82": 9.90384, + "83": 9.31614, + "84": 9.47152, + "85": 8.97772, + "86": 9.66417, + "87": 9.43151, + "88": 9.58677, + "89": 9.52297, + "90": 9.55832, + "91": 9.62794, + "92": 9.14014, + "93": 9.42404, + "94": 9.54555, + "95": 9.13499, + "96": 8.75216, + "97": 9.58103, + "98": 9.79018, + "99": 9.37904, + "100": 9.21212 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1004.0, + "2": 1243.0, + "3": 1236.0, + "4": 1235.0, + "5": 1179.0, + "6": 1319.0, + "7": 1173.0, + "8": 1020.0, + "9": 1205.0, + "10": 1270.0, + "11": 1163.0, + "12": 1276.0, + "13": 1398.0, + "14": 1096.0, + "15": 1148.0, + "16": 1104.0, + "17": 1141.0, + "18": 1312.0, + "19": 1200.0, + "20": 1094.0, + "21": 1197.0, + "22": 1286.0, + "23": 1353.0, + "24": 1321.0, + "25": 1053.0, + "26": 1219.0, + "27": 1300.0, + "28": 1428.0, + "29": 1300.0, + "30": 1550.0, + "31": 1500.0, + "32": 1450.0, + "33": 1597.0, + "34": 1487.0, + "35": 1196.0, + "36": 1333.0, + "37": 1457.0, + "38": 1618.0, + "39": 1321.0, + "40": 1467.0, + "41": 1743.0, + "42": 1583.0, + "43": 1726.0, + "44": 1687.0, + "45": 1607.0, + "46": 1887.0, + "47": 1694.0, + "48": 1589.0, + "49": 1754.0, + "50": 1681.0, + "51": 1792.0, + "52": 1765.0, + "53": 1874.0, + "54": 1854.0, + "55": 1816.0, + "56": 1894.0, + "57": 1855.0, + "58": 1733.0, + "59": 1425.0, + "60": 1916.0, + "61": 2236.0, + "62": 2138.0, + "63": 2016.0, + "64": 2084.0, + "65": 2473.0, + "66": 2130.0, + "67": 2275.0, + "68": 2207.0, + "69": 2199.0, + "70": 2462.0, + "71": 2390.0, + "72": 2501.0, + "73": 1957.0, + "74": 2120.0, + "75": 2095.0, + "76": 2325.0, + "77": 2395.0, + "78": 2502.0, + "79": 2700.0, + "80": 1996.0, + "81": 2404.0, + "82": 2501.0, + "83": 2493.0, + "84": 2074.0, + "85": 2167.0, + "86": 2273.0, + "87": 2540.0, + "88": 2295.0, + "89": 2583.0, + "90": 2139.0, + "91": 2390.0, + "92": 1929.0, + "93": 2179.0, + "94": 2522.0, + "95": 2468.0, + "96": 2219.0, + "97": 2145.0, + "98": 2343.0, + "99": 2330.0, + "100": 1971.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0, + "51": 730321408.0, + "52": 730321408.0, + "53": 730321408.0, + "54": 730321408.0, + "55": 730321408.0, + "56": 730321408.0, + "57": 730321408.0, + "58": 730321408.0, + "59": 730321408.0, + "60": 730321408.0, + "61": 730321408.0, + "62": 730321408.0, + "63": 730321408.0, + "64": 730321408.0, + "65": 730321408.0, + "66": 730321408.0, + "67": 730321408.0, + "68": 730321408.0, + "69": 730321408.0, + "70": 730321408.0, + "71": 730321408.0, + "72": 730321408.0, + "73": 730321408.0, + "74": 730321408.0, + "75": 730321408.0, + "76": 730321408.0, + "77": 730321408.0, + "78": 730321408.0, + "79": 730321408.0, + "80": 730321408.0, + "81": 730321408.0, + "82": 730321408.0, + "83": 730321408.0, + "84": 730321408.0, + "85": 730321408.0, + "86": 730321408.0, + "87": 730321408.0, + "88": 730321408.0, + "89": 730321408.0, + "90": 730321408.0, + "91": 730321408.0, + "92": 730321408.0, + "93": 730321408.0, + "94": 730321408.0, + "95": 730321408.0, + "96": 730321408.0, + "97": 730321408.0, + "98": 730321408.0, + "99": 730321408.0, + "100": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2513633792.0, + "2": 2795345408.0, + "3": 2795345408.0, + "4": 2795345408.0, + "5": 2795345408.0, + "6": 2795345408.0, + "7": 2795345408.0, + "8": 2795345408.0, + "9": 2795345408.0, + "10": 2795345408.0, + "11": 2795345408.0, + "12": 2795345408.0, + "13": 2795345408.0, + "14": 2795345408.0, + "15": 2795345408.0, + "16": 2795345408.0, + "17": 2795345408.0, + "18": 2795345408.0, + "19": 2795345408.0, + "20": 2795345408.0, + "21": 2795345408.0, + "22": 2795345408.0, + "23": 2795345408.0, + "24": 2795345408.0, + "25": 2795345408.0, + "26": 2795345408.0, + "27": 2795345408.0, + "28": 2795345408.0, + "29": 2795345408.0, + "30": 2795345408.0, + "31": 2795345408.0, + "32": 2795345408.0, + "33": 2795345408.0, + "34": 2795345408.0, + "35": 2795345408.0, + "36": 2795345408.0, + "37": 2795345408.0, + "38": 2795345408.0, + "39": 2795345408.0, + "40": 2795345408.0, + "41": 2795345408.0, + "42": 2795345408.0, + "43": 2795345408.0, + "44": 2795345408.0, + "45": 2795345408.0, + "46": 2795345408.0, + "47": 2795345408.0, + "48": 2795345408.0, + "49": 2795345408.0, + "50": 2795345408.0, + "51": 2795345408.0, + "52": 2795345408.0, + "53": 2795345408.0, + "54": 2795345408.0, + "55": 2795345408.0, + "56": 2795345408.0, + "57": 2795345408.0, + "58": 2795345408.0, + "59": 2795345408.0, + "60": 2795345408.0, + "61": 2795345408.0, + "62": 2795345408.0, + "63": 2795345408.0, + "64": 2795345408.0, + "65": 2795345408.0, + "66": 2795345408.0, + "67": 2795345408.0, + "68": 2795345408.0, + "69": 2795345408.0, + "70": 2795345408.0, + "71": 2795345408.0, + "72": 2795345408.0, + "73": 2795345408.0, + "74": 2795345408.0, + "75": 2795345408.0, + "76": 2795345408.0, + "77": 2795345408.0, + "78": 2795345408.0, + "79": 2795345408.0, + "80": 2795345408.0, + "81": 2795345408.0, + "82": 2795345408.0, + "83": 2795345408.0, + "84": 2795345408.0, + "85": 2795345408.0, + "86": 2795345408.0, + "87": 2795345408.0, + "88": 2795345408.0, + "89": 2795345408.0, + "90": 2795345408.0, + "91": 2795345408.0, + "92": 2795345408.0, + "93": 2795345408.0, + "94": 2795345408.0, + "95": 2795345408.0, + "96": 2795345408.0, + "97": 2795345408.0, + "98": 2795345408.0, + "99": 2795345408.0, + "100": 2795345408.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 11.76623, + "2": 0.41645, + "3": 0.15729, + "4": 0.15655, + "5": 0.15439, + "6": 0.15381, + "7": 0.15343, + "8": 0.15339, + "9": 0.15322, + "10": 0.15355, + "11": 0.15239, + "12": 0.15196, + "13": 0.15235, + "14": 0.15283, + "15": 0.15313, + "16": 0.15425, + "17": 0.15411, + "18": 0.15593, + "19": 0.1533, + "20": 0.15547, + "21": 0.15314, + "22": 0.15551, + "23": 0.1542, + "24": 0.15396, + "25": 0.15334, + "26": 0.1528, + "27": 0.15224, + "28": 0.15377, + "29": 0.15378, + "30": 0.15296, + "31": 0.15277, + "32": 0.15329, + "33": 0.15349, + "34": 0.15291, + "35": 0.15336, + "36": 0.15204, + "37": 0.15238, + "38": 0.15344, + "39": 0.15283, + "40": 0.15272, + "41": 0.15285, + "42": 0.15614, + "43": 0.15406, + "44": 0.15389, + "45": 0.15591, + "46": 0.15294, + "47": 0.15419, + "48": 0.15358, + "49": 0.15525, + "50": 0.15464, + "51": 0.15896, + "52": 0.15708, + "53": 0.15757, + "54": 0.15758, + "55": 0.15641, + "56": 0.15661, + "57": 0.15804, + "58": 0.16037, + "59": 0.15723, + "60": 0.1577, + "61": 0.1593, + "62": 0.15586, + "63": 0.15828, + "64": 0.15836, + "65": 0.16023, + "66": 0.15618, + "67": 0.15583, + "68": 0.15756, + "69": 0.18281, + "70": 0.16635, + "71": 0.19055, + "72": 0.15756, + "73": 0.15973, + "74": 0.16035, + "75": 0.15764, + "76": 0.15689, + "77": 0.15696, + "78": 0.15869, + "79": 0.15855, + "80": 0.15884, + "81": 0.15812, + "82": 0.15771, + "83": 0.15837, + "84": 0.15744, + "85": 0.15771, + "86": 0.15721, + "87": 0.15692, + "88": 0.15759, + "89": 0.15908, + "90": 0.15803, + "91": 0.15786, + "92": 0.15817, + "93": 0.15819, + "94": 0.15883, + "95": 0.15933, + "96": 0.15749, + "97": 0.15871, + "98": 0.1577, + "99": 0.15695, + "100": 0.15802 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts_dgx_a100.json index 3b1e19e8a67..4771e4e3c8c 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_resume_torch_dist_tunable_overlap/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.81184, "5": 10.85464, "10": 10.88256, "15": 10.80679, "20": 10.63196, "25": 10.47374, "30": 10.39285, "35": 9.96791, "40": 10.1, "45": 9.68344, "50": 9.92465, "55": 9.98132, "60": 9.3523, "65": 9.70213, "70": 9.73809, "75": 8.95616, "80": 9.31501, "85": 8.97886, "90": 9.55812, "95": 9.13529, "100": 9.21091}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1125.0, "5": 1255.0, "10": 1367.0, "15": 1127.0, "20": 1082.0, "25": 1114.0, "30": 1558.0, "35": 1292.0, "40": 1433.0, "45": 1564.0, "50": 1749.0, "55": 1718.0, "60": 1872.0, "65": 2464.0, "70": 2564.0, "75": 1884.0, "80": 1924.0, "85": 2150.0, "90": 2319.0, "95": 2518.0, "100": 2071.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 733859840.0, "5": 733859840.0, "10": 733859840.0, "15": 733859840.0, "20": 733859840.0, "25": 733859840.0, "30": 733859840.0, "35": 733859840.0, "40": 733859840.0, "45": 733859840.0, "50": 733859840.0, "55": 733859840.0, "60": 733859840.0, "65": 733859840.0, "70": 733859840.0, "75": 733859840.0, "80": 733859840.0, "85": 733859840.0, "90": 733859840.0, "95": 733859840.0, "100": 733859840.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 4312984064.0, "5": 4596792832.0, "10": 4596792832.0, "15": 4596792832.0, "20": 4596792832.0, "25": 4596792832.0, "30": 4596792832.0, "35": 4596792832.0, "40": 4596792832.0, "45": 4596792832.0, "50": 4596792832.0, "55": 4596792832.0, "60": 4596792832.0, "65": 4596792832.0, "70": 4596792832.0, "75": 4596792832.0, "80": 4596792832.0, "85": 4596792832.0, "90": 4596792832.0, "95": 4596792832.0, "100": 4596792832.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 17.99007, "5": 0.37673, "10": 0.36645, "15": 0.3643, "20": 0.36375, "25": 0.3652, "30": 0.36495, "35": 0.36435, "40": 0.36456, "45": 0.3636, "50": 0.36345, "55": 0.36651, "60": 0.36683, "65": 0.36434, "70": 0.36726, "75": 0.36517, "80": 0.56121, "85": 0.36207, "90": 0.35913, "95": 0.36112, "100": 0.36099}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.80831, + "2": 10.81091, + "3": 10.82881, + "4": 10.82888, + "5": 10.8518, + "6": 10.84129, + "7": 10.839, + "8": 10.80345, + "9": 10.87875, + "10": 10.88064, + "11": 10.87605, + "12": 10.82786, + "13": 10.84179, + "14": 10.81686, + "15": 10.80637, + "16": 10.79763, + "17": 10.76624, + "18": 10.78069, + "19": 10.75188, + "20": 10.63371, + "21": 10.68119, + "22": 10.63819, + "23": 10.75544, + "24": 10.61129, + "25": 10.47478, + "26": 10.59702, + "27": 10.53977, + "28": 10.45162, + "29": 10.39421, + "30": 10.39348, + "31": 10.49397, + "32": 10.32158, + "33": 10.27676, + "34": 10.44629, + "35": 9.96856, + "36": 10.11335, + "37": 10.02306, + "38": 10.37579, + "39": 9.78845, + "40": 10.10124, + "41": 10.12323, + "42": 10.02969, + "43": 10.19869, + "44": 10.05528, + "45": 9.68289, + "46": 9.98143, + "47": 9.92628, + "48": 9.66986, + "49": 9.9198, + "50": 9.9226, + "51": 9.79344, + "52": 9.32777, + "53": 9.65056, + "54": 9.8608, + "55": 9.98167, + "56": 9.81701, + "57": 9.74358, + "58": 9.83, + "59": 9.32869, + "60": 9.35336, + "61": 9.45108, + "62": 10.19054, + "63": 9.35643, + "64": 9.62865, + "65": 9.70227, + "66": 9.52515, + "67": 9.6623, + "68": 9.58775, + "69": 9.38554, + "70": 9.73858, + "71": 9.87574, + "72": 9.69164, + "73": 9.39216, + "74": 9.43911, + "75": 8.95557, + "76": 9.56378, + "77": 9.6144, + "78": 9.39189, + "79": 9.52909, + "80": 9.31414, + "81": 9.70167, + "82": 9.90384, + "83": 9.31614, + "84": 9.47152, + "85": 8.97772, + "86": 9.66417, + "87": 9.43151, + "88": 9.58677, + "89": 9.52297, + "90": 9.55832, + "91": 9.62794, + "92": 9.14014, + "93": 9.42404, + "94": 9.54555, + "95": 9.13499, + "96": 8.75216, + "97": 9.58103, + "98": 9.79018, + "99": 9.37904, + "100": 9.21212 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1004.0, + "2": 1243.0, + "3": 1236.0, + "4": 1235.0, + "5": 1179.0, + "6": 1319.0, + "7": 1173.0, + "8": 1020.0, + "9": 1205.0, + "10": 1270.0, + "11": 1163.0, + "12": 1276.0, + "13": 1398.0, + "14": 1096.0, + "15": 1148.0, + "16": 1104.0, + "17": 1141.0, + "18": 1312.0, + "19": 1200.0, + "20": 1094.0, + "21": 1197.0, + "22": 1286.0, + "23": 1353.0, + "24": 1321.0, + "25": 1053.0, + "26": 1219.0, + "27": 1300.0, + "28": 1428.0, + "29": 1300.0, + "30": 1550.0, + "31": 1500.0, + "32": 1450.0, + "33": 1597.0, + "34": 1487.0, + "35": 1196.0, + "36": 1333.0, + "37": 1457.0, + "38": 1618.0, + "39": 1321.0, + "40": 1467.0, + "41": 1743.0, + "42": 1583.0, + "43": 1726.0, + "44": 1687.0, + "45": 1607.0, + "46": 1887.0, + "47": 1694.0, + "48": 1589.0, + "49": 1754.0, + "50": 1681.0, + "51": 1792.0, + "52": 1765.0, + "53": 1874.0, + "54": 1854.0, + "55": 1816.0, + "56": 1894.0, + "57": 1855.0, + "58": 1733.0, + "59": 1425.0, + "60": 1916.0, + "61": 2236.0, + "62": 2138.0, + "63": 2016.0, + "64": 2084.0, + "65": 2473.0, + "66": 2130.0, + "67": 2275.0, + "68": 2207.0, + "69": 2199.0, + "70": 2462.0, + "71": 2390.0, + "72": 2501.0, + "73": 1957.0, + "74": 2120.0, + "75": 2095.0, + "76": 2325.0, + "77": 2395.0, + "78": 2502.0, + "79": 2700.0, + "80": 1996.0, + "81": 2404.0, + "82": 2501.0, + "83": 2493.0, + "84": 2074.0, + "85": 2167.0, + "86": 2273.0, + "87": 2540.0, + "88": 2295.0, + "89": 2583.0, + "90": 2139.0, + "91": 2390.0, + "92": 1929.0, + "93": 2179.0, + "94": 2522.0, + "95": 2468.0, + "96": 2219.0, + "97": 2145.0, + "98": 2343.0, + "99": 2330.0, + "100": 1971.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0, + "51": 730321408.0, + "52": 730321408.0, + "53": 730321408.0, + "54": 730321408.0, + "55": 730321408.0, + "56": 730321408.0, + "57": 730321408.0, + "58": 730321408.0, + "59": 730321408.0, + "60": 730321408.0, + "61": 730321408.0, + "62": 730321408.0, + "63": 730321408.0, + "64": 730321408.0, + "65": 730321408.0, + "66": 730321408.0, + "67": 730321408.0, + "68": 730321408.0, + "69": 730321408.0, + "70": 730321408.0, + "71": 730321408.0, + "72": 730321408.0, + "73": 730321408.0, + "74": 730321408.0, + "75": 730321408.0, + "76": 730321408.0, + "77": 730321408.0, + "78": 730321408.0, + "79": 730321408.0, + "80": 730321408.0, + "81": 730321408.0, + "82": 730321408.0, + "83": 730321408.0, + "84": 730321408.0, + "85": 730321408.0, + "86": 730321408.0, + "87": 730321408.0, + "88": 730321408.0, + "89": 730321408.0, + "90": 730321408.0, + "91": 730321408.0, + "92": 730321408.0, + "93": 730321408.0, + "94": 730321408.0, + "95": 730321408.0, + "96": 730321408.0, + "97": 730321408.0, + "98": 730321408.0, + "99": 730321408.0, + "100": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2513633792.0, + "2": 2795345408.0, + "3": 2795345408.0, + "4": 2795345408.0, + "5": 2795345408.0, + "6": 2795345408.0, + "7": 2795345408.0, + "8": 2795345408.0, + "9": 2795345408.0, + "10": 2795345408.0, + "11": 2795345408.0, + "12": 2795345408.0, + "13": 2795345408.0, + "14": 2795345408.0, + "15": 2795345408.0, + "16": 2795345408.0, + "17": 2795345408.0, + "18": 2795345408.0, + "19": 2795345408.0, + "20": 2795345408.0, + "21": 2795345408.0, + "22": 2795345408.0, + "23": 2795345408.0, + "24": 2795345408.0, + "25": 2795345408.0, + "26": 2795345408.0, + "27": 2795345408.0, + "28": 2795345408.0, + "29": 2795345408.0, + "30": 2795345408.0, + "31": 2795345408.0, + "32": 2795345408.0, + "33": 2795345408.0, + "34": 2795345408.0, + "35": 2795345408.0, + "36": 2795345408.0, + "37": 2795345408.0, + "38": 2795345408.0, + "39": 2795345408.0, + "40": 2795345408.0, + "41": 2795345408.0, + "42": 2795345408.0, + "43": 2795345408.0, + "44": 2795345408.0, + "45": 2795345408.0, + "46": 2795345408.0, + "47": 2795345408.0, + "48": 2795345408.0, + "49": 2795345408.0, + "50": 2795345408.0, + "51": 2795345408.0, + "52": 2795345408.0, + "53": 2795345408.0, + "54": 2795345408.0, + "55": 2795345408.0, + "56": 2795345408.0, + "57": 2795345408.0, + "58": 2795345408.0, + "59": 2795345408.0, + "60": 2795345408.0, + "61": 2795345408.0, + "62": 2795345408.0, + "63": 2795345408.0, + "64": 2795345408.0, + "65": 2795345408.0, + "66": 2795345408.0, + "67": 2795345408.0, + "68": 2795345408.0, + "69": 2795345408.0, + "70": 2795345408.0, + "71": 2795345408.0, + "72": 2795345408.0, + "73": 2795345408.0, + "74": 2795345408.0, + "75": 2795345408.0, + "76": 2795345408.0, + "77": 2795345408.0, + "78": 2795345408.0, + "79": 2795345408.0, + "80": 2795345408.0, + "81": 2795345408.0, + "82": 2795345408.0, + "83": 2795345408.0, + "84": 2795345408.0, + "85": 2795345408.0, + "86": 2795345408.0, + "87": 2795345408.0, + "88": 2795345408.0, + "89": 2795345408.0, + "90": 2795345408.0, + "91": 2795345408.0, + "92": 2795345408.0, + "93": 2795345408.0, + "94": 2795345408.0, + "95": 2795345408.0, + "96": 2795345408.0, + "97": 2795345408.0, + "98": 2795345408.0, + "99": 2795345408.0, + "100": 2795345408.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 8.66407, + "2": 0.18828, + "3": 0.15715, + "4": 0.15685, + "5": 0.1544, + "6": 0.15356, + "7": 0.15196, + "8": 0.15101, + "9": 0.15114, + "10": 0.15067, + "11": 0.15113, + "12": 0.15109, + "13": 0.15255, + "14": 0.15181, + "15": 0.15165, + "16": 0.14989, + "17": 0.15094, + "18": 0.15062, + "19": 0.15148, + "20": 0.15014, + "21": 0.15114, + "22": 0.14973, + "23": 0.15192, + "24": 0.15003, + "25": 0.15228, + "26": 0.15066, + "27": 0.15209, + "28": 0.15056, + "29": 0.1516, + "30": 0.15083, + "31": 0.15211, + "32": 0.15028, + "33": 0.1518, + "34": 0.1494, + "35": 0.1521, + "36": 0.15002, + "37": 0.15257, + "38": 0.15095, + "39": 0.1517, + "40": 0.1501, + "41": 0.15352, + "42": 0.15453, + "43": 0.15187, + "44": 0.15281, + "45": 0.15294, + "46": 0.15214, + "47": 0.15376, + "48": 0.15363, + "49": 0.15977, + "50": 0.15249, + "51": 0.15543, + "52": 0.15363, + "53": 0.15379, + "54": 0.15555, + "55": 0.15252, + "56": 0.15295, + "57": 0.15496, + "58": 0.15756, + "59": 0.15345, + "60": 0.15784, + "61": 0.1581, + "62": 0.15302, + "63": 0.15579, + "64": 0.1536, + "65": 0.15523, + "66": 0.15593, + "67": 0.15868, + "68": 0.15303, + "69": 0.1554, + "70": 0.15409, + "71": 0.15229, + "72": 0.15299, + "73": 0.15495, + "74": 0.15601, + "75": 0.15285, + "76": 0.15774, + "77": 0.15171, + "78": 0.15423, + "79": 0.15398, + "80": 0.15445, + "81": 0.15381, + "82": 0.15311, + "83": 0.15584, + "84": 0.15556, + "85": 0.15506, + "86": 0.15314, + "87": 0.15269, + "88": 0.15515, + "89": 0.15923, + "90": 0.15325, + "91": 0.15755, + "92": 0.1543, + "93": 0.15481, + "94": 0.15321, + "95": 0.15397, + "96": 0.15322, + "97": 0.15471, + "98": 0.15631, + "99": 0.15271, + "100": 0.15653 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts.json new file mode 100644 index 00000000000..cf9f4245915 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.80779, + "2": 10.81028, + "3": 10.82881, + "4": 10.82931, + "5": 10.85227, + "6": 10.84112, + "7": 10.83921, + "8": 10.80433, + "9": 10.87802, + "10": 10.88031, + "11": 10.87647, + "12": 10.82798, + "13": 10.84122, + "14": 10.81649, + "15": 10.80572, + "16": 10.7979, + "17": 10.76665, + "18": 10.78004, + "19": 10.7521, + "20": 10.63378, + "21": 10.68086, + "22": 10.63834, + "23": 10.75546, + "24": 10.61158, + "25": 10.47402, + "26": 10.59699, + "27": 10.53929, + "28": 10.45199, + "29": 10.39324, + "30": 10.39328, + "31": 10.49337, + "32": 10.32183, + "33": 10.2767, + "34": 10.44619, + "35": 9.96854, + "36": 10.11277, + "37": 10.02313, + "38": 10.37525, + "39": 9.78827, + "40": 10.10093, + "41": 10.1232, + "42": 10.02925, + "43": 10.19868, + "44": 10.05532, + "45": 9.68289, + "46": 9.98153, + "47": 9.92617, + "48": 9.66965, + "49": 9.91955, + "50": 9.92258 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1058.0, + "2": 1243.0, + "3": 1255.0, + "4": 1229.0, + "5": 1178.0, + "6": 1278.0, + "7": 1129.0, + "8": 955.0, + "9": 1299.0, + "10": 1314.0, + "11": 1220.0, + "12": 1334.0, + "13": 1364.0, + "14": 1153.0, + "15": 1214.0, + "16": 1150.0, + "17": 1176.0, + "18": 1304.0, + "19": 1090.0, + "20": 1170.0, + "21": 1286.0, + "22": 1325.0, + "23": 1353.0, + "24": 1341.0, + "25": 1100.0, + "26": 1174.0, + "27": 1357.0, + "28": 1293.0, + "29": 1259.0, + "30": 1539.0, + "31": 1485.0, + "32": 1422.0, + "33": 1410.0, + "34": 1525.0, + "35": 1163.0, + "36": 1230.0, + "37": 1392.0, + "38": 1570.0, + "39": 1260.0, + "40": 1481.0, + "41": 1687.0, + "42": 1606.0, + "43": 1696.0, + "44": 1648.0, + "45": 1620.0, + "46": 1901.0, + "47": 1627.0, + "48": 1595.0, + "49": 1750.0, + "50": 1723.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 4311542784.0, + "2": 4593254400.0, + "3": 4593254400.0, + "4": 4593254400.0, + "5": 4593254400.0, + "6": 4593254400.0, + "7": 4593254400.0, + "8": 4593254400.0, + "9": 4593254400.0, + "10": 4593254400.0, + "11": 4593254400.0, + "12": 4593254400.0, + "13": 4593254400.0, + "14": 4593254400.0, + "15": 4593254400.0, + "16": 4593254400.0, + "17": 4593254400.0, + "18": 4593254400.0, + "19": 4593254400.0, + "20": 4593254400.0, + "21": 4593254400.0, + "22": 4593254400.0, + "23": 4593254400.0, + "24": 4593254400.0, + "25": 4593254400.0, + "26": 4593254400.0, + "27": 4593254400.0, + "28": 4593254400.0, + "29": 4593254400.0, + "30": 4593254400.0, + "31": 4593254400.0, + "32": 4593254400.0, + "33": 4593254400.0, + "34": 4593254400.0, + "35": 4593254400.0, + "36": 4593254400.0, + "37": 4593254400.0, + "38": 4593254400.0, + "39": 4593254400.0, + "40": 4593254400.0, + "41": 4593254400.0, + "42": 4593254400.0, + "43": 4593254400.0, + "44": 4593254400.0, + "45": 4593254400.0, + "46": 4593254400.0, + "47": 4593254400.0, + "48": 4593254400.0, + "49": 4593254400.0, + "50": 4593254400.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 9.15288, + "2": 0.50843, + "3": 0.16717, + "4": 0.16415, + "5": 0.16752, + "6": 0.16666, + "7": 0.16995, + "8": 0.17105, + "9": 0.17027, + "10": 0.17005, + "11": 0.17, + "12": 0.16945, + "13": 0.1682, + "14": 0.1687, + "15": 0.1682, + "16": 0.16899, + "17": 0.16877, + "18": 0.16877, + "19": 0.1688, + "20": 0.16832, + "21": 0.1693, + "22": 0.16953, + "23": 0.16772, + "24": 0.16919, + "25": 0.169, + "26": 0.16905, + "27": 0.16801, + "28": 0.16843, + "29": 0.1685, + "30": 0.16864, + "31": 0.16799, + "32": 0.16279, + "33": 0.16411, + "34": 0.16258, + "35": 0.16352, + "36": 0.16277, + "37": 0.16443, + "38": 0.16253, + "39": 0.16392, + "40": 0.16225, + "41": 0.16316, + "42": 0.16241, + "43": 0.16358, + "44": 0.16211, + "45": 0.16324, + "46": 0.16385, + "47": 0.16427, + "48": 0.16287, + "49": 0.16404, + "50": 0.164 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts_dgx_a100.json index 0a4708ee24f..16019e9879e 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_tunable_overlap/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.81184, "5": 10.85464, "10": 10.88256, "15": 10.80679, "20": 10.63196, "25": 10.47374, "30": 10.39285, "35": 9.96791, "40": 10.1, "45": 9.68344, "50": 9.92465}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1125.0, "5": 1255.0, "10": 1367.0, "15": 1127.0, "20": 1082.0, "25": 1114.0, "30": 1558.0, "35": 1292.0, "40": 1433.0, "45": 1564.0, "50": 1749.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 733859840.0, "5": 733859840.0, "10": 733859840.0, "15": 733859840.0, "20": 733859840.0, "25": 733859840.0, "30": 733859840.0, "35": 733859840.0, "40": 733859840.0, "45": 733859840.0, "50": 733859840.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 4312984064.0, "5": 4596792832.0, "10": 4596792832.0, "15": 4596792832.0, "20": 4596792832.0, "25": 4596792832.0, "30": 4596792832.0, "35": 4596792832.0, "40": 4596792832.0, "45": 4596792832.0, "50": 4596792832.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 15.07476, "5": 0.37209, "10": 0.36754, "15": 0.36929, "20": 0.36944, "25": 0.36826, "30": 0.3678, "35": 0.36826, "40": 0.36559, "45": 0.36731, "50": 0.36188}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.80779, + "2": 10.81028, + "3": 10.82881, + "4": 10.82931, + "5": 10.85227, + "6": 10.84112, + "7": 10.83921, + "8": 10.80433, + "9": 10.87802, + "10": 10.88031, + "11": 10.87647, + "12": 10.82798, + "13": 10.84122, + "14": 10.81649, + "15": 10.80572, + "16": 10.7979, + "17": 10.76665, + "18": 10.78004, + "19": 10.7521, + "20": 10.63378, + "21": 10.68086, + "22": 10.63834, + "23": 10.75546, + "24": 10.61158, + "25": 10.47402, + "26": 10.59699, + "27": 10.53929, + "28": 10.45199, + "29": 10.39324, + "30": 10.39328, + "31": 10.49337, + "32": 10.32183, + "33": 10.2767, + "34": 10.44619, + "35": 9.96854, + "36": 10.11277, + "37": 10.02313, + "38": 10.37525, + "39": 9.78827, + "40": 10.10093, + "41": 10.1232, + "42": 10.02925, + "43": 10.19868, + "44": 10.05532, + "45": 9.68289, + "46": 9.98153, + "47": 9.92617, + "48": 9.66965, + "49": 9.91955, + "50": 9.92258 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1058.0, + "2": 1243.0, + "3": 1255.0, + "4": 1229.0, + "5": 1178.0, + "6": 1278.0, + "7": 1129.0, + "8": 955.0, + "9": 1299.0, + "10": 1314.0, + "11": 1220.0, + "12": 1334.0, + "13": 1364.0, + "14": 1153.0, + "15": 1214.0, + "16": 1150.0, + "17": 1176.0, + "18": 1304.0, + "19": 1090.0, + "20": 1170.0, + "21": 1286.0, + "22": 1325.0, + "23": 1353.0, + "24": 1341.0, + "25": 1100.0, + "26": 1174.0, + "27": 1357.0, + "28": 1293.0, + "29": 1259.0, + "30": 1539.0, + "31": 1485.0, + "32": 1422.0, + "33": 1410.0, + "34": 1525.0, + "35": 1163.0, + "36": 1230.0, + "37": 1392.0, + "38": 1570.0, + "39": 1260.0, + "40": 1481.0, + "41": 1687.0, + "42": 1606.0, + "43": 1696.0, + "44": 1648.0, + "45": 1620.0, + "46": 1901.0, + "47": 1627.0, + "48": 1595.0, + "49": 1750.0, + "50": 1723.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 730321408.0, + "2": 730321408.0, + "3": 730321408.0, + "4": 730321408.0, + "5": 730321408.0, + "6": 730321408.0, + "7": 730321408.0, + "8": 730321408.0, + "9": 730321408.0, + "10": 730321408.0, + "11": 730321408.0, + "12": 730321408.0, + "13": 730321408.0, + "14": 730321408.0, + "15": 730321408.0, + "16": 730321408.0, + "17": 730321408.0, + "18": 730321408.0, + "19": 730321408.0, + "20": 730321408.0, + "21": 730321408.0, + "22": 730321408.0, + "23": 730321408.0, + "24": 730321408.0, + "25": 730321408.0, + "26": 730321408.0, + "27": 730321408.0, + "28": 730321408.0, + "29": 730321408.0, + "30": 730321408.0, + "31": 730321408.0, + "32": 730321408.0, + "33": 730321408.0, + "34": 730321408.0, + "35": 730321408.0, + "36": 730321408.0, + "37": 730321408.0, + "38": 730321408.0, + "39": 730321408.0, + "40": 730321408.0, + "41": 730321408.0, + "42": 730321408.0, + "43": 730321408.0, + "44": 730321408.0, + "45": 730321408.0, + "46": 730321408.0, + "47": 730321408.0, + "48": 730321408.0, + "49": 730321408.0, + "50": 730321408.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 4311542784.0, + "2": 4593254400.0, + "3": 4593254400.0, + "4": 4593254400.0, + "5": 4593254400.0, + "6": 4593254400.0, + "7": 4593254400.0, + "8": 4593254400.0, + "9": 4593254400.0, + "10": 4593254400.0, + "11": 4593254400.0, + "12": 4593254400.0, + "13": 4593254400.0, + "14": 4593254400.0, + "15": 4593254400.0, + "16": 4593254400.0, + "17": 4593254400.0, + "18": 4593254400.0, + "19": 4593254400.0, + "20": 4593254400.0, + "21": 4593254400.0, + "22": 4593254400.0, + "23": 4593254400.0, + "24": 4593254400.0, + "25": 4593254400.0, + "26": 4593254400.0, + "27": 4593254400.0, + "28": 4593254400.0, + "29": 4593254400.0, + "30": 4593254400.0, + "31": 4593254400.0, + "32": 4593254400.0, + "33": 4593254400.0, + "34": 4593254400.0, + "35": 4593254400.0, + "36": 4593254400.0, + "37": 4593254400.0, + "38": 4593254400.0, + "39": 4593254400.0, + "40": 4593254400.0, + "41": 4593254400.0, + "42": 4593254400.0, + "43": 4593254400.0, + "44": 4593254400.0, + "45": 4593254400.0, + "46": 4593254400.0, + "47": 4593254400.0, + "48": 4593254400.0, + "49": 4593254400.0, + "50": 4593254400.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 9.03263, + "2": 0.21266, + "3": 0.17373, + "4": 0.17827, + "5": 0.17392, + "6": 0.17641, + "7": 0.17509, + "8": 0.17211, + "9": 0.17464, + "10": 0.21373, + "11": 0.17143, + "12": 0.17137, + "13": 0.17701, + "14": 0.17242, + "15": 0.16945, + "16": 0.1686, + "17": 0.16945, + "18": 0.16793, + "19": 0.16997, + "20": 0.16992, + "21": 0.17016, + "22": 0.16832, + "23": 0.16853, + "24": 0.16912, + "25": 0.16822, + "26": 0.16908, + "27": 0.16609, + "28": 0.239, + "29": 0.16968, + "30": 0.16763, + "31": 0.16962, + "32": 0.16788, + "33": 0.1681, + "34": 0.16749, + "35": 0.16866, + "36": 0.1697, + "37": 0.16838, + "38": 0.16867, + "39": 0.16699, + "40": 0.17098, + "41": 0.1671, + "42": 0.17036, + "43": 0.16755, + "44": 0.16699, + "45": 0.1678, + "46": 0.17136, + "47": 0.16725, + "48": 0.17257, + "49": 0.16903, + "50": 0.1687 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts.json new file mode 100644 index 00000000000..fa4447e6f40 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.97215, + "2": 10.96419, + "3": 10.96484, + "4": 10.9625, + "5": 10.96069, + "6": 10.96314, + "7": 10.95542, + "8": 10.96012, + "9": 10.9642, + "10": 10.94938, + "11": 10.95571, + "12": 10.94758, + "13": 10.94696, + "14": 10.95407, + "15": 10.91083, + "16": 10.90945, + "17": 10.89001, + "18": 10.89837, + "19": 10.89189, + "20": 10.80856, + "21": 10.78598, + "22": 10.69678, + "23": 10.79518, + "24": 10.6983, + "25": 10.66637, + "26": 10.71173, + "27": 10.68383, + "28": 10.62344, + "29": 10.65067, + "30": 10.45487, + "31": 10.22475, + "32": 10.52171, + "33": 10.52706, + "34": 10.29181, + "35": 10.33574, + "36": 10.2871, + "37": 10.39557, + "38": 10.2536, + "39": 10.44971, + "40": 10.14791, + "41": 10.19255, + "42": 10.24716, + "43": 9.89482, + "44": 10.00764, + "45": 9.88792, + "46": 9.86452, + "47": 10.16578, + "48": 9.87929, + "49": 9.5693, + "50": 9.95204 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 22727298.0, + "2": 22924540.0, + "3": 22596662.0, + "4": 23219864.0, + "5": 22714604.0, + "6": 23021138.0, + "7": 22770420.0, + "8": 22926748.0, + "9": 22842456.0, + "10": 22918536.0, + "11": 22500950.0, + "12": 22459666.0, + "13": 22917172.0, + "14": 22388760.0, + "15": 22821456.0, + "16": 22831856.0, + "17": 22818966.0, + "18": 22582904.0, + "19": 22618308.0, + "20": 22695018.0, + "21": 22739412.0, + "22": 22799506.0, + "23": 22539964.0, + "24": 22771406.0, + "25": 22818944.0, + "26": 22548888.0, + "27": 22467554.0, + "28": 22453820.0, + "29": 22529468.0, + "30": 22631974.0, + "31": 22954914.0, + "32": 22584176.0, + "33": 22557850.0, + "34": 22835592.0, + "35": 22787628.0, + "36": 22589872.0, + "37": 22497168.0, + "38": 22896192.0, + "39": 22801888.0, + "40": 22658038.0, + "41": 22659420.0, + "42": 22666532.0, + "43": 22976852.0, + "44": 22746072.0, + "45": 22675348.0, + "46": 22884600.0, + "47": 22633528.0, + "48": 22929392.0, + "49": 22728496.0, + "50": 22905024.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 659815936.0, + "2": 659815936.0, + "3": 659815936.0, + "4": 659815936.0, + "5": 659815936.0, + "6": 659815936.0, + "7": 659815936.0, + "8": 659815936.0, + "9": 659815936.0, + "10": 659815936.0, + "11": 659815936.0, + "12": 659815936.0, + "13": 659815936.0, + "14": 659815936.0, + "15": 659815936.0, + "16": 659815936.0, + "17": 659815936.0, + "18": 659815936.0, + "19": 659815936.0, + "20": 659815936.0, + "21": 659815936.0, + "22": 659815936.0, + "23": 659815936.0, + "24": 659815936.0, + "25": 659815936.0, + "26": 659815936.0, + "27": 659815936.0, + "28": 659815936.0, + "29": 659815936.0, + "30": 659815936.0, + "31": 659815936.0, + "32": 659815936.0, + "33": 659815936.0, + "34": 659815936.0, + "35": 659815936.0, + "36": 659815936.0, + "37": 659815936.0, + "38": 659815936.0, + "39": 659815936.0, + "40": 659815936.0, + "41": 659815936.0, + "42": 659815936.0, + "43": 659815936.0, + "44": 659815936.0, + "45": 659815936.0, + "46": 659815936.0, + "47": 659815936.0, + "48": 659815936.0, + "49": 659815936.0, + "50": 659815936.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 2128664064.0, + "2": 2387253760.0, + "3": 2387253760.0, + "4": 2387253760.0, + "5": 2387253760.0, + "6": 2387253760.0, + "7": 2387253760.0, + "8": 2387253760.0, + "9": 2387253760.0, + "10": 2387253760.0, + "11": 2387253760.0, + "12": 2387253760.0, + "13": 2387253760.0, + "14": 2387253760.0, + "15": 2387253760.0, + "16": 2387253760.0, + "17": 2387253760.0, + "18": 2387253760.0, + "19": 2387253760.0, + "20": 2387253760.0, + "21": 2387253760.0, + "22": 2387253760.0, + "23": 2387253760.0, + "24": 2387253760.0, + "25": 2387253760.0, + "26": 2387253760.0, + "27": 2387253760.0, + "28": 2387253760.0, + "29": 2387253760.0, + "30": 2387253760.0, + "31": 2387253760.0, + "32": 2387253760.0, + "33": 2387253760.0, + "34": 2387253760.0, + "35": 2387253760.0, + "36": 2387253760.0, + "37": 2387253760.0, + "38": 2387253760.0, + "39": 2387253760.0, + "40": 2387253760.0, + "41": 2387253760.0, + "42": 2387253760.0, + "43": 2387253760.0, + "44": 2387253760.0, + "45": 2387253760.0, + "46": 2387253760.0, + "47": 2387253760.0, + "48": 2387253760.0, + "49": 2387253760.0, + "50": 2387253760.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 8.87306, + "2": 0.21422, + "3": 0.25104, + "4": 0.16762, + "5": 0.16515, + "6": 0.16439, + "7": 0.16456, + "8": 0.16608, + "9": 0.16475, + "10": 0.16561, + "11": 0.16487, + "12": 0.16315, + "13": 0.16552, + "14": 0.16522, + "15": 0.16481, + "16": 0.16526, + "17": 0.16423, + "18": 0.16401, + "19": 0.16489, + "20": 0.16413, + "21": 0.16376, + "22": 0.16471, + "23": 0.16552, + "24": 0.16391, + "25": 0.15853, + "26": 0.15805, + "27": 0.15784, + "28": 0.15821, + "29": 0.15801, + "30": 0.15776, + "31": 0.15957, + "32": 0.16205, + "33": 0.16126, + "34": 0.15977, + "35": 0.16204, + "36": 0.15979, + "37": 0.16009, + "38": 0.15888, + "39": 0.16022, + "40": 0.1597, + "41": 0.15982, + "42": 0.1593, + "43": 0.15759, + "44": 0.15811, + "45": 0.1573, + "46": 0.15807, + "47": 0.15605, + "48": 0.15694, + "49": 0.15675, + "50": 0.15757 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts_dgx_a100.json index 0cd9c8700a3..775784e5ee0 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp1_uneven_pipeline/golden_values_lts_dgx_a100.json @@ -2,91 +2,286 @@ "lm loss": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.9735, - "5": 10.95594, - "10": 10.94989, - "15": 10.9115, - "20": 10.80975, - "25": 10.6662, - "30": 10.45501, - "35": 10.33418, - "40": 10.14646, - "45": 9.89112, - "50": 9.9526 + "1": 10.97215, + "2": 10.96419, + "3": 10.96484, + "4": 10.9625, + "5": 10.96069, + "6": 10.96314, + "7": 10.95542, + "8": 10.96012, + "9": 10.9642, + "10": 10.94938, + "11": 10.95571, + "12": 10.94758, + "13": 10.94696, + "14": 10.95407, + "15": 10.91083, + "16": 10.90945, + "17": 10.89001, + "18": 10.89837, + "19": 10.89189, + "20": 10.80856, + "21": 10.78598, + "22": 10.69678, + "23": 10.79518, + "24": 10.6983, + "25": 10.66637, + "26": 10.71173, + "27": 10.68383, + "28": 10.62344, + "29": 10.65067, + "30": 10.45487, + "31": 10.22475, + "32": 10.52171, + "33": 10.52706, + "34": 10.29181, + "35": 10.33574, + "36": 10.2871, + "37": 10.39557, + "38": 10.2536, + "39": 10.44971, + "40": 10.14791, + "41": 10.19255, + "42": 10.24716, + "43": 9.89482, + "44": 10.00764, + "45": 9.88792, + "46": 9.86452, + "47": 10.16578, + "48": 9.87929, + "49": 9.5693, + "50": 9.95204 } }, "num-zeros": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 22727052.0, - "5": 22714228.0, - "10": 22918376.0, - "15": 22820932.0, - "20": 22694228.0, - "25": 22819528.0, - "30": 22631178.0, - "35": 22787526.0, - "40": 22657932.0, - "45": 22674550.0, - "50": 22905400.0 + "1": 22727298.0, + "2": 22924540.0, + "3": 22596662.0, + "4": 23219864.0, + "5": 22714604.0, + "6": 23021138.0, + "7": 22770420.0, + "8": 22926748.0, + "9": 22842456.0, + "10": 22918536.0, + "11": 22500950.0, + "12": 22459666.0, + "13": 22917172.0, + "14": 22388760.0, + "15": 22821456.0, + "16": 22831856.0, + "17": 22818966.0, + "18": 22582904.0, + "19": 22618308.0, + "20": 22695018.0, + "21": 22739412.0, + "22": 22799506.0, + "23": 22539964.0, + "24": 22771406.0, + "25": 22818944.0, + "26": 22548888.0, + "27": 22467554.0, + "28": 22453820.0, + "29": 22529468.0, + "30": 22631974.0, + "31": 22954914.0, + "32": 22584176.0, + "33": 22557850.0, + "34": 22835592.0, + "35": 22787628.0, + "36": 22589872.0, + "37": 22497168.0, + "38": 22896192.0, + "39": 22801888.0, + "40": 22658038.0, + "41": 22659420.0, + "42": 22666532.0, + "43": 22976852.0, + "44": 22746072.0, + "45": 22675348.0, + "46": 22884600.0, + "47": 22633528.0, + "48": 22929392.0, + "49": 22728496.0, + "50": 22905024.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 657718272.0, - "5": 657718272.0, - "10": 657718272.0, - "15": 657718272.0, - "20": 657718272.0, - "25": 657718272.0, - "30": 657718272.0, - "35": 657718272.0, - "40": 657718272.0, - "45": 657718272.0, - "50": 657718272.0 + "1": 659815936.0, + "2": 659815936.0, + "3": 659815936.0, + "4": 659815936.0, + "5": 659815936.0, + "6": 659815936.0, + "7": 659815936.0, + "8": 659815936.0, + "9": 659815936.0, + "10": 659815936.0, + "11": 659815936.0, + "12": 659815936.0, + "13": 659815936.0, + "14": 659815936.0, + "15": 659815936.0, + "16": 659815936.0, + "17": 659815936.0, + "18": 659815936.0, + "19": 659815936.0, + "20": 659815936.0, + "21": 659815936.0, + "22": 659815936.0, + "23": 659815936.0, + "24": 659815936.0, + "25": 659815936.0, + "26": 659815936.0, + "27": 659815936.0, + "28": 659815936.0, + "29": 659815936.0, + "30": 659815936.0, + "31": 659815936.0, + "32": 659815936.0, + "33": 659815936.0, + "34": 659815936.0, + "35": 659815936.0, + "36": 659815936.0, + "37": 659815936.0, + "38": 659815936.0, + "39": 659815936.0, + "40": 659815936.0, + "41": 659815936.0, + "42": 659815936.0, + "43": 659815936.0, + "44": 659815936.0, + "45": 659815936.0, + "46": 659815936.0, + "47": 659815936.0, + "48": 659815936.0, + "49": 659815936.0, + "50": 659815936.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 2129712128.0, - "5": 2385156096.0, - "10": 2385156096.0, - "15": 2385156096.0, - "20": 2385156096.0, - "25": 2385156096.0, - "30": 2385156096.0, - "35": 2385156096.0, - "40": 2385156096.0, - "45": 2385156096.0, - "50": 2385156096.0 + "1": 2128664064.0, + "2": 2387253760.0, + "3": 2387253760.0, + "4": 2387253760.0, + "5": 2387253760.0, + "6": 2387253760.0, + "7": 2387253760.0, + "8": 2387253760.0, + "9": 2387253760.0, + "10": 2387253760.0, + "11": 2387253760.0, + "12": 2387253760.0, + "13": 2387253760.0, + "14": 2387253760.0, + "15": 2387253760.0, + "16": 2387253760.0, + "17": 2387253760.0, + "18": 2387253760.0, + "19": 2387253760.0, + "20": 2387253760.0, + "21": 2387253760.0, + "22": 2387253760.0, + "23": 2387253760.0, + "24": 2387253760.0, + "25": 2387253760.0, + "26": 2387253760.0, + "27": 2387253760.0, + "28": 2387253760.0, + "29": 2387253760.0, + "30": 2387253760.0, + "31": 2387253760.0, + "32": 2387253760.0, + "33": 2387253760.0, + "34": 2387253760.0, + "35": 2387253760.0, + "36": 2387253760.0, + "37": 2387253760.0, + "38": 2387253760.0, + "39": 2387253760.0, + "40": 2387253760.0, + "41": 2387253760.0, + "42": 2387253760.0, + "43": 2387253760.0, + "44": 2387253760.0, + "45": 2387253760.0, + "46": 2387253760.0, + "47": 2387253760.0, + "48": 2387253760.0, + "49": 2387253760.0, + "50": 2387253760.0 } }, "iteration-time": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 20.28193, - "5": 0.17568, - "10": 0.17422, - "15": 0.17474, - "20": 0.17247, - "25": 0.16917, - "30": 0.16924, - "35": 0.16826, - "40": 0.16896, - "45": 0.1662, - "50": 0.16732 + "1": 10.48419, + "2": 0.19482, + "3": 0.26748, + "4": 0.1633, + "5": 0.15828, + "6": 0.15656, + "7": 0.1572, + "8": 0.15759, + "9": 0.15735, + "10": 0.15751, + "11": 0.15648, + "12": 0.15605, + "13": 0.15693, + "14": 0.15672, + "15": 0.15676, + "16": 0.15664, + "17": 0.15683, + "18": 0.15646, + "19": 0.15696, + "20": 0.15623, + "21": 0.15652, + "22": 0.15759, + "23": 0.15729, + "24": 0.15687, + "25": 0.15563, + "26": 0.1575, + "27": 0.15616, + "28": 0.15855, + "29": 0.15771, + "30": 0.15851, + "31": 0.1579, + "32": 0.1587, + "33": 0.1577, + "34": 0.15827, + "35": 0.15808, + "36": 0.15825, + "37": 0.1583, + "38": 0.15836, + "39": 0.15797, + "40": 0.15829, + "41": 0.15787, + "42": 0.15789, + "43": 0.15839, + "44": 0.15862, + "45": 0.15727, + "46": 0.15919, + "47": 0.15859, + "48": 0.15898, + "49": 0.15832, + "50": 0.1586 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts.json new file mode 100644 index 00000000000..fc938769241 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.84562, + "2": 10.8536, + "3": 10.85978, + "4": 10.84186, + "5": 10.8756, + "6": 10.88172, + "7": 10.86719, + "8": 10.84992, + "9": 10.86792, + "10": 10.83289, + "11": 10.91083, + "12": 10.87501, + "13": 10.86463, + "14": 10.8928, + "15": 10.84145, + "16": 10.84108, + "17": 10.82014, + "18": 10.85327, + "19": 10.8576, + "20": 10.80111, + "21": 10.78705, + "22": 10.72832, + "23": 10.812, + "24": 10.74372, + "25": 10.712, + "26": 10.76908, + "27": 10.78641, + "28": 10.73219, + "29": 10.75717, + "30": 10.58162, + "31": 10.43196, + "32": 10.68369, + "33": 10.66821, + "34": 10.49987, + "35": 10.5319, + "36": 10.52076, + "37": 10.59704, + "38": 10.45745, + "39": 10.62078, + "40": 10.35651, + "41": 10.40224, + "42": 10.45518, + "43": 10.11645, + "44": 10.24176, + "45": 10.1377, + "46": 10.11459, + "47": 10.39867, + "48": 10.14178, + "49": 9.8915, + "50": 10.20004 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 22727180.0, + "2": 22925490.0, + "3": 22595358.0, + "4": 23219094.0, + "5": 22713274.0, + "6": 23020840.0, + "7": 22770150.0, + "8": 22925912.0, + "9": 22842304.0, + "10": 22917686.0, + "11": 22499934.0, + "12": 22458902.0, + "13": 22916544.0, + "14": 22388412.0, + "15": 22820828.0, + "16": 22829442.0, + "17": 22818424.0, + "18": 22582572.0, + "19": 22616516.0, + "20": 22693786.0, + "21": 22738788.0, + "22": 22800098.0, + "23": 22538252.0, + "24": 22771304.0, + "25": 22818714.0, + "26": 22547732.0, + "27": 22467548.0, + "28": 22452916.0, + "29": 22528584.0, + "30": 22630192.0, + "31": 22954950.0, + "32": 22584400.0, + "33": 22557234.0, + "34": 22834292.0, + "35": 22786428.0, + "36": 22588576.0, + "37": 22496998.0, + "38": 22895112.0, + "39": 22800900.0, + "40": 22657380.0, + "41": 22658838.0, + "42": 22666328.0, + "43": 22975596.0, + "44": 22745924.0, + "45": 22674268.0, + "46": 22884128.0, + "47": 22632352.0, + "48": 22927496.0, + "49": 22727204.0, + "50": 22903716.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 611461632.0, + "2": 611461632.0, + "3": 611461632.0, + "4": 611461632.0, + "5": 611461632.0, + "6": 611461632.0, + "7": 611461632.0, + "8": 611461632.0, + "9": 611461632.0, + "10": 611461632.0, + "11": 611461632.0, + "12": 611461632.0, + "13": 611461632.0, + "14": 611461632.0, + "15": 611461632.0, + "16": 611461632.0, + "17": 611461632.0, + "18": 611461632.0, + "19": 611461632.0, + "20": 611461632.0, + "21": 611461632.0, + "22": 611461632.0, + "23": 611461632.0, + "24": 611461632.0, + "25": 611461632.0, + "26": 611461632.0, + "27": 611461632.0, + "28": 611461632.0, + "29": 611461632.0, + "30": 611461632.0, + "31": 611461632.0, + "32": 611461632.0, + "33": 611461632.0, + "34": 611461632.0, + "35": 611461632.0, + "36": 611461632.0, + "37": 611461632.0, + "38": 611461632.0, + "39": 611461632.0, + "40": 611461632.0, + "41": 611461632.0, + "42": 611461632.0, + "43": 611461632.0, + "44": 611461632.0, + "45": 611461632.0, + "46": 611461632.0, + "47": 611461632.0, + "48": 611461632.0, + "49": 611461632.0, + "50": 611461632.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 2580665856.0, + "2": 2812987904.0, + "3": 2812987904.0, + "4": 2812987904.0, + "5": 2812987904.0, + "6": 2812987904.0, + "7": 2812987904.0, + "8": 2812987904.0, + "9": 2812987904.0, + "10": 2812987904.0, + "11": 2812987904.0, + "12": 2812987904.0, + "13": 2812987904.0, + "14": 2812987904.0, + "15": 2812987904.0, + "16": 2812987904.0, + "17": 2812987904.0, + "18": 2812987904.0, + "19": 2812987904.0, + "20": 2812987904.0, + "21": 2812987904.0, + "22": 2812987904.0, + "23": 2812987904.0, + "24": 2812987904.0, + "25": 2812987904.0, + "26": 2812987904.0, + "27": 2812987904.0, + "28": 2812987904.0, + "29": 2812987904.0, + "30": 2812987904.0, + "31": 2812987904.0, + "32": 2812987904.0, + "33": 2812987904.0, + "34": 2812987904.0, + "35": 2812987904.0, + "36": 2812987904.0, + "37": 2812987904.0, + "38": 2812987904.0, + "39": 2812987904.0, + "40": 2812987904.0, + "41": 2812987904.0, + "42": 2812987904.0, + "43": 2812987904.0, + "44": 2812987904.0, + "45": 2812987904.0, + "46": 2812987904.0, + "47": 2812987904.0, + "48": 2812987904.0, + "49": 2812987904.0, + "50": 2812987904.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.97654, + "2": 0.12833, + "3": 0.09335, + "4": 0.09288, + "5": 0.09223, + "6": 0.09324, + "7": 0.09538, + "8": 0.09184, + "9": 0.09231, + "10": 0.09289, + "11": 0.09189, + "12": 0.09166, + "13": 0.09092, + "14": 0.09055, + "15": 0.09032, + "16": 0.09021, + "17": 0.09123, + "18": 0.09029, + "19": 0.09028, + "20": 0.09042, + "21": 0.08964, + "22": 0.08984, + "23": 0.08956, + "24": 0.08945, + "25": 0.09004, + "26": 0.0892, + "27": 0.08926, + "28": 0.08893, + "29": 0.08891, + "30": 0.08938, + "31": 0.08988, + "32": 0.08972, + "33": 0.08927, + "34": 0.09022, + "35": 0.0899, + "36": 0.0891, + "37": 0.08893, + "38": 0.08927, + "39": 0.08909, + "40": 0.08953, + "41": 0.08971, + "42": 0.08902, + "43": 0.09024, + "44": 0.08936, + "45": 0.0894, + "46": 0.08968, + "47": 0.08906, + "48": 0.08956, + "49": 0.08937, + "50": 0.08941 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts_dgx_a100.json index 117df660805..44d53d6e9d6 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp1_pp4_vp2_account_for_embedding_loss_in_pipeline_split/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.84528, "5": 10.87387, "10": 10.83535, "15": 10.84228, "20": 10.80167, "25": 10.71149, "30": 10.58467, "35": 10.53287, "40": 10.35652, "45": 10.13839, "50": 10.20005}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 22726236.0, "5": 22714030.0, "10": 22918036.0, "15": 22821520.0, "20": 22693656.0, "25": 22819138.0, "30": 22630790.0, "35": 22787508.0, "40": 22657590.0, "45": 22674508.0, "50": 22904058.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 611461120.0, "5": 611461120.0, "10": 611461120.0, "15": 611461120.0, "20": 611461120.0, "25": 611461120.0, "30": 611461120.0, "35": 611461120.0, "40": 611461120.0, "45": 611461120.0, "50": 611461120.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 2582211584.0, "5": 2814533632.0, "10": 2814533632.0, "15": 2814533632.0, "20": 2814533632.0, "25": 2814533632.0, "30": 2814533632.0, "35": 2814533632.0, "40": 2814533632.0, "45": 2814533632.0, "50": 2814533632.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 14.65275, "5": 0.11877, "10": 0.11712, "15": 0.11705, "20": 0.11603, "25": 0.11576, "30": 0.11652, "35": 0.11656, "40": 0.11712, "45": 0.11593, "50": 0.11726}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.84562, + "2": 10.8536, + "3": 10.85978, + "4": 10.84186, + "5": 10.8756, + "6": 10.88172, + "7": 10.86719, + "8": 10.84992, + "9": 10.86792, + "10": 10.83289, + "11": 10.91083, + "12": 10.87501, + "13": 10.86463, + "14": 10.8928, + "15": 10.84145, + "16": 10.84108, + "17": 10.82014, + "18": 10.85327, + "19": 10.8576, + "20": 10.80111, + "21": 10.78705, + "22": 10.72832, + "23": 10.812, + "24": 10.74372, + "25": 10.712, + "26": 10.76908, + "27": 10.78641, + "28": 10.73219, + "29": 10.75717, + "30": 10.58162, + "31": 10.43196, + "32": 10.68369, + "33": 10.66821, + "34": 10.49987, + "35": 10.5319, + "36": 10.52076, + "37": 10.59704, + "38": 10.45745, + "39": 10.62078, + "40": 10.35651, + "41": 10.40224, + "42": 10.45518, + "43": 10.11645, + "44": 10.24176, + "45": 10.1377, + "46": 10.11459, + "47": 10.39867, + "48": 10.14178, + "49": 9.8915, + "50": 10.20004 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 22727180.0, + "2": 22925490.0, + "3": 22595358.0, + "4": 23219094.0, + "5": 22713274.0, + "6": 23020840.0, + "7": 22770150.0, + "8": 22925912.0, + "9": 22842304.0, + "10": 22917686.0, + "11": 22499934.0, + "12": 22458902.0, + "13": 22916544.0, + "14": 22388412.0, + "15": 22820828.0, + "16": 22829442.0, + "17": 22818424.0, + "18": 22582572.0, + "19": 22616516.0, + "20": 22693786.0, + "21": 22738788.0, + "22": 22800098.0, + "23": 22538252.0, + "24": 22771304.0, + "25": 22818714.0, + "26": 22547732.0, + "27": 22467548.0, + "28": 22452916.0, + "29": 22528584.0, + "30": 22630192.0, + "31": 22954950.0, + "32": 22584400.0, + "33": 22557234.0, + "34": 22834292.0, + "35": 22786428.0, + "36": 22588576.0, + "37": 22496998.0, + "38": 22895112.0, + "39": 22800900.0, + "40": 22657380.0, + "41": 22658838.0, + "42": 22666328.0, + "43": 22975596.0, + "44": 22745924.0, + "45": 22674268.0, + "46": 22884128.0, + "47": 22632352.0, + "48": 22927496.0, + "49": 22727204.0, + "50": 22903716.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 609364480.0, + "2": 609364480.0, + "3": 609364480.0, + "4": 609364480.0, + "5": 609364480.0, + "6": 609364480.0, + "7": 609364480.0, + "8": 609364480.0, + "9": 609364480.0, + "10": 609364480.0, + "11": 609364480.0, + "12": 609364480.0, + "13": 609364480.0, + "14": 609364480.0, + "15": 609364480.0, + "16": 609364480.0, + "17": 609364480.0, + "18": 609364480.0, + "19": 609364480.0, + "20": 609364480.0, + "21": 609364480.0, + "22": 609364480.0, + "23": 609364480.0, + "24": 609364480.0, + "25": 609364480.0, + "26": 609364480.0, + "27": 609364480.0, + "28": 609364480.0, + "29": 609364480.0, + "30": 609364480.0, + "31": 609364480.0, + "32": 609364480.0, + "33": 609364480.0, + "34": 609364480.0, + "35": 609364480.0, + "36": 609364480.0, + "37": 609364480.0, + "38": 609364480.0, + "39": 609364480.0, + "40": 609364480.0, + "41": 609364480.0, + "42": 609364480.0, + "43": 609364480.0, + "44": 609364480.0, + "45": 609364480.0, + "46": 609364480.0, + "47": 609364480.0, + "48": 609364480.0, + "49": 609364480.0, + "50": 609364480.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 2580665856.0, + "2": 2810890752.0, + "3": 2811808256.0, + "4": 2811808256.0, + "5": 2811808256.0, + "6": 2811808256.0, + "7": 2811808256.0, + "8": 2811808256.0, + "9": 2811808256.0, + "10": 2811808256.0, + "11": 2811808256.0, + "12": 2811808256.0, + "13": 2811808256.0, + "14": 2811808256.0, + "15": 2811808256.0, + "16": 2811808256.0, + "17": 2811808256.0, + "18": 2811808256.0, + "19": 2811808256.0, + "20": 2811808256.0, + "21": 2811808256.0, + "22": 2811808256.0, + "23": 2811808256.0, + "24": 2811808256.0, + "25": 2811808256.0, + "26": 2811808256.0, + "27": 2811808256.0, + "28": 2811808256.0, + "29": 2811808256.0, + "30": 2811808256.0, + "31": 2811808256.0, + "32": 2811808256.0, + "33": 2811808256.0, + "34": 2811808256.0, + "35": 2811808256.0, + "36": 2811808256.0, + "37": 2811808256.0, + "38": 2811808256.0, + "39": 2811808256.0, + "40": 2811808256.0, + "41": 2811808256.0, + "42": 2811808256.0, + "43": 2811808256.0, + "44": 2811808256.0, + "45": 2811808256.0, + "46": 2811808256.0, + "47": 2811808256.0, + "48": 2811808256.0, + "49": 2811808256.0, + "50": 2811808256.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 9.118, + "2": 0.12375, + "3": 0.31133, + "4": 0.09209, + "5": 0.09124, + "6": 0.09155, + "7": 0.09163, + "8": 0.0915, + "9": 0.09161, + "10": 0.09407, + "11": 0.09038, + "12": 0.09031, + "13": 0.09069, + "14": 0.09024, + "15": 0.09043, + "16": 0.08996, + "17": 0.09133, + "18": 0.09072, + "19": 0.09048, + "20": 0.09016, + "21": 0.09061, + "22": 0.09073, + "23": 0.09098, + "24": 0.09135, + "25": 0.09235, + "26": 0.09059, + "27": 0.09009, + "28": 0.09049, + "29": 0.09147, + "30": 0.09097, + "31": 0.09098, + "32": 0.09045, + "33": 0.09082, + "34": 0.08994, + "35": 0.09054, + "36": 0.09124, + "37": 0.09063, + "38": 0.08989, + "39": 0.09234, + "40": 0.09165, + "41": 0.09179, + "42": 0.09165, + "43": 0.09235, + "44": 0.09147, + "45": 0.0922, + "46": 0.09192, + "47": 0.09138, + "48": 0.09278, + "49": 0.09145, + "50": 0.09175 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts.json new file mode 100644 index 00000000000..57fe2806d3f --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.88765, + "2": 10.90324, + "3": 10.87803, + "4": 10.87967, + "5": 10.91013, + "6": 10.91377, + "7": 10.89285, + "8": 10.88408, + "9": 10.89749, + "10": 10.87762, + "11": 10.88984, + "12": 10.89502, + "13": 10.90738, + "14": 10.90831, + "15": 10.86285, + "16": 10.85944, + "17": 10.8221, + "18": 10.84343, + "19": 10.83663, + "20": 10.74694, + "21": 10.73044, + "22": 10.62623, + "23": 10.74379, + "24": 10.63229, + "25": 10.59789, + "26": 10.64585, + "27": 10.64828, + "28": 10.59539, + "29": 10.60615, + "30": 10.40161, + "31": 10.18116, + "32": 10.49112, + "33": 10.48508, + "34": 10.25199, + "35": 10.30784, + "36": 10.25604, + "37": 10.36576, + "38": 10.21673, + "39": 10.40989, + "40": 10.11047, + "41": 10.15883, + "42": 10.22753, + "43": 9.8745, + "44": 9.97803, + "45": 9.8591, + "46": 9.8546, + "47": 10.15264, + "48": 9.86489, + "49": 9.5555, + "50": 9.92088, + "51": 9.86094, + "52": 9.75697, + "53": 10.07633, + "54": 9.96082, + "55": 9.88565, + "56": 9.6349, + "57": 9.4925, + "58": 9.83099, + "59": 9.59122, + "60": 9.50798, + "61": 9.7061, + "62": 9.98413, + "63": 9.37604, + "64": 9.77938, + "65": 8.95852, + "66": 9.70596, + "67": 9.37402, + "68": 9.78683, + "69": 9.78932, + "70": 9.72766, + "71": 9.61135, + "72": 9.59178, + "73": 9.49896, + "74": 8.95742, + "75": 9.42469, + "76": 9.09651, + "77": 10.06653, + "78": 9.73149, + "79": 9.37959, + "80": 9.40394, + "81": 9.48277, + "82": 9.69318, + "83": 9.31104, + "84": 9.4139, + "85": 9.61469, + "86": 9.07793, + "87": 9.59662, + "88": 9.74827, + "89": 9.60196, + "90": 9.81239, + "91": 9.34524, + "92": 9.36524, + "93": 9.07745, + "94": 8.83182, + "95": 9.521, + "96": 9.52525, + "97": 9.31322, + "98": 9.677, + "99": 8.88904, + "100": 9.40063 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1753.0, + "2": 1863.0, + "3": 1781.0, + "4": 1850.0, + "5": 2021.0, + "6": 1987.0, + "7": 2006.0, + "8": 1657.0, + "9": 1961.0, + "10": 1491.0, + "11": 2010.0, + "12": 1846.0, + "13": 1934.0, + "14": 1954.0, + "15": 1942.0, + "16": 1969.0, + "17": 1936.0, + "18": 1836.0, + "19": 1841.0, + "20": 1684.0, + "21": 1958.0, + "22": 1782.0, + "23": 2112.0, + "24": 1651.0, + "25": 1713.0, + "26": 1878.0, + "27": 1837.0, + "28": 2025.0, + "29": 2115.0, + "30": 1867.0, + "31": 1622.0, + "32": 1939.0, + "33": 2167.0, + "34": 1867.0, + "35": 2035.0, + "36": 2086.0, + "37": 2477.0, + "38": 2296.0, + "39": 2505.0, + "40": 2150.0, + "41": 2315.0, + "42": 2239.0, + "43": 1941.0, + "44": 2169.0, + "45": 2172.0, + "46": 2231.0, + "47": 2604.0, + "48": 2429.0, + "49": 2289.0, + "50": 2529.0, + "51": 2742.0, + "52": 2671.0, + "53": 3066.0, + "54": 2782.0, + "55": 2510.0, + "56": 2874.0, + "57": 2304.0, + "58": 3111.0, + "59": 2862.0, + "60": 2374.0, + "61": 2977.0, + "62": 2740.0, + "63": 2394.0, + "64": 3232.0, + "65": 2720.0, + "66": 3277.0, + "67": 2810.0, + "68": 2830.0, + "69": 3094.0, + "70": 3327.0, + "71": 3106.0, + "72": 2261.0, + "73": 3147.0, + "74": 1902.0, + "75": 2545.0, + "76": 2905.0, + "77": 3468.0, + "78": 3432.0, + "79": 3336.0, + "80": 3434.0, + "81": 3605.0, + "82": 3269.0, + "83": 2891.0, + "84": 3343.0, + "85": 3501.0, + "86": 2786.0, + "87": 3872.0, + "88": 3019.0, + "89": 3407.0, + "90": 3023.0, + "91": 2630.0, + "92": 3186.0, + "93": 2746.0, + "94": 3526.0, + "95": 3414.0, + "96": 3546.0, + "97": 3339.0, + "98": 3758.0, + "99": 3058.0, + "100": 3454.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 462388736.0, + "2": 462388736.0, + "3": 462388736.0, + "4": 462388736.0, + "5": 462388736.0, + "6": 462388736.0, + "7": 462388736.0, + "8": 462388736.0, + "9": 462388736.0, + "10": 462388736.0, + "11": 462388736.0, + "12": 462388736.0, + "13": 462388736.0, + "14": 462388736.0, + "15": 462388736.0, + "16": 462388736.0, + "17": 462388736.0, + "18": 462388736.0, + "19": 462388736.0, + "20": 462388736.0, + "21": 462388736.0, + "22": 462388736.0, + "23": 462388736.0, + "24": 462388736.0, + "25": 462388736.0, + "26": 462388736.0, + "27": 462388736.0, + "28": 462388736.0, + "29": 462388736.0, + "30": 462388736.0, + "31": 462388736.0, + "32": 462388736.0, + "33": 462388736.0, + "34": 462388736.0, + "35": 462388736.0, + "36": 462388736.0, + "37": 462388736.0, + "38": 462388736.0, + "39": 462388736.0, + "40": 462388736.0, + "41": 462388736.0, + "42": 462388736.0, + "43": 462388736.0, + "44": 462388736.0, + "45": 462388736.0, + "46": 462388736.0, + "47": 462388736.0, + "48": 462388736.0, + "49": 462388736.0, + "50": 462388736.0, + "51": 462388736.0, + "52": 462388736.0, + "53": 462388736.0, + "54": 462388736.0, + "55": 462388736.0, + "56": 462388736.0, + "57": 462388736.0, + "58": 462388736.0, + "59": 462388736.0, + "60": 462388736.0, + "61": 462388736.0, + "62": 462388736.0, + "63": 462388736.0, + "64": 462388736.0, + "65": 462388736.0, + "66": 462388736.0, + "67": 462388736.0, + "68": 462388736.0, + "69": 462388736.0, + "70": 462388736.0, + "71": 462388736.0, + "72": 462388736.0, + "73": 462388736.0, + "74": 462388736.0, + "75": 462388736.0, + "76": 462388736.0, + "77": 462388736.0, + "78": 462388736.0, + "79": 462388736.0, + "80": 462388736.0, + "81": 462388736.0, + "82": 462388736.0, + "83": 462388736.0, + "84": 462388736.0, + "85": 462388736.0, + "86": 462388736.0, + "87": 462388736.0, + "88": 462388736.0, + "89": 462388736.0, + "90": 462388736.0, + "91": 462388736.0, + "92": 462388736.0, + "93": 462388736.0, + "94": 462388736.0, + "95": 462388736.0, + "96": 462388736.0, + "97": 462388736.0, + "98": 462388736.0, + "99": 462388736.0, + "100": 462388736.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1549081088.0, + "2": 1677508096.0, + "3": 1677508096.0, + "4": 1677508096.0, + "5": 1677508096.0, + "6": 1677508096.0, + "7": 1677508096.0, + "8": 1677508096.0, + "9": 1677508096.0, + "10": 1677508096.0, + "11": 1677508096.0, + "12": 1677508096.0, + "13": 1677508096.0, + "14": 1677508096.0, + "15": 1677508096.0, + "16": 1677508096.0, + "17": 1677508096.0, + "18": 1677508096.0, + "19": 1677508096.0, + "20": 1677508096.0, + "21": 1677508096.0, + "22": 1677508096.0, + "23": 1677508096.0, + "24": 1677508096.0, + "25": 1677508096.0, + "26": 1677508096.0, + "27": 1677508096.0, + "28": 1677508096.0, + "29": 1677508096.0, + "30": 1677508096.0, + "31": 1677508096.0, + "32": 1677508096.0, + "33": 1677508096.0, + "34": 1677508096.0, + "35": 1677508096.0, + "36": 1677508096.0, + "37": 1677508096.0, + "38": 1677508096.0, + "39": 1677508096.0, + "40": 1677508096.0, + "41": 1677508096.0, + "42": 1677508096.0, + "43": 1677508096.0, + "44": 1677508096.0, + "45": 1677508096.0, + "46": 1677508096.0, + "47": 1677508096.0, + "48": 1677508096.0, + "49": 1677508096.0, + "50": 1677508096.0, + "51": 1677508096.0, + "52": 1677508096.0, + "53": 1677508096.0, + "54": 1677508096.0, + "55": 1677508096.0, + "56": 1677508096.0, + "57": 1677508096.0, + "58": 1677508096.0, + "59": 1677508096.0, + "60": 1677508096.0, + "61": 1677508096.0, + "62": 1677508096.0, + "63": 1677508096.0, + "64": 1677508096.0, + "65": 1677508096.0, + "66": 1677508096.0, + "67": 1677508096.0, + "68": 1677508096.0, + "69": 1677508096.0, + "70": 1677508096.0, + "71": 1677508096.0, + "72": 1677508096.0, + "73": 1677508096.0, + "74": 1677508096.0, + "75": 1677508096.0, + "76": 1677508096.0, + "77": 1677508096.0, + "78": 1677508096.0, + "79": 1677508096.0, + "80": 1677508096.0, + "81": 1677508096.0, + "82": 1677508096.0, + "83": 1677508096.0, + "84": 1677508096.0, + "85": 1677508096.0, + "86": 1677508096.0, + "87": 1677508096.0, + "88": 1677508096.0, + "89": 1677508096.0, + "90": 1677508096.0, + "91": 1677508096.0, + "92": 1677508096.0, + "93": 1677508096.0, + "94": 1677508096.0, + "95": 1677508096.0, + "96": 1677508096.0, + "97": 1677508096.0, + "98": 1677508096.0, + "99": 1677508096.0, + "100": 1677508096.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 5.74038, + "2": 0.18941, + "3": 0.17443, + "4": 0.17279, + "5": 0.17221, + "6": 0.17285, + "7": 0.17288, + "8": 0.17181, + "9": 0.168, + "10": 0.16829, + "11": 0.16793, + "12": 0.16785, + "13": 0.16712, + "14": 0.17584, + "15": 0.16768, + "16": 0.16694, + "17": 0.16606, + "18": 0.16539, + "19": 0.16505, + "20": 0.16548, + "21": 0.16486, + "22": 0.16481, + "23": 0.1694, + "24": 0.16549, + "25": 0.17312, + "26": 0.16555, + "27": 0.17362, + "28": 0.16604, + "29": 0.1708, + "30": 0.16752, + "31": 0.16804, + "32": 0.16714, + "33": 0.16525, + "34": 0.16728, + "35": 0.16428, + "36": 0.17043, + "37": 0.16532, + "38": 0.16525, + "39": 0.16555, + "40": 0.16531, + "41": 0.16563, + "42": 0.16563, + "43": 0.16499, + "44": 0.16632, + "45": 0.16537, + "46": 0.16563, + "47": 0.16529, + "48": 0.1657, + "49": 0.16462, + "50": 0.16554, + "51": 0.17653, + "52": 0.17191, + "53": 0.17217, + "54": 0.17273, + "55": 0.17175, + "56": 0.1728, + "57": 0.17152, + "58": 0.17298, + "59": 0.17049, + "60": 0.16917, + "61": 0.16777, + "62": 0.16726, + "63": 0.16773, + "64": 0.16713, + "65": 0.16836, + "66": 0.1678, + "67": 0.1679, + "68": 0.16772, + "69": 0.16815, + "70": 0.16816, + "71": 0.16728, + "72": 0.16778, + "73": 0.16743, + "74": 0.16783, + "75": 0.16824, + "76": 0.16759, + "77": 0.16828, + "78": 0.16749, + "79": 0.16757, + "80": 0.16781, + "81": 0.16773, + "82": 0.16701, + "83": 0.16756, + "84": 0.16842, + "85": 0.16707, + "86": 0.16752, + "87": 0.16807, + "88": 0.17901, + "89": 0.17301, + "90": 0.1702, + "91": 0.17493, + "92": 0.17105, + "93": 0.16969, + "94": 0.16931, + "95": 0.17031, + "96": 0.16969, + "97": 0.17032, + "98": 0.17059, + "99": 0.17, + "100": 0.17572 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts_dgx_a100.json index 053ded61519..3be93706d81 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp1_resume_torch_dist_multi_dist_optimizer_instances/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.88734, "5": 10.90948, "10": 10.87763, "15": 10.86371, "20": 10.7509, "25": 10.59917, "30": 10.40104, "35": 10.30793, "40": 10.10902, "45": 9.85831, "50": 9.92111, "55": 9.88529, "60": 9.50737, "65": 8.95828, "70": 9.72733, "75": 9.42571, "80": 9.40559, "85": 9.61572, "90": 9.81277, "95": 9.52119, "100": 9.40111}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1614.0, "5": 2021.0, "10": 1399.0, "15": 1872.0, "20": 1692.0, "25": 1784.0, "30": 1900.0, "35": 2081.0, "40": 2233.0, "45": 2144.0, "50": 2513.0, "55": 2493.0, "60": 2440.0, "65": 2763.0, "70": 3219.0, "75": 2601.0, "80": 3341.0, "85": 3433.0, "90": 3019.0, "95": 3417.0, "100": 3372.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 462455808.0, "5": 462455808.0, "10": 462455808.0, "15": 462455808.0, "20": 462455808.0, "25": 462455808.0, "30": 462455808.0, "35": 462455808.0, "40": 462455808.0, "45": 462455808.0, "50": 462455808.0, "55": 462455808.0, "60": 462455808.0, "65": 462455808.0, "70": 462455808.0, "75": 462455808.0, "80": 462455808.0, "85": 462455808.0, "90": 462455808.0, "95": 462455808.0, "100": 462455808.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 2529822720.0, "5": 2658249728.0, "10": 2658249728.0, "15": 2658249728.0, "20": 2658249728.0, "25": 2658249728.0, "30": 2658249728.0, "35": 2658249728.0, "40": 2658249728.0, "45": 2658249728.0, "50": 2658249728.0, "55": 2658249728.0, "60": 2658249728.0, "65": 2658249728.0, "70": 2658249728.0, "75": 2658249728.0, "80": 2658249728.0, "85": 2658249728.0, "90": 2658249728.0, "95": 2658249728.0, "100": 2658249728.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 11.76278, "5": 0.18711, "10": 0.18109, "15": 0.18221, "20": 0.18082, "25": 0.18031, "30": 0.18054, "35": 0.17683, "40": 0.17853, "45": 0.17695, "50": 0.17851, "55": 0.1773, "60": 0.17609, "65": 0.18072, "70": 0.18082, "75": 0.17652, "80": 0.17661, "85": 0.18002, "90": 0.17586, "95": 0.17539, "100": 0.17485}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.88765, + "2": 10.90324, + "3": 10.87803, + "4": 10.87967, + "5": 10.91013, + "6": 10.91377, + "7": 10.89285, + "8": 10.88408, + "9": 10.89749, + "10": 10.87762, + "11": 10.88984, + "12": 10.89502, + "13": 10.90738, + "14": 10.90831, + "15": 10.86285, + "16": 10.85944, + "17": 10.8221, + "18": 10.84343, + "19": 10.83663, + "20": 10.74694, + "21": 10.73044, + "22": 10.62623, + "23": 10.74379, + "24": 10.63229, + "25": 10.59789, + "26": 10.64585, + "27": 10.64828, + "28": 10.59539, + "29": 10.60615, + "30": 10.40161, + "31": 10.18116, + "32": 10.49112, + "33": 10.48508, + "34": 10.25199, + "35": 10.30784, + "36": 10.25604, + "37": 10.36576, + "38": 10.21673, + "39": 10.40989, + "40": 10.11047, + "41": 10.15883, + "42": 10.22753, + "43": 9.8745, + "44": 9.97803, + "45": 9.8591, + "46": 9.8546, + "47": 10.15264, + "48": 9.86489, + "49": 9.5555, + "50": 9.92088, + "51": 9.86094, + "52": 9.75697, + "53": 10.07633, + "54": 9.96082, + "55": 9.88565, + "56": 9.6349, + "57": 9.4925, + "58": 9.83099, + "59": 9.59122, + "60": 9.50798, + "61": 9.7061, + "62": 9.98413, + "63": 9.37604, + "64": 9.77938, + "65": 8.95852, + "66": 9.70596, + "67": 9.37402, + "68": 9.78683, + "69": 9.78932, + "70": 9.72766, + "71": 9.61135, + "72": 9.59178, + "73": 9.49896, + "74": 8.95742, + "75": 9.42469, + "76": 9.09651, + "77": 10.06653, + "78": 9.73149, + "79": 9.37959, + "80": 9.40394, + "81": 9.48277, + "82": 9.69318, + "83": 9.31104, + "84": 9.4139, + "85": 9.61469, + "86": 9.07793, + "87": 9.59662, + "88": 9.74827, + "89": 9.60196, + "90": 9.81239, + "91": 9.34524, + "92": 9.36524, + "93": 9.07745, + "94": 8.83182, + "95": 9.521, + "96": 9.52525, + "97": 9.31322, + "98": 9.677, + "99": 8.88904, + "100": 9.40063 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1753.0, + "2": 1863.0, + "3": 1781.0, + "4": 1850.0, + "5": 2021.0, + "6": 1987.0, + "7": 2006.0, + "8": 1657.0, + "9": 1961.0, + "10": 1491.0, + "11": 2010.0, + "12": 1846.0, + "13": 1934.0, + "14": 1954.0, + "15": 1942.0, + "16": 1969.0, + "17": 1936.0, + "18": 1836.0, + "19": 1841.0, + "20": 1684.0, + "21": 1958.0, + "22": 1782.0, + "23": 2112.0, + "24": 1651.0, + "25": 1713.0, + "26": 1878.0, + "27": 1837.0, + "28": 2025.0, + "29": 2115.0, + "30": 1867.0, + "31": 1622.0, + "32": 1939.0, + "33": 2167.0, + "34": 1867.0, + "35": 2035.0, + "36": 2086.0, + "37": 2477.0, + "38": 2296.0, + "39": 2505.0, + "40": 2150.0, + "41": 2315.0, + "42": 2239.0, + "43": 1941.0, + "44": 2169.0, + "45": 2172.0, + "46": 2231.0, + "47": 2604.0, + "48": 2429.0, + "49": 2289.0, + "50": 2529.0, + "51": 2742.0, + "52": 2671.0, + "53": 3066.0, + "54": 2782.0, + "55": 2510.0, + "56": 2874.0, + "57": 2304.0, + "58": 3111.0, + "59": 2862.0, + "60": 2374.0, + "61": 2977.0, + "62": 2740.0, + "63": 2394.0, + "64": 3232.0, + "65": 2720.0, + "66": 3277.0, + "67": 2810.0, + "68": 2830.0, + "69": 3094.0, + "70": 3327.0, + "71": 3106.0, + "72": 2261.0, + "73": 3147.0, + "74": 1902.0, + "75": 2545.0, + "76": 2905.0, + "77": 3468.0, + "78": 3432.0, + "79": 3336.0, + "80": 3434.0, + "81": 3605.0, + "82": 3269.0, + "83": 2891.0, + "84": 3343.0, + "85": 3501.0, + "86": 2786.0, + "87": 3872.0, + "88": 3019.0, + "89": 3407.0, + "90": 3023.0, + "91": 2630.0, + "92": 3186.0, + "93": 2746.0, + "94": 3526.0, + "95": 3414.0, + "96": 3546.0, + "97": 3339.0, + "98": 3758.0, + "99": 3058.0, + "100": 3454.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 462388736.0, + "2": 462388736.0, + "3": 462388736.0, + "4": 462388736.0, + "5": 462388736.0, + "6": 462388736.0, + "7": 462388736.0, + "8": 462388736.0, + "9": 462388736.0, + "10": 462388736.0, + "11": 462388736.0, + "12": 462388736.0, + "13": 462388736.0, + "14": 462388736.0, + "15": 462388736.0, + "16": 462388736.0, + "17": 462388736.0, + "18": 462388736.0, + "19": 462388736.0, + "20": 462388736.0, + "21": 462388736.0, + "22": 462388736.0, + "23": 462388736.0, + "24": 462388736.0, + "25": 462388736.0, + "26": 462388736.0, + "27": 462388736.0, + "28": 462388736.0, + "29": 462388736.0, + "30": 462388736.0, + "31": 462388736.0, + "32": 462388736.0, + "33": 462388736.0, + "34": 462388736.0, + "35": 462388736.0, + "36": 462388736.0, + "37": 462388736.0, + "38": 462388736.0, + "39": 462388736.0, + "40": 462388736.0, + "41": 462388736.0, + "42": 462388736.0, + "43": 462388736.0, + "44": 462388736.0, + "45": 462388736.0, + "46": 462388736.0, + "47": 462388736.0, + "48": 462388736.0, + "49": 462388736.0, + "50": 462388736.0, + "51": 462388736.0, + "52": 462388736.0, + "53": 462388736.0, + "54": 462388736.0, + "55": 462388736.0, + "56": 462388736.0, + "57": 462388736.0, + "58": 462388736.0, + "59": 462388736.0, + "60": 462388736.0, + "61": 462388736.0, + "62": 462388736.0, + "63": 462388736.0, + "64": 462388736.0, + "65": 462388736.0, + "66": 462388736.0, + "67": 462388736.0, + "68": 462388736.0, + "69": 462388736.0, + "70": 462388736.0, + "71": 462388736.0, + "72": 462388736.0, + "73": 462388736.0, + "74": 462388736.0, + "75": 462388736.0, + "76": 462388736.0, + "77": 462388736.0, + "78": 462388736.0, + "79": 462388736.0, + "80": 462388736.0, + "81": 462388736.0, + "82": 462388736.0, + "83": 462388736.0, + "84": 462388736.0, + "85": 462388736.0, + "86": 462388736.0, + "87": 462388736.0, + "88": 462388736.0, + "89": 462388736.0, + "90": 462388736.0, + "91": 462388736.0, + "92": 462388736.0, + "93": 462388736.0, + "94": 462388736.0, + "95": 462388736.0, + "96": 462388736.0, + "97": 462388736.0, + "98": 462388736.0, + "99": 462388736.0, + "100": 462388736.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1549081088.0, + "2": 1677508096.0, + "3": 1677508096.0, + "4": 1677508096.0, + "5": 1677508096.0, + "6": 1677508096.0, + "7": 1677508096.0, + "8": 1677508096.0, + "9": 1677508096.0, + "10": 1677508096.0, + "11": 1677508096.0, + "12": 1677508096.0, + "13": 1677508096.0, + "14": 1677508096.0, + "15": 1677508096.0, + "16": 1677508096.0, + "17": 1677508096.0, + "18": 1677508096.0, + "19": 1677508096.0, + "20": 1677508096.0, + "21": 1677508096.0, + "22": 1677508096.0, + "23": 1677508096.0, + "24": 1677508096.0, + "25": 1677508096.0, + "26": 1677508096.0, + "27": 1677508096.0, + "28": 1677508096.0, + "29": 1677508096.0, + "30": 1677508096.0, + "31": 1677508096.0, + "32": 1677508096.0, + "33": 1677508096.0, + "34": 1677508096.0, + "35": 1677508096.0, + "36": 1677508096.0, + "37": 1677508096.0, + "38": 1677508096.0, + "39": 1677508096.0, + "40": 1677508096.0, + "41": 1677508096.0, + "42": 1677508096.0, + "43": 1677508096.0, + "44": 1677508096.0, + "45": 1677508096.0, + "46": 1677508096.0, + "47": 1677508096.0, + "48": 1677508096.0, + "49": 1677508096.0, + "50": 1677508096.0, + "51": 1677508096.0, + "52": 1677508096.0, + "53": 1677508096.0, + "54": 1677508096.0, + "55": 1677508096.0, + "56": 1677508096.0, + "57": 1677508096.0, + "58": 1677508096.0, + "59": 1677508096.0, + "60": 1677508096.0, + "61": 1677508096.0, + "62": 1677508096.0, + "63": 1677508096.0, + "64": 1677508096.0, + "65": 1677508096.0, + "66": 1677508096.0, + "67": 1677508096.0, + "68": 1677508096.0, + "69": 1677508096.0, + "70": 1677508096.0, + "71": 1677508096.0, + "72": 1677508096.0, + "73": 1677508096.0, + "74": 1677508096.0, + "75": 1677508096.0, + "76": 1677508096.0, + "77": 1677508096.0, + "78": 1677508096.0, + "79": 1677508096.0, + "80": 1677508096.0, + "81": 1677508096.0, + "82": 1677508096.0, + "83": 1677508096.0, + "84": 1677508096.0, + "85": 1677508096.0, + "86": 1677508096.0, + "87": 1677508096.0, + "88": 1677508096.0, + "89": 1677508096.0, + "90": 1677508096.0, + "91": 1677508096.0, + "92": 1677508096.0, + "93": 1677508096.0, + "94": 1677508096.0, + "95": 1677508096.0, + "96": 1677508096.0, + "97": 1677508096.0, + "98": 1677508096.0, + "99": 1677508096.0, + "100": 1677508096.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 9.17153, + "2": 0.2103, + "3": 0.21541, + "4": 0.21948, + "5": 0.17282, + "6": 0.16921, + "7": 0.1711, + "8": 0.16967, + "9": 0.17064, + "10": 0.16972, + "11": 0.1696, + "12": 0.1701, + "13": 0.16923, + "14": 0.16942, + "15": 0.16782, + "16": 0.17, + "17": 0.16748, + "18": 0.16821, + "19": 0.16739, + "20": 0.16883, + "21": 0.16894, + "22": 0.16847, + "23": 0.16846, + "24": 0.16887, + "25": 0.16905, + "26": 0.16873, + "27": 0.16876, + "28": 0.16868, + "29": 0.1706, + "30": 0.17379, + "31": 0.17109, + "32": 0.17107, + "33": 0.17072, + "34": 0.17137, + "35": 0.17105, + "36": 0.17106, + "37": 0.17077, + "38": 0.17115, + "39": 0.17067, + "40": 0.17057, + "41": 0.17099, + "42": 0.17074, + "43": 0.17091, + "44": 0.17078, + "45": 0.17104, + "46": 0.17055, + "47": 0.17137, + "48": 0.17086, + "49": 0.17081, + "50": 0.17053, + "51": 0.17448, + "52": 0.16607, + "53": 0.16686, + "54": 0.16608, + "55": 0.16654, + "56": 0.16591, + "57": 0.16614, + "58": 0.1659, + "59": 0.16577, + "60": 0.16589, + "61": 0.16557, + "62": 0.16528, + "63": 0.16612, + "64": 0.1658, + "65": 0.16543, + "66": 0.1651, + "67": 0.16559, + "68": 0.16502, + "69": 0.16533, + "70": 0.16636, + "71": 0.16516, + "72": 0.1657, + "73": 0.1656, + "74": 0.16521, + "75": 0.16623, + "76": 0.16628, + "77": 0.16593, + "78": 0.16615, + "79": 0.1658, + "80": 0.16904, + "81": 0.16665, + "82": 0.16575, + "83": 0.16623, + "84": 0.16603, + "85": 0.16577, + "86": 0.16568, + "87": 0.16525, + "88": 0.16531, + "89": 0.16616, + "90": 0.16544, + "91": 0.16581, + "92": 0.16545, + "93": 0.16603, + "94": 0.16501, + "95": 0.16632, + "96": 0.16545, + "97": 0.16577, + "98": 0.19996, + "99": 0.19154, + "100": 0.19156 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts.json new file mode 100644 index 00000000000..1cf5408b8ba --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90495, + "5": 10.92807, + "6": 10.93673, + "7": 10.90406, + "8": 10.92229, + "9": 10.91254, + "10": 10.90852, + "11": 10.89335, + "12": 10.9208, + "13": 10.91496, + "14": 10.92145, + "15": 10.88435, + "16": 10.87455, + "17": 10.83916, + "18": 10.87309, + "19": 10.85325, + "20": 10.77493, + "21": 10.74754, + "22": 10.63148, + "23": 10.75622, + "24": 10.65569, + "25": 10.59216, + "26": 10.65327, + "27": 10.64876, + "28": 10.59656, + "29": 10.61011, + "30": 10.39286, + "31": 10.15725, + "32": 10.49217, + "33": 10.47941, + "34": 10.24014, + "35": 10.2971, + "36": 10.24566, + "37": 10.35283, + "38": 10.20534, + "39": 10.40418, + "40": 10.09553, + "41": 10.15279, + "42": 10.2188, + "43": 9.85527, + "44": 9.96244, + "45": 9.84613, + "46": 9.83799, + "47": 10.13884, + "48": 9.85689, + "49": 9.53747, + "50": 9.90876, + "51": 9.84971, + "52": 9.74156, + "53": 10.06322, + "54": 9.94581, + "55": 9.87731, + "56": 9.62746, + "57": 9.47259, + "58": 9.82912, + "59": 9.583, + "60": 9.49181, + "61": 9.69961, + "62": 9.98089, + "63": 9.37212, + "64": 9.7756, + "65": 8.9433, + "66": 9.69993, + "67": 9.36414, + "68": 9.78706, + "69": 9.78397, + "70": 9.72288, + "71": 9.60749, + "72": 9.58416, + "73": 9.49093, + "74": 8.94864, + "75": 9.41807, + "76": 9.08721, + "77": 10.06283, + "78": 9.729, + "79": 9.37091, + "80": 9.40033, + "81": 9.47754, + "82": 9.69121, + "83": 9.30762, + "84": 9.41252, + "85": 9.61132, + "86": 9.07621, + "87": 9.59459, + "88": 9.74768, + "89": 9.6068, + "90": 9.81078, + "91": 9.34441, + "92": 9.36535, + "93": 9.07743, + "94": 8.82975, + "95": 9.51676, + "96": 9.52546, + "97": 9.31031, + "98": 9.67812, + "99": 8.88848, + "100": 9.40128 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1681.0, + "2": 1822.0, + "3": 1757.0, + "4": 1751.0, + "5": 1937.0, + "6": 1886.0, + "7": 1837.0, + "8": 1786.0, + "9": 1935.0, + "10": 1542.0, + "11": 1896.0, + "12": 1808.0, + "13": 1960.0, + "14": 1846.0, + "15": 1948.0, + "16": 1903.0, + "17": 1900.0, + "18": 1725.0, + "19": 1812.0, + "20": 1647.0, + "21": 1886.0, + "22": 1675.0, + "23": 1992.0, + "24": 1621.0, + "25": 1624.0, + "26": 1778.0, + "27": 1925.0, + "28": 1996.0, + "29": 2074.0, + "30": 1899.0, + "31": 1539.0, + "32": 1956.0, + "33": 2254.0, + "34": 1927.0, + "35": 2029.0, + "36": 1986.0, + "37": 2377.0, + "38": 2234.0, + "39": 2396.0, + "40": 2123.0, + "41": 2316.0, + "42": 2245.0, + "43": 2077.0, + "44": 2179.0, + "45": 2078.0, + "46": 2280.0, + "47": 2573.0, + "48": 2440.0, + "49": 2213.0, + "50": 2532.0, + "51": 2735.0, + "52": 2607.0, + "53": 2951.0, + "54": 2672.0, + "55": 2451.0, + "56": 2712.0, + "57": 2392.0, + "58": 2979.0, + "59": 2869.0, + "60": 2435.0, + "61": 2938.0, + "62": 2669.0, + "63": 2392.0, + "64": 2998.0, + "65": 2689.0, + "66": 3285.0, + "67": 2782.0, + "68": 2753.0, + "69": 2958.0, + "70": 3271.0, + "71": 3040.0, + "72": 2504.0, + "73": 3096.0, + "74": 1910.0, + "75": 2617.0, + "76": 3081.0, + "77": 3390.0, + "78": 3186.0, + "79": 3320.0, + "80": 3483.0, + "81": 3782.0, + "82": 3516.0, + "83": 2864.0, + "84": 3396.0, + "85": 3247.0, + "86": 2785.0, + "87": 3762.0, + "88": 3102.0, + "89": 3483.0, + "90": 3076.0, + "91": 2643.0, + "92": 3198.0, + "93": 2666.0, + "94": 3390.0, + "95": 3410.0, + "96": 3508.0, + "97": 3178.0, + "98": 3865.0, + "99": 3143.0, + "100": 3357.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 487096832.0, + "2": 487096832.0, + "3": 487096832.0, + "4": 487096832.0, + "5": 487096832.0, + "6": 487096832.0, + "7": 487096832.0, + "8": 487096832.0, + "9": 487096832.0, + "10": 487096832.0, + "11": 487096832.0, + "12": 487096832.0, + "13": 487096832.0, + "14": 487096832.0, + "15": 487096832.0, + "16": 487096832.0, + "17": 487096832.0, + "18": 487096832.0, + "19": 487096832.0, + "20": 487096832.0, + "21": 487096832.0, + "22": 487096832.0, + "23": 487096832.0, + "24": 487096832.0, + "25": 487096832.0, + "26": 487096832.0, + "27": 487096832.0, + "28": 487096832.0, + "29": 487096832.0, + "30": 487096832.0, + "31": 487096832.0, + "32": 487096832.0, + "33": 487096832.0, + "34": 487096832.0, + "35": 487096832.0, + "36": 487096832.0, + "37": 487096832.0, + "38": 487096832.0, + "39": 487096832.0, + "40": 487096832.0, + "41": 487096832.0, + "42": 487096832.0, + "43": 487096832.0, + "44": 487096832.0, + "45": 487096832.0, + "46": 487096832.0, + "47": 487096832.0, + "48": 487096832.0, + "49": 487096832.0, + "50": 487096832.0, + "51": 487096832.0, + "52": 487096832.0, + "53": 487096832.0, + "54": 487096832.0, + "55": 487096832.0, + "56": 487096832.0, + "57": 487096832.0, + "58": 487096832.0, + "59": 487096832.0, + "60": 487096832.0, + "61": 487096832.0, + "62": 487096832.0, + "63": 487096832.0, + "64": 487096832.0, + "65": 487096832.0, + "66": 487096832.0, + "67": 487096832.0, + "68": 487096832.0, + "69": 487096832.0, + "70": 487096832.0, + "71": 487096832.0, + "72": 487096832.0, + "73": 487096832.0, + "74": 487096832.0, + "75": 487096832.0, + "76": 487096832.0, + "77": 487096832.0, + "78": 487096832.0, + "79": 487096832.0, + "80": 487096832.0, + "81": 487096832.0, + "82": 487096832.0, + "83": 487096832.0, + "84": 487096832.0, + "85": 487096832.0, + "86": 487096832.0, + "87": 487096832.0, + "88": 487096832.0, + "89": 487096832.0, + "90": 487096832.0, + "91": 487096832.0, + "92": 487096832.0, + "93": 487096832.0, + "94": 487096832.0, + "95": 487096832.0, + "96": 487096832.0, + "97": 487096832.0, + "98": 487096832.0, + "99": 487096832.0, + "100": 487096832.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1228699136.0, + "2": 1409821184.0, + "3": 1409821184.0, + "4": 1409821184.0, + "5": 1409821184.0, + "6": 1409821184.0, + "7": 1409821184.0, + "8": 1409821184.0, + "9": 1409821184.0, + "10": 1409821184.0, + "11": 1409821184.0, + "12": 1409821184.0, + "13": 1409821184.0, + "14": 1409821184.0, + "15": 1409821184.0, + "16": 1409821184.0, + "17": 1409821184.0, + "18": 1409821184.0, + "19": 1409821184.0, + "20": 1409821184.0, + "21": 1409821184.0, + "22": 1409821184.0, + "23": 1409821184.0, + "24": 1409821184.0, + "25": 1409821184.0, + "26": 1409821184.0, + "27": 1409821184.0, + "28": 1409821184.0, + "29": 1409821184.0, + "30": 1409821184.0, + "31": 1409821184.0, + "32": 1409821184.0, + "33": 1409821184.0, + "34": 1409821184.0, + "35": 1409821184.0, + "36": 1409821184.0, + "37": 1409821184.0, + "38": 1409821184.0, + "39": 1409821184.0, + "40": 1409821184.0, + "41": 1409821184.0, + "42": 1409821184.0, + "43": 1409821184.0, + "44": 1409821184.0, + "45": 1409821184.0, + "46": 1409821184.0, + "47": 1409821184.0, + "48": 1409821184.0, + "49": 1409821184.0, + "50": 1409821184.0, + "51": 1409821184.0, + "52": 1409821184.0, + "53": 1409821184.0, + "54": 1409821184.0, + "55": 1409821184.0, + "56": 1409821184.0, + "57": 1409821184.0, + "58": 1409821184.0, + "59": 1409821184.0, + "60": 1409821184.0, + "61": 1409821184.0, + "62": 1409821184.0, + "63": 1409821184.0, + "64": 1409821184.0, + "65": 1409821184.0, + "66": 1409821184.0, + "67": 1409821184.0, + "68": 1409821184.0, + "69": 1409821184.0, + "70": 1409821184.0, + "71": 1409821184.0, + "72": 1409821184.0, + "73": 1409821184.0, + "74": 1409821184.0, + "75": 1409821184.0, + "76": 1409821184.0, + "77": 1409821184.0, + "78": 1409821184.0, + "79": 1409821184.0, + "80": 1409821184.0, + "81": 1409821184.0, + "82": 1409821184.0, + "83": 1409821184.0, + "84": 1409821184.0, + "85": 1409821184.0, + "86": 1409821184.0, + "87": 1409821184.0, + "88": 1409821184.0, + "89": 1409821184.0, + "90": 1409821184.0, + "91": 1409821184.0, + "92": 1409821184.0, + "93": 1409821184.0, + "94": 1409821184.0, + "95": 1409821184.0, + "96": 1409821184.0, + "97": 1409821184.0, + "98": 1409821184.0, + "99": 1409821184.0, + "100": 1409821184.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 8.7942, + "2": 0.22889, + "3": 0.19794, + "4": 0.19876, + "5": 0.19802, + "6": 0.19732, + "7": 0.19829, + "8": 0.19869, + "9": 0.20221, + "10": 0.19735, + "11": 0.1983, + "12": 0.19776, + "13": 0.19772, + "14": 0.19813, + "15": 0.20156, + "16": 0.19951, + "17": 0.19694, + "18": 0.19906, + "19": 0.19681, + "20": 0.19852, + "21": 0.20083, + "22": 0.19703, + "23": 0.19864, + "24": 0.1981, + "25": 0.19771, + "26": 0.19763, + "27": 0.19879, + "28": 0.20245, + "29": 0.19781, + "30": 0.19864, + "31": 0.19901, + "32": 0.19832, + "33": 0.19887, + "34": 0.20272, + "35": 0.19918, + "36": 0.19934, + "37": 0.19832, + "38": 0.19851, + "39": 0.19719, + "40": 0.20496, + "41": 0.19802, + "42": 0.19778, + "43": 0.19799, + "44": 0.19797, + "45": 0.21191, + "46": 0.20272, + "47": 0.20241, + "48": 0.202, + "49": 0.20032, + "50": 0.20198, + "51": 0.21717, + "52": 0.21085, + "53": 0.20963, + "54": 0.20989, + "55": 0.20877, + "56": 0.20983, + "57": 0.21317, + "58": 0.21422, + "59": 0.2112, + "60": 0.21308, + "61": 0.21283, + "62": 0.21356, + "63": 0.21093, + "64": 0.20492, + "65": 0.20132, + "66": 0.20054, + "67": 0.19914, + "68": 0.19918, + "69": 0.19966, + "70": 0.19998, + "71": 0.19998, + "72": 0.19839, + "73": 0.19973, + "74": 0.19856, + "75": 0.19805, + "76": 0.19968, + "77": 0.19757, + "78": 0.19789, + "79": 0.19675, + "80": 0.1975, + "81": 0.19765, + "82": 0.19742, + "83": 0.19785, + "84": 0.19665, + "85": 0.19764, + "86": 0.19704, + "87": 0.19705, + "88": 0.19866, + "89": 0.19749, + "90": 0.1966, + "91": 0.19783, + "92": 0.19848, + "93": 0.19735, + "94": 0.19683, + "95": 0.19659, + "96": 0.19746, + "97": 0.19792, + "98": 0.19802, + "99": 0.19675, + "100": 0.19692 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json index b47c82b17f0..16e4a038563 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json @@ -2,141 +2,536 @@ "lm loss": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.92705, - "5": 10.92795, - "10": 10.90786, - "15": 10.88314, - "20": 10.77629, - "25": 10.59141, - "30": 10.39192, - "35": 10.29686, - "40": 10.0964, - "45": 9.84464, - "50": 9.90918, - "55": 9.87762, - "60": 9.49121, - "65": 8.94236, - "70": 9.72266, - "75": 9.41912, - "80": 9.40077, - "85": 9.61207, - "90": 9.81015, - "95": 9.51716, - "100": 9.4015 + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90495, + "5": 10.92807, + "6": 10.93673, + "7": 10.90406, + "8": 10.92229, + "9": 10.91254, + "10": 10.90852, + "11": 10.89335, + "12": 10.9208, + "13": 10.91496, + "14": 10.92145, + "15": 10.88435, + "16": 10.87455, + "17": 10.83916, + "18": 10.87309, + "19": 10.85325, + "20": 10.77493, + "21": 10.74754, + "22": 10.63148, + "23": 10.75622, + "24": 10.65569, + "25": 10.59216, + "26": 10.65327, + "27": 10.64876, + "28": 10.59656, + "29": 10.61011, + "30": 10.39286, + "31": 10.15725, + "32": 10.49217, + "33": 10.47941, + "34": 10.24014, + "35": 10.2971, + "36": 10.24566, + "37": 10.35283, + "38": 10.20534, + "39": 10.40418, + "40": 10.09553, + "41": 10.15279, + "42": 10.2188, + "43": 9.85527, + "44": 9.96244, + "45": 9.84613, + "46": 9.83799, + "47": 10.13884, + "48": 9.85689, + "49": 9.53747, + "50": 9.90876, + "51": 9.84971, + "52": 9.74156, + "53": 10.06322, + "54": 9.94581, + "55": 9.87731, + "56": 9.62746, + "57": 9.47259, + "58": 9.82912, + "59": 9.583, + "60": 9.49181, + "61": 9.69961, + "62": 9.98089, + "63": 9.37212, + "64": 9.7756, + "65": 8.9433, + "66": 9.69993, + "67": 9.36414, + "68": 9.78706, + "69": 9.78397, + "70": 9.72288, + "71": 9.60749, + "72": 9.58416, + "73": 9.49093, + "74": 8.94864, + "75": 9.41807, + "76": 9.08721, + "77": 10.06283, + "78": 9.729, + "79": 9.37091, + "80": 9.40033, + "81": 9.47754, + "82": 9.69121, + "83": 9.30762, + "84": 9.41252, + "85": 9.61132, + "86": 9.07621, + "87": 9.59459, + "88": 9.74768, + "89": 9.6068, + "90": 9.81078, + "91": 9.34441, + "92": 9.36535, + "93": 9.07743, + "94": 8.82975, + "95": 9.51676, + "96": 9.52546, + "97": 9.31031, + "98": 9.67812, + "99": 8.88848, + "100": 9.40128 } }, "num-zeros": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 1627.0, - "5": 2010.0, - "10": 1368.0, - "15": 1897.0, - "20": 1626.0, - "25": 1743.0, - "30": 1930.0, - "35": 1954.0, - "40": 2199.0, - "45": 2068.0, - "50": 2460.0, - "55": 2427.0, - "60": 2380.0, - "65": 2657.0, - "70": 3265.0, - "75": 2675.0, - "80": 3434.0, - "85": 3302.0, - "90": 3230.0, - "95": 3340.0, - "100": 3291.0 + "1": 1681.0, + "2": 1822.0, + "3": 1757.0, + "4": 1751.0, + "5": 1937.0, + "6": 1886.0, + "7": 1837.0, + "8": 1786.0, + "9": 1935.0, + "10": 1542.0, + "11": 1896.0, + "12": 1808.0, + "13": 1960.0, + "14": 1846.0, + "15": 1948.0, + "16": 1903.0, + "17": 1900.0, + "18": 1725.0, + "19": 1812.0, + "20": 1647.0, + "21": 1886.0, + "22": 1675.0, + "23": 1992.0, + "24": 1621.0, + "25": 1624.0, + "26": 1778.0, + "27": 1925.0, + "28": 1996.0, + "29": 2074.0, + "30": 1899.0, + "31": 1539.0, + "32": 1956.0, + "33": 2254.0, + "34": 1927.0, + "35": 2029.0, + "36": 1986.0, + "37": 2377.0, + "38": 2234.0, + "39": 2396.0, + "40": 2123.0, + "41": 2316.0, + "42": 2245.0, + "43": 2077.0, + "44": 2179.0, + "45": 2078.0, + "46": 2280.0, + "47": 2573.0, + "48": 2440.0, + "49": 2213.0, + "50": 2532.0, + "51": 2735.0, + "52": 2607.0, + "53": 2951.0, + "54": 2672.0, + "55": 2451.0, + "56": 2712.0, + "57": 2392.0, + "58": 2979.0, + "59": 2869.0, + "60": 2435.0, + "61": 2938.0, + "62": 2669.0, + "63": 2392.0, + "64": 2998.0, + "65": 2689.0, + "66": 3285.0, + "67": 2782.0, + "68": 2753.0, + "69": 2958.0, + "70": 3271.0, + "71": 3040.0, + "72": 2504.0, + "73": 3096.0, + "74": 1910.0, + "75": 2617.0, + "76": 3081.0, + "77": 3390.0, + "78": 3186.0, + "79": 3320.0, + "80": 3483.0, + "81": 3782.0, + "82": 3516.0, + "83": 2864.0, + "84": 3396.0, + "85": 3247.0, + "86": 2785.0, + "87": 3762.0, + "88": 3102.0, + "89": 3483.0, + "90": 3076.0, + "91": 2643.0, + "92": 3198.0, + "93": 2666.0, + "94": 3390.0, + "95": 3410.0, + "96": 3508.0, + "97": 3178.0, + "98": 3865.0, + "99": 3143.0, + "100": 3357.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 487096320.0, - "5": 487096320.0, - "10": 487096320.0, - "15": 487096320.0, - "20": 487096320.0, - "25": 487096320.0, - "30": 487096320.0, - "35": 487096320.0, - "40": 487096320.0, - "45": 487096320.0, - "50": 487096320.0, - "55": 487096320.0, - "60": 487096320.0, - "65": 487096320.0, - "70": 487096320.0, - "75": 487096320.0, - "80": 487096320.0, - "85": 487096320.0, - "90": 487096320.0, - "95": 487096320.0, - "100": 487096320.0 + "1": 487096832.0, + "2": 487096832.0, + "3": 487096832.0, + "4": 487096832.0, + "5": 487096832.0, + "6": 487096832.0, + "7": 487096832.0, + "8": 487096832.0, + "9": 487096832.0, + "10": 487096832.0, + "11": 487096832.0, + "12": 487096832.0, + "13": 487096832.0, + "14": 487096832.0, + "15": 487096832.0, + "16": 487096832.0, + "17": 487096832.0, + "18": 487096832.0, + "19": 487096832.0, + "20": 487096832.0, + "21": 487096832.0, + "22": 487096832.0, + "23": 487096832.0, + "24": 487096832.0, + "25": 487096832.0, + "26": 487096832.0, + "27": 487096832.0, + "28": 487096832.0, + "29": 487096832.0, + "30": 487096832.0, + "31": 487096832.0, + "32": 487096832.0, + "33": 487096832.0, + "34": 487096832.0, + "35": 487096832.0, + "36": 487096832.0, + "37": 487096832.0, + "38": 487096832.0, + "39": 487096832.0, + "40": 487096832.0, + "41": 487096832.0, + "42": 487096832.0, + "43": 487096832.0, + "44": 487096832.0, + "45": 487096832.0, + "46": 487096832.0, + "47": 487096832.0, + "48": 487096832.0, + "49": 487096832.0, + "50": 487096832.0, + "51": 487096832.0, + "52": 487096832.0, + "53": 487096832.0, + "54": 487096832.0, + "55": 487096832.0, + "56": 487096832.0, + "57": 487096832.0, + "58": 487096832.0, + "59": 487096832.0, + "60": 487096832.0, + "61": 487096832.0, + "62": 487096832.0, + "63": 487096832.0, + "64": 487096832.0, + "65": 487096832.0, + "66": 487096832.0, + "67": 487096832.0, + "68": 487096832.0, + "69": 487096832.0, + "70": 487096832.0, + "71": 487096832.0, + "72": 487096832.0, + "73": 487096832.0, + "74": 487096832.0, + "75": 487096832.0, + "76": 487096832.0, + "77": 487096832.0, + "78": 487096832.0, + "79": 487096832.0, + "80": 487096832.0, + "81": 487096832.0, + "82": 487096832.0, + "83": 487096832.0, + "84": 487096832.0, + "85": 487096832.0, + "86": 487096832.0, + "87": 487096832.0, + "88": 487096832.0, + "89": 487096832.0, + "90": 487096832.0, + "91": 487096832.0, + "92": 487096832.0, + "93": 487096832.0, + "94": 487096832.0, + "95": 487096832.0, + "96": 487096832.0, + "97": 487096832.0, + "98": 487096832.0, + "99": 487096832.0, + "100": 487096832.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 1719035904.0, - "5": 1900157952.0, - "10": 1901729792.0, - "15": 1901729792.0, - "20": 1901729792.0, - "25": 1901729792.0, - "30": 1901729792.0, - "35": 1901729792.0, - "40": 1901729792.0, - "45": 1901729792.0, - "50": 1901729792.0, - "55": 1901729792.0, - "60": 1901729792.0, - "65": 1901729792.0, - "70": 1901729792.0, - "75": 1901729792.0, - "80": 1901729792.0, - "85": 1901729792.0, - "90": 1901729792.0, - "95": 1901729792.0, - "100": 1901729792.0 + "1": 1228699136.0, + "2": 1409821184.0, + "3": 1409821184.0, + "4": 1409821184.0, + "5": 1409821184.0, + "6": 1409821184.0, + "7": 1409821184.0, + "8": 1409821184.0, + "9": 1409821184.0, + "10": 1409821184.0, + "11": 1409821184.0, + "12": 1409821184.0, + "13": 1409821184.0, + "14": 1409821184.0, + "15": 1409821184.0, + "16": 1409821184.0, + "17": 1409821184.0, + "18": 1409821184.0, + "19": 1409821184.0, + "20": 1409821184.0, + "21": 1409821184.0, + "22": 1409821184.0, + "23": 1409821184.0, + "24": 1409821184.0, + "25": 1409821184.0, + "26": 1409821184.0, + "27": 1409821184.0, + "28": 1409821184.0, + "29": 1409821184.0, + "30": 1409821184.0, + "31": 1409821184.0, + "32": 1409821184.0, + "33": 1409821184.0, + "34": 1409821184.0, + "35": 1409821184.0, + "36": 1409821184.0, + "37": 1409821184.0, + "38": 1409821184.0, + "39": 1409821184.0, + "40": 1409821184.0, + "41": 1409821184.0, + "42": 1409821184.0, + "43": 1409821184.0, + "44": 1409821184.0, + "45": 1409821184.0, + "46": 1409821184.0, + "47": 1409821184.0, + "48": 1409821184.0, + "49": 1409821184.0, + "50": 1409821184.0, + "51": 1409821184.0, + "52": 1409821184.0, + "53": 1409821184.0, + "54": 1409821184.0, + "55": 1409821184.0, + "56": 1409821184.0, + "57": 1409821184.0, + "58": 1409821184.0, + "59": 1409821184.0, + "60": 1409821184.0, + "61": 1409821184.0, + "62": 1409821184.0, + "63": 1409821184.0, + "64": 1409821184.0, + "65": 1409821184.0, + "66": 1409821184.0, + "67": 1409821184.0, + "68": 1409821184.0, + "69": 1409821184.0, + "70": 1409821184.0, + "71": 1409821184.0, + "72": 1409821184.0, + "73": 1409821184.0, + "74": 1409821184.0, + "75": 1409821184.0, + "76": 1409821184.0, + "77": 1409821184.0, + "78": 1409821184.0, + "79": 1409821184.0, + "80": 1409821184.0, + "81": 1409821184.0, + "82": 1409821184.0, + "83": 1409821184.0, + "84": 1409821184.0, + "85": 1409821184.0, + "86": 1409821184.0, + "87": 1409821184.0, + "88": 1409821184.0, + "89": 1409821184.0, + "90": 1409821184.0, + "91": 1409821184.0, + "92": 1409821184.0, + "93": 1409821184.0, + "94": 1409821184.0, + "95": 1409821184.0, + "96": 1409821184.0, + "97": 1409821184.0, + "98": 1409821184.0, + "99": 1409821184.0, + "100": 1409821184.0 } }, "iteration-time": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 14.4466, - "5": 0.23058, - "10": 0.23299, - "15": 0.23075, - "20": 0.23163, - "25": 0.23303, - "30": 0.22991, - "35": 0.22977, - "40": 0.22747, - "45": 0.22974, - "50": 0.52211, - "55": 0.23173, - "60": 0.23326, - "65": 0.23498, - "70": 0.23013, - "75": 0.22876, - "80": 0.22947, - "85": 0.22706, - "90": 0.22612, - "95": 0.22523, - "100": 0.22404 + "1": 7.63807, + "2": 0.24295, + "3": 0.21281, + "4": 0.20931, + "5": 0.20554, + "6": 0.20827, + "7": 0.20618, + "8": 0.20701, + "9": 0.2077, + "10": 0.20875, + "11": 0.20704, + "12": 0.20735, + "13": 0.20734, + "14": 0.20659, + "15": 0.2071, + "16": 0.20766, + "17": 0.20579, + "18": 0.20511, + "19": 0.20563, + "20": 0.20589, + "21": 0.205, + "22": 0.20541, + "23": 0.2062, + "24": 0.20485, + "25": 0.20487, + "26": 0.20458, + "27": 0.20496, + "28": 0.20545, + "29": 0.20623, + "30": 0.20511, + "31": 0.20822, + "32": 0.20482, + "33": 0.20538, + "34": 0.20452, + "35": 0.21063, + "36": 0.20987, + "37": 0.20831, + "38": 0.2088, + "39": 0.20816, + "40": 0.20875, + "41": 0.20857, + "42": 0.20959, + "43": 0.20886, + "44": 0.2086, + "45": 0.20776, + "46": 0.20831, + "47": 0.20853, + "48": 0.2086, + "49": 0.20813, + "50": 0.209, + "51": 0.20574, + "52": 0.19892, + "53": 0.19904, + "54": 0.19867, + "55": 0.19897, + "56": 0.20031, + "57": 0.19874, + "58": 0.19971, + "59": 0.2002, + "60": 0.19847, + "61": 0.19948, + "62": 0.20017, + "63": 0.19926, + "64": 0.19923, + "65": 0.19974, + "66": 0.19915, + "67": 0.19992, + "68": 0.19949, + "69": 0.19842, + "70": 0.19824, + "71": 0.2012, + "72": 0.20144, + "73": 0.20339, + "74": 0.19815, + "75": 0.19802, + "76": 0.19898, + "77": 0.20003, + "78": 0.20017, + "79": 0.20157, + "80": 0.20266, + "81": 0.20004, + "82": 0.19937, + "83": 0.2008, + "84": 0.2009, + "85": 0.20194, + "86": 0.2015, + "87": 0.20004, + "88": 0.20091, + "89": 0.19998, + "90": 0.19993, + "91": 0.20008, + "92": 0.19991, + "93": 0.19979, + "94": 0.19939, + "95": 0.20098, + "96": 0.20045, + "97": 0.19917, + "98": 0.20012, + "99": 0.19963, + "100": 0.19848 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts.json new file mode 100644 index 00000000000..4378b779118 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90495, + "5": 10.92807, + "6": 10.93673, + "7": 10.90406, + "8": 10.92229, + "9": 10.91254, + "10": 10.90852, + "11": 10.89335, + "12": 10.9208, + "13": 10.91496, + "14": 10.92145, + "15": 10.88435, + "16": 10.87455, + "17": 10.83916, + "18": 10.87309, + "19": 10.85325, + "20": 10.77493, + "21": 10.74754, + "22": 10.63148, + "23": 10.75622, + "24": 10.65569, + "25": 10.59216, + "26": 10.65327, + "27": 10.64876, + "28": 10.59656, + "29": 10.61011, + "30": 10.39286, + "31": 10.15725, + "32": 10.49217, + "33": 10.47941, + "34": 10.24014, + "35": 10.2971, + "36": 10.24566, + "37": 10.35283, + "38": 10.20534, + "39": 10.40418, + "40": 10.09553, + "41": 10.15279, + "42": 10.2188, + "43": 9.85527, + "44": 9.96244, + "45": 9.84613, + "46": 9.83799, + "47": 10.13884, + "48": 9.85689, + "49": 9.53747, + "50": 9.90876, + "51": 9.84971, + "52": 9.74156, + "53": 10.06322, + "54": 9.94581, + "55": 9.87731, + "56": 9.62746, + "57": 9.47259, + "58": 9.82912, + "59": 9.583, + "60": 9.49181, + "61": 9.69961, + "62": 9.98089, + "63": 9.37212, + "64": 9.7756, + "65": 8.9433, + "66": 9.69993, + "67": 9.36414, + "68": 9.78706, + "69": 9.78397, + "70": 9.72288, + "71": 9.60749, + "72": 9.58416, + "73": 9.49093, + "74": 8.94864, + "75": 9.41807, + "76": 9.08721, + "77": 10.06283, + "78": 9.729, + "79": 9.37091, + "80": 9.40033, + "81": 9.47754, + "82": 9.69121, + "83": 9.30762, + "84": 9.41252, + "85": 9.61132, + "86": 9.07621, + "87": 9.59459, + "88": 9.74768, + "89": 9.6068, + "90": 9.81078, + "91": 9.34441, + "92": 9.36535, + "93": 9.07743, + "94": 8.82975, + "95": 9.51676, + "96": 9.52546, + "97": 9.31031, + "98": 9.67812, + "99": 8.88848, + "100": 9.40128 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1681.0, + "2": 1822.0, + "3": 1757.0, + "4": 1751.0, + "5": 1937.0, + "6": 1886.0, + "7": 1837.0, + "8": 1786.0, + "9": 1935.0, + "10": 1542.0, + "11": 1896.0, + "12": 1808.0, + "13": 1960.0, + "14": 1846.0, + "15": 1948.0, + "16": 1903.0, + "17": 1900.0, + "18": 1725.0, + "19": 1812.0, + "20": 1647.0, + "21": 1886.0, + "22": 1675.0, + "23": 1992.0, + "24": 1621.0, + "25": 1624.0, + "26": 1778.0, + "27": 1925.0, + "28": 1996.0, + "29": 2074.0, + "30": 1899.0, + "31": 1539.0, + "32": 1956.0, + "33": 2254.0, + "34": 1927.0, + "35": 2029.0, + "36": 1986.0, + "37": 2377.0, + "38": 2234.0, + "39": 2396.0, + "40": 2123.0, + "41": 2316.0, + "42": 2245.0, + "43": 2077.0, + "44": 2179.0, + "45": 2078.0, + "46": 2280.0, + "47": 2573.0, + "48": 2440.0, + "49": 2213.0, + "50": 2532.0, + "51": 2735.0, + "52": 2607.0, + "53": 2951.0, + "54": 2672.0, + "55": 2451.0, + "56": 2712.0, + "57": 2392.0, + "58": 2979.0, + "59": 2869.0, + "60": 2435.0, + "61": 2938.0, + "62": 2669.0, + "63": 2392.0, + "64": 2998.0, + "65": 2689.0, + "66": 3285.0, + "67": 2782.0, + "68": 2753.0, + "69": 2958.0, + "70": 3271.0, + "71": 3040.0, + "72": 2504.0, + "73": 3096.0, + "74": 1910.0, + "75": 2617.0, + "76": 3081.0, + "77": 3390.0, + "78": 3186.0, + "79": 3320.0, + "80": 3483.0, + "81": 3782.0, + "82": 3516.0, + "83": 2864.0, + "84": 3396.0, + "85": 3247.0, + "86": 2785.0, + "87": 3762.0, + "88": 3102.0, + "89": 3483.0, + "90": 3076.0, + "91": 2643.0, + "92": 3198.0, + "93": 2666.0, + "94": 3390.0, + "95": 3410.0, + "96": 3508.0, + "97": 3178.0, + "98": 3865.0, + "99": 3143.0, + "100": 3357.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 487096832.0, + "2": 487096832.0, + "3": 487096832.0, + "4": 487096832.0, + "5": 487096832.0, + "6": 487096832.0, + "7": 487096832.0, + "8": 487096832.0, + "9": 487096832.0, + "10": 487096832.0, + "11": 487096832.0, + "12": 487096832.0, + "13": 487096832.0, + "14": 487096832.0, + "15": 487096832.0, + "16": 487096832.0, + "17": 487096832.0, + "18": 487096832.0, + "19": 487096832.0, + "20": 487096832.0, + "21": 487096832.0, + "22": 487096832.0, + "23": 487096832.0, + "24": 487096832.0, + "25": 487096832.0, + "26": 487096832.0, + "27": 487096832.0, + "28": 487096832.0, + "29": 487096832.0, + "30": 487096832.0, + "31": 487096832.0, + "32": 487096832.0, + "33": 487096832.0, + "34": 487096832.0, + "35": 487096832.0, + "36": 487096832.0, + "37": 487096832.0, + "38": 487096832.0, + "39": 487096832.0, + "40": 487096832.0, + "41": 487096832.0, + "42": 487096832.0, + "43": 487096832.0, + "44": 487096832.0, + "45": 487096832.0, + "46": 487096832.0, + "47": 487096832.0, + "48": 487096832.0, + "49": 487096832.0, + "50": 487096832.0, + "51": 487096832.0, + "52": 487096832.0, + "53": 487096832.0, + "54": 487096832.0, + "55": 487096832.0, + "56": 487096832.0, + "57": 487096832.0, + "58": 487096832.0, + "59": 487096832.0, + "60": 487096832.0, + "61": 487096832.0, + "62": 487096832.0, + "63": 487096832.0, + "64": 487096832.0, + "65": 487096832.0, + "66": 487096832.0, + "67": 487096832.0, + "68": 487096832.0, + "69": 487096832.0, + "70": 487096832.0, + "71": 487096832.0, + "72": 487096832.0, + "73": 487096832.0, + "74": 487096832.0, + "75": 487096832.0, + "76": 487096832.0, + "77": 487096832.0, + "78": 487096832.0, + "79": 487096832.0, + "80": 487096832.0, + "81": 487096832.0, + "82": 487096832.0, + "83": 487096832.0, + "84": 487096832.0, + "85": 487096832.0, + "86": 487096832.0, + "87": 487096832.0, + "88": 487096832.0, + "89": 487096832.0, + "90": 487096832.0, + "91": 487096832.0, + "92": 487096832.0, + "93": 487096832.0, + "94": 487096832.0, + "95": 487096832.0, + "96": 487096832.0, + "97": 487096832.0, + "98": 487096832.0, + "99": 487096832.0, + "100": 487096832.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1228699136.0, + "2": 1409821184.0, + "3": 1409821184.0, + "4": 1409821184.0, + "5": 1409821184.0, + "6": 1409821184.0, + "7": 1409821184.0, + "8": 1409821184.0, + "9": 1409821184.0, + "10": 1409821184.0, + "11": 1409821184.0, + "12": 1409821184.0, + "13": 1409821184.0, + "14": 1409821184.0, + "15": 1409821184.0, + "16": 1409821184.0, + "17": 1409821184.0, + "18": 1409821184.0, + "19": 1409821184.0, + "20": 1409821184.0, + "21": 1409821184.0, + "22": 1409821184.0, + "23": 1409821184.0, + "24": 1409821184.0, + "25": 1409821184.0, + "26": 1409821184.0, + "27": 1409821184.0, + "28": 1409821184.0, + "29": 1409821184.0, + "30": 1409821184.0, + "31": 1409821184.0, + "32": 1409821184.0, + "33": 1409821184.0, + "34": 1409821184.0, + "35": 1409821184.0, + "36": 1409821184.0, + "37": 1409821184.0, + "38": 1409821184.0, + "39": 1409821184.0, + "40": 1409821184.0, + "41": 1409821184.0, + "42": 1409821184.0, + "43": 1409821184.0, + "44": 1409821184.0, + "45": 1409821184.0, + "46": 1409821184.0, + "47": 1409821184.0, + "48": 1409821184.0, + "49": 1409821184.0, + "50": 1409821184.0, + "51": 1409821184.0, + "52": 1409821184.0, + "53": 1409821184.0, + "54": 1409821184.0, + "55": 1409821184.0, + "56": 1409821184.0, + "57": 1409821184.0, + "58": 1409821184.0, + "59": 1409821184.0, + "60": 1409821184.0, + "61": 1409821184.0, + "62": 1409821184.0, + "63": 1409821184.0, + "64": 1409821184.0, + "65": 1409821184.0, + "66": 1409821184.0, + "67": 1409821184.0, + "68": 1409821184.0, + "69": 1409821184.0, + "70": 1409821184.0, + "71": 1409821184.0, + "72": 1409821184.0, + "73": 1409821184.0, + "74": 1409821184.0, + "75": 1409821184.0, + "76": 1409821184.0, + "77": 1409821184.0, + "78": 1409821184.0, + "79": 1409821184.0, + "80": 1409821184.0, + "81": 1409821184.0, + "82": 1409821184.0, + "83": 1409821184.0, + "84": 1409821184.0, + "85": 1409821184.0, + "86": 1409821184.0, + "87": 1409821184.0, + "88": 1409821184.0, + "89": 1409821184.0, + "90": 1409821184.0, + "91": 1409821184.0, + "92": 1409821184.0, + "93": 1409821184.0, + "94": 1409821184.0, + "95": 1409821184.0, + "96": 1409821184.0, + "97": 1409821184.0, + "98": 1409821184.0, + "99": 1409821184.0, + "100": 1409821184.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 6.19385, + "2": 0.24311, + "3": 0.20769, + "4": 0.20606, + "5": 0.21034, + "6": 0.20875, + "7": 0.20511, + "8": 0.2045, + "9": 0.20566, + "10": 0.20495, + "11": 0.20684, + "12": 0.20533, + "13": 0.20573, + "14": 0.20691, + "15": 0.20612, + "16": 0.20502, + "17": 0.20553, + "18": 0.20502, + "19": 0.20618, + "20": 0.20587, + "21": 0.20529, + "22": 0.20461, + "23": 0.20575, + "24": 0.2056, + "25": 0.20434, + "26": 0.20473, + "27": 0.20499, + "28": 0.20543, + "29": 0.20597, + "30": 0.20594, + "31": 0.20485, + "32": 0.20584, + "33": 0.20569, + "34": 0.20368, + "35": 0.20375, + "36": 0.20415, + "37": 0.20296, + "38": 0.20379, + "39": 0.20482, + "40": 0.20372, + "41": 0.20369, + "42": 0.2037, + "43": 0.20368, + "44": 0.2036, + "45": 0.20913, + "46": 0.20299, + "47": 0.20291, + "48": 0.20437, + "49": 0.2033, + "50": 0.20293, + "51": 0.21225, + "52": 0.20266, + "53": 0.20231, + "54": 0.20341, + "55": 0.20168, + "56": 0.20234, + "57": 0.20234, + "58": 0.20311, + "59": 0.20312, + "60": 0.20314, + "61": 0.20332, + "62": 0.20225, + "63": 0.20251, + "64": 0.20258, + "65": 0.20214, + "66": 0.2022, + "67": 0.20405, + "68": 0.20192, + "69": 0.2033, + "70": 0.20207, + "71": 0.20216, + "72": 0.20251, + "73": 0.20231, + "74": 0.20203, + "75": 0.20107, + "76": 0.20252, + "77": 0.20263, + "78": 0.20334, + "79": 0.20378, + "80": 0.20072, + "81": 0.20029, + "82": 0.19967, + "83": 0.20354, + "84": 0.20035, + "85": 0.201, + "86": 0.20061, + "87": 0.20132, + "88": 0.20043, + "89": 0.20079, + "90": 0.20125, + "91": 0.20103, + "92": 0.19988, + "93": 0.20137, + "94": 0.20191, + "95": 0.20085, + "96": 0.20182, + "97": 0.20169, + "98": 0.20353, + "99": 0.2004, + "100": 0.20044 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts_dgx_a100.json index 053168da21b..97ea213f560 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_ddp_average_in_collective/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.92705, "5": 10.92795, "10": 10.90786, "15": 10.88314, "20": 10.77629, "25": 10.59141, "30": 10.39192, "35": 10.29686, "40": 10.0964, "45": 9.84464, "50": 9.90918, "55": 9.87762, "60": 9.49121, "65": 8.94236, "70": 9.72266, "75": 9.41912, "80": 9.40077, "85": 9.61207, "90": 9.81015, "95": 9.51716, "100": 9.4015}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1627.0, "5": 2010.0, "10": 1368.0, "15": 1897.0, "20": 1626.0, "25": 1743.0, "30": 1930.0, "35": 1954.0, "40": 2199.0, "45": 2068.0, "50": 2460.0, "55": 2427.0, "60": 2380.0, "65": 2657.0, "70": 3265.0, "75": 2675.0, "80": 3434.0, "85": 3302.0, "90": 3230.0, "95": 3340.0, "100": 3291.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 487096320.0, "5": 487096320.0, "10": 487096320.0, "15": 487096320.0, "20": 487096320.0, "25": 487096320.0, "30": 487096320.0, "35": 487096320.0, "40": 487096320.0, "45": 487096320.0, "50": 487096320.0, "55": 487096320.0, "60": 487096320.0, "65": 487096320.0, "70": 487096320.0, "75": 487096320.0, "80": 487096320.0, "85": 487096320.0, "90": 487096320.0, "95": 487096320.0, "100": 487096320.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1720084480.0, "5": 1900157952.0, "10": 1900157952.0, "15": 1900157952.0, "20": 1900157952.0, "25": 1900157952.0, "30": 1900157952.0, "35": 1900157952.0, "40": 1900157952.0, "45": 1900157952.0, "50": 1900157952.0, "55": 1900157952.0, "60": 1900157952.0, "65": 1900157952.0, "70": 1900157952.0, "75": 1900157952.0, "80": 1900157952.0, "85": 1900157952.0, "90": 1900157952.0, "95": 1900157952.0, "100": 1900157952.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 12.26256, "5": 0.218, "10": 0.21609, "15": 0.21516, "20": 0.2149, "25": 0.21592, "30": 0.21243, "35": 0.21175, "40": 0.21098, "45": 0.21116, "50": 0.21161, "55": 0.21221, "60": 0.21264, "65": 0.21113, "70": 0.21176, "75": 0.22341, "80": 0.22245, "85": 0.22222, "90": 0.22203, "95": 0.21302, "100": 0.21583}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90495, + "5": 10.92807, + "6": 10.93673, + "7": 10.90406, + "8": 10.92229, + "9": 10.91254, + "10": 10.90852, + "11": 10.89335, + "12": 10.9208, + "13": 10.91496, + "14": 10.92145, + "15": 10.88435, + "16": 10.87455, + "17": 10.83916, + "18": 10.87309, + "19": 10.85325, + "20": 10.77493, + "21": 10.74754, + "22": 10.63148, + "23": 10.75622, + "24": 10.65569, + "25": 10.59216, + "26": 10.65327, + "27": 10.64876, + "28": 10.59656, + "29": 10.61011, + "30": 10.39286, + "31": 10.15725, + "32": 10.49217, + "33": 10.47941, + "34": 10.24014, + "35": 10.2971, + "36": 10.24566, + "37": 10.35283, + "38": 10.20534, + "39": 10.40418, + "40": 10.09553, + "41": 10.15279, + "42": 10.2188, + "43": 9.85527, + "44": 9.96244, + "45": 9.84613, + "46": 9.83799, + "47": 10.13884, + "48": 9.85689, + "49": 9.53747, + "50": 9.90876, + "51": 9.84971, + "52": 9.74156, + "53": 10.06322, + "54": 9.94581, + "55": 9.87731, + "56": 9.62746, + "57": 9.47259, + "58": 9.82912, + "59": 9.583, + "60": 9.49181, + "61": 9.69961, + "62": 9.98089, + "63": 9.37212, + "64": 9.7756, + "65": 8.9433, + "66": 9.69993, + "67": 9.36414, + "68": 9.78706, + "69": 9.78397, + "70": 9.72288, + "71": 9.60749, + "72": 9.58416, + "73": 9.49093, + "74": 8.94864, + "75": 9.41807, + "76": 9.08721, + "77": 10.06283, + "78": 9.729, + "79": 9.37091, + "80": 9.40033, + "81": 9.47754, + "82": 9.69121, + "83": 9.30762, + "84": 9.41252, + "85": 9.61132, + "86": 9.07621, + "87": 9.59459, + "88": 9.74768, + "89": 9.6068, + "90": 9.81078, + "91": 9.34441, + "92": 9.36535, + "93": 9.07743, + "94": 8.82975, + "95": 9.51676, + "96": 9.52546, + "97": 9.31031, + "98": 9.67812, + "99": 8.88848, + "100": 9.40128 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1681.0, + "2": 1822.0, + "3": 1757.0, + "4": 1751.0, + "5": 1937.0, + "6": 1886.0, + "7": 1837.0, + "8": 1786.0, + "9": 1935.0, + "10": 1542.0, + "11": 1896.0, + "12": 1808.0, + "13": 1960.0, + "14": 1846.0, + "15": 1948.0, + "16": 1903.0, + "17": 1900.0, + "18": 1725.0, + "19": 1812.0, + "20": 1647.0, + "21": 1886.0, + "22": 1675.0, + "23": 1992.0, + "24": 1621.0, + "25": 1624.0, + "26": 1778.0, + "27": 1925.0, + "28": 1996.0, + "29": 2074.0, + "30": 1899.0, + "31": 1539.0, + "32": 1956.0, + "33": 2254.0, + "34": 1927.0, + "35": 2029.0, + "36": 1986.0, + "37": 2377.0, + "38": 2234.0, + "39": 2396.0, + "40": 2123.0, + "41": 2316.0, + "42": 2245.0, + "43": 2077.0, + "44": 2179.0, + "45": 2078.0, + "46": 2280.0, + "47": 2573.0, + "48": 2440.0, + "49": 2213.0, + "50": 2532.0, + "51": 2735.0, + "52": 2607.0, + "53": 2951.0, + "54": 2672.0, + "55": 2451.0, + "56": 2712.0, + "57": 2392.0, + "58": 2979.0, + "59": 2869.0, + "60": 2435.0, + "61": 2938.0, + "62": 2669.0, + "63": 2392.0, + "64": 2998.0, + "65": 2689.0, + "66": 3285.0, + "67": 2782.0, + "68": 2753.0, + "69": 2958.0, + "70": 3271.0, + "71": 3040.0, + "72": 2504.0, + "73": 3096.0, + "74": 1910.0, + "75": 2617.0, + "76": 3081.0, + "77": 3390.0, + "78": 3186.0, + "79": 3320.0, + "80": 3483.0, + "81": 3782.0, + "82": 3516.0, + "83": 2864.0, + "84": 3396.0, + "85": 3247.0, + "86": 2785.0, + "87": 3762.0, + "88": 3102.0, + "89": 3483.0, + "90": 3076.0, + "91": 2643.0, + "92": 3198.0, + "93": 2666.0, + "94": 3390.0, + "95": 3410.0, + "96": 3508.0, + "97": 3178.0, + "98": 3865.0, + "99": 3143.0, + "100": 3357.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 487096832.0, + "2": 487096832.0, + "3": 487096832.0, + "4": 487096832.0, + "5": 487096832.0, + "6": 487096832.0, + "7": 487096832.0, + "8": 487096832.0, + "9": 487096832.0, + "10": 487096832.0, + "11": 487096832.0, + "12": 487096832.0, + "13": 487096832.0, + "14": 487096832.0, + "15": 487096832.0, + "16": 487096832.0, + "17": 487096832.0, + "18": 487096832.0, + "19": 487096832.0, + "20": 487096832.0, + "21": 487096832.0, + "22": 487096832.0, + "23": 487096832.0, + "24": 487096832.0, + "25": 487096832.0, + "26": 487096832.0, + "27": 487096832.0, + "28": 487096832.0, + "29": 487096832.0, + "30": 487096832.0, + "31": 487096832.0, + "32": 487096832.0, + "33": 487096832.0, + "34": 487096832.0, + "35": 487096832.0, + "36": 487096832.0, + "37": 487096832.0, + "38": 487096832.0, + "39": 487096832.0, + "40": 487096832.0, + "41": 487096832.0, + "42": 487096832.0, + "43": 487096832.0, + "44": 487096832.0, + "45": 487096832.0, + "46": 487096832.0, + "47": 487096832.0, + "48": 487096832.0, + "49": 487096832.0, + "50": 487096832.0, + "51": 487096832.0, + "52": 487096832.0, + "53": 487096832.0, + "54": 487096832.0, + "55": 487096832.0, + "56": 487096832.0, + "57": 487096832.0, + "58": 487096832.0, + "59": 487096832.0, + "60": 487096832.0, + "61": 487096832.0, + "62": 487096832.0, + "63": 487096832.0, + "64": 487096832.0, + "65": 487096832.0, + "66": 487096832.0, + "67": 487096832.0, + "68": 487096832.0, + "69": 487096832.0, + "70": 487096832.0, + "71": 487096832.0, + "72": 487096832.0, + "73": 487096832.0, + "74": 487096832.0, + "75": 487096832.0, + "76": 487096832.0, + "77": 487096832.0, + "78": 487096832.0, + "79": 487096832.0, + "80": 487096832.0, + "81": 487096832.0, + "82": 487096832.0, + "83": 487096832.0, + "84": 487096832.0, + "85": 487096832.0, + "86": 487096832.0, + "87": 487096832.0, + "88": 487096832.0, + "89": 487096832.0, + "90": 487096832.0, + "91": 487096832.0, + "92": 487096832.0, + "93": 487096832.0, + "94": 487096832.0, + "95": 487096832.0, + "96": 487096832.0, + "97": 487096832.0, + "98": 487096832.0, + "99": 487096832.0, + "100": 487096832.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1228699136.0, + "2": 1409821184.0, + "3": 1409821184.0, + "4": 1409821184.0, + "5": 1409821184.0, + "6": 1409821184.0, + "7": 1409821184.0, + "8": 1409821184.0, + "9": 1409821184.0, + "10": 1409821184.0, + "11": 1409821184.0, + "12": 1409821184.0, + "13": 1409821184.0, + "14": 1409821184.0, + "15": 1409821184.0, + "16": 1409821184.0, + "17": 1409821184.0, + "18": 1409821184.0, + "19": 1409821184.0, + "20": 1409821184.0, + "21": 1409821184.0, + "22": 1409821184.0, + "23": 1409821184.0, + "24": 1409821184.0, + "25": 1409821184.0, + "26": 1409821184.0, + "27": 1409821184.0, + "28": 1409821184.0, + "29": 1409821184.0, + "30": 1409821184.0, + "31": 1409821184.0, + "32": 1409821184.0, + "33": 1409821184.0, + "34": 1409821184.0, + "35": 1409821184.0, + "36": 1409821184.0, + "37": 1409821184.0, + "38": 1409821184.0, + "39": 1409821184.0, + "40": 1409821184.0, + "41": 1409821184.0, + "42": 1409821184.0, + "43": 1409821184.0, + "44": 1409821184.0, + "45": 1409821184.0, + "46": 1409821184.0, + "47": 1409821184.0, + "48": 1409821184.0, + "49": 1409821184.0, + "50": 1409821184.0, + "51": 1409821184.0, + "52": 1409821184.0, + "53": 1409821184.0, + "54": 1409821184.0, + "55": 1409821184.0, + "56": 1409821184.0, + "57": 1409821184.0, + "58": 1409821184.0, + "59": 1409821184.0, + "60": 1409821184.0, + "61": 1409821184.0, + "62": 1409821184.0, + "63": 1409821184.0, + "64": 1409821184.0, + "65": 1409821184.0, + "66": 1409821184.0, + "67": 1409821184.0, + "68": 1409821184.0, + "69": 1409821184.0, + "70": 1409821184.0, + "71": 1409821184.0, + "72": 1409821184.0, + "73": 1409821184.0, + "74": 1409821184.0, + "75": 1409821184.0, + "76": 1409821184.0, + "77": 1409821184.0, + "78": 1409821184.0, + "79": 1409821184.0, + "80": 1409821184.0, + "81": 1409821184.0, + "82": 1409821184.0, + "83": 1409821184.0, + "84": 1409821184.0, + "85": 1409821184.0, + "86": 1409821184.0, + "87": 1409821184.0, + "88": 1409821184.0, + "89": 1409821184.0, + "90": 1409821184.0, + "91": 1409821184.0, + "92": 1409821184.0, + "93": 1409821184.0, + "94": 1409821184.0, + "95": 1409821184.0, + "96": 1409821184.0, + "97": 1409821184.0, + "98": 1409821184.0, + "99": 1409821184.0, + "100": 1409821184.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 6.25138, + "2": 0.23075, + "3": 0.20054, + "4": 0.20395, + "5": 0.20085, + "6": 0.19693, + "7": 0.1984, + "8": 0.19691, + "9": 0.19734, + "10": 0.19831, + "11": 0.19755, + "12": 0.20036, + "13": 0.19718, + "14": 0.20205, + "15": 0.19931, + "16": 0.1974, + "17": 0.19891, + "18": 0.19725, + "19": 0.19744, + "20": 0.19621, + "21": 0.19556, + "22": 0.1957, + "23": 0.19653, + "24": 0.19561, + "25": 0.19465, + "26": 0.19483, + "27": 0.19566, + "28": 0.19514, + "29": 0.19571, + "30": 0.19512, + "31": 0.19603, + "32": 0.19794, + "33": 0.19597, + "34": 0.20052, + "35": 0.19938, + "36": 0.19968, + "37": 0.19971, + "38": 0.19989, + "39": 0.20233, + "40": 0.20594, + "41": 0.20596, + "42": 0.20875, + "43": 0.20692, + "44": 0.20224, + "45": 0.20492, + "46": 0.20483, + "47": 0.20404, + "48": 0.20062, + "49": 0.1998, + "50": 0.19944, + "51": 0.21056, + "52": 0.20322, + "53": 0.20394, + "54": 0.20267, + "55": 0.20305, + "56": 0.20261, + "57": 0.20266, + "58": 0.2023, + "59": 0.20259, + "60": 0.20297, + "61": 0.20333, + "62": 0.20344, + "63": 0.20255, + "64": 0.20203, + "65": 0.20288, + "66": 0.20295, + "67": 0.20276, + "68": 0.20255, + "69": 0.20306, + "70": 0.20225, + "71": 0.20236, + "72": 0.20262, + "73": 0.2033, + "74": 0.20279, + "75": 0.20276, + "76": 0.20185, + "77": 0.20283, + "78": 0.20284, + "79": 0.2021, + "80": 0.20273, + "81": 0.20261, + "82": 0.20101, + "83": 0.20222, + "84": 0.20269, + "85": 0.20272, + "86": 0.20286, + "87": 0.20079, + "88": 0.20309, + "89": 0.2026, + "90": 0.20209, + "91": 0.20371, + "92": 0.20302, + "93": 0.20226, + "94": 0.20222, + "95": 0.20289, + "96": 0.20273, + "97": 0.20346, + "98": 0.20283, + "99": 0.20241, + "100": 0.20343 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts.json new file mode 100644 index 00000000000..f6faa6eb158 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90497, + "5": 10.92805, + "6": 10.93671, + "7": 10.90403, + "8": 10.92231, + "9": 10.91252, + "10": 10.90851, + "11": 10.89338, + "12": 10.9208, + "13": 10.91494, + "14": 10.92144, + "15": 10.88435, + "16": 10.87458, + "17": 10.83918, + "18": 10.87307, + "19": 10.85328, + "20": 10.77494, + "21": 10.74759, + "22": 10.63148, + "23": 10.75623, + "24": 10.65568, + "25": 10.59221, + "26": 10.65325, + "27": 10.64881, + "28": 10.59654, + "29": 10.61012, + "30": 10.39283, + "31": 10.15719, + "32": 10.49221, + "33": 10.47943, + "34": 10.24015, + "35": 10.29711, + "36": 10.24562, + "37": 10.35281, + "38": 10.20533, + "39": 10.40423, + "40": 10.09553, + "41": 10.15279, + "42": 10.21879, + "43": 9.85526, + "44": 9.96244, + "45": 9.84617, + "46": 9.83798, + "47": 10.1388, + "48": 9.85687, + "49": 9.53746, + "50": 9.90877, + "51": 9.84971, + "52": 9.74156, + "53": 10.06324, + "54": 9.94584, + "55": 9.87735, + "56": 9.62744, + "57": 9.4726, + "58": 9.82907, + "59": 9.58298, + "60": 9.49182, + "61": 9.6996, + "62": 9.98091, + "63": 9.37212, + "64": 9.77558, + "65": 8.94327, + "66": 9.69991, + "67": 9.3641, + "68": 9.78706, + "69": 9.78396, + "70": 9.72291, + "71": 9.60749, + "72": 9.58417, + "73": 9.4909, + "74": 8.94863, + "75": 9.41807, + "76": 9.08721, + "77": 10.06284, + "78": 9.729, + "79": 9.37087, + "80": 9.40029, + "81": 9.47753, + "82": 9.69123, + "83": 9.30764, + "84": 9.4125, + "85": 9.61132, + "86": 9.07624, + "87": 9.59459, + "88": 9.74769, + "89": 9.60678, + "90": 9.81079, + "91": 9.34443, + "92": 9.36534, + "93": 9.07741, + "94": 8.82974, + "95": 9.51676, + "96": 9.52545, + "97": 9.31031, + "98": 9.67811, + "99": 8.88848, + "100": 9.40128 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 59.0, + "2": 59.0, + "3": 57.0, + "4": 55.0, + "5": 68.0, + "6": 60.0, + "7": 58.0, + "8": 63.0, + "9": 62.0, + "10": 47.0, + "11": 57.0, + "12": 48.0, + "13": 68.0, + "14": 58.0, + "15": 75.0, + "16": 67.0, + "17": 59.0, + "18": 56.0, + "19": 72.0, + "20": 52.0, + "21": 60.0, + "22": 69.0, + "23": 77.0, + "24": 58.0, + "25": 71.0, + "26": 68.0, + "27": 55.0, + "28": 94.0, + "29": 57.0, + "30": 66.0, + "31": 60.0, + "32": 64.0, + "33": 69.0, + "34": 73.0, + "35": 73.0, + "36": 72.0, + "37": 89.0, + "38": 72.0, + "39": 75.0, + "40": 82.0, + "41": 82.0, + "42": 74.0, + "43": 90.0, + "44": 69.0, + "45": 83.0, + "46": 68.0, + "47": 74.0, + "48": 95.0, + "49": 81.0, + "50": 83.0, + "51": 77.0, + "52": 100.0, + "53": 71.0, + "54": 67.0, + "55": 70.0, + "56": 83.0, + "57": 74.0, + "58": 106.0, + "59": 72.0, + "60": 98.0, + "61": 67.0, + "62": 73.0, + "63": 77.0, + "64": 94.0, + "65": 82.0, + "66": 87.0, + "67": 65.0, + "68": 78.0, + "69": 59.0, + "70": 102.0, + "71": 82.0, + "72": 60.0, + "73": 96.0, + "74": 61.0, + "75": 64.0, + "76": 70.0, + "77": 84.0, + "78": 93.0, + "79": 102.0, + "80": 71.0, + "81": 88.0, + "82": 85.0, + "83": 75.0, + "84": 69.0, + "85": 84.0, + "86": 66.0, + "87": 93.0, + "88": 96.0, + "89": 73.0, + "90": 77.0, + "91": 66.0, + "92": 86.0, + "93": 63.0, + "94": 60.0, + "95": 70.0, + "96": 65.0, + "97": 67.0, + "98": 96.0, + "99": 54.0, + "100": 77.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 516063744.0, + "2": 516063744.0, + "3": 516063744.0, + "4": 516063744.0, + "5": 516063744.0, + "6": 516063744.0, + "7": 516063744.0, + "8": 516063744.0, + "9": 516063744.0, + "10": 516063744.0, + "11": 516063744.0, + "12": 516063744.0, + "13": 516063744.0, + "14": 516063744.0, + "15": 516063744.0, + "16": 516063744.0, + "17": 516063744.0, + "18": 516063744.0, + "19": 516063744.0, + "20": 516063744.0, + "21": 516063744.0, + "22": 516063744.0, + "23": 516063744.0, + "24": 516063744.0, + "25": 516063744.0, + "26": 516063744.0, + "27": 516063744.0, + "28": 516063744.0, + "29": 516063744.0, + "30": 516063744.0, + "31": 516063744.0, + "32": 516063744.0, + "33": 516063744.0, + "34": 516063744.0, + "35": 516063744.0, + "36": 516063744.0, + "37": 516063744.0, + "38": 516063744.0, + "39": 516063744.0, + "40": 516063744.0, + "41": 516063744.0, + "42": 516063744.0, + "43": 516063744.0, + "44": 516063744.0, + "45": 516063744.0, + "46": 516063744.0, + "47": 516063744.0, + "48": 516063744.0, + "49": 516063744.0, + "50": 516063744.0, + "51": 516063744.0, + "52": 516063744.0, + "53": 516063744.0, + "54": 516063744.0, + "55": 516063744.0, + "56": 516063744.0, + "57": 516063744.0, + "58": 516063744.0, + "59": 516063744.0, + "60": 516063744.0, + "61": 516063744.0, + "62": 516063744.0, + "63": 516063744.0, + "64": 516063744.0, + "65": 516063744.0, + "66": 516063744.0, + "67": 516063744.0, + "68": 516063744.0, + "69": 516063744.0, + "70": 516063744.0, + "71": 516063744.0, + "72": 516063744.0, + "73": 516063744.0, + "74": 516063744.0, + "75": 516063744.0, + "76": 516063744.0, + "77": 516063744.0, + "78": 516063744.0, + "79": 516063744.0, + "80": 516063744.0, + "81": 516063744.0, + "82": 516063744.0, + "83": 516063744.0, + "84": 516063744.0, + "85": 516063744.0, + "86": 516063744.0, + "87": 516063744.0, + "88": 516063744.0, + "89": 516063744.0, + "90": 516063744.0, + "91": 516063744.0, + "92": 516063744.0, + "93": 516063744.0, + "94": 516063744.0, + "95": 516063744.0, + "96": 516063744.0, + "97": 516063744.0, + "98": 516063744.0, + "99": 516063744.0, + "100": 516063744.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1697019392.0, + "2": 1877092864.0, + "3": 1877092864.0, + "4": 1877092864.0, + "5": 1877092864.0, + "6": 1877092864.0, + "7": 1877092864.0, + "8": 1877092864.0, + "9": 1877092864.0, + "10": 1877092864.0, + "11": 1877092864.0, + "12": 1877092864.0, + "13": 1877092864.0, + "14": 1877092864.0, + "15": 1877092864.0, + "16": 1877092864.0, + "17": 1877092864.0, + "18": 1877092864.0, + "19": 1877092864.0, + "20": 1877092864.0, + "21": 1877092864.0, + "22": 1877092864.0, + "23": 1877092864.0, + "24": 1877092864.0, + "25": 1877092864.0, + "26": 1877092864.0, + "27": 1877092864.0, + "28": 1877092864.0, + "29": 1877092864.0, + "30": 1877092864.0, + "31": 1877092864.0, + "32": 1877092864.0, + "33": 1877092864.0, + "34": 1877092864.0, + "35": 1877092864.0, + "36": 1877092864.0, + "37": 1877092864.0, + "38": 1877092864.0, + "39": 1877092864.0, + "40": 1877092864.0, + "41": 1877092864.0, + "42": 1877092864.0, + "43": 1877092864.0, + "44": 1877092864.0, + "45": 1877092864.0, + "46": 1877092864.0, + "47": 1877092864.0, + "48": 1877092864.0, + "49": 1877092864.0, + "50": 1877092864.0, + "51": 1877092864.0, + "52": 1877092864.0, + "53": 1877092864.0, + "54": 1877092864.0, + "55": 1877092864.0, + "56": 1877092864.0, + "57": 1877092864.0, + "58": 1877092864.0, + "59": 1877092864.0, + "60": 1877092864.0, + "61": 1877092864.0, + "62": 1877092864.0, + "63": 1877092864.0, + "64": 1877092864.0, + "65": 1877092864.0, + "66": 1877092864.0, + "67": 1877092864.0, + "68": 1877092864.0, + "69": 1877092864.0, + "70": 1877092864.0, + "71": 1877092864.0, + "72": 1877092864.0, + "73": 1877092864.0, + "74": 1877092864.0, + "75": 1877092864.0, + "76": 1877092864.0, + "77": 1877092864.0, + "78": 1877092864.0, + "79": 1877092864.0, + "80": 1877092864.0, + "81": 1877092864.0, + "82": 1877092864.0, + "83": 1877092864.0, + "84": 1877092864.0, + "85": 1877092864.0, + "86": 1877092864.0, + "87": 1877092864.0, + "88": 1877092864.0, + "89": 1877092864.0, + "90": 1877092864.0, + "91": 1877092864.0, + "92": 1877092864.0, + "93": 1877092864.0, + "94": 1877092864.0, + "95": 1877092864.0, + "96": 1877092864.0, + "97": 1877092864.0, + "98": 1877092864.0, + "99": 1877092864.0, + "100": 1877092864.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 5.79688, + "2": 0.23426, + "3": 0.19644, + "4": 0.195, + "5": 0.19474, + "6": 0.19503, + "7": 0.19553, + "8": 0.19608, + "9": 0.1942, + "10": 0.19493, + "11": 0.19477, + "12": 0.19436, + "13": 0.19434, + "14": 0.19471, + "15": 0.19477, + "16": 0.19465, + "17": 0.19394, + "18": 0.19358, + "19": 0.19755, + "20": 0.19602, + "21": 0.19501, + "22": 0.1946, + "23": 0.19563, + "24": 0.19522, + "25": 0.19502, + "26": 0.19664, + "27": 0.19509, + "28": 0.19415, + "29": 0.19426, + "30": 0.19405, + "31": 0.19405, + "32": 0.19558, + "33": 0.19428, + "34": 0.19418, + "35": 0.19493, + "36": 0.19478, + "37": 0.19511, + "38": 0.19481, + "39": 0.19506, + "40": 0.19573, + "41": 0.19576, + "42": 0.19504, + "43": 0.19379, + "44": 0.19366, + "45": 0.19309, + "46": 0.19331, + "47": 0.19424, + "48": 0.21152, + "49": 0.2113, + "50": 0.21175, + "51": 0.20739, + "52": 0.19757, + "53": 0.19742, + "54": 0.19771, + "55": 0.19922, + "56": 0.19903, + "57": 0.19826, + "58": 0.19889, + "59": 0.1988, + "60": 0.19894, + "61": 0.19841, + "62": 0.19853, + "63": 0.19879, + "64": 0.19776, + "65": 0.19833, + "66": 0.19911, + "67": 0.19919, + "68": 0.19768, + "69": 0.19855, + "70": 0.19789, + "71": 0.19851, + "72": 0.19815, + "73": 0.19885, + "74": 0.19845, + "75": 0.19827, + "76": 0.19878, + "77": 0.19962, + "78": 0.19912, + "79": 0.19891, + "80": 0.1985, + "81": 0.19933, + "82": 0.1977, + "83": 0.19774, + "84": 0.19798, + "85": 0.19781, + "86": 0.19763, + "87": 0.1977, + "88": 0.19934, + "89": 0.19771, + "90": 0.19835, + "91": 0.19886, + "92": 0.19768, + "93": 0.19818, + "94": 0.19769, + "95": 0.19836, + "96": 0.19833, + "97": 0.19773, + "98": 0.1988, + "99": 0.1973, + "100": 0.19801 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts_dgx_a100.json index 59a50d2f033..96cf765384a 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_defer_embedding_wgrad_compute/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.92705, "5": 10.92799, "10": 10.90789, "15": 10.88313, "20": 10.77626, "25": 10.59138, "30": 10.39195, "35": 10.29687, "40": 10.0964, "45": 9.84466, "50": 9.9092, "55": 9.87764, "60": 9.49121, "65": 8.94232, "70": 9.72263, "75": 9.41912, "80": 9.40079, "85": 9.61209, "90": 9.81012, "95": 9.51718, "100": 9.40153}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 68.0, "5": 64.0, "10": 61.0, "15": 58.0, "20": 64.0, "25": 58.0, "30": 85.0, "35": 66.0, "40": 85.0, "45": 84.0, "50": 85.0, "55": 69.0, "60": 67.0, "65": 65.0, "70": 92.0, "75": 51.0, "80": 98.0, "85": 86.0, "90": 83.0, "95": 72.0, "100": 73.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 488144896.0, "5": 488144896.0, "10": 488144896.0, "15": 488144896.0, "20": 488144896.0, "25": 489193472.0, "30": 488144896.0, "35": 488144896.0, "40": 488144896.0, "45": 488144896.0, "50": 488144896.0, "55": 488144896.0, "60": 488144896.0, "65": 488144896.0, "70": 489193472.0, "75": 489193472.0, "80": 489193472.0, "85": 488144896.0, "90": 488144896.0, "95": 488144896.0, "100": 489193472.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 2158389248.0, "5": 2340559872.0, "10": 2340559872.0, "15": 2340559872.0, "20": 2340559872.0, "25": 2340559872.0, "30": 2340559872.0, "35": 2340559872.0, "40": 2340559872.0, "45": 2340559872.0, "50": 2340559872.0, "55": 2340559872.0, "60": 2340559872.0, "65": 2340559872.0, "70": 2340559872.0, "75": 2340559872.0, "80": 2340559872.0, "85": 2340559872.0, "90": 2340559872.0, "95": 2340559872.0, "100": 2340559872.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 15.21811, "5": 0.22614, "10": 0.22685, "15": 0.22633, "20": 0.22582, "25": 0.22604, "30": 0.22747, "35": 0.22529, "40": 0.22441, "45": 0.22458, "50": 0.22397, "55": 0.21965, "60": 0.22066, "65": 0.22265, "70": 0.22234, "75": 0.2195, "80": 0.21889, "85": 0.21987, "90": 0.21875, "95": 0.21918, "100": 0.21913}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90497, + "5": 10.92805, + "6": 10.93671, + "7": 10.90403, + "8": 10.92231, + "9": 10.91252, + "10": 10.90851, + "11": 10.89338, + "12": 10.9208, + "13": 10.91494, + "14": 10.92144, + "15": 10.88435, + "16": 10.87458, + "17": 10.83918, + "18": 10.87307, + "19": 10.85328, + "20": 10.77494, + "21": 10.74759, + "22": 10.63148, + "23": 10.75623, + "24": 10.65568, + "25": 10.59221, + "26": 10.65325, + "27": 10.64881, + "28": 10.59654, + "29": 10.61012, + "30": 10.39283, + "31": 10.15719, + "32": 10.49221, + "33": 10.47943, + "34": 10.24015, + "35": 10.29711, + "36": 10.24562, + "37": 10.35281, + "38": 10.20533, + "39": 10.40423, + "40": 10.09553, + "41": 10.15279, + "42": 10.21879, + "43": 9.85526, + "44": 9.96244, + "45": 9.84617, + "46": 9.83798, + "47": 10.1388, + "48": 9.85687, + "49": 9.53746, + "50": 9.90877, + "51": 9.84971, + "52": 9.74156, + "53": 10.06324, + "54": 9.94584, + "55": 9.87735, + "56": 9.62744, + "57": 9.4726, + "58": 9.82907, + "59": 9.58298, + "60": 9.49182, + "61": 9.6996, + "62": 9.98091, + "63": 9.37212, + "64": 9.77558, + "65": 8.94327, + "66": 9.69991, + "67": 9.3641, + "68": 9.78706, + "69": 9.78396, + "70": 9.72291, + "71": 9.60749, + "72": 9.58417, + "73": 9.4909, + "74": 8.94863, + "75": 9.41807, + "76": 9.08721, + "77": 10.06284, + "78": 9.729, + "79": 9.37087, + "80": 9.40029, + "81": 9.47753, + "82": 9.69123, + "83": 9.30764, + "84": 9.4125, + "85": 9.61132, + "86": 9.07624, + "87": 9.59459, + "88": 9.74769, + "89": 9.60678, + "90": 9.81079, + "91": 9.34443, + "92": 9.36534, + "93": 9.07741, + "94": 8.82974, + "95": 9.51676, + "96": 9.52545, + "97": 9.31031, + "98": 9.67811, + "99": 8.88848, + "100": 9.40128 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 59.0, + "2": 59.0, + "3": 57.0, + "4": 55.0, + "5": 68.0, + "6": 60.0, + "7": 58.0, + "8": 63.0, + "9": 62.0, + "10": 47.0, + "11": 57.0, + "12": 48.0, + "13": 68.0, + "14": 58.0, + "15": 75.0, + "16": 67.0, + "17": 59.0, + "18": 56.0, + "19": 72.0, + "20": 52.0, + "21": 60.0, + "22": 69.0, + "23": 77.0, + "24": 58.0, + "25": 71.0, + "26": 68.0, + "27": 55.0, + "28": 94.0, + "29": 57.0, + "30": 66.0, + "31": 60.0, + "32": 64.0, + "33": 69.0, + "34": 73.0, + "35": 73.0, + "36": 72.0, + "37": 89.0, + "38": 72.0, + "39": 75.0, + "40": 82.0, + "41": 82.0, + "42": 74.0, + "43": 90.0, + "44": 69.0, + "45": 83.0, + "46": 68.0, + "47": 74.0, + "48": 95.0, + "49": 81.0, + "50": 83.0, + "51": 77.0, + "52": 100.0, + "53": 71.0, + "54": 67.0, + "55": 70.0, + "56": 83.0, + "57": 74.0, + "58": 106.0, + "59": 72.0, + "60": 98.0, + "61": 67.0, + "62": 73.0, + "63": 77.0, + "64": 94.0, + "65": 82.0, + "66": 87.0, + "67": 65.0, + "68": 78.0, + "69": 59.0, + "70": 102.0, + "71": 82.0, + "72": 60.0, + "73": 96.0, + "74": 61.0, + "75": 64.0, + "76": 70.0, + "77": 84.0, + "78": 93.0, + "79": 102.0, + "80": 71.0, + "81": 88.0, + "82": 85.0, + "83": 75.0, + "84": 69.0, + "85": 84.0, + "86": 66.0, + "87": 93.0, + "88": 96.0, + "89": 73.0, + "90": 77.0, + "91": 66.0, + "92": 86.0, + "93": 63.0, + "94": 60.0, + "95": 70.0, + "96": 65.0, + "97": 67.0, + "98": 96.0, + "99": 54.0, + "100": 77.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 516063744.0, + "2": 516063744.0, + "3": 516063744.0, + "4": 516063744.0, + "5": 516063744.0, + "6": 516063744.0, + "7": 516063744.0, + "8": 516063744.0, + "9": 516063744.0, + "10": 516063744.0, + "11": 516063744.0, + "12": 516063744.0, + "13": 516063744.0, + "14": 516063744.0, + "15": 516063744.0, + "16": 516063744.0, + "17": 516063744.0, + "18": 516063744.0, + "19": 516063744.0, + "20": 516063744.0, + "21": 516063744.0, + "22": 516063744.0, + "23": 516063744.0, + "24": 516063744.0, + "25": 516063744.0, + "26": 516063744.0, + "27": 516063744.0, + "28": 516063744.0, + "29": 516063744.0, + "30": 516063744.0, + "31": 516063744.0, + "32": 516063744.0, + "33": 516063744.0, + "34": 516063744.0, + "35": 516063744.0, + "36": 516063744.0, + "37": 516063744.0, + "38": 516063744.0, + "39": 516063744.0, + "40": 516063744.0, + "41": 516063744.0, + "42": 516063744.0, + "43": 516063744.0, + "44": 516063744.0, + "45": 516063744.0, + "46": 516063744.0, + "47": 516063744.0, + "48": 516063744.0, + "49": 516063744.0, + "50": 516063744.0, + "51": 516063744.0, + "52": 516063744.0, + "53": 516063744.0, + "54": 516063744.0, + "55": 516063744.0, + "56": 516063744.0, + "57": 516063744.0, + "58": 516063744.0, + "59": 516063744.0, + "60": 516063744.0, + "61": 516063744.0, + "62": 516063744.0, + "63": 516063744.0, + "64": 516063744.0, + "65": 516063744.0, + "66": 516063744.0, + "67": 516063744.0, + "68": 516063744.0, + "69": 516063744.0, + "70": 516063744.0, + "71": 516063744.0, + "72": 516063744.0, + "73": 516063744.0, + "74": 516063744.0, + "75": 516063744.0, + "76": 516063744.0, + "77": 516063744.0, + "78": 516063744.0, + "79": 516063744.0, + "80": 516063744.0, + "81": 516063744.0, + "82": 516063744.0, + "83": 516063744.0, + "84": 516063744.0, + "85": 516063744.0, + "86": 516063744.0, + "87": 516063744.0, + "88": 516063744.0, + "89": 516063744.0, + "90": 516063744.0, + "91": 516063744.0, + "92": 516063744.0, + "93": 516063744.0, + "94": 516063744.0, + "95": 516063744.0, + "96": 516063744.0, + "97": 516063744.0, + "98": 516063744.0, + "99": 516063744.0, + "100": 516063744.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1697019392.0, + "2": 1877092864.0, + "3": 1877092864.0, + "4": 1877092864.0, + "5": 1877092864.0, + "6": 1877092864.0, + "7": 1877092864.0, + "8": 1877092864.0, + "9": 1877092864.0, + "10": 1877092864.0, + "11": 1877092864.0, + "12": 1877092864.0, + "13": 1877092864.0, + "14": 1877092864.0, + "15": 1877092864.0, + "16": 1877092864.0, + "17": 1877092864.0, + "18": 1877092864.0, + "19": 1877092864.0, + "20": 1877092864.0, + "21": 1877092864.0, + "22": 1877092864.0, + "23": 1877092864.0, + "24": 1877092864.0, + "25": 1877092864.0, + "26": 1877092864.0, + "27": 1877092864.0, + "28": 1877092864.0, + "29": 1877092864.0, + "30": 1877092864.0, + "31": 1877092864.0, + "32": 1877092864.0, + "33": 1877092864.0, + "34": 1877092864.0, + "35": 1877092864.0, + "36": 1877092864.0, + "37": 1877092864.0, + "38": 1877092864.0, + "39": 1877092864.0, + "40": 1877092864.0, + "41": 1877092864.0, + "42": 1877092864.0, + "43": 1877092864.0, + "44": 1877092864.0, + "45": 1877092864.0, + "46": 1877092864.0, + "47": 1877092864.0, + "48": 1877092864.0, + "49": 1877092864.0, + "50": 1877092864.0, + "51": 1877092864.0, + "52": 1877092864.0, + "53": 1877092864.0, + "54": 1877092864.0, + "55": 1877092864.0, + "56": 1877092864.0, + "57": 1877092864.0, + "58": 1877092864.0, + "59": 1877092864.0, + "60": 1877092864.0, + "61": 1877092864.0, + "62": 1877092864.0, + "63": 1877092864.0, + "64": 1877092864.0, + "65": 1877092864.0, + "66": 1877092864.0, + "67": 1877092864.0, + "68": 1877092864.0, + "69": 1877092864.0, + "70": 1877092864.0, + "71": 1877092864.0, + "72": 1877092864.0, + "73": 1877092864.0, + "74": 1877092864.0, + "75": 1877092864.0, + "76": 1877092864.0, + "77": 1877092864.0, + "78": 1877092864.0, + "79": 1877092864.0, + "80": 1877092864.0, + "81": 1877092864.0, + "82": 1877092864.0, + "83": 1877092864.0, + "84": 1877092864.0, + "85": 1877092864.0, + "86": 1877092864.0, + "87": 1877092864.0, + "88": 1877092864.0, + "89": 1877092864.0, + "90": 1877092864.0, + "91": 1877092864.0, + "92": 1877092864.0, + "93": 1877092864.0, + "94": 1877092864.0, + "95": 1877092864.0, + "96": 1877092864.0, + "97": 1877092864.0, + "98": 1877092864.0, + "99": 1877092864.0, + "100": 1877092864.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 6.10882, + "2": 0.24563, + "3": 0.21507, + "4": 0.21225, + "5": 0.21165, + "6": 0.21127, + "7": 0.21406, + "8": 0.21402, + "9": 0.21175, + "10": 0.19518, + "11": 0.19565, + "12": 0.19461, + "13": 0.19428, + "14": 0.19385, + "15": 0.19329, + "16": 0.19311, + "17": 0.19391, + "18": 0.19383, + "19": 0.19364, + "20": 0.19408, + "21": 0.19327, + "22": 0.19729, + "23": 0.19599, + "24": 0.19601, + "25": 0.1965, + "26": 0.19683, + "27": 0.19626, + "28": 0.19667, + "29": 0.1989, + "30": 0.19644, + "31": 0.19728, + "32": 0.19614, + "33": 0.1973, + "34": 0.1971, + "35": 0.19674, + "36": 0.19628, + "37": 0.19578, + "38": 0.19629, + "39": 0.19673, + "40": 0.19712, + "41": 0.19593, + "42": 0.1969, + "43": 0.19639, + "44": 0.20378, + "45": 0.19737, + "46": 0.19738, + "47": 0.19532, + "48": 0.19579, + "49": 0.19617, + "50": 0.19695, + "51": 0.20318, + "52": 0.19428, + "53": 0.19415, + "54": 0.19663, + "55": 0.19266, + "56": 0.19426, + "57": 0.19455, + "58": 0.19473, + "59": 0.19413, + "60": 0.19467, + "61": 0.19511, + "62": 0.19475, + "63": 0.19464, + "64": 0.19452, + "65": 0.19445, + "66": 0.19395, + "67": 0.19423, + "68": 0.19431, + "69": 0.19512, + "70": 0.1941, + "71": 0.19453, + "72": 0.19467, + "73": 0.19615, + "74": 0.19355, + "75": 0.19419, + "76": 0.19407, + "77": 0.19455, + "78": 0.19511, + "79": 0.19498, + "80": 0.19577, + "81": 0.19399, + "82": 0.19362, + "83": 0.19425, + "84": 0.19418, + "85": 0.19432, + "86": 0.20057, + "87": 0.19522, + "88": 0.19447, + "89": 0.19472, + "90": 0.19377, + "91": 0.19433, + "92": 0.19432, + "93": 0.19456, + "94": 0.19394, + "95": 0.19417, + "96": 0.19476, + "97": 0.19423, + "98": 0.19401, + "99": 0.19403, + "100": 0.19364 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts.json new file mode 100644 index 00000000000..6a8c9ac9b1d --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90495, + "5": 10.92807, + "6": 10.93673, + "7": 10.90406, + "8": 10.92229, + "9": 10.91254, + "10": 10.90852, + "11": 10.89335, + "12": 10.9208, + "13": 10.91496, + "14": 10.92145, + "15": 10.88435, + "16": 10.87455, + "17": 10.83916, + "18": 10.87309, + "19": 10.85325, + "20": 10.77493, + "21": 10.74754, + "22": 10.63148, + "23": 10.75622, + "24": 10.65569, + "25": 10.59216, + "26": 10.65327, + "27": 10.64876, + "28": 10.59656, + "29": 10.61011, + "30": 10.39286, + "31": 10.15725, + "32": 10.49217, + "33": 10.47941, + "34": 10.24014, + "35": 10.2971, + "36": 10.24566, + "37": 10.35283, + "38": 10.20534, + "39": 10.40418, + "40": 10.09553, + "41": 10.15279, + "42": 10.2188, + "43": 9.85527, + "44": 9.96244, + "45": 9.84613, + "46": 9.83799, + "47": 10.13884, + "48": 9.85689, + "49": 9.53747, + "50": 9.90876, + "51": 9.84971, + "52": 9.74156, + "53": 10.06322, + "54": 9.94581, + "55": 9.87731, + "56": 9.62746, + "57": 9.47259, + "58": 9.82912, + "59": 9.583, + "60": 9.49181, + "61": 9.69961, + "62": 9.98089, + "63": 9.37212, + "64": 9.7756, + "65": 8.9433, + "66": 9.69993, + "67": 9.36414, + "68": 9.78706, + "69": 9.78397, + "70": 9.72288, + "71": 9.60749, + "72": 9.58416, + "73": 9.49093, + "74": 8.94864, + "75": 9.41807, + "76": 9.08721, + "77": 10.06283, + "78": 9.729, + "79": 9.37091, + "80": 9.40033, + "81": 9.47754, + "82": 9.69121, + "83": 9.30762, + "84": 9.41252, + "85": 9.61132, + "86": 9.07621, + "87": 9.59459, + "88": 9.74768, + "89": 9.6068, + "90": 9.81078, + "91": 9.34441, + "92": 9.36535, + "93": 9.07743, + "94": 8.82975, + "95": 9.51676, + "96": 9.52546, + "97": 9.31031, + "98": 9.67812, + "99": 8.88848, + "100": 9.40128 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1681.0, + "2": 1822.0, + "3": 1757.0, + "4": 1751.0, + "5": 1937.0, + "6": 1886.0, + "7": 1837.0, + "8": 1786.0, + "9": 1935.0, + "10": 1542.0, + "11": 1896.0, + "12": 1808.0, + "13": 1960.0, + "14": 1846.0, + "15": 1948.0, + "16": 1903.0, + "17": 1900.0, + "18": 1725.0, + "19": 1812.0, + "20": 1647.0, + "21": 1886.0, + "22": 1675.0, + "23": 1992.0, + "24": 1621.0, + "25": 1624.0, + "26": 1778.0, + "27": 1925.0, + "28": 1996.0, + "29": 2074.0, + "30": 1899.0, + "31": 1539.0, + "32": 1956.0, + "33": 2254.0, + "34": 1927.0, + "35": 2029.0, + "36": 1986.0, + "37": 2377.0, + "38": 2234.0, + "39": 2396.0, + "40": 2123.0, + "41": 2316.0, + "42": 2245.0, + "43": 2077.0, + "44": 2179.0, + "45": 2078.0, + "46": 2280.0, + "47": 2573.0, + "48": 2440.0, + "49": 2213.0, + "50": 2532.0, + "51": 2735.0, + "52": 2607.0, + "53": 2951.0, + "54": 2672.0, + "55": 2451.0, + "56": 2712.0, + "57": 2392.0, + "58": 2979.0, + "59": 2869.0, + "60": 2435.0, + "61": 2938.0, + "62": 2669.0, + "63": 2392.0, + "64": 2998.0, + "65": 2689.0, + "66": 3285.0, + "67": 2782.0, + "68": 2753.0, + "69": 2958.0, + "70": 3271.0, + "71": 3040.0, + "72": 2504.0, + "73": 3096.0, + "74": 1910.0, + "75": 2617.0, + "76": 3081.0, + "77": 3390.0, + "78": 3186.0, + "79": 3320.0, + "80": 3483.0, + "81": 3782.0, + "82": 3516.0, + "83": 2864.0, + "84": 3396.0, + "85": 3247.0, + "86": 2785.0, + "87": 3762.0, + "88": 3102.0, + "89": 3483.0, + "90": 3076.0, + "91": 2643.0, + "92": 3198.0, + "93": 2666.0, + "94": 3390.0, + "95": 3410.0, + "96": 3508.0, + "97": 3178.0, + "98": 3865.0, + "99": 3143.0, + "100": 3357.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 482499072.0, + "2": 482499072.0, + "3": 482499072.0, + "4": 482499072.0, + "5": 482499072.0, + "6": 482499072.0, + "7": 482499072.0, + "8": 482499072.0, + "9": 482499072.0, + "10": 482499072.0, + "11": 482499072.0, + "12": 482499072.0, + "13": 482499072.0, + "14": 482499072.0, + "15": 482499072.0, + "16": 482499072.0, + "17": 482499072.0, + "18": 482499072.0, + "19": 482499072.0, + "20": 482499072.0, + "21": 482499072.0, + "22": 482499072.0, + "23": 482499072.0, + "24": 482499072.0, + "25": 482499072.0, + "26": 482499072.0, + "27": 482499072.0, + "28": 482499072.0, + "29": 482499072.0, + "30": 482499072.0, + "31": 482499072.0, + "32": 482499072.0, + "33": 482499072.0, + "34": 482499072.0, + "35": 482499072.0, + "36": 482499072.0, + "37": 482499072.0, + "38": 482499072.0, + "39": 482499072.0, + "40": 482499072.0, + "41": 482499072.0, + "42": 482499072.0, + "43": 482499072.0, + "44": 482499072.0, + "45": 482499072.0, + "46": 482499072.0, + "47": 482499072.0, + "48": 482499072.0, + "49": 482499072.0, + "50": 482499072.0, + "51": 482499072.0, + "52": 482499072.0, + "53": 482499072.0, + "54": 482499072.0, + "55": 482499072.0, + "56": 482499072.0, + "57": 482499072.0, + "58": 482499072.0, + "59": 482499072.0, + "60": 482499072.0, + "61": 482499072.0, + "62": 482499072.0, + "63": 482499072.0, + "64": 482499072.0, + "65": 482499072.0, + "66": 482499072.0, + "67": 482499072.0, + "68": 482499072.0, + "69": 482499072.0, + "70": 482499072.0, + "71": 482499072.0, + "72": 482499072.0, + "73": 482499072.0, + "74": 482499072.0, + "75": 482499072.0, + "76": 482499072.0, + "77": 482499072.0, + "78": 482499072.0, + "79": 482499072.0, + "80": 482499072.0, + "81": 482499072.0, + "82": 482499072.0, + "83": 482499072.0, + "84": 482499072.0, + "85": 482499072.0, + "86": 482499072.0, + "87": 482499072.0, + "88": 482499072.0, + "89": 482499072.0, + "90": 482499072.0, + "91": 482499072.0, + "92": 482499072.0, + "93": 482499072.0, + "94": 482499072.0, + "95": 482499072.0, + "96": 482499072.0, + "97": 482499072.0, + "98": 482499072.0, + "99": 482499072.0, + "100": 482499072.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1222004224.0, + "2": 1401029120.0, + "3": 1401029120.0, + "4": 1401029120.0, + "5": 1401029120.0, + "6": 1401029120.0, + "7": 1401029120.0, + "8": 1401029120.0, + "9": 1401029120.0, + "10": 1401029120.0, + "11": 1401029120.0, + "12": 1401029120.0, + "13": 1401029120.0, + "14": 1401029120.0, + "15": 1401029120.0, + "16": 1401029120.0, + "17": 1401029120.0, + "18": 1401029120.0, + "19": 1401029120.0, + "20": 1401029120.0, + "21": 1401029120.0, + "22": 1401029120.0, + "23": 1401029120.0, + "24": 1401029120.0, + "25": 1401029120.0, + "26": 1401029120.0, + "27": 1401029120.0, + "28": 1401029120.0, + "29": 1401029120.0, + "30": 1401029120.0, + "31": 1401029120.0, + "32": 1401029120.0, + "33": 1401029120.0, + "34": 1401029120.0, + "35": 1401029120.0, + "36": 1401029120.0, + "37": 1401029120.0, + "38": 1401029120.0, + "39": 1401029120.0, + "40": 1401029120.0, + "41": 1401029120.0, + "42": 1401029120.0, + "43": 1401029120.0, + "44": 1401029120.0, + "45": 1401029120.0, + "46": 1401029120.0, + "47": 1401029120.0, + "48": 1401029120.0, + "49": 1401029120.0, + "50": 1401029120.0, + "51": 1401029120.0, + "52": 1401029120.0, + "53": 1401029120.0, + "54": 1401029120.0, + "55": 1401029120.0, + "56": 1401029120.0, + "57": 1401029120.0, + "58": 1401029120.0, + "59": 1401029120.0, + "60": 1401029120.0, + "61": 1401029120.0, + "62": 1401029120.0, + "63": 1401029120.0, + "64": 1401029120.0, + "65": 1401029120.0, + "66": 1401029120.0, + "67": 1401029120.0, + "68": 1401029120.0, + "69": 1401029120.0, + "70": 1401029120.0, + "71": 1401029120.0, + "72": 1401029120.0, + "73": 1401029120.0, + "74": 1401029120.0, + "75": 1401029120.0, + "76": 1401029120.0, + "77": 1401029120.0, + "78": 1401029120.0, + "79": 1401029120.0, + "80": 1401029120.0, + "81": 1401029120.0, + "82": 1401029120.0, + "83": 1401029120.0, + "84": 1401029120.0, + "85": 1401029120.0, + "86": 1401029120.0, + "87": 1401029120.0, + "88": 1401029120.0, + "89": 1401029120.0, + "90": 1401029120.0, + "91": 1401029120.0, + "92": 1401029120.0, + "93": 1401029120.0, + "94": 1401029120.0, + "95": 1401029120.0, + "96": 1401029120.0, + "97": 1401029120.0, + "98": 1401029120.0, + "99": 1401029120.0, + "100": 1401029120.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 8.51486, + "2": 0.24464, + "3": 0.21825, + "4": 0.21579, + "5": 0.21661, + "6": 0.22001, + "7": 0.22285, + "8": 0.21811, + "9": 0.21904, + "10": 0.22002, + "11": 0.21823, + "12": 0.21823, + "13": 0.21801, + "14": 0.2183, + "15": 0.21803, + "16": 0.21896, + "17": 0.22491, + "18": 0.21905, + "19": 0.21958, + "20": 0.21884, + "21": 0.21909, + "22": 0.21942, + "23": 0.21797, + "24": 0.21855, + "25": 0.21901, + "26": 0.21791, + "27": 0.2177, + "28": 0.2177, + "29": 0.21821, + "30": 0.21868, + "31": 0.21834, + "32": 0.22204, + "33": 0.22091, + "34": 0.21934, + "35": 0.21783, + "36": 0.21796, + "37": 0.21775, + "38": 0.22135, + "39": 0.22172, + "40": 0.21756, + "41": 0.2177, + "42": 0.21859, + "43": 0.21823, + "44": 0.21755, + "45": 0.21785, + "46": 0.21785, + "47": 0.21753, + "48": 0.21811, + "49": 0.21778, + "50": 0.218, + "51": 0.22344, + "52": 0.21422, + "53": 0.21383, + "54": 0.21399, + "55": 0.21397, + "56": 0.21365, + "57": 0.21387, + "58": 0.20817, + "59": 0.20847, + "60": 0.20906, + "61": 0.20895, + "62": 0.20893, + "63": 0.20812, + "64": 0.20751, + "65": 0.20797, + "66": 0.2078, + "67": 0.20815, + "68": 0.20705, + "69": 0.20775, + "70": 0.20774, + "71": 0.2069, + "72": 0.20722, + "73": 0.20718, + "74": 0.2072, + "75": 0.20697, + "76": 0.20716, + "77": 0.20758, + "78": 0.20779, + "79": 0.20721, + "80": 0.20748, + "81": 0.20797, + "82": 0.20844, + "83": 0.20732, + "84": 0.20744, + "85": 0.20706, + "86": 0.20715, + "87": 0.20731, + "88": 0.20708, + "89": 0.20778, + "90": 0.20769, + "91": 0.2074, + "92": 0.20797, + "93": 0.20707, + "94": 0.2072, + "95": 0.20676, + "96": 0.20732, + "97": 0.20728, + "98": 0.20675, + "99": 0.2068, + "100": 0.20724 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts_dgx_a100.json index 339f9b5b061..d6134cdcc5a 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp2_pp2_resume_torch_dist_no_create_attention_mask_in_dataloader/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.92705, "5": 10.92795, "10": 10.90786, "15": 10.88314, "20": 10.77629, "25": 10.59141, "30": 10.39192, "35": 10.29686, "40": 10.0964, "45": 9.84464, "50": 9.90918, "55": 9.87762, "60": 9.49121, "65": 8.94236, "70": 9.72266, "75": 9.41912, "80": 9.40077, "85": 9.61207, "90": 9.81015, "95": 9.51716, "100": 9.4015}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1627.0, "5": 2010.0, "10": 1368.0, "15": 1897.0, "20": 1626.0, "25": 1743.0, "30": 1930.0, "35": 1954.0, "40": 2199.0, "45": 2068.0, "50": 2460.0, "55": 2427.0, "60": 2380.0, "65": 2657.0, "70": 3265.0, "75": 2675.0, "80": 3434.0, "85": 3302.0, "90": 3230.0, "95": 3340.0, "100": 3291.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 486047744.0, "5": 486047744.0, "10": 486047744.0, "15": 486047744.0, "20": 486047744.0, "25": 486047744.0, "30": 486047744.0, "35": 486047744.0, "40": 486047744.0, "45": 486047744.0, "50": 486047744.0, "55": 486047744.0, "60": 486047744.0, "65": 486047744.0, "70": 486047744.0, "75": 486047744.0, "80": 486047744.0, "85": 486047744.0, "90": 486047744.0, "95": 486047744.0, "100": 486047744.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1715890176.0, "5": 1895963648.0, "10": 1895963648.0, "15": 1895963648.0, "20": 1895963648.0, "25": 1895963648.0, "30": 1895963648.0, "35": 1895963648.0, "40": 1895963648.0, "45": 1895963648.0, "50": 1895963648.0, "55": 1895963648.0, "60": 1895963648.0, "65": 1895963648.0, "70": 1895963648.0, "75": 1895963648.0, "80": 1895963648.0, "85": 1895963648.0, "90": 1895963648.0, "95": 1895963648.0, "100": 1895963648.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 12.92657, "5": 0.21658, "10": 0.20915, "15": 0.2079, "20": 0.21595, "25": 0.21334, "30": 0.21734, "35": 0.21646, "40": 0.21045, "45": 0.20732, "50": 0.2058, "55": 0.20444, "60": 0.20486, "65": 0.20503, "70": 0.20714, "75": 0.20517, "80": 0.2067, "85": 0.20664, "90": 0.20761, "95": 0.20379, "100": 0.20501}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.92228, + "2": 10.92833, + "3": 10.91713, + "4": 10.90495, + "5": 10.92807, + "6": 10.93673, + "7": 10.90406, + "8": 10.92229, + "9": 10.91254, + "10": 10.90852, + "11": 10.89335, + "12": 10.9208, + "13": 10.91496, + "14": 10.92145, + "15": 10.88435, + "16": 10.87455, + "17": 10.83916, + "18": 10.87309, + "19": 10.85325, + "20": 10.77493, + "21": 10.74754, + "22": 10.63148, + "23": 10.75622, + "24": 10.65569, + "25": 10.59216, + "26": 10.65327, + "27": 10.64876, + "28": 10.59656, + "29": 10.61011, + "30": 10.39286, + "31": 10.15725, + "32": 10.49217, + "33": 10.47941, + "34": 10.24014, + "35": 10.2971, + "36": 10.24566, + "37": 10.35283, + "38": 10.20534, + "39": 10.40418, + "40": 10.09553, + "41": 10.15279, + "42": 10.2188, + "43": 9.85527, + "44": 9.96244, + "45": 9.84613, + "46": 9.83799, + "47": 10.13884, + "48": 9.85689, + "49": 9.53747, + "50": 9.90876, + "51": 9.84971, + "52": 9.74156, + "53": 10.06322, + "54": 9.94581, + "55": 9.87731, + "56": 9.62746, + "57": 9.47259, + "58": 9.82912, + "59": 9.583, + "60": 9.49181, + "61": 9.69961, + "62": 9.98089, + "63": 9.37212, + "64": 9.7756, + "65": 8.9433, + "66": 9.69993, + "67": 9.36414, + "68": 9.78706, + "69": 9.78397, + "70": 9.72288, + "71": 9.60749, + "72": 9.58416, + "73": 9.49093, + "74": 8.94864, + "75": 9.41807, + "76": 9.08721, + "77": 10.06283, + "78": 9.729, + "79": 9.37091, + "80": 9.40033, + "81": 9.47754, + "82": 9.69121, + "83": 9.30762, + "84": 9.41252, + "85": 9.61132, + "86": 9.07621, + "87": 9.59459, + "88": 9.74768, + "89": 9.6068, + "90": 9.81078, + "91": 9.34441, + "92": 9.36535, + "93": 9.07743, + "94": 8.82975, + "95": 9.51676, + "96": 9.52546, + "97": 9.31031, + "98": 9.67812, + "99": 8.88848, + "100": 9.40128 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1681.0, + "2": 1822.0, + "3": 1757.0, + "4": 1751.0, + "5": 1937.0, + "6": 1886.0, + "7": 1837.0, + "8": 1786.0, + "9": 1935.0, + "10": 1542.0, + "11": 1896.0, + "12": 1808.0, + "13": 1960.0, + "14": 1846.0, + "15": 1948.0, + "16": 1903.0, + "17": 1900.0, + "18": 1725.0, + "19": 1812.0, + "20": 1647.0, + "21": 1886.0, + "22": 1675.0, + "23": 1992.0, + "24": 1621.0, + "25": 1624.0, + "26": 1778.0, + "27": 1925.0, + "28": 1996.0, + "29": 2074.0, + "30": 1899.0, + "31": 1539.0, + "32": 1956.0, + "33": 2254.0, + "34": 1927.0, + "35": 2029.0, + "36": 1986.0, + "37": 2377.0, + "38": 2234.0, + "39": 2396.0, + "40": 2123.0, + "41": 2316.0, + "42": 2245.0, + "43": 2077.0, + "44": 2179.0, + "45": 2078.0, + "46": 2280.0, + "47": 2573.0, + "48": 2440.0, + "49": 2213.0, + "50": 2532.0, + "51": 2735.0, + "52": 2607.0, + "53": 2951.0, + "54": 2672.0, + "55": 2451.0, + "56": 2712.0, + "57": 2392.0, + "58": 2979.0, + "59": 2869.0, + "60": 2435.0, + "61": 2938.0, + "62": 2669.0, + "63": 2392.0, + "64": 2998.0, + "65": 2689.0, + "66": 3285.0, + "67": 2782.0, + "68": 2753.0, + "69": 2958.0, + "70": 3271.0, + "71": 3040.0, + "72": 2504.0, + "73": 3096.0, + "74": 1910.0, + "75": 2617.0, + "76": 3081.0, + "77": 3390.0, + "78": 3186.0, + "79": 3320.0, + "80": 3483.0, + "81": 3782.0, + "82": 3516.0, + "83": 2864.0, + "84": 3396.0, + "85": 3247.0, + "86": 2785.0, + "87": 3762.0, + "88": 3102.0, + "89": 3483.0, + "90": 3076.0, + "91": 2643.0, + "92": 3198.0, + "93": 2666.0, + "94": 3390.0, + "95": 3410.0, + "96": 3508.0, + "97": 3178.0, + "98": 3865.0, + "99": 3143.0, + "100": 3357.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 482499072.0, + "2": 482499072.0, + "3": 482499072.0, + "4": 482499072.0, + "5": 482499072.0, + "6": 482499072.0, + "7": 482499072.0, + "8": 482499072.0, + "9": 482499072.0, + "10": 482499072.0, + "11": 482499072.0, + "12": 482499072.0, + "13": 482499072.0, + "14": 482499072.0, + "15": 482499072.0, + "16": 482499072.0, + "17": 482499072.0, + "18": 482499072.0, + "19": 482499072.0, + "20": 482499072.0, + "21": 482499072.0, + "22": 482499072.0, + "23": 482499072.0, + "24": 482499072.0, + "25": 482499072.0, + "26": 482499072.0, + "27": 482499072.0, + "28": 482499072.0, + "29": 482499072.0, + "30": 482499072.0, + "31": 482499072.0, + "32": 482499072.0, + "33": 482499072.0, + "34": 482499072.0, + "35": 482499072.0, + "36": 482499072.0, + "37": 482499072.0, + "38": 482499072.0, + "39": 482499072.0, + "40": 482499072.0, + "41": 482499072.0, + "42": 482499072.0, + "43": 482499072.0, + "44": 482499072.0, + "45": 482499072.0, + "46": 482499072.0, + "47": 482499072.0, + "48": 482499072.0, + "49": 482499072.0, + "50": 482499072.0, + "51": 482499072.0, + "52": 482499072.0, + "53": 482499072.0, + "54": 482499072.0, + "55": 482499072.0, + "56": 482499072.0, + "57": 482499072.0, + "58": 482499072.0, + "59": 482499072.0, + "60": 482499072.0, + "61": 482499072.0, + "62": 482499072.0, + "63": 482499072.0, + "64": 482499072.0, + "65": 482499072.0, + "66": 482499072.0, + "67": 482499072.0, + "68": 482499072.0, + "69": 482499072.0, + "70": 482499072.0, + "71": 482499072.0, + "72": 482499072.0, + "73": 482499072.0, + "74": 482499072.0, + "75": 482499072.0, + "76": 482499072.0, + "77": 482499072.0, + "78": 482499072.0, + "79": 482499072.0, + "80": 482499072.0, + "81": 482499072.0, + "82": 482499072.0, + "83": 482499072.0, + "84": 482499072.0, + "85": 482499072.0, + "86": 482499072.0, + "87": 482499072.0, + "88": 482499072.0, + "89": 482499072.0, + "90": 482499072.0, + "91": 482499072.0, + "92": 482499072.0, + "93": 482499072.0, + "94": 482499072.0, + "95": 482499072.0, + "96": 482499072.0, + "97": 482499072.0, + "98": 482499072.0, + "99": 482499072.0, + "100": 482499072.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1222004224.0, + "2": 1401029120.0, + "3": 1401029120.0, + "4": 1401029120.0, + "5": 1401029120.0, + "6": 1401029120.0, + "7": 1401029120.0, + "8": 1401029120.0, + "9": 1401029120.0, + "10": 1401029120.0, + "11": 1401029120.0, + "12": 1401029120.0, + "13": 1401029120.0, + "14": 1401029120.0, + "15": 1401029120.0, + "16": 1401029120.0, + "17": 1401029120.0, + "18": 1401029120.0, + "19": 1401029120.0, + "20": 1401029120.0, + "21": 1401029120.0, + "22": 1401029120.0, + "23": 1401029120.0, + "24": 1401029120.0, + "25": 1401029120.0, + "26": 1401029120.0, + "27": 1401029120.0, + "28": 1401029120.0, + "29": 1401029120.0, + "30": 1401029120.0, + "31": 1401029120.0, + "32": 1401029120.0, + "33": 1401029120.0, + "34": 1401029120.0, + "35": 1401029120.0, + "36": 1401029120.0, + "37": 1401029120.0, + "38": 1401029120.0, + "39": 1401029120.0, + "40": 1401029120.0, + "41": 1401029120.0, + "42": 1401029120.0, + "43": 1401029120.0, + "44": 1401029120.0, + "45": 1401029120.0, + "46": 1401029120.0, + "47": 1401029120.0, + "48": 1401029120.0, + "49": 1401029120.0, + "50": 1401029120.0, + "51": 1401029120.0, + "52": 1401029120.0, + "53": 1401029120.0, + "54": 1401029120.0, + "55": 1401029120.0, + "56": 1401029120.0, + "57": 1401029120.0, + "58": 1401029120.0, + "59": 1401029120.0, + "60": 1401029120.0, + "61": 1401029120.0, + "62": 1401029120.0, + "63": 1401029120.0, + "64": 1401029120.0, + "65": 1401029120.0, + "66": 1401029120.0, + "67": 1401029120.0, + "68": 1401029120.0, + "69": 1401029120.0, + "70": 1401029120.0, + "71": 1401029120.0, + "72": 1401029120.0, + "73": 1401029120.0, + "74": 1401029120.0, + "75": 1401029120.0, + "76": 1401029120.0, + "77": 1401029120.0, + "78": 1401029120.0, + "79": 1401029120.0, + "80": 1401029120.0, + "81": 1401029120.0, + "82": 1401029120.0, + "83": 1401029120.0, + "84": 1401029120.0, + "85": 1401029120.0, + "86": 1401029120.0, + "87": 1401029120.0, + "88": 1401029120.0, + "89": 1401029120.0, + "90": 1401029120.0, + "91": 1401029120.0, + "92": 1401029120.0, + "93": 1401029120.0, + "94": 1401029120.0, + "95": 1401029120.0, + "96": 1401029120.0, + "97": 1401029120.0, + "98": 1401029120.0, + "99": 1401029120.0, + "100": 1401029120.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 8.20377, + "2": 0.2288, + "3": 0.19616, + "4": 0.19587, + "5": 0.19737, + "6": 0.19775, + "7": 0.19658, + "8": 0.19621, + "9": 0.19557, + "10": 0.19534, + "11": 0.19453, + "12": 0.1949, + "13": 0.19522, + "14": 0.19865, + "15": 0.20415, + "16": 0.19686, + "17": 0.1985, + "18": 0.19858, + "19": 0.19709, + "20": 0.19609, + "21": 0.19758, + "22": 0.19837, + "23": 0.19786, + "24": 0.19688, + "25": 0.1972, + "26": 0.19859, + "27": 0.19814, + "28": 0.1989, + "29": 0.1984, + "30": 0.19783, + "31": 0.19727, + "32": 0.19754, + "33": 0.19648, + "34": 0.19977, + "35": 0.19847, + "36": 0.19696, + "37": 0.20498, + "38": 0.20415, + "39": 0.20225, + "40": 0.19712, + "41": 0.19751, + "42": 0.19764, + "43": 0.19738, + "44": 0.19703, + "45": 0.19703, + "46": 0.19814, + "47": 0.19757, + "48": 0.19759, + "49": 0.19688, + "50": 0.20181, + "51": 0.22215, + "52": 0.2134, + "53": 0.2129, + "54": 0.2133, + "55": 0.21255, + "56": 0.21221, + "57": 0.21233, + "58": 0.2124, + "59": 0.21242, + "60": 0.21258, + "61": 0.21219, + "62": 0.21255, + "63": 0.21385, + "64": 0.2127, + "65": 0.21252, + "66": 0.21191, + "67": 0.21327, + "68": 0.21176, + "69": 0.2127, + "70": 0.21284, + "71": 0.21291, + "72": 0.21265, + "73": 0.21221, + "74": 0.21387, + "75": 0.21247, + "76": 0.21204, + "77": 0.21169, + "78": 0.21259, + "79": 0.21196, + "80": 0.21204, + "81": 0.21211, + "82": 0.21314, + "83": 0.21268, + "84": 0.21291, + "85": 0.21328, + "86": 0.2128, + "87": 0.21213, + "88": 0.21192, + "89": 0.21242, + "90": 0.21253, + "91": 0.21252, + "92": 0.21236, + "93": 0.21254, + "94": 0.21255, + "95": 0.21209, + "96": 0.21345, + "97": 0.21202, + "98": 0.21234, + "99": 0.21237, + "100": 0.21317 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json new file mode 100644 index 00000000000..b276f849ced --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.85961, + "2": 10.85774, + "3": 10.85857, + "4": 10.84879, + "5": 10.88247, + "6": 10.88701, + "7": 10.86152, + "8": 10.86792, + "9": 10.86512, + "10": 10.83742, + "11": 10.87758, + "12": 10.87232, + "13": 10.87849, + "14": 10.88848, + "15": 10.82866, + "16": 10.8307, + "17": 10.79817, + "18": 10.82417, + "19": 10.81181, + "20": 10.72691, + "21": 10.7183, + "22": 10.57059, + "23": 10.72817, + "24": 10.61403, + "25": 10.55842, + "26": 10.60676, + "27": 10.61661, + "28": 10.57482, + "29": 10.59587, + "30": 10.37815, + "31": 10.13027, + "32": 10.47778, + "33": 10.46854, + "34": 10.22658, + "35": 10.27984, + "36": 10.22842, + "37": 10.35309, + "38": 10.20319, + "39": 10.4096, + "40": 10.0888, + "41": 10.15947, + "42": 10.2147, + "43": 9.84971, + "44": 9.96501, + "45": 9.82545, + "46": 9.83484, + "47": 10.15515, + "48": 9.84462, + "49": 9.52863, + "50": 9.91253 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1816.0, + "2": 1884.0, + "3": 1906.0, + "4": 1901.0, + "5": 2061.0, + "6": 2186.0, + "7": 2145.0, + "8": 1775.0, + "9": 2106.0, + "10": 1630.0, + "11": 2236.0, + "12": 2015.0, + "13": 2168.0, + "14": 2021.0, + "15": 2088.0, + "16": 2152.0, + "17": 1976.0, + "18": 1952.0, + "19": 2046.0, + "20": 1740.0, + "21": 2073.0, + "22": 1810.0, + "23": 2186.0, + "24": 1839.0, + "25": 1681.0, + "26": 1962.0, + "27": 2009.0, + "28": 2204.0, + "29": 2264.0, + "30": 2117.0, + "31": 1873.0, + "32": 2178.0, + "33": 2372.0, + "34": 2127.0, + "35": 2225.0, + "36": 2140.0, + "37": 2649.0, + "38": 2602.0, + "39": 2607.0, + "40": 2574.0, + "41": 2503.0, + "42": 2532.0, + "43": 2285.0, + "44": 2313.0, + "45": 2423.0, + "46": 2563.0, + "47": 2856.0, + "48": 2629.0, + "49": 2566.0, + "50": 2651.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 269842944.0, + "2": 269842944.0, + "3": 269842944.0, + "4": 269842944.0, + "5": 269842944.0, + "6": 269842944.0, + "7": 269842944.0, + "8": 269842944.0, + "9": 269842944.0, + "10": 269842944.0, + "11": 269842944.0, + "12": 269842944.0, + "13": 269842944.0, + "14": 269842944.0, + "15": 269842944.0, + "16": 269842944.0, + "17": 269842944.0, + "18": 269842944.0, + "19": 269842944.0, + "20": 269842944.0, + "21": 269842944.0, + "22": 269842944.0, + "23": 269842944.0, + "24": 269842944.0, + "25": 269842944.0, + "26": 269842944.0, + "27": 269842944.0, + "28": 269842944.0, + "29": 269842944.0, + "30": 269842944.0, + "31": 269842944.0, + "32": 269842944.0, + "33": 269842944.0, + "34": 269842944.0, + "35": 269842944.0, + "36": 269842944.0, + "37": 269842944.0, + "38": 269842944.0, + "39": 269842944.0, + "40": 269842944.0, + "41": 269842944.0, + "42": 269842944.0, + "43": 269842944.0, + "44": 269842944.0, + "45": 269842944.0, + "46": 269842944.0, + "47": 269842944.0, + "48": 269842944.0, + "49": 269842944.0, + "50": 269842944.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1449634304.0, + "2": 1516021248.0, + "3": 1516021248.0, + "4": 1516021248.0, + "5": 1516021248.0, + "6": 1516021248.0, + "7": 1516021248.0, + "8": 1516021248.0, + "9": 1516021248.0, + "10": 1516021248.0, + "11": 1516021248.0, + "12": 1516021248.0, + "13": 1516021248.0, + "14": 1516021248.0, + "15": 1516021248.0, + "16": 1516021248.0, + "17": 1516021248.0, + "18": 1516021248.0, + "19": 1516021248.0, + "20": 1516021248.0, + "21": 1516021248.0, + "22": 1516021248.0, + "23": 1516021248.0, + "24": 1516021248.0, + "25": 1516021248.0, + "26": 1516021248.0, + "27": 1516021248.0, + "28": 1516021248.0, + "29": 1516021248.0, + "30": 1516021248.0, + "31": 1516021248.0, + "32": 1516021248.0, + "33": 1516021248.0, + "34": 1516021248.0, + "35": 1516021248.0, + "36": 1516021248.0, + "37": 1516021248.0, + "38": 1516021248.0, + "39": 1516021248.0, + "40": 1516021248.0, + "41": 1516021248.0, + "42": 1516021248.0, + "43": 1516021248.0, + "44": 1516021248.0, + "45": 1516021248.0, + "46": 1516021248.0, + "47": 1516021248.0, + "48": 1516021248.0, + "49": 1516021248.0, + "50": 1516021248.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 4.56269, + "2": 0.39732, + "3": 0.33618, + "4": 0.33333, + "5": 0.33363, + "6": 0.33477, + "7": 0.33191, + "8": 0.33146, + "9": 0.33302, + "10": 0.33134, + "11": 0.33151, + "12": 0.33246, + "13": 0.33088, + "14": 0.3303, + "15": 0.33382, + "16": 0.33069, + "17": 0.33094, + "18": 0.33118, + "19": 0.33644, + "20": 0.3305, + "21": 0.33088, + "22": 0.33128, + "23": 0.33088, + "24": 0.33099, + "25": 0.33033, + "26": 0.33052, + "27": 0.33152, + "28": 0.33036, + "29": 0.33036, + "30": 0.33116, + "31": 0.33249, + "32": 0.33284, + "33": 0.33031, + "34": 0.33138, + "35": 0.33068, + "36": 0.33706, + "37": 0.33218, + "38": 0.33033, + "39": 0.33382, + "40": 0.34395, + "41": 0.33213, + "42": 0.3316, + "43": 0.33261, + "44": 0.33133, + "45": 0.33097, + "46": 0.33137, + "47": 0.33245, + "48": 0.33171, + "49": 0.33138, + "50": 0.33185 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json index 28f4a9f3d58..5dd18b2b701 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.86122, "5": 10.88242, "10": 10.83506, "15": 10.82738, "20": 10.72743, "25": 10.55753, "30": 10.37895, "35": 10.28321, "40": 10.08785, "45": 9.82625, "50": 9.91327}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1778.0, "5": 2219.0, "10": 1530.0, "15": 2125.0, "20": 1867.0, "25": 1773.0, "30": 2129.0, "35": 2169.0, "40": 2486.0, "45": 2335.0, "50": 2687.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 269891584.0, "5": 269891584.0, "10": 269891584.0, "15": 269891584.0, "20": 269891584.0, "25": 269891584.0, "30": 269891584.0, "35": 269891584.0, "40": 269891584.0, "45": 269891584.0, "50": 269891584.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1450730496.0, "5": 1515676160.0, "10": 1515676672.0, "15": 1515676672.0, "20": 1515676672.0, "25": 1515676672.0, "30": 1515676672.0, "35": 1515676672.0, "40": 1515676672.0, "45": 1515676672.0, "50": 1515676672.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 11.10997, "5": 0.31331, "10": 0.32223, "15": 0.31308, "20": 0.3166, "25": 0.31574, "30": 0.31074, "35": 0.31512, "40": 0.31604, "45": 0.32221, "50": 0.31241}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.85961, + "2": 10.85774, + "3": 10.85857, + "4": 10.84879, + "5": 10.88247, + "6": 10.88701, + "7": 10.86152, + "8": 10.86792, + "9": 10.86512, + "10": 10.83742, + "11": 10.87758, + "12": 10.87232, + "13": 10.87849, + "14": 10.88848, + "15": 10.82866, + "16": 10.8307, + "17": 10.79817, + "18": 10.82417, + "19": 10.81181, + "20": 10.72691, + "21": 10.7183, + "22": 10.57059, + "23": 10.72817, + "24": 10.61403, + "25": 10.55842, + "26": 10.60676, + "27": 10.61661, + "28": 10.57482, + "29": 10.59587, + "30": 10.37815, + "31": 10.13027, + "32": 10.47778, + "33": 10.46854, + "34": 10.22658, + "35": 10.27984, + "36": 10.22842, + "37": 10.35309, + "38": 10.20319, + "39": 10.4096, + "40": 10.0888, + "41": 10.15947, + "42": 10.2147, + "43": 9.84971, + "44": 9.96501, + "45": 9.82545, + "46": 9.83484, + "47": 10.15515, + "48": 9.84462, + "49": 9.52863, + "50": 9.91253 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1816.0, + "2": 1884.0, + "3": 1906.0, + "4": 1901.0, + "5": 2061.0, + "6": 2186.0, + "7": 2145.0, + "8": 1775.0, + "9": 2106.0, + "10": 1630.0, + "11": 2236.0, + "12": 2015.0, + "13": 2168.0, + "14": 2021.0, + "15": 2088.0, + "16": 2152.0, + "17": 1976.0, + "18": 1952.0, + "19": 2046.0, + "20": 1740.0, + "21": 2073.0, + "22": 1810.0, + "23": 2186.0, + "24": 1839.0, + "25": 1681.0, + "26": 1962.0, + "27": 2009.0, + "28": 2204.0, + "29": 2264.0, + "30": 2117.0, + "31": 1873.0, + "32": 2178.0, + "33": 2372.0, + "34": 2127.0, + "35": 2225.0, + "36": 2140.0, + "37": 2649.0, + "38": 2602.0, + "39": 2607.0, + "40": 2574.0, + "41": 2503.0, + "42": 2532.0, + "43": 2285.0, + "44": 2313.0, + "45": 2423.0, + "46": 2563.0, + "47": 2856.0, + "48": 2629.0, + "49": 2566.0, + "50": 2651.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 269842944.0, + "2": 269842944.0, + "3": 269842944.0, + "4": 269842944.0, + "5": 269842944.0, + "6": 269842944.0, + "7": 269842944.0, + "8": 269842944.0, + "9": 269842944.0, + "10": 269842944.0, + "11": 269842944.0, + "12": 269842944.0, + "13": 269842944.0, + "14": 269842944.0, + "15": 269842944.0, + "16": 269842944.0, + "17": 269842944.0, + "18": 269842944.0, + "19": 269842944.0, + "20": 269842944.0, + "21": 269842944.0, + "22": 269842944.0, + "23": 269842944.0, + "24": 269842944.0, + "25": 269842944.0, + "26": 269842944.0, + "27": 269842944.0, + "28": 269842944.0, + "29": 269842944.0, + "30": 269842944.0, + "31": 269842944.0, + "32": 269842944.0, + "33": 269842944.0, + "34": 269842944.0, + "35": 269842944.0, + "36": 269842944.0, + "37": 269842944.0, + "38": 269842944.0, + "39": 269842944.0, + "40": 269842944.0, + "41": 269842944.0, + "42": 269842944.0, + "43": 269842944.0, + "44": 269842944.0, + "45": 269842944.0, + "46": 269842944.0, + "47": 269842944.0, + "48": 269842944.0, + "49": 269842944.0, + "50": 269842944.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1449634304.0, + "2": 1516021248.0, + "3": 1516021248.0, + "4": 1516021248.0, + "5": 1516021248.0, + "6": 1516021248.0, + "7": 1516021248.0, + "8": 1516021248.0, + "9": 1516021248.0, + "10": 1516021248.0, + "11": 1516021248.0, + "12": 1516021248.0, + "13": 1516021248.0, + "14": 1516021248.0, + "15": 1516021248.0, + "16": 1516021248.0, + "17": 1516021248.0, + "18": 1516021248.0, + "19": 1516021248.0, + "20": 1516021248.0, + "21": 1516021248.0, + "22": 1516021248.0, + "23": 1516021248.0, + "24": 1516021248.0, + "25": 1516021248.0, + "26": 1516021248.0, + "27": 1516021248.0, + "28": 1516021248.0, + "29": 1516021248.0, + "30": 1516021248.0, + "31": 1516021248.0, + "32": 1516021248.0, + "33": 1516021248.0, + "34": 1516021248.0, + "35": 1516021248.0, + "36": 1516021248.0, + "37": 1516021248.0, + "38": 1516021248.0, + "39": 1516021248.0, + "40": 1516021248.0, + "41": 1516021248.0, + "42": 1516021248.0, + "43": 1516021248.0, + "44": 1516021248.0, + "45": 1516021248.0, + "46": 1516021248.0, + "47": 1516021248.0, + "48": 1516021248.0, + "49": 1516021248.0, + "50": 1516021248.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 4.8193, + "2": 0.36983, + "3": 0.32405, + "4": 0.32179, + "5": 0.32037, + "6": 0.32162, + "7": 0.32479, + "8": 0.32031, + "9": 0.32398, + "10": 0.32296, + "11": 0.32125, + "12": 0.32185, + "13": 0.323, + "14": 0.32307, + "15": 0.32035, + "16": 0.31953, + "17": 0.32119, + "18": 0.32536, + "19": 0.32368, + "20": 0.32071, + "21": 0.32043, + "22": 0.32093, + "23": 0.32096, + "24": 0.31999, + "25": 0.32046, + "26": 0.31988, + "27": 0.32184, + "28": 0.32107, + "29": 0.32078, + "30": 0.32174, + "31": 0.32345, + "32": 0.32975, + "33": 0.32181, + "34": 0.32294, + "35": 0.32426, + "36": 0.32184, + "37": 0.32175, + "38": 0.32222, + "39": 0.32058, + "40": 0.32111, + "41": 0.33546, + "42": 0.32505, + "43": 0.32502, + "44": 0.32486, + "45": 0.32683, + "46": 0.32331, + "47": 0.322, + "48": 0.32205, + "49": 0.32128, + "50": 0.32053 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json new file mode 100644 index 00000000000..e2187c31d21 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.85932, + "2": 10.85709, + "3": 10.85896, + "4": 10.84972, + "5": 10.88254, + "6": 10.88712, + "7": 10.86187, + "8": 10.86848, + "9": 10.86474, + "10": 10.83743, + "11": 10.87761, + "12": 10.87275, + "13": 10.87805, + "14": 10.88829, + "15": 10.8292, + "16": 10.83093, + "17": 10.79858, + "18": 10.82391, + "19": 10.8112, + "20": 10.72714, + "21": 10.71846, + "22": 10.57021, + "23": 10.72839, + "24": 10.6137, + "25": 10.55895, + "26": 10.60667, + "27": 10.61746, + "28": 10.57512, + "29": 10.59634, + "30": 10.37833, + "31": 10.13006, + "32": 10.47788, + "33": 10.46827, + "34": 10.22647, + "35": 10.28047, + "36": 10.22818, + "37": 10.35344, + "38": 10.203, + "39": 10.40996, + "40": 10.08874, + "41": 10.15951, + "42": 10.2151, + "43": 9.84978, + "44": 9.96524, + "45": 9.82532, + "46": 9.83508, + "47": 10.15501, + "48": 9.8447, + "49": 9.5289, + "50": 9.91268, + "51": 9.85065, + "52": 9.7464, + "53": 10.07271, + "54": 9.95757, + "55": 9.87725, + "56": 9.62951, + "57": 9.48816, + "58": 9.83239, + "59": 9.58985, + "60": 9.50827, + "61": 9.6947, + "62": 9.99304, + "63": 9.37511, + "64": 9.77996, + "65": 8.95215, + "66": 9.71323, + "67": 9.37884, + "68": 9.78794, + "69": 9.79078, + "70": 9.7308, + "71": 9.61793, + "72": 9.59094, + "73": 9.49435, + "74": 8.94865, + "75": 9.43606, + "76": 9.09894, + "77": 10.06437, + "78": 9.73006, + "79": 9.37771, + "80": 9.41266, + "81": 9.4854, + "82": 9.69576, + "83": 9.32017, + "84": 9.42235, + "85": 9.61578, + "86": 9.07218, + "87": 9.59328, + "88": 9.7509, + "89": 9.61159, + "90": 9.82148, + "91": 9.35304, + "92": 9.36254, + "93": 9.08747, + "94": 8.83398, + "95": 9.51923, + "96": 9.52595, + "97": 9.31413, + "98": 9.67414, + "99": 8.88869, + "100": 9.40651 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1754.0, + "2": 1848.0, + "3": 1845.0, + "4": 1871.0, + "5": 2173.0, + "6": 2054.0, + "7": 2021.0, + "8": 1737.0, + "9": 2044.0, + "10": 1524.0, + "11": 2198.0, + "12": 2030.0, + "13": 2211.0, + "14": 2094.0, + "15": 2036.0, + "16": 2165.0, + "17": 2044.0, + "18": 1842.0, + "19": 2002.0, + "20": 1774.0, + "21": 1976.0, + "22": 1869.0, + "23": 2232.0, + "24": 1769.0, + "25": 1714.0, + "26": 1866.0, + "27": 2106.0, + "28": 2287.0, + "29": 2221.0, + "30": 1967.0, + "31": 1788.0, + "32": 2187.0, + "33": 2432.0, + "34": 2059.0, + "35": 2308.0, + "36": 2173.0, + "37": 2619.0, + "38": 2572.0, + "39": 2618.0, + "40": 2548.0, + "41": 2531.0, + "42": 2447.0, + "43": 2283.0, + "44": 2358.0, + "45": 2398.0, + "46": 2572.0, + "47": 2818.0, + "48": 2599.0, + "49": 2579.0, + "50": 2731.0, + "51": 2873.0, + "52": 2946.0, + "53": 3158.0, + "54": 2907.0, + "55": 2740.0, + "56": 3029.0, + "57": 2489.0, + "58": 3327.0, + "59": 3042.0, + "60": 2780.0, + "61": 3302.0, + "62": 2961.0, + "63": 2702.0, + "64": 3318.0, + "65": 2909.0, + "66": 3513.0, + "67": 2959.0, + "68": 2963.0, + "69": 3171.0, + "70": 3547.0, + "71": 3246.0, + "72": 2586.0, + "73": 3301.0, + "74": 2135.0, + "75": 2752.0, + "76": 3275.0, + "77": 3648.0, + "78": 3472.0, + "79": 3536.0, + "80": 3685.0, + "81": 4159.0, + "82": 3488.0, + "83": 3179.0, + "84": 3639.0, + "85": 3631.0, + "86": 3045.0, + "87": 4315.0, + "88": 3481.0, + "89": 3819.0, + "90": 3323.0, + "91": 3014.0, + "92": 3581.0, + "93": 2932.0, + "94": 3715.0, + "95": 3593.0, + "96": 3764.0, + "97": 3582.0, + "98": 3998.0, + "99": 3406.0, + "100": 3521.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 269842944.0, + "2": 269842944.0, + "3": 269842944.0, + "4": 269842944.0, + "5": 269842944.0, + "6": 269842944.0, + "7": 269842944.0, + "8": 269842944.0, + "9": 269842944.0, + "10": 269842944.0, + "11": 269842944.0, + "12": 269842944.0, + "13": 269842944.0, + "14": 269842944.0, + "15": 269842944.0, + "16": 269842944.0, + "17": 269842944.0, + "18": 269842944.0, + "19": 269842944.0, + "20": 269842944.0, + "21": 269842944.0, + "22": 269842944.0, + "23": 269842944.0, + "24": 269842944.0, + "25": 269842944.0, + "26": 269842944.0, + "27": 269842944.0, + "28": 269842944.0, + "29": 269842944.0, + "30": 269842944.0, + "31": 269842944.0, + "32": 269842944.0, + "33": 269842944.0, + "34": 269842944.0, + "35": 269842944.0, + "36": 269842944.0, + "37": 269842944.0, + "38": 269842944.0, + "39": 269842944.0, + "40": 269842944.0, + "41": 269842944.0, + "42": 269842944.0, + "43": 269842944.0, + "44": 269842944.0, + "45": 269842944.0, + "46": 269842944.0, + "47": 269842944.0, + "48": 269842944.0, + "49": 269842944.0, + "50": 269842944.0, + "51": 269842944.0, + "52": 269842944.0, + "53": 269842944.0, + "54": 269842944.0, + "55": 269842944.0, + "56": 269842944.0, + "57": 269842944.0, + "58": 269842944.0, + "59": 269842944.0, + "60": 269842944.0, + "61": 269842944.0, + "62": 269842944.0, + "63": 269842944.0, + "64": 269842944.0, + "65": 269842944.0, + "66": 269842944.0, + "67": 269842944.0, + "68": 269842944.0, + "69": 269842944.0, + "70": 269842944.0, + "71": 269842944.0, + "72": 269842944.0, + "73": 269842944.0, + "74": 269842944.0, + "75": 269842944.0, + "76": 269842944.0, + "77": 269842944.0, + "78": 269842944.0, + "79": 269842944.0, + "80": 269842944.0, + "81": 269842944.0, + "82": 269842944.0, + "83": 269842944.0, + "84": 269842944.0, + "85": 269842944.0, + "86": 269842944.0, + "87": 269842944.0, + "88": 269842944.0, + "89": 269842944.0, + "90": 269842944.0, + "91": 269842944.0, + "92": 269842944.0, + "93": 269842944.0, + "94": 269842944.0, + "95": 269842944.0, + "96": 269842944.0, + "97": 269842944.0, + "98": 269842944.0, + "99": 269842944.0, + "100": 269842944.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 971620864.0, + "2": 1036172800.0, + "3": 1036172800.0, + "4": 1036172800.0, + "5": 1036172800.0, + "6": 1036172800.0, + "7": 1036172800.0, + "8": 1036172800.0, + "9": 1036172800.0, + "10": 1036172800.0, + "11": 1036172800.0, + "12": 1036172800.0, + "13": 1036172800.0, + "14": 1036172800.0, + "15": 1036172800.0, + "16": 1036172800.0, + "17": 1036172800.0, + "18": 1036172800.0, + "19": 1036172800.0, + "20": 1036172800.0, + "21": 1036172800.0, + "22": 1036172800.0, + "23": 1036172800.0, + "24": 1036172800.0, + "25": 1036172800.0, + "26": 1036172800.0, + "27": 1036172800.0, + "28": 1036172800.0, + "29": 1036172800.0, + "30": 1036172800.0, + "31": 1036172800.0, + "32": 1036172800.0, + "33": 1036172800.0, + "34": 1036172800.0, + "35": 1036172800.0, + "36": 1036172800.0, + "37": 1036172800.0, + "38": 1036172800.0, + "39": 1036172800.0, + "40": 1036172800.0, + "41": 1036172800.0, + "42": 1036172800.0, + "43": 1036172800.0, + "44": 1036172800.0, + "45": 1036172800.0, + "46": 1036172800.0, + "47": 1036172800.0, + "48": 1036172800.0, + "49": 1036172800.0, + "50": 1036172800.0, + "51": 1036172800.0, + "52": 1036172800.0, + "53": 1036172800.0, + "54": 1036172800.0, + "55": 1036172800.0, + "56": 1036172800.0, + "57": 1036172800.0, + "58": 1036172800.0, + "59": 1036172800.0, + "60": 1036172800.0, + "61": 1036172800.0, + "62": 1036172800.0, + "63": 1036172800.0, + "64": 1036172800.0, + "65": 1036172800.0, + "66": 1036172800.0, + "67": 1036172800.0, + "68": 1036172800.0, + "69": 1036172800.0, + "70": 1036172800.0, + "71": 1036172800.0, + "72": 1036172800.0, + "73": 1036172800.0, + "74": 1036172800.0, + "75": 1036172800.0, + "76": 1036172800.0, + "77": 1036172800.0, + "78": 1036172800.0, + "79": 1036172800.0, + "80": 1036172800.0, + "81": 1036172800.0, + "82": 1036172800.0, + "83": 1036172800.0, + "84": 1036172800.0, + "85": 1036172800.0, + "86": 1036172800.0, + "87": 1036172800.0, + "88": 1036172800.0, + "89": 1036172800.0, + "90": 1036172800.0, + "91": 1036172800.0, + "92": 1036172800.0, + "93": 1036172800.0, + "94": 1036172800.0, + "95": 1036172800.0, + "96": 1036172800.0, + "97": 1036172800.0, + "98": 1036172800.0, + "99": 1036172800.0, + "100": 1036172800.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 4.72292, + "2": 0.40079, + "3": 0.30233, + "4": 0.29437, + "5": 0.29362, + "6": 0.29166, + "7": 0.29282, + "8": 0.29142, + "9": 0.29651, + "10": 0.29169, + "11": 0.29163, + "12": 0.29014, + "13": 0.29007, + "14": 0.28821, + "15": 0.28623, + "16": 0.28688, + "17": 0.28583, + "18": 0.2859, + "19": 0.28593, + "20": 0.28532, + "21": 0.28573, + "22": 0.28605, + "23": 0.2847, + "24": 0.28621, + "25": 0.28664, + "26": 0.28556, + "27": 0.2872, + "28": 0.28573, + "29": 0.28695, + "30": 0.28636, + "31": 0.28686, + "32": 0.28621, + "33": 0.28593, + "34": 0.28506, + "35": 0.28606, + "36": 0.28626, + "37": 0.28499, + "38": 0.28674, + "39": 0.28971, + "40": 0.28955, + "41": 0.28907, + "42": 0.29041, + "43": 0.28912, + "44": 0.28905, + "45": 0.28882, + "46": 0.28956, + "47": 0.28907, + "48": 0.28954, + "49": 0.28925, + "50": 0.28916, + "51": 0.2978, + "52": 0.29215, + "53": 0.30386, + "54": 0.28798, + "55": 0.30697, + "56": 0.32648, + "57": 0.29076, + "58": 0.29115, + "59": 0.29247, + "60": 0.29092, + "61": 0.29317, + "62": 0.28506, + "63": 0.28662, + "64": 0.2855, + "65": 0.28592, + "66": 0.28679, + "67": 0.28596, + "68": 0.28605, + "69": 0.28703, + "70": 0.28617, + "71": 0.28619, + "72": 0.28686, + "73": 0.28763, + "74": 0.28583, + "75": 0.28621, + "76": 0.28619, + "77": 0.28487, + "78": 0.28523, + "79": 0.28634, + "80": 0.28584, + "81": 0.28564, + "82": 0.28528, + "83": 0.28536, + "84": 0.28516, + "85": 0.28552, + "86": 0.28537, + "87": 0.2846, + "88": 0.28517, + "89": 0.28625, + "90": 0.28499, + "91": 0.28525, + "92": 0.28549, + "93": 0.28511, + "94": 0.28501, + "95": 0.28642, + "96": 0.28514, + "97": 0.28481, + "98": 0.2852, + "99": 0.28627, + "100": 0.2861 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json index 82a2437ad9d..0cc3719ac53 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.86122, "5": 10.88242, "10": 10.83506, "15": 10.82738, "20": 10.72743, "25": 10.55753, "30": 10.37895, "35": 10.28321, "40": 10.08785, "45": 9.82625, "50": 9.91327, "55": 9.87788, "60": 9.50874, "65": 8.95103, "70": 9.73167, "75": 9.43681, "80": 9.41156, "85": 9.61613, "90": 9.8217, "95": 9.5191, "100": 9.40588}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1778.0, "5": 2219.0, "10": 1530.0, "15": 2125.0, "20": 1867.0, "25": 1773.0, "30": 2129.0, "35": 2169.0, "40": 2486.0, "45": 2335.0, "50": 2687.0, "55": 2652.0, "60": 2765.0, "65": 2946.0, "70": 3629.0, "75": 2702.0, "80": 3866.0, "85": 3517.0, "90": 3349.0, "95": 3530.0, "100": 3530.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 269891584.0, "5": 269891584.0, "10": 269891584.0, "15": 269891584.0, "20": 269891584.0, "25": 269891584.0, "30": 269891584.0, "35": 269891584.0, "40": 269891584.0, "45": 269891584.0, "50": 269891584.0, "55": 269891584.0, "60": 269891584.0, "65": 269891584.0, "70": 269891584.0, "75": 269891584.0, "80": 269891584.0, "85": 269891584.0, "90": 269891584.0, "95": 269891584.0, "100": 269891584.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1448634368.0, "5": 1515676672.0, "10": 1515676672.0, "15": 1515676672.0, "20": 1515676672.0, "25": 1515676672.0, "30": 1515676672.0, "35": 1515676672.0, "40": 1515676672.0, "45": 1515676672.0, "50": 1515676672.0, "55": 1515676672.0, "60": 1515676672.0, "65": 1515676672.0, "70": 1515676672.0, "75": 1515676672.0, "80": 1515676672.0, "85": 1515676672.0, "90": 1515676672.0, "95": 1515676672.0, "100": 1515676672.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.54144, "5": 0.31998, "10": 0.30758, "15": 0.30768, "20": 0.30227, "25": 0.30186, "30": 0.3093, "35": 0.3126, "40": 0.31097, "45": 0.30984, "50": 0.3102, "55": 0.30366, "60": 0.30466, "65": 0.3097, "70": 0.30131, "75": 0.30287, "80": 0.30479, "85": 0.30276, "90": 0.3042, "95": 0.30274, "100": 0.30335}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.85932, + "2": 10.85709, + "3": 10.85896, + "4": 10.84972, + "5": 10.88254, + "6": 10.88712, + "7": 10.86187, + "8": 10.86848, + "9": 10.86474, + "10": 10.83743, + "11": 10.87761, + "12": 10.87275, + "13": 10.87805, + "14": 10.88829, + "15": 10.8292, + "16": 10.83093, + "17": 10.79858, + "18": 10.82391, + "19": 10.8112, + "20": 10.72714, + "21": 10.71846, + "22": 10.57021, + "23": 10.72839, + "24": 10.6137, + "25": 10.55895, + "26": 10.60667, + "27": 10.61746, + "28": 10.57512, + "29": 10.59634, + "30": 10.37833, + "31": 10.13006, + "32": 10.47788, + "33": 10.46827, + "34": 10.22647, + "35": 10.28047, + "36": 10.22818, + "37": 10.35344, + "38": 10.203, + "39": 10.40996, + "40": 10.08874, + "41": 10.15951, + "42": 10.2151, + "43": 9.84978, + "44": 9.96524, + "45": 9.82532, + "46": 9.83508, + "47": 10.15501, + "48": 9.8447, + "49": 9.5289, + "50": 9.91268, + "51": 9.85065, + "52": 9.7464, + "53": 10.07271, + "54": 9.95757, + "55": 9.87725, + "56": 9.62951, + "57": 9.48816, + "58": 9.83239, + "59": 9.58985, + "60": 9.50827, + "61": 9.6947, + "62": 9.99304, + "63": 9.37511, + "64": 9.77996, + "65": 8.95215, + "66": 9.71323, + "67": 9.37884, + "68": 9.78794, + "69": 9.79078, + "70": 9.7308, + "71": 9.61793, + "72": 9.59094, + "73": 9.49435, + "74": 8.94865, + "75": 9.43606, + "76": 9.09894, + "77": 10.06437, + "78": 9.73006, + "79": 9.37771, + "80": 9.41266, + "81": 9.4854, + "82": 9.69576, + "83": 9.32017, + "84": 9.42235, + "85": 9.61578, + "86": 9.07218, + "87": 9.59328, + "88": 9.7509, + "89": 9.61159, + "90": 9.82148, + "91": 9.35304, + "92": 9.36254, + "93": 9.08747, + "94": 8.83398, + "95": 9.51923, + "96": 9.52595, + "97": 9.31413, + "98": 9.67414, + "99": 8.88869, + "100": 9.40651 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1754.0, + "2": 1848.0, + "3": 1845.0, + "4": 1871.0, + "5": 2173.0, + "6": 2054.0, + "7": 2021.0, + "8": 1737.0, + "9": 2044.0, + "10": 1524.0, + "11": 2198.0, + "12": 2030.0, + "13": 2211.0, + "14": 2094.0, + "15": 2036.0, + "16": 2165.0, + "17": 2044.0, + "18": 1842.0, + "19": 2002.0, + "20": 1774.0, + "21": 1976.0, + "22": 1869.0, + "23": 2232.0, + "24": 1769.0, + "25": 1714.0, + "26": 1866.0, + "27": 2106.0, + "28": 2287.0, + "29": 2221.0, + "30": 1967.0, + "31": 1788.0, + "32": 2187.0, + "33": 2432.0, + "34": 2059.0, + "35": 2308.0, + "36": 2173.0, + "37": 2619.0, + "38": 2572.0, + "39": 2618.0, + "40": 2548.0, + "41": 2531.0, + "42": 2447.0, + "43": 2283.0, + "44": 2358.0, + "45": 2398.0, + "46": 2572.0, + "47": 2818.0, + "48": 2599.0, + "49": 2579.0, + "50": 2731.0, + "51": 2873.0, + "52": 2946.0, + "53": 3158.0, + "54": 2907.0, + "55": 2740.0, + "56": 3029.0, + "57": 2489.0, + "58": 3327.0, + "59": 3042.0, + "60": 2780.0, + "61": 3302.0, + "62": 2961.0, + "63": 2702.0, + "64": 3318.0, + "65": 2909.0, + "66": 3513.0, + "67": 2959.0, + "68": 2963.0, + "69": 3171.0, + "70": 3547.0, + "71": 3246.0, + "72": 2586.0, + "73": 3301.0, + "74": 2135.0, + "75": 2752.0, + "76": 3275.0, + "77": 3648.0, + "78": 3472.0, + "79": 3536.0, + "80": 3685.0, + "81": 4159.0, + "82": 3488.0, + "83": 3179.0, + "84": 3639.0, + "85": 3631.0, + "86": 3045.0, + "87": 4315.0, + "88": 3481.0, + "89": 3819.0, + "90": 3323.0, + "91": 3014.0, + "92": 3581.0, + "93": 2932.0, + "94": 3715.0, + "95": 3593.0, + "96": 3764.0, + "97": 3582.0, + "98": 3998.0, + "99": 3406.0, + "100": 3521.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 269842944.0, + "2": 269842944.0, + "3": 269842944.0, + "4": 269842944.0, + "5": 269842944.0, + "6": 269842944.0, + "7": 269842944.0, + "8": 269842944.0, + "9": 269842944.0, + "10": 269842944.0, + "11": 269842944.0, + "12": 269842944.0, + "13": 269842944.0, + "14": 269842944.0, + "15": 269842944.0, + "16": 269842944.0, + "17": 269842944.0, + "18": 269842944.0, + "19": 269842944.0, + "20": 269842944.0, + "21": 269842944.0, + "22": 269842944.0, + "23": 269842944.0, + "24": 269842944.0, + "25": 269842944.0, + "26": 269842944.0, + "27": 269842944.0, + "28": 269842944.0, + "29": 269842944.0, + "30": 269842944.0, + "31": 269842944.0, + "32": 269842944.0, + "33": 269842944.0, + "34": 269842944.0, + "35": 269842944.0, + "36": 269842944.0, + "37": 269842944.0, + "38": 269842944.0, + "39": 269842944.0, + "40": 269842944.0, + "41": 269842944.0, + "42": 269842944.0, + "43": 269842944.0, + "44": 269842944.0, + "45": 269842944.0, + "46": 269842944.0, + "47": 269842944.0, + "48": 269842944.0, + "49": 269842944.0, + "50": 269842944.0, + "51": 269842944.0, + "52": 269842944.0, + "53": 269842944.0, + "54": 269842944.0, + "55": 269842944.0, + "56": 269842944.0, + "57": 269842944.0, + "58": 269842944.0, + "59": 269842944.0, + "60": 269842944.0, + "61": 269842944.0, + "62": 269842944.0, + "63": 269842944.0, + "64": 269842944.0, + "65": 269842944.0, + "66": 269842944.0, + "67": 269842944.0, + "68": 269842944.0, + "69": 269842944.0, + "70": 269842944.0, + "71": 269842944.0, + "72": 269842944.0, + "73": 269842944.0, + "74": 269842944.0, + "75": 269842944.0, + "76": 269842944.0, + "77": 269842944.0, + "78": 269842944.0, + "79": 269842944.0, + "80": 269842944.0, + "81": 269842944.0, + "82": 269842944.0, + "83": 269842944.0, + "84": 269842944.0, + "85": 269842944.0, + "86": 269842944.0, + "87": 269842944.0, + "88": 269842944.0, + "89": 269842944.0, + "90": 269842944.0, + "91": 269842944.0, + "92": 269842944.0, + "93": 269842944.0, + "94": 269842944.0, + "95": 269842944.0, + "96": 269842944.0, + "97": 269842944.0, + "98": 269842944.0, + "99": 269842944.0, + "100": 269842944.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 971619840.0, + "2": 1036172800.0, + "3": 1036172800.0, + "4": 1036172800.0, + "5": 1036172800.0, + "6": 1036172800.0, + "7": 1036172800.0, + "8": 1036172800.0, + "9": 1036172800.0, + "10": 1036172800.0, + "11": 1036172800.0, + "12": 1036172800.0, + "13": 1036172800.0, + "14": 1036172800.0, + "15": 1036172800.0, + "16": 1036172800.0, + "17": 1036172800.0, + "18": 1036172800.0, + "19": 1036172800.0, + "20": 1036172800.0, + "21": 1036172800.0, + "22": 1036172800.0, + "23": 1036172800.0, + "24": 1036172800.0, + "25": 1036172800.0, + "26": 1036172800.0, + "27": 1036172800.0, + "28": 1036172800.0, + "29": 1036172800.0, + "30": 1036172800.0, + "31": 1036172800.0, + "32": 1036172800.0, + "33": 1036172800.0, + "34": 1036172800.0, + "35": 1036172800.0, + "36": 1036172800.0, + "37": 1036172800.0, + "38": 1036172800.0, + "39": 1036172800.0, + "40": 1036172800.0, + "41": 1036172800.0, + "42": 1036172800.0, + "43": 1036172800.0, + "44": 1036172800.0, + "45": 1036172800.0, + "46": 1036172800.0, + "47": 1036172800.0, + "48": 1036172800.0, + "49": 1036172800.0, + "50": 1036172800.0, + "51": 1036172800.0, + "52": 1036172800.0, + "53": 1036172800.0, + "54": 1036172800.0, + "55": 1036172800.0, + "56": 1036172800.0, + "57": 1036172800.0, + "58": 1036172800.0, + "59": 1036172800.0, + "60": 1036172800.0, + "61": 1036172800.0, + "62": 1036172800.0, + "63": 1036172800.0, + "64": 1036172800.0, + "65": 1036172800.0, + "66": 1036172800.0, + "67": 1036172800.0, + "68": 1036172800.0, + "69": 1036172800.0, + "70": 1036172800.0, + "71": 1036172800.0, + "72": 1036172800.0, + "73": 1036172800.0, + "74": 1036172800.0, + "75": 1036172800.0, + "76": 1036172800.0, + "77": 1036172800.0, + "78": 1036172800.0, + "79": 1036172800.0, + "80": 1036172800.0, + "81": 1036172800.0, + "82": 1036172800.0, + "83": 1036172800.0, + "84": 1036172800.0, + "85": 1036172800.0, + "86": 1036172800.0, + "87": 1036172800.0, + "88": 1036172800.0, + "89": 1036172800.0, + "90": 1036172800.0, + "91": 1036172800.0, + "92": 1036172800.0, + "93": 1036172800.0, + "94": 1036172800.0, + "95": 1036172800.0, + "96": 1036172800.0, + "97": 1036172800.0, + "98": 1036172800.0, + "99": 1036172800.0, + "100": 1036172800.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 7.22987, + "2": 0.54363, + "3": 0.2879, + "4": 0.28745, + "5": 0.28509, + "6": 0.28364, + "7": 0.28401, + "8": 0.28235, + "9": 0.28321, + "10": 0.32258, + "11": 0.28697, + "12": 0.27808, + "13": 0.27857, + "14": 0.27833, + "15": 0.28035, + "16": 0.27859, + "17": 0.27841, + "18": 0.27879, + "19": 0.27874, + "20": 0.27806, + "21": 0.27812, + "22": 0.2783, + "23": 0.27919, + "24": 0.27841, + "25": 0.27852, + "26": 0.27871, + "27": 0.27891, + "28": 0.28056, + "29": 0.27909, + "30": 0.2797, + "31": 0.27903, + "32": 0.27895, + "33": 0.27929, + "34": 0.27838, + "35": 0.27904, + "36": 0.2787, + "37": 0.28662, + "38": 0.27812, + "39": 0.27805, + "40": 0.27846, + "41": 0.27884, + "42": 0.27807, + "43": 0.27794, + "44": 0.27825, + "45": 0.28052, + "46": 0.27856, + "47": 0.27832, + "48": 0.27799, + "49": 0.2783, + "50": 0.27861, + "51": 0.2915, + "52": 0.28668, + "53": 0.28545, + "54": 0.28632, + "55": 0.28616, + "56": 0.28735, + "57": 0.28738, + "58": 0.28556, + "59": 0.28453, + "60": 0.28543, + "61": 0.28452, + "62": 0.28404, + "63": 0.28542, + "64": 0.28492, + "65": 0.28488, + "66": 0.2861, + "67": 0.286, + "68": 0.28505, + "69": 0.28531, + "70": 0.28377, + "71": 0.28517, + "72": 0.28454, + "73": 0.2853, + "74": 0.28678, + "75": 0.28484, + "76": 0.28523, + "77": 0.28548, + "78": 0.28488, + "79": 0.28559, + "80": 0.28528, + "81": 0.28479, + "82": 0.28465, + "83": 0.28506, + "84": 0.28493, + "85": 0.28486, + "86": 0.28572, + "87": 0.28404, + "88": 0.28473, + "89": 0.28431, + "90": 0.28945, + "91": 0.28446, + "92": 0.28489, + "93": 0.28474, + "94": 0.28484, + "95": 0.28526, + "96": 0.28573, + "97": 0.28411, + "98": 0.28402, + "99": 0.28413, + "100": 0.28454 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json new file mode 100644 index 00000000000..a39e093badf --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.85932, + "2": 10.85709, + "3": 10.85896, + "4": 10.84972, + "5": 10.88254, + "6": 10.88712, + "7": 10.86187, + "8": 10.86848, + "9": 10.86474, + "10": 10.83743, + "11": 10.87761, + "12": 10.87275, + "13": 10.87805, + "14": 10.88829, + "15": 10.8292, + "16": 10.83093, + "17": 10.79858, + "18": 10.82391, + "19": 10.8112, + "20": 10.72714, + "21": 10.71846, + "22": 10.57021, + "23": 10.72839, + "24": 10.6137, + "25": 10.55895, + "26": 10.60667, + "27": 10.61746, + "28": 10.57512, + "29": 10.59634, + "30": 10.37833, + "31": 10.13006, + "32": 10.47788, + "33": 10.46827, + "34": 10.22647, + "35": 10.28047, + "36": 10.22818, + "37": 10.35344, + "38": 10.203, + "39": 10.40996, + "40": 10.08874, + "41": 10.15951, + "42": 10.2151, + "43": 9.84978, + "44": 9.96524, + "45": 9.82532, + "46": 9.83508, + "47": 10.15501, + "48": 9.8447, + "49": 9.5289, + "50": 9.91268, + "51": 9.85065, + "52": 9.7464, + "53": 10.07271, + "54": 9.95757, + "55": 9.87725, + "56": 9.62951, + "57": 9.48816, + "58": 9.83239, + "59": 9.58985, + "60": 9.50827, + "61": 9.6947, + "62": 9.99304, + "63": 9.37511, + "64": 9.77996, + "65": 8.95215, + "66": 9.71323, + "67": 9.37884, + "68": 9.78794, + "69": 9.79078, + "70": 9.7308, + "71": 9.61793, + "72": 9.59094, + "73": 9.49435, + "74": 8.94865, + "75": 9.43606, + "76": 9.09894, + "77": 10.06437, + "78": 9.73006, + "79": 9.37771, + "80": 9.41266, + "81": 9.4854, + "82": 9.69576, + "83": 9.32017, + "84": 9.42235, + "85": 9.61578, + "86": 9.07218, + "87": 9.59328, + "88": 9.7509, + "89": 9.61159, + "90": 9.82148, + "91": 9.35304, + "92": 9.36254, + "93": 9.08747, + "94": 8.83398, + "95": 9.51923, + "96": 9.52595, + "97": 9.31413, + "98": 9.67414, + "99": 8.88869, + "100": 9.40651 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1754.0, + "2": 1848.0, + "3": 1845.0, + "4": 1871.0, + "5": 2173.0, + "6": 2054.0, + "7": 2021.0, + "8": 1737.0, + "9": 2044.0, + "10": 1524.0, + "11": 2198.0, + "12": 2030.0, + "13": 2211.0, + "14": 2094.0, + "15": 2036.0, + "16": 2165.0, + "17": 2044.0, + "18": 1842.0, + "19": 2002.0, + "20": 1774.0, + "21": 1976.0, + "22": 1869.0, + "23": 2232.0, + "24": 1769.0, + "25": 1714.0, + "26": 1866.0, + "27": 2106.0, + "28": 2287.0, + "29": 2221.0, + "30": 1967.0, + "31": 1788.0, + "32": 2187.0, + "33": 2432.0, + "34": 2059.0, + "35": 2308.0, + "36": 2173.0, + "37": 2619.0, + "38": 2572.0, + "39": 2618.0, + "40": 2548.0, + "41": 2531.0, + "42": 2447.0, + "43": 2283.0, + "44": 2358.0, + "45": 2398.0, + "46": 2572.0, + "47": 2818.0, + "48": 2599.0, + "49": 2579.0, + "50": 2731.0, + "51": 2873.0, + "52": 2946.0, + "53": 3158.0, + "54": 2907.0, + "55": 2740.0, + "56": 3029.0, + "57": 2489.0, + "58": 3327.0, + "59": 3042.0, + "60": 2780.0, + "61": 3302.0, + "62": 2961.0, + "63": 2702.0, + "64": 3318.0, + "65": 2909.0, + "66": 3513.0, + "67": 2959.0, + "68": 2963.0, + "69": 3171.0, + "70": 3547.0, + "71": 3246.0, + "72": 2586.0, + "73": 3301.0, + "74": 2135.0, + "75": 2752.0, + "76": 3275.0, + "77": 3648.0, + "78": 3472.0, + "79": 3536.0, + "80": 3685.0, + "81": 4159.0, + "82": 3488.0, + "83": 3179.0, + "84": 3639.0, + "85": 3631.0, + "86": 3045.0, + "87": 4315.0, + "88": 3481.0, + "89": 3819.0, + "90": 3323.0, + "91": 3014.0, + "92": 3581.0, + "93": 2932.0, + "94": 3715.0, + "95": 3593.0, + "96": 3764.0, + "97": 3582.0, + "98": 3998.0, + "99": 3406.0, + "100": 3521.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 269842944.0, + "2": 269842944.0, + "3": 269842944.0, + "4": 269842944.0, + "5": 269842944.0, + "6": 269842944.0, + "7": 269842944.0, + "8": 269842944.0, + "9": 269842944.0, + "10": 269842944.0, + "11": 269842944.0, + "12": 269842944.0, + "13": 269842944.0, + "14": 269842944.0, + "15": 269842944.0, + "16": 269842944.0, + "17": 269842944.0, + "18": 269842944.0, + "19": 269842944.0, + "20": 269842944.0, + "21": 269842944.0, + "22": 269842944.0, + "23": 269842944.0, + "24": 269842944.0, + "25": 269842944.0, + "26": 269842944.0, + "27": 269842944.0, + "28": 269842944.0, + "29": 269842944.0, + "30": 269842944.0, + "31": 269842944.0, + "32": 269842944.0, + "33": 269842944.0, + "34": 269842944.0, + "35": 269842944.0, + "36": 269842944.0, + "37": 269842944.0, + "38": 269842944.0, + "39": 269842944.0, + "40": 269842944.0, + "41": 269842944.0, + "42": 269842944.0, + "43": 269842944.0, + "44": 269842944.0, + "45": 269842944.0, + "46": 269842944.0, + "47": 269842944.0, + "48": 269842944.0, + "49": 269842944.0, + "50": 269842944.0, + "51": 269842944.0, + "52": 269842944.0, + "53": 269842944.0, + "54": 269842944.0, + "55": 269842944.0, + "56": 269842944.0, + "57": 269842944.0, + "58": 269842944.0, + "59": 269842944.0, + "60": 269842944.0, + "61": 269842944.0, + "62": 269842944.0, + "63": 269842944.0, + "64": 269842944.0, + "65": 269842944.0, + "66": 269842944.0, + "67": 269842944.0, + "68": 269842944.0, + "69": 269842944.0, + "70": 269842944.0, + "71": 269842944.0, + "72": 269842944.0, + "73": 269842944.0, + "74": 269842944.0, + "75": 269842944.0, + "76": 269842944.0, + "77": 269842944.0, + "78": 269842944.0, + "79": 269842944.0, + "80": 269842944.0, + "81": 269842944.0, + "82": 269842944.0, + "83": 269842944.0, + "84": 269842944.0, + "85": 269842944.0, + "86": 269842944.0, + "87": 269842944.0, + "88": 269842944.0, + "89": 269842944.0, + "90": 269842944.0, + "91": 269842944.0, + "92": 269842944.0, + "93": 269842944.0, + "94": 269842944.0, + "95": 269842944.0, + "96": 269842944.0, + "97": 269842944.0, + "98": 269842944.0, + "99": 269842944.0, + "100": 269842944.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 971619840.0, + "2": 1036172288.0, + "3": 1036172800.0, + "4": 1036172800.0, + "5": 1036172800.0, + "6": 1036172800.0, + "7": 1036172800.0, + "8": 1036172800.0, + "9": 1036172800.0, + "10": 1036172800.0, + "11": 1036172800.0, + "12": 1036172800.0, + "13": 1036172800.0, + "14": 1036172800.0, + "15": 1036172800.0, + "16": 1036172800.0, + "17": 1036172800.0, + "18": 1036172800.0, + "19": 1036172800.0, + "20": 1036172800.0, + "21": 1036172800.0, + "22": 1036172800.0, + "23": 1036172800.0, + "24": 1036172800.0, + "25": 1036172800.0, + "26": 1036172800.0, + "27": 1036172800.0, + "28": 1036172800.0, + "29": 1036172800.0, + "30": 1036172800.0, + "31": 1036172800.0, + "32": 1036172800.0, + "33": 1036172800.0, + "34": 1036172800.0, + "35": 1036172800.0, + "36": 1036172800.0, + "37": 1036172800.0, + "38": 1036172800.0, + "39": 1036172800.0, + "40": 1036172800.0, + "41": 1036172800.0, + "42": 1036172800.0, + "43": 1036172800.0, + "44": 1036172800.0, + "45": 1036172800.0, + "46": 1036172800.0, + "47": 1036172800.0, + "48": 1036172800.0, + "49": 1036172800.0, + "50": 1036172800.0, + "51": 1036172800.0, + "52": 1036172800.0, + "53": 1036172800.0, + "54": 1036172800.0, + "55": 1036172800.0, + "56": 1036172800.0, + "57": 1036172800.0, + "58": 1036172800.0, + "59": 1036172800.0, + "60": 1036172800.0, + "61": 1036172800.0, + "62": 1036172800.0, + "63": 1036172800.0, + "64": 1036172800.0, + "65": 1036172800.0, + "66": 1036172800.0, + "67": 1036172800.0, + "68": 1036172800.0, + "69": 1036172800.0, + "70": 1036172800.0, + "71": 1036172800.0, + "72": 1036172800.0, + "73": 1036172800.0, + "74": 1036172800.0, + "75": 1036172800.0, + "76": 1036172800.0, + "77": 1036172800.0, + "78": 1036172800.0, + "79": 1036172800.0, + "80": 1036172800.0, + "81": 1036172800.0, + "82": 1036172800.0, + "83": 1036172800.0, + "84": 1036172800.0, + "85": 1036172800.0, + "86": 1036172800.0, + "87": 1036172800.0, + "88": 1036172800.0, + "89": 1036172800.0, + "90": 1036172800.0, + "91": 1036172800.0, + "92": 1036172800.0, + "93": 1036172800.0, + "94": 1036172800.0, + "95": 1036172800.0, + "96": 1036172800.0, + "97": 1036172800.0, + "98": 1036172800.0, + "99": 1036172800.0, + "100": 1036172800.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 4.83564, + "2": 0.46115, + "3": 0.29577, + "4": 0.29295, + "5": 0.2937, + "6": 0.29159, + "7": 0.29645, + "8": 0.3016, + "9": 0.29961, + "10": 0.29819, + "11": 0.29865, + "12": 0.2945, + "13": 0.29585, + "14": 0.29535, + "15": 0.29488, + "16": 0.29419, + "17": 0.30001, + "18": 0.29304, + "19": 0.29268, + "20": 0.29243, + "21": 0.29254, + "22": 0.29287, + "23": 0.2907, + "24": 0.29139, + "25": 0.29157, + "26": 0.29169, + "27": 0.29335, + "28": 0.29054, + "29": 0.29193, + "30": 0.29255, + "31": 0.29123, + "32": 0.29014, + "33": 0.29168, + "34": 0.29286, + "35": 0.29078, + "36": 0.29177, + "37": 0.29116, + "38": 0.29148, + "39": 0.29215, + "40": 0.2925, + "41": 0.29112, + "42": 0.29245, + "43": 0.28949, + "44": 0.28901, + "45": 0.28833, + "46": 0.28915, + "47": 0.28932, + "48": 0.28813, + "49": 0.28806, + "50": 0.28818, + "51": 0.30469, + "52": 0.29982, + "53": 0.29764, + "54": 0.29724, + "55": 0.29321, + "56": 0.29333, + "57": 0.29533, + "58": 0.29391, + "59": 0.29338, + "60": 0.29347, + "61": 0.29437, + "62": 0.29327, + "63": 0.29354, + "64": 0.31415, + "65": 0.2977, + "66": 0.2961, + "67": 0.29576, + "68": 0.2944, + "69": 0.29403, + "70": 0.29434, + "71": 0.29505, + "72": 0.2967, + "73": 0.30974, + "74": 0.2985, + "75": 0.29801, + "76": 0.29505, + "77": 0.29554, + "78": 0.29652, + "79": 0.29594, + "80": 0.2958, + "81": 0.29561, + "82": 0.29502, + "83": 0.29476, + "84": 0.29486, + "85": 0.29516, + "86": 0.29553, + "87": 0.29666, + "88": 0.29626, + "89": 0.29583, + "90": 0.29691, + "91": 0.29506, + "92": 0.29865, + "93": 0.29628, + "94": 0.30563, + "95": 0.29582, + "96": 0.29572, + "97": 0.29519, + "98": 0.29708, + "99": 0.29725, + "100": 0.29684 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json index 54bb3cbea8d..1641ae309dc 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json @@ -4,106 +4,106 @@ "end_step": 100, "step_interval": 1, "values": { - "1": 10.86122, - "2": 10.85774, - "3": 10.86039, - "4": 10.84813, - "5": 10.88242, - "6": 10.88645, - "7": 10.86227, - "8": 10.86932, - "9": 10.86444, - "10": 10.83506, - "11": 10.87765, - "12": 10.87384, - "13": 10.87945, - "14": 10.88919, - "15": 10.82738, - "16": 10.83105, - "17": 10.79888, - "18": 10.82441, - "19": 10.81363, - "20": 10.72743, - "21": 10.71638, - "22": 10.57153, - "23": 10.7269, - "24": 10.61223, - "25": 10.55753, - "26": 10.60603, - "27": 10.61792, - "28": 10.57695, - "29": 10.59633, - "30": 10.37895, - "31": 10.13125, - "32": 10.47822, - "33": 10.46894, - "34": 10.22715, - "35": 10.28321, - "36": 10.22751, - "37": 10.35397, - "38": 10.20483, - "39": 10.40755, - "40": 10.08785, - "41": 10.1591, - "42": 10.21601, - "43": 9.84821, - "44": 9.9651, - "45": 9.82625, - "46": 9.83468, - "47": 10.15337, - "48": 9.84529, - "49": 9.52926, - "50": 9.91327, - "51": 9.8517, - "52": 9.74686, - "53": 10.07204, - "54": 9.95738, - "55": 9.87788, - "56": 9.62943, - "57": 9.48988, - "58": 9.83265, - "59": 9.58831, - "60": 9.50874, - "61": 9.69495, - "62": 9.99373, - "63": 9.377, - "64": 9.78004, - "65": 8.95103, - "66": 9.71392, + "1": 10.85932, + "2": 10.85709, + "3": 10.85896, + "4": 10.84972, + "5": 10.88254, + "6": 10.88712, + "7": 10.86187, + "8": 10.86848, + "9": 10.86474, + "10": 10.83743, + "11": 10.87761, + "12": 10.87275, + "13": 10.87805, + "14": 10.88829, + "15": 10.8292, + "16": 10.83093, + "17": 10.79858, + "18": 10.82391, + "19": 10.8112, + "20": 10.72714, + "21": 10.71846, + "22": 10.57021, + "23": 10.72839, + "24": 10.6137, + "25": 10.55895, + "26": 10.60667, + "27": 10.61746, + "28": 10.57512, + "29": 10.59634, + "30": 10.37833, + "31": 10.13006, + "32": 10.47788, + "33": 10.46827, + "34": 10.22647, + "35": 10.28047, + "36": 10.22818, + "37": 10.35344, + "38": 10.203, + "39": 10.40996, + "40": 10.08874, + "41": 10.15951, + "42": 10.2151, + "43": 9.84978, + "44": 9.96524, + "45": 9.82532, + "46": 9.83508, + "47": 10.15501, + "48": 9.8447, + "49": 9.5289, + "50": 9.91268, + "51": 9.85065, + "52": 9.7464, + "53": 10.07271, + "54": 9.95757, + "55": 9.87725, + "56": 9.62951, + "57": 9.48816, + "58": 9.83239, + "59": 9.58985, + "60": 9.50827, + "61": 9.6947, + "62": 9.99304, + "63": 9.37511, + "64": 9.77996, + "65": 8.95215, + "66": 9.71323, "67": 9.37884, - "68": 9.78831, - "69": 9.79096, - "70": 9.73167, - "71": 9.61776, - "72": 9.59099, - "73": 9.49436, - "74": 8.95001, - "75": 9.43681, - "76": 9.09852, - "77": 10.06447, - "78": 9.72944, - "79": 9.37805, - "80": 9.41156, - "81": 9.48537, - "82": 9.69592, - "83": 9.31981, - "84": 9.42306, - "85": 9.61613, - "86": 9.07185, - "87": 9.59282, - "88": 9.75055, - "89": 9.61194, - "90": 9.8217, - "91": 9.35308, - "92": 9.36305, - "93": 9.08788, - "94": 8.83439, - "95": 9.5191, - "96": 9.52647, - "97": 9.31412, - "98": 9.67541, - "99": 8.88941, - "100": 9.40588 + "68": 9.78794, + "69": 9.79078, + "70": 9.7308, + "71": 9.61793, + "72": 9.59094, + "73": 9.49435, + "74": 8.94865, + "75": 9.43606, + "76": 9.09894, + "77": 10.06437, + "78": 9.73006, + "79": 9.37771, + "80": 9.41266, + "81": 9.4854, + "82": 9.69576, + "83": 9.32017, + "84": 9.42235, + "85": 9.61578, + "86": 9.07218, + "87": 9.59328, + "88": 9.7509, + "89": 9.61159, + "90": 9.82148, + "91": 9.35304, + "92": 9.36254, + "93": 9.08747, + "94": 8.83398, + "95": 9.51923, + "96": 9.52595, + "97": 9.31413, + "98": 9.67414, + "99": 8.88869, + "100": 9.40651 } }, "num-zeros": { @@ -111,106 +111,106 @@ "end_step": 100, "step_interval": 1, "values": { - "1": 1778.0, - "2": 1875.0, - "3": 1879.0, - "4": 1912.0, - "5": 2219.0, - "6": 2163.0, - "7": 2113.0, - "8": 1747.0, - "9": 2049.0, - "10": 1530.0, - "11": 2113.0, - "12": 1959.0, - "13": 2134.0, - "14": 2055.0, - "15": 2125.0, - "16": 2139.0, - "17": 1988.0, - "18": 1892.0, - "19": 1991.0, - "20": 1867.0, - "21": 2023.0, - "22": 1865.0, - "23": 2185.0, - "24": 1774.0, - "25": 1773.0, - "26": 1990.0, - "27": 2061.0, - "28": 2215.0, - "29": 2186.0, - "30": 2129.0, - "31": 1794.0, - "32": 2109.0, - "33": 2422.0, - "34": 2135.0, - "35": 2169.0, - "36": 2127.0, - "37": 2432.0, - "38": 2490.0, - "39": 2495.0, - "40": 2486.0, - "41": 2465.0, - "42": 2535.0, - "43": 2216.0, - "44": 2407.0, - "45": 2335.0, - "46": 2617.0, - "47": 2830.0, - "48": 2480.0, - "49": 2492.0, - "50": 2687.0, - "51": 2863.0, - "52": 2881.0, - "53": 3220.0, - "54": 2894.0, - "55": 2652.0, - "56": 3006.0, - "57": 2561.0, - "58": 3273.0, - "59": 3039.0, - "60": 2765.0, - "61": 3310.0, - "62": 2936.0, - "63": 2630.0, - "64": 3230.0, - "65": 2946.0, - "66": 3500.0, - "67": 2976.0, - "68": 2944.0, - "69": 3117.0, - "70": 3629.0, - "71": 3255.0, - "72": 2633.0, - "73": 3338.0, - "74": 2172.0, - "75": 2702.0, - "76": 3162.0, - "77": 3850.0, - "78": 3590.0, - "79": 3658.0, - "80": 3866.0, - "81": 3976.0, - "82": 3680.0, - "83": 3153.0, - "84": 3586.0, - "85": 3517.0, - "86": 3137.0, - "87": 4177.0, - "88": 3589.0, - "89": 3849.0, - "90": 3349.0, - "91": 2936.0, - "92": 3526.0, - "93": 2965.0, - "94": 3772.0, - "95": 3530.0, - "96": 3774.0, - "97": 3636.0, - "98": 4064.0, - "99": 3394.0, - "100": 3530.0 + "1": 1754.0, + "2": 1848.0, + "3": 1845.0, + "4": 1871.0, + "5": 2173.0, + "6": 2054.0, + "7": 2021.0, + "8": 1737.0, + "9": 2044.0, + "10": 1524.0, + "11": 2198.0, + "12": 2030.0, + "13": 2211.0, + "14": 2094.0, + "15": 2036.0, + "16": 2165.0, + "17": 2044.0, + "18": 1842.0, + "19": 2002.0, + "20": 1774.0, + "21": 1976.0, + "22": 1869.0, + "23": 2232.0, + "24": 1769.0, + "25": 1714.0, + "26": 1866.0, + "27": 2106.0, + "28": 2287.0, + "29": 2221.0, + "30": 1967.0, + "31": 1788.0, + "32": 2187.0, + "33": 2432.0, + "34": 2059.0, + "35": 2308.0, + "36": 2173.0, + "37": 2619.0, + "38": 2572.0, + "39": 2618.0, + "40": 2548.0, + "41": 2531.0, + "42": 2447.0, + "43": 2283.0, + "44": 2358.0, + "45": 2398.0, + "46": 2572.0, + "47": 2818.0, + "48": 2599.0, + "49": 2579.0, + "50": 2731.0, + "51": 2873.0, + "52": 2946.0, + "53": 3158.0, + "54": 2907.0, + "55": 2740.0, + "56": 3029.0, + "57": 2489.0, + "58": 3327.0, + "59": 3042.0, + "60": 2780.0, + "61": 3302.0, + "62": 2961.0, + "63": 2702.0, + "64": 3318.0, + "65": 2909.0, + "66": 3513.0, + "67": 2959.0, + "68": 2963.0, + "69": 3171.0, + "70": 3547.0, + "71": 3246.0, + "72": 2586.0, + "73": 3301.0, + "74": 2135.0, + "75": 2752.0, + "76": 3275.0, + "77": 3648.0, + "78": 3472.0, + "79": 3536.0, + "80": 3685.0, + "81": 4159.0, + "82": 3488.0, + "83": 3179.0, + "84": 3639.0, + "85": 3631.0, + "86": 3045.0, + "87": 4315.0, + "88": 3481.0, + "89": 3819.0, + "90": 3323.0, + "91": 3014.0, + "92": 3581.0, + "93": 2932.0, + "94": 3715.0, + "95": 3593.0, + "96": 3764.0, + "97": 3582.0, + "98": 3998.0, + "99": 3406.0, + "100": 3521.0 } }, "mem-allocated-bytes": { @@ -218,106 +218,106 @@ "end_step": 100, "step_interval": 1, "values": { - "1": 269891584.0, - "2": 269891584.0, - "3": 269891584.0, - "4": 269891584.0, - "5": 269891584.0, - "6": 269891584.0, - "7": 269891584.0, - "8": 269891584.0, - "9": 269891584.0, - "10": 269891584.0, - "11": 269891584.0, - "12": 269891584.0, - "13": 269891584.0, - "14": 269891584.0, - "15": 269891584.0, - "16": 269891584.0, - "17": 269891584.0, - "18": 269891584.0, - "19": 269891584.0, - "20": 269891584.0, - "21": 269891584.0, - "22": 269891584.0, - "23": 269891584.0, - "24": 269891584.0, - "25": 269891584.0, - "26": 269891584.0, - "27": 269891584.0, - "28": 269891584.0, - "29": 269891584.0, - "30": 269891584.0, - "31": 269891584.0, - "32": 269891584.0, - "33": 269891584.0, - "34": 269891584.0, - "35": 269891584.0, - "36": 269891584.0, - "37": 269891584.0, - "38": 269891584.0, - "39": 269891584.0, - "40": 269891584.0, - "41": 269891584.0, - "42": 269891584.0, - "43": 269891584.0, - "44": 269891584.0, - "45": 269891584.0, - "46": 269891584.0, - "47": 269891584.0, - "48": 269891584.0, - "49": 269891584.0, - "50": 269891584.0, - "51": 269891584.0, - "52": 269891584.0, - "53": 269891584.0, - "54": 269891584.0, - "55": 269891584.0, - "56": 269891584.0, - "57": 269891584.0, - "58": 269891584.0, - "59": 269891584.0, - "60": 269891584.0, - "61": 269891584.0, - "62": 269891584.0, - "63": 269891584.0, - "64": 269891584.0, - "65": 269891584.0, - "66": 269891584.0, - "67": 269891584.0, - "68": 269891584.0, - "69": 269891584.0, - "70": 269891584.0, - "71": 269891584.0, - "72": 269891584.0, - "73": 269891584.0, - "74": 269891584.0, - "75": 269891584.0, - "76": 269891584.0, - "77": 269891584.0, - "78": 269891584.0, - "79": 269891584.0, - "80": 269891584.0, - "81": 269891584.0, - "82": 269891584.0, - "83": 269891584.0, - "84": 269891584.0, - "85": 269891584.0, - "86": 269891584.0, - "87": 269891584.0, - "88": 269891584.0, - "89": 269891584.0, - "90": 269891584.0, - "91": 269891584.0, - "92": 269891584.0, - "93": 269891584.0, - "94": 269891584.0, - "95": 269891584.0, - "96": 269891584.0, - "97": 269891584.0, - "98": 269891584.0, - "99": 269891584.0, - "100": 269891584.0 + "1": 269842944.0, + "2": 269842944.0, + "3": 269842944.0, + "4": 269842944.0, + "5": 269842944.0, + "6": 269842944.0, + "7": 269842944.0, + "8": 269842944.0, + "9": 269842944.0, + "10": 269842944.0, + "11": 269842944.0, + "12": 269842944.0, + "13": 269842944.0, + "14": 269842944.0, + "15": 269842944.0, + "16": 269842944.0, + "17": 269842944.0, + "18": 269842944.0, + "19": 269842944.0, + "20": 269842944.0, + "21": 269842944.0, + "22": 269842944.0, + "23": 269842944.0, + "24": 269842944.0, + "25": 269842944.0, + "26": 269842944.0, + "27": 269842944.0, + "28": 269842944.0, + "29": 269842944.0, + "30": 269842944.0, + "31": 269842944.0, + "32": 269842944.0, + "33": 269842944.0, + "34": 269842944.0, + "35": 269842944.0, + "36": 269842944.0, + "37": 269842944.0, + "38": 269842944.0, + "39": 269842944.0, + "40": 269842944.0, + "41": 269842944.0, + "42": 269842944.0, + "43": 269842944.0, + "44": 269842944.0, + "45": 269842944.0, + "46": 269842944.0, + "47": 269842944.0, + "48": 269842944.0, + "49": 269842944.0, + "50": 269842944.0, + "51": 269842944.0, + "52": 269842944.0, + "53": 269842944.0, + "54": 269842944.0, + "55": 269842944.0, + "56": 269842944.0, + "57": 269842944.0, + "58": 269842944.0, + "59": 269842944.0, + "60": 269842944.0, + "61": 269842944.0, + "62": 269842944.0, + "63": 269842944.0, + "64": 269842944.0, + "65": 269842944.0, + "66": 269842944.0, + "67": 269842944.0, + "68": 269842944.0, + "69": 269842944.0, + "70": 269842944.0, + "71": 269842944.0, + "72": 269842944.0, + "73": 269842944.0, + "74": 269842944.0, + "75": 269842944.0, + "76": 269842944.0, + "77": 269842944.0, + "78": 269842944.0, + "79": 269842944.0, + "80": 269842944.0, + "81": 269842944.0, + "82": 269842944.0, + "83": 269842944.0, + "84": 269842944.0, + "85": 269842944.0, + "86": 269842944.0, + "87": 269842944.0, + "88": 269842944.0, + "89": 269842944.0, + "90": 269842944.0, + "91": 269842944.0, + "92": 269842944.0, + "93": 269842944.0, + "94": 269842944.0, + "95": 269842944.0, + "96": 269842944.0, + "97": 269842944.0, + "98": 269842944.0, + "99": 269842944.0, + "100": 269842944.0 } }, "mem-max-allocated-bytes": { @@ -325,106 +325,106 @@ "end_step": 100, "step_interval": 1, "values": { - "1": 1448634368.0, - "2": 1515676672.0, - "3": 1515676672.0, - "4": 1515676672.0, - "5": 1515676672.0, - "6": 1515676672.0, - "7": 1515676672.0, - "8": 1515676672.0, - "9": 1515676672.0, - "10": 1515676672.0, - "11": 1515676672.0, - "12": 1515676672.0, - "13": 1515676672.0, - "14": 1515676672.0, - "15": 1515676672.0, - "16": 1515676672.0, - "17": 1515676672.0, - "18": 1515676672.0, - "19": 1515676672.0, - "20": 1515676672.0, - "21": 1515676672.0, - "22": 1515676672.0, - "23": 1515676672.0, - "24": 1515676672.0, - "25": 1515676672.0, - "26": 1515676672.0, - "27": 1515676672.0, - "28": 1515676672.0, - "29": 1515676672.0, - "30": 1515676672.0, - "31": 1515676672.0, - "32": 1515676672.0, - "33": 1515676672.0, - "34": 1515676672.0, - "35": 1515676672.0, - "36": 1515676672.0, - "37": 1515676672.0, - "38": 1515676672.0, - "39": 1515676672.0, - "40": 1515676672.0, - "41": 1515676672.0, - "42": 1515676672.0, - "43": 1515676672.0, - "44": 1515676672.0, - "45": 1515676672.0, - "46": 1515676672.0, - "47": 1515676672.0, - "48": 1515676672.0, - "49": 1515676672.0, - "50": 1515676672.0, - "51": 1515676672.0, - "52": 1515676672.0, - "53": 1515676672.0, - "54": 1515676672.0, - "55": 1515676672.0, - "56": 1515676672.0, - "57": 1515676672.0, - "58": 1515676672.0, - "59": 1515676672.0, - "60": 1515676672.0, - "61": 1515676672.0, - "62": 1515676672.0, - "63": 1515676672.0, - "64": 1515676672.0, - "65": 1515676672.0, - "66": 1515676672.0, - "67": 1515676672.0, - "68": 1515676672.0, - "69": 1515676672.0, - "70": 1515676672.0, - "71": 1515676672.0, - "72": 1515676672.0, - "73": 1515676672.0, - "74": 1515676672.0, - "75": 1515676672.0, - "76": 1515676672.0, - "77": 1515676672.0, - "78": 1515676672.0, - "79": 1515676672.0, - "80": 1515676672.0, - "81": 1515676672.0, - "82": 1515676672.0, - "83": 1515676672.0, - "84": 1515676672.0, - "85": 1515676672.0, - "86": 1515676672.0, - "87": 1515676672.0, - "88": 1515676672.0, - "89": 1515676672.0, - "90": 1515676672.0, - "91": 1515676672.0, - "92": 1515676672.0, - "93": 1515676672.0, - "94": 1515676672.0, - "95": 1515676672.0, - "96": 1515676672.0, - "97": 1515676672.0, - "98": 1515676672.0, - "99": 1515676672.0, - "100": 1515676672.0 + "1": 971619840.0, + "2": 1036172800.0, + "3": 1036172800.0, + "4": 1036172800.0, + "5": 1036172800.0, + "6": 1036172800.0, + "7": 1036172800.0, + "8": 1036172800.0, + "9": 1036172800.0, + "10": 1036172800.0, + "11": 1036172800.0, + "12": 1036172800.0, + "13": 1036172800.0, + "14": 1036172800.0, + "15": 1036172800.0, + "16": 1036172800.0, + "17": 1036172800.0, + "18": 1036172800.0, + "19": 1036172800.0, + "20": 1036172800.0, + "21": 1036172800.0, + "22": 1036172800.0, + "23": 1036172800.0, + "24": 1036172800.0, + "25": 1036172800.0, + "26": 1036172800.0, + "27": 1036172800.0, + "28": 1036172800.0, + "29": 1036172800.0, + "30": 1036172800.0, + "31": 1036172800.0, + "32": 1036172800.0, + "33": 1036172800.0, + "34": 1036172800.0, + "35": 1036172800.0, + "36": 1036172800.0, + "37": 1036172800.0, + "38": 1036172800.0, + "39": 1036172800.0, + "40": 1036172800.0, + "41": 1036172800.0, + "42": 1036172800.0, + "43": 1036172800.0, + "44": 1036172800.0, + "45": 1036172800.0, + "46": 1036172800.0, + "47": 1036172800.0, + "48": 1036172800.0, + "49": 1036172800.0, + "50": 1036172800.0, + "51": 1036172800.0, + "52": 1036172800.0, + "53": 1036172800.0, + "54": 1036172800.0, + "55": 1036172800.0, + "56": 1036172800.0, + "57": 1036172800.0, + "58": 1036172800.0, + "59": 1036172800.0, + "60": 1036172800.0, + "61": 1036172800.0, + "62": 1036172800.0, + "63": 1036172800.0, + "64": 1036172800.0, + "65": 1036172800.0, + "66": 1036172800.0, + "67": 1036172800.0, + "68": 1036172800.0, + "69": 1036172800.0, + "70": 1036172800.0, + "71": 1036172800.0, + "72": 1036172800.0, + "73": 1036172800.0, + "74": 1036172800.0, + "75": 1036172800.0, + "76": 1036172800.0, + "77": 1036172800.0, + "78": 1036172800.0, + "79": 1036172800.0, + "80": 1036172800.0, + "81": 1036172800.0, + "82": 1036172800.0, + "83": 1036172800.0, + "84": 1036172800.0, + "85": 1036172800.0, + "86": 1036172800.0, + "87": 1036172800.0, + "88": 1036172800.0, + "89": 1036172800.0, + "90": 1036172800.0, + "91": 1036172800.0, + "92": 1036172800.0, + "93": 1036172800.0, + "94": 1036172800.0, + "95": 1036172800.0, + "96": 1036172800.0, + "97": 1036172800.0, + "98": 1036172800.0, + "99": 1036172800.0, + "100": 1036172800.0 } }, "iteration-time": { @@ -432,106 +432,106 @@ "end_step": 100, "step_interval": 1, "values": { - "1": 10.29271, - "2": 0.42506, - "3": 0.68343, - "4": 0.36852, - "5": 0.35945, - "6": 0.70082, - "7": 0.36184, - "8": 0.36666, - "9": 0.36956, - "10": 0.36948, - "11": 0.34035, - "12": 0.33106, - "13": 0.32678, - "14": 0.50153, - "15": 0.32624, - "16": 0.32544, - "17": 0.33191, - "18": 0.32618, - "19": 0.3263, - "20": 0.33069, - "21": 0.32595, - "22": 0.3257, - "23": 0.33264, - "24": 0.32517, - "25": 0.32475, - "26": 0.33346, - "27": 0.33354, - "28": 0.32383, - "29": 0.33025, - "30": 0.32292, - "31": 0.32259, - "32": 0.33133, - "33": 0.32233, - "34": 0.32205, - "35": 0.32577, - "36": 0.33027, - "37": 0.32369, - "38": 0.3231, - "39": 0.32941, - "40": 0.32272, - "41": 0.32419, - "42": 0.32862, - "43": 0.32341, - "44": 0.32437, - "45": 0.3291, - "46": 0.32245, - "47": 0.32412, - "48": 0.32928, - "49": 0.32252, - "50": 0.3232, - "51": 0.3288, - "52": 0.32267, - "53": 0.32323, - "54": 0.33682, - "55": 0.32632, - "56": 0.32697, - "57": 0.33895, - "58": 0.32618, - "59": 0.32589, - "60": 0.3322, - "61": 0.3251, - "62": 0.32521, - "63": 0.33036, - "64": 0.32444, - "65": 0.32508, - "66": 0.33114, - "67": 0.32315, - "68": 0.32508, - "69": 0.3303, - "70": 0.32701, - "71": 0.32493, - "72": 0.32932, - "73": 0.32763, - "74": 0.32474, - "75": 0.32636, - "76": 0.33103, - "77": 0.32433, - "78": 0.32583, - "79": 0.33332, - "80": 0.32445, - "81": 0.32512, - "82": 0.33846, - "83": 0.32647, - "84": 0.32584, - "85": 0.33063, - "86": 0.32531, - "87": 0.32597, - "88": 0.33536, - "89": 0.32529, - "90": 0.32619, - "91": 0.33191, - "92": 0.32549, - "93": 0.32565, - "94": 0.33549, - "95": 0.32239, - "96": 0.32249, - "97": 0.32967, - "98": 0.3225, - "99": 0.32206, - "100": 0.32856 + "1": 5.18846, + "2": 0.36168, + "3": 0.29466, + "4": 0.29234, + "5": 0.29276, + "6": 0.29792, + "7": 0.29352, + "8": 0.2936, + "9": 0.29237, + "10": 0.29769, + "11": 0.29346, + "12": 0.29527, + "13": 0.29315, + "14": 0.29363, + "15": 0.29305, + "16": 0.29641, + "17": 0.29489, + "18": 0.29861, + "19": 0.29574, + "20": 0.29312, + "21": 0.29388, + "22": 0.29283, + "23": 0.29431, + "24": 0.29335, + "25": 0.29314, + "26": 0.29296, + "27": 0.29356, + "28": 0.29335, + "29": 0.29568, + "30": 0.29411, + "31": 0.29379, + "32": 0.29273, + "33": 0.29354, + "34": 0.29433, + "35": 0.29411, + "36": 0.29363, + "37": 0.2938, + "38": 0.29351, + "39": 0.29356, + "40": 0.29298, + "41": 0.29347, + "42": 0.29413, + "43": 0.29252, + "44": 0.29273, + "45": 0.29334, + "46": 0.29356, + "47": 0.29382, + "48": 0.29398, + "49": 0.2936, + "50": 0.29316, + "51": 0.29514, + "52": 0.28916, + "53": 0.29005, + "54": 0.28929, + "55": 0.28956, + "56": 0.28848, + "57": 0.28858, + "58": 0.28768, + "59": 0.28853, + "60": 0.29008, + "61": 0.2889, + "62": 0.28847, + "63": 0.28786, + "64": 0.28795, + "65": 0.28879, + "66": 0.28923, + "67": 0.28915, + "68": 0.28861, + "69": 0.28895, + "70": 0.28885, + "71": 0.28882, + "72": 0.28775, + "73": 0.28792, + "74": 0.28799, + "75": 0.28754, + "76": 0.28789, + "77": 0.2888, + "78": 0.28929, + "79": 0.28854, + "80": 0.28894, + "81": 0.28751, + "82": 0.28815, + "83": 0.2885, + "84": 0.28813, + "85": 0.28933, + "86": 0.28794, + "87": 0.28758, + "88": 0.28772, + "89": 0.28903, + "90": 0.28798, + "91": 0.28695, + "92": 0.28757, + "93": 0.28831, + "94": 0.28828, + "95": 0.28871, + "96": 0.28746, + "97": 0.28767, + "98": 0.28881, + "99": 0.2875, + "100": 0.28775 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts.json new file mode 100644 index 00000000000..d8c6189b1ed --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.85966, + "2": 10.85779, + "3": 10.85806, + "4": 10.85111, + "5": 10.88314, + "6": 10.8873, + "7": 10.86205, + "8": 10.86979, + "9": 10.86489, + "10": 10.83833, + "11": 10.87881, + "12": 10.87319, + "13": 10.87924, + "14": 10.88927, + "15": 10.83002, + "16": 10.83231, + "17": 10.80059, + "18": 10.82546, + "19": 10.81132, + "20": 10.73125, + "21": 10.72292, + "22": 10.57559, + "23": 10.73211, + "24": 10.61836, + "25": 10.56602, + "26": 10.61211, + "27": 10.62224, + "28": 10.58011, + "29": 10.59905, + "30": 10.38311, + "31": 10.14181, + "32": 10.48118, + "33": 10.47322, + "34": 10.23556, + "35": 10.28738, + "36": 10.23493, + "37": 10.35785, + "38": 10.20631, + "39": 10.41397, + "40": 10.09217, + "41": 10.16577, + "42": 10.21856, + "43": 9.85974, + "44": 9.97115, + "45": 9.83404, + "46": 9.84483, + "47": 10.16033, + "48": 9.85135, + "49": 9.53781, + "50": 9.91577, + "51": 9.8567, + "52": 9.75178, + "53": 10.07652, + "54": 9.96084, + "55": 9.88221, + "56": 9.63206, + "57": 9.49147, + "58": 9.83408, + "59": 9.59352, + "60": 9.51388, + "61": 9.69802, + "62": 9.99154, + "63": 9.3723, + "64": 9.77839, + "65": 8.95518, + "66": 9.70976, + "67": 9.38198, + "68": 9.78701, + "69": 9.793, + "70": 9.73033, + "71": 9.61752, + "72": 9.58459, + "73": 9.48958, + "74": 8.94015, + "75": 9.43092, + "76": 9.09168, + "77": 10.06222, + "78": 9.72696, + "79": 9.37408, + "80": 9.40676, + "81": 9.47995, + "82": 9.69225, + "83": 9.31299, + "84": 9.41921, + "85": 9.61096, + "86": 9.06853, + "87": 9.59119, + "88": 9.74582, + "89": 9.60624, + "90": 9.81746, + "91": 9.34247, + "92": 9.35856, + "93": 9.07894, + "94": 8.82753, + "95": 9.51606, + "96": 9.52063, + "97": 9.31097, + "98": 9.67055, + "99": 8.88626, + "100": 9.40485 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1756.0, + "2": 2002.0, + "3": 1950.0, + "4": 1894.0, + "5": 2227.0, + "6": 2168.0, + "7": 2021.0, + "8": 1775.0, + "9": 2051.0, + "10": 1611.0, + "11": 2147.0, + "12": 1965.0, + "13": 2185.0, + "14": 2052.0, + "15": 2134.0, + "16": 2077.0, + "17": 2080.0, + "18": 1914.0, + "19": 1993.0, + "20": 1823.0, + "21": 2142.0, + "22": 1847.0, + "23": 2340.0, + "24": 1831.0, + "25": 1790.0, + "26": 1923.0, + "27": 2066.0, + "28": 2268.0, + "29": 2261.0, + "30": 2043.0, + "31": 1759.0, + "32": 2122.0, + "33": 2389.0, + "34": 2186.0, + "35": 2312.0, + "36": 2176.0, + "37": 2626.0, + "38": 2471.0, + "39": 2624.0, + "40": 2556.0, + "41": 2475.0, + "42": 2504.0, + "43": 2326.0, + "44": 2307.0, + "45": 2355.0, + "46": 2625.0, + "47": 2809.0, + "48": 2621.0, + "49": 2670.0, + "50": 2699.0, + "51": 2829.0, + "52": 2809.0, + "53": 3230.0, + "54": 2864.0, + "55": 2706.0, + "56": 2917.0, + "57": 2529.0, + "58": 3339.0, + "59": 3051.0, + "60": 2623.0, + "61": 3287.0, + "62": 2913.0, + "63": 2639.0, + "64": 3154.0, + "65": 2856.0, + "66": 3465.0, + "67": 2934.0, + "68": 2985.0, + "69": 3298.0, + "70": 3653.0, + "71": 3260.0, + "72": 2684.0, + "73": 3232.0, + "74": 2191.0, + "75": 2766.0, + "76": 3335.0, + "77": 3793.0, + "78": 3608.0, + "79": 3384.0, + "80": 3782.0, + "81": 3969.0, + "82": 3640.0, + "83": 3237.0, + "84": 3606.0, + "85": 3553.0, + "86": 3160.0, + "87": 4130.0, + "88": 3430.0, + "89": 3818.0, + "90": 3363.0, + "91": 3041.0, + "92": 3524.0, + "93": 3060.0, + "94": 3575.0, + "95": 3463.0, + "96": 3921.0, + "97": 3597.0, + "98": 4039.0, + "99": 3435.0, + "100": 3548.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 368387584.0, + "2": 368387584.0, + "3": 368387584.0, + "4": 368387584.0, + "5": 368387584.0, + "6": 368387584.0, + "7": 368387584.0, + "8": 368387584.0, + "9": 368387584.0, + "10": 368387584.0, + "11": 368387584.0, + "12": 368387584.0, + "13": 368387584.0, + "14": 368387584.0, + "15": 368387584.0, + "16": 368387584.0, + "17": 368387584.0, + "18": 368387584.0, + "19": 368387584.0, + "20": 368387584.0, + "21": 368387584.0, + "22": 368387584.0, + "23": 368387584.0, + "24": 368387584.0, + "25": 368387584.0, + "26": 368387584.0, + "27": 368387584.0, + "28": 368387584.0, + "29": 368387584.0, + "30": 368387584.0, + "31": 368387584.0, + "32": 368387584.0, + "33": 368387584.0, + "34": 368387584.0, + "35": 368387584.0, + "36": 368387584.0, + "37": 368387584.0, + "38": 368387584.0, + "39": 368387584.0, + "40": 368387584.0, + "41": 368387584.0, + "42": 368387584.0, + "43": 368387584.0, + "44": 368387584.0, + "45": 368387584.0, + "46": 368387584.0, + "47": 368387584.0, + "48": 368387584.0, + "49": 368387584.0, + "50": 368387584.0, + "51": 368387584.0, + "52": 368387584.0, + "53": 368387584.0, + "54": 368387584.0, + "55": 368387584.0, + "56": 368387584.0, + "57": 368387584.0, + "58": 368387584.0, + "59": 368387584.0, + "60": 368387584.0, + "61": 368387584.0, + "62": 368387584.0, + "63": 368387584.0, + "64": 368387584.0, + "65": 368387584.0, + "66": 368387584.0, + "67": 368387584.0, + "68": 368387584.0, + "69": 368387584.0, + "70": 368387584.0, + "71": 368387584.0, + "72": 368387584.0, + "73": 368387584.0, + "74": 368387584.0, + "75": 368387584.0, + "76": 368387584.0, + "77": 368387584.0, + "78": 368387584.0, + "79": 368387584.0, + "80": 368387584.0, + "81": 368387584.0, + "82": 368387584.0, + "83": 368387584.0, + "84": 368387584.0, + "85": 368387584.0, + "86": 368387584.0, + "87": 368387584.0, + "88": 368387584.0, + "89": 368387584.0, + "90": 368387584.0, + "91": 368387584.0, + "92": 368387584.0, + "93": 368387584.0, + "94": 368387584.0, + "95": 368387584.0, + "96": 368387584.0, + "97": 368387584.0, + "98": 368387584.0, + "99": 368387584.0, + "100": 368387584.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1030075904.0, + "2": 1161062912.0, + "3": 1161062912.0, + "4": 1161062912.0, + "5": 1161062912.0, + "6": 1161062912.0, + "7": 1161062912.0, + "8": 1161062912.0, + "9": 1161062912.0, + "10": 1161062912.0, + "11": 1161062912.0, + "12": 1161062912.0, + "13": 1161062912.0, + "14": 1161062912.0, + "15": 1161062912.0, + "16": 1161062912.0, + "17": 1161062912.0, + "18": 1161062912.0, + "19": 1161062912.0, + "20": 1161062912.0, + "21": 1161062912.0, + "22": 1161062912.0, + "23": 1161062912.0, + "24": 1161062912.0, + "25": 1161062912.0, + "26": 1161062912.0, + "27": 1161062912.0, + "28": 1161062912.0, + "29": 1161062912.0, + "30": 1161062912.0, + "31": 1161062912.0, + "32": 1161062912.0, + "33": 1161062912.0, + "34": 1161062912.0, + "35": 1161062912.0, + "36": 1161062912.0, + "37": 1161062912.0, + "38": 1161062912.0, + "39": 1161062912.0, + "40": 1161062912.0, + "41": 1161062912.0, + "42": 1161062912.0, + "43": 1161062912.0, + "44": 1161062912.0, + "45": 1161062912.0, + "46": 1161062912.0, + "47": 1161062912.0, + "48": 1161062912.0, + "49": 1161062912.0, + "50": 1161062912.0, + "51": 1161062912.0, + "52": 1161062912.0, + "53": 1161062912.0, + "54": 1161062912.0, + "55": 1161062912.0, + "56": 1161062912.0, + "57": 1161062912.0, + "58": 1161062912.0, + "59": 1161062912.0, + "60": 1161062912.0, + "61": 1161062912.0, + "62": 1161062912.0, + "63": 1161062912.0, + "64": 1161062912.0, + "65": 1161062912.0, + "66": 1161062912.0, + "67": 1161062912.0, + "68": 1161062912.0, + "69": 1161062912.0, + "70": 1161062912.0, + "71": 1161062912.0, + "72": 1161062912.0, + "73": 1161062912.0, + "74": 1161062912.0, + "75": 1161062912.0, + "76": 1161062912.0, + "77": 1161062912.0, + "78": 1161062912.0, + "79": 1161062912.0, + "80": 1161062912.0, + "81": 1161062912.0, + "82": 1161062912.0, + "83": 1161062912.0, + "84": 1161062912.0, + "85": 1161062912.0, + "86": 1161062912.0, + "87": 1161062912.0, + "88": 1161062912.0, + "89": 1161062912.0, + "90": 1161062912.0, + "91": 1161062912.0, + "92": 1161062912.0, + "93": 1161062912.0, + "94": 1161062912.0, + "95": 1161062912.0, + "96": 1161062912.0, + "97": 1161062912.0, + "98": 1161062912.0, + "99": 1161062912.0, + "100": 1161062912.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 4.69857, + "2": 0.5607, + "3": 0.4224, + "4": 0.408, + "5": 0.40601, + "6": 0.40622, + "7": 0.41117, + "8": 0.41277, + "9": 0.41135, + "10": 0.41075, + "11": 0.41036, + "12": 0.41422, + "13": 0.41066, + "14": 0.41137, + "15": 0.41203, + "16": 0.41967, + "17": 0.41058, + "18": 0.41138, + "19": 0.41123, + "20": 0.4101, + "21": 0.40646, + "22": 0.40698, + "23": 0.40933, + "24": 0.40762, + "25": 0.40817, + "26": 0.40815, + "27": 0.40808, + "28": 0.41113, + "29": 0.41068, + "30": 0.40954, + "31": 0.40816, + "32": 0.40856, + "33": 0.40858, + "34": 0.4094, + "35": 0.40789, + "36": 0.40721, + "37": 0.4076, + "38": 0.4074, + "39": 0.40856, + "40": 0.40702, + "41": 0.40749, + "42": 0.40775, + "43": 0.40697, + "44": 0.4055, + "45": 0.40519, + "46": 0.40481, + "47": 0.40587, + "48": 0.40507, + "49": 0.40669, + "50": 0.40562, + "51": 0.42093, + "52": 0.41028, + "53": 0.4088, + "54": 0.41137, + "55": 0.40983, + "56": 0.40893, + "57": 0.41252, + "58": 0.40982, + "59": 0.41034, + "60": 0.41176, + "61": 0.40849, + "62": 0.40923, + "63": 0.40913, + "64": 0.4084, + "65": 0.40845, + "66": 0.41123, + "67": 0.40774, + "68": 0.40592, + "69": 0.4048, + "70": 0.40668, + "71": 0.40553, + "72": 0.40771, + "73": 0.40622, + "74": 0.40899, + "75": 0.41092, + "76": 0.41085, + "77": 0.41068, + "78": 0.4084, + "79": 0.41086, + "80": 0.77469, + "81": 0.41176, + "82": 0.41234, + "83": 0.41225, + "84": 0.41217, + "85": 0.41295, + "86": 0.41174, + "87": 0.40921, + "88": 0.40831, + "89": 0.40924, + "90": 0.40844, + "91": 0.40982, + "92": 0.40955, + "93": 0.40963, + "94": 0.4085, + "95": 0.43734, + "96": 0.40945, + "97": 0.40886, + "98": 0.41034, + "99": 0.40924, + "100": 0.40948 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts_dgx_a100.json index b9747029488..1091699bf9a 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_te_tp4_pp1_resume_torch_dist_qk_layernorm_test_mode/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.86209, "5": 10.88253, "10": 10.83642, "15": 10.82909, "20": 10.73237, "25": 10.56392, "30": 10.38484, "35": 10.28951, "40": 10.09133, "45": 9.83487, "50": 9.91604, "55": 9.88232, "60": 9.51376, "65": 8.95392, "70": 9.73094, "75": 9.4313, "80": 9.40597, "85": 9.61137, "90": 9.81743, "95": 9.51571, "100": 9.40429}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1780.0, "5": 2137.0, "10": 1588.0, "15": 2083.0, "20": 1816.0, "25": 1862.0, "30": 2045.0, "35": 2205.0, "40": 2629.0, "45": 2441.0, "50": 2734.0, "55": 2662.0, "60": 2726.0, "65": 3011.0, "70": 3737.0, "75": 2771.0, "80": 3804.0, "85": 3588.0, "90": 3384.0, "95": 3590.0, "100": 3454.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 368387072.0, "5": 368387072.0, "10": 368387072.0, "15": 368387072.0, "20": 368387072.0, "25": 368387072.0, "30": 368387072.0, "35": 368387072.0, "40": 368387072.0, "45": 368387072.0, "50": 368387072.0, "55": 368387072.0, "60": 368387072.0, "65": 368387072.0, "70": 368387072.0, "75": 368387072.0, "80": 368387072.0, "85": 368387072.0, "90": 368387072.0, "95": 368387072.0, "100": 368387072.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1510972416.0, "5": 1645104640.0, "10": 1645105152.0, "15": 1645105152.0, "20": 1645105152.0, "25": 1645105152.0, "30": 1645105152.0, "35": 1645105152.0, "40": 1645105152.0, "45": 1645105152.0, "50": 1645105152.0, "55": 1645105152.0, "60": 1645105152.0, "65": 1645105152.0, "70": 1645105152.0, "75": 1647199744.0, "80": 1647199744.0, "85": 1647199744.0, "90": 1647199744.0, "95": 1647199744.0, "100": 1647199744.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 9.70786, "5": 0.41822, "10": 0.42132, "15": 0.41057, "20": 0.4105, "25": 0.41988, "30": 0.41035, "35": 0.41599, "40": 0.40546, "45": 0.40496, "50": 0.40588, "55": 0.40982, "60": 0.4157, "65": 0.40455, "70": 0.40547, "75": 0.41128, "80": 0.41661, "85": 0.42011, "90": 0.41367, "95": 0.41851, "100": 0.40235}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.85966, + "2": 10.85779, + "3": 10.85806, + "4": 10.85111, + "5": 10.88314, + "6": 10.8873, + "7": 10.86205, + "8": 10.86979, + "9": 10.86489, + "10": 10.83833, + "11": 10.87881, + "12": 10.87319, + "13": 10.87924, + "14": 10.88927, + "15": 10.83002, + "16": 10.83231, + "17": 10.80059, + "18": 10.82546, + "19": 10.81132, + "20": 10.73125, + "21": 10.72292, + "22": 10.57559, + "23": 10.73211, + "24": 10.61836, + "25": 10.56602, + "26": 10.61211, + "27": 10.62224, + "28": 10.58011, + "29": 10.59905, + "30": 10.38311, + "31": 10.14181, + "32": 10.48118, + "33": 10.47322, + "34": 10.23556, + "35": 10.28738, + "36": 10.23493, + "37": 10.35785, + "38": 10.20631, + "39": 10.41397, + "40": 10.09217, + "41": 10.16577, + "42": 10.21856, + "43": 9.85974, + "44": 9.97115, + "45": 9.83404, + "46": 9.84483, + "47": 10.16033, + "48": 9.85135, + "49": 9.53781, + "50": 9.91577, + "51": 9.8567, + "52": 9.75178, + "53": 10.07652, + "54": 9.96084, + "55": 9.88221, + "56": 9.63206, + "57": 9.49147, + "58": 9.83408, + "59": 9.59352, + "60": 9.51388, + "61": 9.69802, + "62": 9.99154, + "63": 9.3723, + "64": 9.77839, + "65": 8.95518, + "66": 9.70976, + "67": 9.38198, + "68": 9.78701, + "69": 9.793, + "70": 9.73033, + "71": 9.61752, + "72": 9.58459, + "73": 9.48958, + "74": 8.94015, + "75": 9.43092, + "76": 9.09168, + "77": 10.06222, + "78": 9.72696, + "79": 9.37408, + "80": 9.40676, + "81": 9.47995, + "82": 9.69225, + "83": 9.31299, + "84": 9.41921, + "85": 9.61096, + "86": 9.06853, + "87": 9.59119, + "88": 9.74582, + "89": 9.60624, + "90": 9.81746, + "91": 9.34247, + "92": 9.35856, + "93": 9.07894, + "94": 8.82753, + "95": 9.51606, + "96": 9.52063, + "97": 9.31097, + "98": 9.67055, + "99": 8.88626, + "100": 9.40485 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1756.0, + "2": 2002.0, + "3": 1950.0, + "4": 1894.0, + "5": 2227.0, + "6": 2168.0, + "7": 2021.0, + "8": 1775.0, + "9": 2051.0, + "10": 1611.0, + "11": 2147.0, + "12": 1965.0, + "13": 2185.0, + "14": 2052.0, + "15": 2134.0, + "16": 2077.0, + "17": 2080.0, + "18": 1914.0, + "19": 1993.0, + "20": 1823.0, + "21": 2142.0, + "22": 1847.0, + "23": 2340.0, + "24": 1831.0, + "25": 1790.0, + "26": 1923.0, + "27": 2066.0, + "28": 2268.0, + "29": 2261.0, + "30": 2043.0, + "31": 1759.0, + "32": 2122.0, + "33": 2389.0, + "34": 2186.0, + "35": 2312.0, + "36": 2176.0, + "37": 2626.0, + "38": 2471.0, + "39": 2624.0, + "40": 2556.0, + "41": 2475.0, + "42": 2504.0, + "43": 2326.0, + "44": 2307.0, + "45": 2355.0, + "46": 2625.0, + "47": 2809.0, + "48": 2621.0, + "49": 2670.0, + "50": 2699.0, + "51": 2829.0, + "52": 2809.0, + "53": 3230.0, + "54": 2864.0, + "55": 2706.0, + "56": 2917.0, + "57": 2529.0, + "58": 3339.0, + "59": 3051.0, + "60": 2623.0, + "61": 3287.0, + "62": 2913.0, + "63": 2639.0, + "64": 3154.0, + "65": 2856.0, + "66": 3465.0, + "67": 2934.0, + "68": 2985.0, + "69": 3298.0, + "70": 3653.0, + "71": 3260.0, + "72": 2684.0, + "73": 3232.0, + "74": 2191.0, + "75": 2766.0, + "76": 3335.0, + "77": 3793.0, + "78": 3608.0, + "79": 3384.0, + "80": 3782.0, + "81": 3969.0, + "82": 3640.0, + "83": 3237.0, + "84": 3606.0, + "85": 3553.0, + "86": 3160.0, + "87": 4130.0, + "88": 3430.0, + "89": 3818.0, + "90": 3363.0, + "91": 3041.0, + "92": 3524.0, + "93": 3060.0, + "94": 3575.0, + "95": 3463.0, + "96": 3921.0, + "97": 3597.0, + "98": 4039.0, + "99": 3435.0, + "100": 3548.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 368387584.0, + "2": 368387584.0, + "3": 368387584.0, + "4": 368387584.0, + "5": 368387584.0, + "6": 368387584.0, + "7": 368387584.0, + "8": 368387584.0, + "9": 368387584.0, + "10": 368387584.0, + "11": 368387584.0, + "12": 368387584.0, + "13": 368387584.0, + "14": 368387584.0, + "15": 368387584.0, + "16": 368387584.0, + "17": 368387584.0, + "18": 368387584.0, + "19": 368387584.0, + "20": 368387584.0, + "21": 368387584.0, + "22": 368387584.0, + "23": 368387584.0, + "24": 368387584.0, + "25": 368387584.0, + "26": 368387584.0, + "27": 368387584.0, + "28": 368387584.0, + "29": 368387584.0, + "30": 368387584.0, + "31": 368387584.0, + "32": 368387584.0, + "33": 368387584.0, + "34": 368387584.0, + "35": 368387584.0, + "36": 368387584.0, + "37": 368387584.0, + "38": 368387584.0, + "39": 368387584.0, + "40": 368387584.0, + "41": 368387584.0, + "42": 368387584.0, + "43": 368387584.0, + "44": 368387584.0, + "45": 368387584.0, + "46": 368387584.0, + "47": 368387584.0, + "48": 368387584.0, + "49": 368387584.0, + "50": 368387584.0, + "51": 368387584.0, + "52": 368387584.0, + "53": 368387584.0, + "54": 368387584.0, + "55": 368387584.0, + "56": 368387584.0, + "57": 368387584.0, + "58": 368387584.0, + "59": 368387584.0, + "60": 368387584.0, + "61": 368387584.0, + "62": 368387584.0, + "63": 368387584.0, + "64": 368387584.0, + "65": 368387584.0, + "66": 368387584.0, + "67": 368387584.0, + "68": 368387584.0, + "69": 368387584.0, + "70": 368387584.0, + "71": 368387584.0, + "72": 368387584.0, + "73": 368387584.0, + "74": 368387584.0, + "75": 368387584.0, + "76": 368387584.0, + "77": 368387584.0, + "78": 368387584.0, + "79": 368387584.0, + "80": 368387584.0, + "81": 368387584.0, + "82": 368387584.0, + "83": 368387584.0, + "84": 368387584.0, + "85": 368387584.0, + "86": 368387584.0, + "87": 368387584.0, + "88": 368387584.0, + "89": 368387584.0, + "90": 368387584.0, + "91": 368387584.0, + "92": 368387584.0, + "93": 368387584.0, + "94": 368387584.0, + "95": 368387584.0, + "96": 368387584.0, + "97": 368387584.0, + "98": 368387584.0, + "99": 368387584.0, + "100": 368387584.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1030075904.0, + "2": 1161062912.0, + "3": 1161062912.0, + "4": 1161062912.0, + "5": 1161062912.0, + "6": 1161062912.0, + "7": 1161062912.0, + "8": 1161062912.0, + "9": 1161062912.0, + "10": 1161062912.0, + "11": 1161062912.0, + "12": 1161062912.0, + "13": 1161062912.0, + "14": 1161062912.0, + "15": 1161062912.0, + "16": 1161062912.0, + "17": 1161062912.0, + "18": 1161062912.0, + "19": 1161062912.0, + "20": 1161062912.0, + "21": 1161062912.0, + "22": 1161062912.0, + "23": 1161062912.0, + "24": 1161062912.0, + "25": 1161062912.0, + "26": 1161062912.0, + "27": 1161062912.0, + "28": 1161062912.0, + "29": 1161062912.0, + "30": 1161062912.0, + "31": 1161062912.0, + "32": 1161062912.0, + "33": 1161062912.0, + "34": 1161062912.0, + "35": 1161062912.0, + "36": 1161062912.0, + "37": 1161062912.0, + "38": 1161062912.0, + "39": 1161062912.0, + "40": 1161062912.0, + "41": 1161062912.0, + "42": 1161062912.0, + "43": 1161062912.0, + "44": 1161062912.0, + "45": 1161062912.0, + "46": 1161062912.0, + "47": 1161062912.0, + "48": 1161062912.0, + "49": 1161062912.0, + "50": 1161062912.0, + "51": 1161062912.0, + "52": 1161062912.0, + "53": 1161062912.0, + "54": 1161062912.0, + "55": 1161062912.0, + "56": 1161062912.0, + "57": 1161062912.0, + "58": 1161062912.0, + "59": 1161062912.0, + "60": 1161062912.0, + "61": 1161062912.0, + "62": 1161062912.0, + "63": 1161062912.0, + "64": 1161062912.0, + "65": 1161062912.0, + "66": 1161062912.0, + "67": 1161062912.0, + "68": 1161062912.0, + "69": 1161062912.0, + "70": 1161062912.0, + "71": 1161062912.0, + "72": 1161062912.0, + "73": 1161062912.0, + "74": 1161062912.0, + "75": 1161062912.0, + "76": 1161062912.0, + "77": 1161062912.0, + "78": 1161062912.0, + "79": 1161062912.0, + "80": 1161062912.0, + "81": 1161062912.0, + "82": 1161062912.0, + "83": 1161062912.0, + "84": 1161062912.0, + "85": 1161062912.0, + "86": 1161062912.0, + "87": 1161062912.0, + "88": 1161062912.0, + "89": 1161062912.0, + "90": 1161062912.0, + "91": 1161062912.0, + "92": 1161062912.0, + "93": 1161062912.0, + "94": 1161062912.0, + "95": 1161062912.0, + "96": 1161062912.0, + "97": 1161062912.0, + "98": 1161062912.0, + "99": 1161062912.0, + "100": 1161062912.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 4.72553, + "2": 0.52446, + "3": 0.41527, + "4": 0.41699, + "5": 0.41496, + "6": 0.41411, + "7": 0.41829, + "8": 0.41655, + "9": 0.41643, + "10": 0.42008, + "11": 0.41959, + "12": 0.41842, + "13": 0.41485, + "14": 0.41643, + "15": 0.41486, + "16": 0.41617, + "17": 0.41476, + "18": 0.42598, + "19": 0.41821, + "20": 0.41457, + "21": 0.41579, + "22": 0.41438, + "23": 0.41644, + "24": 0.41499, + "25": 0.41537, + "26": 0.41593, + "27": 0.42875, + "28": 0.41636, + "29": 0.41505, + "30": 0.4148, + "31": 0.41806, + "32": 0.41549, + "33": 0.41482, + "34": 0.41559, + "35": 0.4156, + "36": 0.4152, + "37": 0.4152, + "38": 0.4154, + "39": 0.41674, + "40": 0.41745, + "41": 0.41582, + "42": 0.41548, + "43": 0.41428, + "44": 0.4158, + "45": 0.41469, + "46": 0.41584, + "47": 0.41662, + "48": 0.41588, + "49": 0.41548, + "50": 0.42504, + "51": 0.41857, + "52": 0.40985, + "53": 0.40877, + "54": 0.41013, + "55": 0.40869, + "56": 0.84381, + "57": 0.41437, + "58": 0.42502, + "59": 0.41122, + "60": 0.41956, + "61": 0.40996, + "62": 0.40983, + "63": 0.41144, + "64": 0.41126, + "65": 0.41361, + "66": 0.41243, + "67": 0.41431, + "68": 0.4396, + "69": 0.42434, + "70": 0.41269, + "71": 0.42108, + "72": 0.41357, + "73": 0.41116, + "74": 0.41086, + "75": 0.41041, + "76": 0.41106, + "77": 0.41, + "78": 0.41669, + "79": 0.41627, + "80": 0.41237, + "81": 0.41157, + "82": 0.41168, + "83": 0.41229, + "84": 0.41209, + "85": 0.41258, + "86": 0.41294, + "87": 0.41185, + "88": 0.41106, + "89": 0.41159, + "90": 0.41277, + "91": 0.41162, + "92": 0.41309, + "93": 0.41351, + "94": 0.40941, + "95": 0.40961, + "96": 0.41012, + "97": 0.40887, + "98": 0.40809, + "99": 0.40865, + "100": 0.40854 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json new file mode 100644 index 00000000000..128bc5b55bb --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.84082, + "2": 10.83544, + "3": 10.83361, + "4": 10.8202, + "5": 10.84212, + "6": 10.87215, + "7": 10.83489, + "8": 10.8434, + "9": 10.84794, + "10": 10.81681, + "11": 10.86063, + "12": 10.85821, + "13": 10.87957, + "14": 10.87773, + "15": 10.85163, + "16": 10.8472, + "17": 10.84071, + "18": 10.86582, + "19": 10.85937, + "20": 10.85131, + "21": 10.85552, + "22": 10.82535, + "23": 10.86895, + "24": 10.82877, + "25": 10.81945, + "26": 10.83385, + "27": 10.82583, + "28": 10.84435, + "29": 10.83124, + "30": 10.75388, + "31": 10.66502, + "32": 10.78819, + "33": 10.76332, + "34": 10.67654, + "35": 10.68319, + "36": 10.63342, + "37": 10.68482, + "38": 10.60112, + "39": 10.69463, + "40": 10.52433, + "41": 10.54208, + "42": 10.56578, + "43": 10.34551, + "44": 10.38873, + "45": 10.31101, + "46": 10.30065, + "47": 10.48062, + "48": 10.28105, + "49": 10.05975, + "50": 10.29413, + "51": 10.23775, + "52": 10.15443, + "53": 10.36085, + "54": 10.26927, + "55": 10.2161, + "56": 9.99594, + "57": 9.8744, + "58": 10.14007, + "59": 9.93447, + "60": 9.84864, + "61": 9.98549, + "62": 10.2164, + "63": 9.69034, + "64": 10.0182, + "65": 9.30046, + "66": 9.9355, + "67": 9.63051, + "68": 9.99128, + "69": 9.9852, + "70": 9.92463, + "71": 9.81436, + "72": 9.79481, + "73": 9.68082, + "74": 9.1945, + "75": 9.60407, + "76": 9.28537, + "77": 10.18507, + "78": 9.86718, + "79": 9.52407, + "80": 9.55749, + "81": 9.62863, + "82": 9.81568, + "83": 9.45708, + "84": 9.53654, + "85": 9.73266, + "86": 9.20138, + "87": 9.69524, + "88": 9.85412, + "89": 9.71648, + "90": 9.91047, + "91": 9.45992, + "92": 9.46603, + "93": 9.19321, + "94": 8.94, + "95": 9.60607, + "96": 9.62214, + "97": 9.39796, + "98": 9.76023, + "99": 8.99097, + "100": 9.49505 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 454770688.0, + "2": 454770688.0, + "3": 454770688.0, + "4": 454770688.0, + "5": 454770688.0, + "6": 454770688.0, + "7": 454770688.0, + "8": 454770688.0, + "9": 454770688.0, + "10": 454770688.0, + "11": 454770688.0, + "12": 454770688.0, + "13": 454770688.0, + "14": 454770688.0, + "15": 454770688.0, + "16": 454770688.0, + "17": 454770688.0, + "18": 518880768.0, + "19": 518880768.0, + "20": 518880768.0, + "21": 518880768.0, + "22": 518880768.0, + "23": 518880768.0, + "24": 518880768.0, + "25": 518880768.0, + "26": 518880768.0, + "27": 518880768.0, + "28": 518880768.0, + "29": 518880768.0, + "30": 518880768.0, + "31": 518880768.0, + "32": 518880768.0, + "33": 518880768.0, + "34": 518880768.0, + "35": 518880768.0, + "36": 518880768.0, + "37": 518880768.0, + "38": 518880768.0, + "39": 518880768.0, + "40": 518880768.0, + "41": 518880768.0, + "42": 518880768.0, + "43": 518880768.0, + "44": 518880768.0, + "45": 518880768.0, + "46": 518880768.0, + "47": 518880768.0, + "48": 518880768.0, + "49": 518880768.0, + "50": 518880768.0, + "51": 518880768.0, + "52": 518880768.0, + "53": 518880768.0, + "54": 518880768.0, + "55": 518880768.0, + "56": 518880768.0, + "57": 518880768.0, + "58": 518880768.0, + "59": 518880768.0, + "60": 518880768.0, + "61": 518880768.0, + "62": 518880768.0, + "63": 518880768.0, + "64": 518880768.0, + "65": 518880768.0, + "66": 518880768.0, + "67": 518880768.0, + "68": 518880768.0, + "69": 518880768.0, + "70": 518880768.0, + "71": 518880768.0, + "72": 518880768.0, + "73": 518880768.0, + "74": 518880768.0, + "75": 518880768.0, + "76": 518880768.0, + "77": 518880768.0, + "78": 518880768.0, + "79": 518880768.0, + "80": 518880768.0, + "81": 518880768.0, + "82": 518880768.0, + "83": 518880768.0, + "84": 518880768.0, + "85": 518880768.0, + "86": 518880768.0, + "87": 518880768.0, + "88": 518880768.0, + "89": 518880768.0, + "90": 518880768.0, + "91": 518880768.0, + "92": 518880768.0, + "93": 518880768.0, + "94": 518880768.0, + "95": 518880768.0, + "96": 518880768.0, + "97": 518880768.0, + "98": 518880768.0, + "99": 518880768.0, + "100": 518880768.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 4511150592.0, + "2": 4544705536.0, + "3": 4544705536.0, + "4": 4544705536.0, + "5": 4544705536.0, + "6": 4544705536.0, + "7": 4544705536.0, + "8": 4544705536.0, + "9": 4544705536.0, + "10": 4544705536.0, + "11": 4544705536.0, + "12": 4544705536.0, + "13": 4544705536.0, + "14": 4544705536.0, + "15": 4544705536.0, + "16": 4544705536.0, + "17": 4544705536.0, + "18": 4544705536.0, + "19": 4607767040.0, + "20": 4607767040.0, + "21": 4607767040.0, + "22": 4607767040.0, + "23": 4607767040.0, + "24": 4607767040.0, + "25": 4607767040.0, + "26": 4607767040.0, + "27": 4607767040.0, + "28": 4607767040.0, + "29": 4607767040.0, + "30": 4607767040.0, + "31": 4607767040.0, + "32": 4607767040.0, + "33": 4607767040.0, + "34": 4607767040.0, + "35": 4607767040.0, + "36": 4607767040.0, + "37": 4607767040.0, + "38": 4607767040.0, + "39": 4607767040.0, + "40": 4607767040.0, + "41": 4607767040.0, + "42": 4607767040.0, + "43": 4607767040.0, + "44": 4607767040.0, + "45": 4607767040.0, + "46": 4607767040.0, + "47": 4607767040.0, + "48": 4607767040.0, + "49": 4607767040.0, + "50": 4607767040.0, + "51": 4607767040.0, + "52": 4607767040.0, + "53": 4607767040.0, + "54": 4607767040.0, + "55": 4607767040.0, + "56": 4607767040.0, + "57": 4607767040.0, + "58": 4607767040.0, + "59": 4607767040.0, + "60": 4607767040.0, + "61": 4607767040.0, + "62": 4607767040.0, + "63": 4607767040.0, + "64": 4607767040.0, + "65": 4607767040.0, + "66": 4607767040.0, + "67": 4607767040.0, + "68": 4607767040.0, + "69": 4607767040.0, + "70": 4607767040.0, + "71": 4607767040.0, + "72": 4607767040.0, + "73": 4607767040.0, + "74": 4607767040.0, + "75": 4607767040.0, + "76": 4607767040.0, + "77": 4607767040.0, + "78": 4607767040.0, + "79": 4607767040.0, + "80": 4607767040.0, + "81": 4607767040.0, + "82": 4607767040.0, + "83": 4607767040.0, + "84": 4607767040.0, + "85": 4607767040.0, + "86": 4607767040.0, + "87": 4607767040.0, + "88": 4607767040.0, + "89": 4607767040.0, + "90": 4607767040.0, + "91": 4607767040.0, + "92": 4607767040.0, + "93": 4607767040.0, + "94": 4607767040.0, + "95": 4607767040.0, + "96": 4607767040.0, + "97": 4607767040.0, + "98": 4607767040.0, + "99": 4607767040.0, + "100": 4607767040.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 8.20459, + "2": 0.14512, + "3": 0.09601, + "4": 0.09045, + "5": 0.09053, + "6": 0.08966, + "7": 0.08974, + "8": 0.08915, + "9": 0.08902, + "10": 0.08919, + "11": 0.08955, + "12": 0.08907, + "13": 0.08947, + "14": 0.08882, + "15": 0.08864, + "16": 0.08897, + "17": 0.08902, + "18": 0.14106, + "19": 0.0977, + "20": 0.09649, + "21": 0.09724, + "22": 0.09168, + "23": 0.09714, + "24": 0.09658, + "25": 0.09708, + "26": 0.09693, + "27": 0.09615, + "28": 0.09697, + "29": 0.09661, + "30": 0.09679, + "31": 0.09716, + "32": 0.09671, + "33": 0.09697, + "34": 0.09691, + "35": 0.09689, + "36": 0.09592, + "37": 0.09711, + "38": 0.09635, + "39": 0.0969, + "40": 0.09642, + "41": 0.09689, + "42": 0.09616, + "43": 0.0971, + "44": 0.09592, + "45": 0.09674, + "46": 0.09586, + "47": 0.09669, + "48": 0.096, + "49": 0.09678, + "50": 0.09589, + "51": 0.09963, + "52": 0.09882, + "53": 0.09639, + "54": 0.09745, + "55": 0.09701, + "56": 0.0971, + "57": 0.0929, + "58": 0.09316, + "59": 0.09353, + "60": 0.0935, + "61": 0.0935, + "62": 0.09059, + "63": 0.09063, + "64": 0.09203, + "65": 0.09133, + "66": 0.09044, + "67": 0.09102, + "68": 0.08852, + "69": 0.08696, + "70": 0.08735, + "71": 0.08724, + "72": 0.08697, + "73": 0.08755, + "74": 0.08731, + "75": 0.08922, + "76": 0.08886, + "77": 0.09297, + "78": 0.0878, + "79": 0.08778, + "80": 0.08751, + "81": 0.08754, + "82": 0.08716, + "83": 0.08674, + "84": 0.0865, + "85": 0.08602, + "86": 0.08613, + "87": 0.08623, + "88": 0.08639, + "89": 0.08691, + "90": 0.08616, + "91": 0.08641, + "92": 0.08645, + "93": 0.08643, + "94": 0.08632, + "95": 0.0862, + "96": 0.08615, + "97": 0.08618, + "98": 0.0866, + "99": 0.0867, + "100": 0.0861 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": "nan", + "17": "nan", + "18": 1208.0, + "19": 1541.0, + "20": 1173.0, + "21": 1368.0, + "22": "nan", + "23": 1317.0, + "24": 1131.0, + "25": 1119.0, + "26": 1067.0, + "27": 1300.0, + "28": 1549.0, + "29": 1501.0, + "30": 1354.0, + "31": 1044.0, + "32": 1202.0, + "33": 1503.0, + "34": 1276.0, + "35": 1207.0, + "36": 1217.0, + "37": 1430.0, + "38": 1473.0, + "39": 1525.0, + "40": 1413.0, + "41": 1441.0, + "42": 1487.0, + "43": 1151.0, + "44": 1217.0, + "45": 1314.0, + "46": 1265.0, + "47": 1868.0, + "48": 1314.0, + "49": 1105.0, + "50": 1476.0, + "51": 1508.0, + "52": 1400.0, + "53": 1740.0, + "54": 1498.0, + "55": 1551.0, + "56": 1363.0, + "57": 1465.0, + "58": 1610.0, + "59": 1574.0, + "60": 1599.0, + "61": 1727.0, + "62": 1804.0, + "63": 1590.0, + "64": 1813.0, + "65": 1398.0, + "66": 1738.0, + "67": 1536.0, + "68": 1764.0, + "69": 1781.0, + "70": 1926.0, + "71": 1950.0, + "72": 1461.0, + "73": 1985.0, + "74": 1345.0, + "75": 1871.0, + "76": 1732.0, + "77": 2086.0, + "78": 2075.0, + "79": 1992.0, + "80": 2260.0, + "81": 2300.0, + "82": 2290.0, + "83": 1774.0, + "84": 2172.0, + "85": 2216.0, + "86": 2038.0, + "87": 2741.0, + "88": 2079.0, + "89": 2349.0, + "90": 2315.0, + "91": 1875.0, + "92": 2611.0, + "93": 2053.0, + "94": 2220.0, + "95": 2296.0, + "96": 2665.0, + "97": 2516.0, + "98": 2549.0, + "99": 2378.0, + "100": 2257.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json index a6254c12055..8d29fc96a7f 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp1_resume_torch_dist_dist_optimizer_overlap_grad_reduce_param_gather/golden_values_lts_dgx_a100.json @@ -2,141 +2,536 @@ "lm loss": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.84012, - "5": 10.84147, - "10": 10.82107, - "15": 10.85423, - "20": 10.85111, - "25": 10.82229, - "30": 10.75584, - "35": 10.68389, - "40": 10.52756, - "45": 10.3119, - "50": 10.29392, - "55": 10.21882, - "60": 9.8477, - "65": 9.30027, - "70": 9.92473, - "75": 9.60615, - "80": 9.55867, - "85": 9.7331, - "90": 9.91024, - "95": 9.60586, - "100": 9.49453 + "1": 10.84082, + "2": 10.83544, + "3": 10.83361, + "4": 10.8202, + "5": 10.84212, + "6": 10.87215, + "7": 10.83489, + "8": 10.8434, + "9": 10.84794, + "10": 10.81681, + "11": 10.86063, + "12": 10.85821, + "13": 10.87957, + "14": 10.87773, + "15": 10.85163, + "16": 10.8472, + "17": 10.84071, + "18": 10.86582, + "19": 10.85937, + "20": 10.85131, + "21": 10.85552, + "22": 10.82535, + "23": 10.86895, + "24": 10.82877, + "25": 10.81945, + "26": 10.83385, + "27": 10.82583, + "28": 10.84435, + "29": 10.83124, + "30": 10.75388, + "31": 10.66502, + "32": 10.78819, + "33": 10.76332, + "34": 10.67654, + "35": 10.68319, + "36": 10.63342, + "37": 10.68482, + "38": 10.60112, + "39": 10.69463, + "40": 10.52433, + "41": 10.54208, + "42": 10.56578, + "43": 10.34551, + "44": 10.38873, + "45": 10.31101, + "46": 10.30065, + "47": 10.48062, + "48": 10.28105, + "49": 10.05975, + "50": 10.29413, + "51": 10.23775, + "52": 10.15443, + "53": 10.36085, + "54": 10.26927, + "55": 10.2161, + "56": 9.99594, + "57": 9.8744, + "58": 10.14007, + "59": 9.93447, + "60": 9.84864, + "61": 9.98549, + "62": 10.2164, + "63": 9.69034, + "64": 10.0182, + "65": 9.30046, + "66": 9.9355, + "67": 9.63051, + "68": 9.99128, + "69": 9.9852, + "70": 9.92463, + "71": 9.81436, + "72": 9.79481, + "73": 9.68082, + "74": 9.1945, + "75": 9.60407, + "76": 9.28537, + "77": 10.18507, + "78": 9.86718, + "79": 9.52407, + "80": 9.55749, + "81": 9.62863, + "82": 9.81568, + "83": 9.45708, + "84": 9.53654, + "85": 9.73266, + "86": 9.20138, + "87": 9.69524, + "88": 9.85412, + "89": 9.71648, + "90": 9.91047, + "91": 9.45992, + "92": 9.46603, + "93": 9.19321, + "94": 8.94, + "95": 9.60607, + "96": 9.62214, + "97": 9.39796, + "98": 9.76023, + "99": 8.99097, + "100": 9.49505 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { "1": 454770688.0, + "2": 454770688.0, + "3": 454770688.0, + "4": 454770688.0, "5": 454770688.0, + "6": 454770688.0, + "7": 454770688.0, + "8": 454770688.0, + "9": 454770688.0, "10": 454770688.0, + "11": 454770688.0, + "12": 454770688.0, + "13": 454770688.0, + "14": 454770688.0, "15": 454770688.0, + "16": 454770688.0, + "17": 454770688.0, + "18": 518880768.0, + "19": 518880768.0, "20": 518880768.0, + "21": 518880768.0, + "22": 518880768.0, + "23": 518880768.0, + "24": 518880768.0, "25": 518880768.0, + "26": 518880768.0, + "27": 518880768.0, + "28": 518880768.0, + "29": 518880768.0, "30": 518880768.0, + "31": 518880768.0, + "32": 518880768.0, + "33": 518880768.0, + "34": 518880768.0, "35": 518880768.0, + "36": 518880768.0, + "37": 518880768.0, + "38": 518880768.0, + "39": 518880768.0, "40": 518880768.0, + "41": 518880768.0, + "42": 518880768.0, + "43": 518880768.0, + "44": 518880768.0, "45": 518880768.0, + "46": 518880768.0, + "47": 518880768.0, + "48": 518880768.0, + "49": 518880768.0, "50": 518880768.0, + "51": 518880768.0, + "52": 518880768.0, + "53": 518880768.0, + "54": 518880768.0, "55": 518880768.0, + "56": 518880768.0, + "57": 518880768.0, + "58": 518880768.0, + "59": 518880768.0, "60": 518880768.0, + "61": 518880768.0, + "62": 518880768.0, + "63": 518880768.0, + "64": 518880768.0, "65": 518880768.0, + "66": 518880768.0, + "67": 518880768.0, + "68": 518880768.0, + "69": 518880768.0, "70": 518880768.0, + "71": 518880768.0, + "72": 518880768.0, + "73": 518880768.0, + "74": 518880768.0, "75": 518880768.0, + "76": 518880768.0, + "77": 518880768.0, + "78": 518880768.0, + "79": 518880768.0, "80": 518880768.0, + "81": 518880768.0, + "82": 518880768.0, + "83": 518880768.0, + "84": 518880768.0, "85": 518880768.0, + "86": 518880768.0, + "87": 518880768.0, + "88": 518880768.0, + "89": 518880768.0, "90": 518880768.0, + "91": 518880768.0, + "92": 518880768.0, + "93": 518880768.0, + "94": 518880768.0, "95": 518880768.0, + "96": 518880768.0, + "97": 518880768.0, + "98": 518880768.0, + "99": 518880768.0, "100": 518880768.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { "1": 4511150592.0, + "2": 4544705536.0, + "3": 4544705536.0, + "4": 4544705536.0, "5": 4544705536.0, + "6": 4544705536.0, + "7": 4544705536.0, + "8": 4544705536.0, + "9": 4544705536.0, "10": 4544705536.0, + "11": 4544705536.0, + "12": 4544705536.0, + "13": 4544705536.0, + "14": 4544705536.0, "15": 4544705536.0, + "16": 4544705536.0, + "17": 4544705536.0, + "18": 4544705536.0, + "19": 4607767040.0, "20": 4607767040.0, + "21": 4607767040.0, + "22": 4607767040.0, + "23": 4607767040.0, + "24": 4607767040.0, "25": 4607767040.0, + "26": 4607767040.0, + "27": 4607767040.0, + "28": 4607767040.0, + "29": 4607767040.0, "30": 4607767040.0, + "31": 4607767040.0, + "32": 4607767040.0, + "33": 4607767040.0, + "34": 4607767040.0, "35": 4607767040.0, + "36": 4607767040.0, + "37": 4607767040.0, + "38": 4607767040.0, + "39": 4607767040.0, "40": 4607767040.0, + "41": 4607767040.0, + "42": 4607767040.0, + "43": 4607767040.0, + "44": 4607767040.0, "45": 4607767040.0, + "46": 4607767040.0, + "47": 4607767040.0, + "48": 4607767040.0, + "49": 4607767040.0, "50": 4607767040.0, + "51": 4607767040.0, + "52": 4607767040.0, + "53": 4607767040.0, + "54": 4607767040.0, "55": 4607767040.0, + "56": 4607767040.0, + "57": 4607767040.0, + "58": 4607767040.0, + "59": 4607767040.0, "60": 4607767040.0, + "61": 4607767040.0, + "62": 4607767040.0, + "63": 4607767040.0, + "64": 4607767040.0, "65": 4607767040.0, + "66": 4607767040.0, + "67": 4607767040.0, + "68": 4607767040.0, + "69": 4607767040.0, "70": 4607767040.0, + "71": 4607767040.0, + "72": 4607767040.0, + "73": 4607767040.0, + "74": 4607767040.0, "75": 4607767040.0, + "76": 4607767040.0, + "77": 4607767040.0, + "78": 4607767040.0, + "79": 4607767040.0, "80": 4607767040.0, + "81": 4607767040.0, + "82": 4607767040.0, + "83": 4607767040.0, + "84": 4607767040.0, "85": 4607767040.0, + "86": 4607767040.0, + "87": 4607767040.0, + "88": 4607767040.0, + "89": 4607767040.0, "90": 4607767040.0, + "91": 4607767040.0, + "92": 4607767040.0, + "93": 4607767040.0, + "94": 4607767040.0, "95": 4607767040.0, + "96": 4607767040.0, + "97": 4607767040.0, + "98": 4607767040.0, + "99": 4607767040.0, "100": 4607767040.0 } }, "iteration-time": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 9.36364, - "5": 0.11207, - "10": 0.09807, - "15": 0.11189, - "20": 0.12039, - "25": 0.10422, - "30": 0.10453, - "35": 0.10312, - "40": 0.10542, - "45": 0.10362, - "50": 0.10448, - "55": 0.10212, - "60": 0.10194, - "65": 0.10259, - "70": 0.10183, - "75": 0.10119, - "80": 0.10042, - "85": 0.10084, - "90": 0.10028, - "95": 0.10004, - "100": 0.09998 + "1": 4.2592, + "2": 0.13544, + "3": 0.09999, + "4": 0.08273, + "5": 0.08157, + "6": 0.08266, + "7": 0.08111, + "8": 0.08184, + "9": 0.08109, + "10": 0.08281, + "11": 0.08041, + "12": 0.08186, + "13": 0.08098, + "14": 0.08513, + "15": 0.0821, + "16": 0.08144, + "17": 0.08052, + "18": 0.13091, + "19": 0.08819, + "20": 0.08804, + "21": 0.08818, + "22": 0.08404, + "23": 0.08729, + "24": 0.08805, + "25": 0.08736, + "26": 0.08811, + "27": 0.08757, + "28": 0.08887, + "29": 0.08961, + "30": 0.0883, + "31": 0.08788, + "32": 0.08884, + "33": 0.08833, + "34": 0.08811, + "35": 0.08831, + "36": 0.08859, + "37": 0.08809, + "38": 0.08879, + "39": 0.08769, + "40": 0.0883, + "41": 0.08757, + "42": 0.08797, + "43": 0.08669, + "44": 0.08751, + "45": 0.08893, + "46": 0.08862, + "47": 0.08698, + "48": 0.089, + "49": 0.08841, + "50": 0.08813, + "51": 0.09282, + "52": 0.08991, + "53": 0.08846, + "54": 0.08878, + "55": 0.08875, + "56": 0.0897, + "57": 0.0888, + "58": 0.08814, + "59": 0.08821, + "60": 0.08782, + "61": 0.0888, + "62": 0.08762, + "63": 0.08743, + "64": 0.0879, + "65": 0.08877, + "66": 0.08656, + "67": 0.08681, + "68": 0.08654, + "69": 0.08705, + "70": 0.08667, + "71": 0.08696, + "72": 0.08664, + "73": 0.08625, + "74": 0.08667, + "75": 0.08656, + "76": 0.08557, + "77": 0.08578, + "78": 0.08586, + "79": 0.08584, + "80": 0.08576, + "81": 0.08653, + "82": 0.08572, + "83": 0.08613, + "84": 0.08557, + "85": 0.08616, + "86": 0.08608, + "87": 0.08563, + "88": 0.08581, + "89": 0.08591, + "90": 0.08593, + "91": 0.08543, + "92": 0.08641, + "93": 0.08635, + "94": 0.08549, + "95": 0.08554, + "96": 0.08487, + "97": 0.08505, + "98": 0.08522, + "99": 0.08533, + "100": 0.08544 } }, "num-zeros": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", "15": "nan", - "20": 1143.0, - "25": 1185.0, - "30": 1375.0, + "16": "nan", + "17": "nan", + "18": 1208.0, + "19": 1541.0, + "20": 1173.0, + "21": 1368.0, + "22": "nan", + "23": 1317.0, + "24": 1131.0, + "25": 1119.0, + "26": 1067.0, + "27": 1300.0, + "28": 1549.0, + "29": 1501.0, + "30": 1354.0, + "31": 1044.0, + "32": 1202.0, + "33": 1503.0, + "34": 1276.0, "35": 1207.0, - "40": 1423.0, - "45": 1344.0, - "50": 1559.0, - "55": 1573.0, - "60": 1564.0, - "65": 1496.0, - "70": 1898.0, - "75": 1893.0, - "80": 2134.0, - "85": 2231.0, - "90": 2378.0, - "95": 2285.0, - "100": 2233.0 + "36": 1217.0, + "37": 1430.0, + "38": 1473.0, + "39": 1525.0, + "40": 1413.0, + "41": 1441.0, + "42": 1487.0, + "43": 1151.0, + "44": 1217.0, + "45": 1314.0, + "46": 1265.0, + "47": 1868.0, + "48": 1314.0, + "49": 1105.0, + "50": 1476.0, + "51": 1508.0, + "52": 1400.0, + "53": 1740.0, + "54": 1498.0, + "55": 1551.0, + "56": 1363.0, + "57": 1465.0, + "58": 1610.0, + "59": 1574.0, + "60": 1599.0, + "61": 1727.0, + "62": 1804.0, + "63": 1590.0, + "64": 1813.0, + "65": 1398.0, + "66": 1738.0, + "67": 1536.0, + "68": 1764.0, + "69": 1781.0, + "70": 1926.0, + "71": 1950.0, + "72": 1461.0, + "73": 1985.0, + "74": 1345.0, + "75": 1871.0, + "76": 1732.0, + "77": 2086.0, + "78": 2075.0, + "79": 1992.0, + "80": 2260.0, + "81": 2300.0, + "82": 2290.0, + "83": 1774.0, + "84": 2172.0, + "85": 2216.0, + "86": 2038.0, + "87": 2741.0, + "88": 2079.0, + "89": 2349.0, + "90": 2315.0, + "91": 1875.0, + "92": 2611.0, + "93": 2053.0, + "94": 2220.0, + "95": 2296.0, + "96": 2665.0, + "97": 2516.0, + "98": 2549.0, + "99": 2378.0, + "100": 2257.0 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts.json new file mode 100644 index 00000000000..93d8ec41a7b --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.83572, + "2": 10.8327, + "3": 10.83034, + "4": 10.80223, + "5": 10.85556, + "6": 10.86667, + "7": 10.84637, + "8": 10.84251, + "9": 10.85429, + "10": 10.80752, + "11": 10.88921, + "12": 10.87043, + "13": 10.87395, + "14": 10.88615, + "15": 10.79982, + "16": 10.81152, + "17": 10.78946, + "18": 10.82078, + "19": 10.80788, + "20": 10.71283, + "21": 10.68647, + "22": 10.54255, + "23": 10.71926, + "24": 10.58463, + "25": 10.54402, + "26": 10.61055, + "27": 10.61018, + "28": 10.57117, + "29": 10.59062, + "30": 10.35312, + "31": 10.0924, + "32": 10.46991, + "33": 10.45536, + "34": 10.19985, + "35": 10.26269, + "36": 10.21197, + "37": 10.33645, + "38": 10.17551, + "39": 10.39309, + "40": 10.07155, + "41": 10.13767, + "42": 10.19633, + "43": 9.81246, + "44": 9.93615, + "45": 9.81584, + "46": 9.80638, + "47": 10.12803, + "48": 9.82444, + "49": 9.50618, + "50": 9.89067 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1564.0, + "2": 1660.0, + "3": 1617.0, + "4": 1711.0, + "5": 1840.0, + "6": 1754.0, + "7": 1793.0, + "8": 1599.0, + "9": 1894.0, + "10": 1424.0, + "11": 1793.0, + "12": 1727.0, + "13": 1856.0, + "14": 1761.0, + "15": 1915.0, + "16": 1859.0, + "17": 1727.0, + "18": 1585.0, + "19": 1747.0, + "20": 1655.0, + "21": 1783.0, + "22": 1671.0, + "23": 2028.0, + "24": 1698.0, + "25": 1618.0, + "26": 1708.0, + "27": 1804.0, + "28": 1978.0, + "29": 1950.0, + "30": 1911.0, + "31": 1582.0, + "32": 1852.0, + "33": 2049.0, + "34": 1912.0, + "35": 1999.0, + "36": 1972.0, + "37": 2236.0, + "38": 2294.0, + "39": 2209.0, + "40": 2171.0, + "41": 2340.0, + "42": 2153.0, + "43": 2015.0, + "44": 2122.0, + "45": 2123.0, + "46": 2194.0, + "47": 2463.0, + "48": 2382.0, + "49": 2300.0, + "50": 2397.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 952847360.0, + "2": 952847360.0, + "3": 952847360.0, + "4": 952847360.0, + "5": 952847360.0, + "6": 952847360.0, + "7": 952847360.0, + "8": 952847360.0, + "9": 952847360.0, + "10": 952847360.0, + "11": 952847360.0, + "12": 952847360.0, + "13": 952847360.0, + "14": 952847360.0, + "15": 952847360.0, + "16": 952847360.0, + "17": 952847360.0, + "18": 952847360.0, + "19": 952847360.0, + "20": 952847360.0, + "21": 952847360.0, + "22": 952847360.0, + "23": 952847360.0, + "24": 952847360.0, + "25": 952847360.0, + "26": 952847360.0, + "27": 952847360.0, + "28": 952847360.0, + "29": 952847360.0, + "30": 952847360.0, + "31": 952847360.0, + "32": 952847360.0, + "33": 952847360.0, + "34": 952847360.0, + "35": 952847360.0, + "36": 952847360.0, + "37": 952847360.0, + "38": 952847360.0, + "39": 952847360.0, + "40": 952847360.0, + "41": 952847360.0, + "42": 952847360.0, + "43": 952847360.0, + "44": 952847360.0, + "45": 952847360.0, + "46": 952847360.0, + "47": 952847360.0, + "48": 952847360.0, + "49": 952847360.0, + "50": 952847360.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3275808768.0, + "2": 3637371904.0, + "3": 3637371904.0, + "4": 3637371904.0, + "5": 3637371904.0, + "6": 3637371904.0, + "7": 3637371904.0, + "8": 3637371904.0, + "9": 3637371904.0, + "10": 3637371904.0, + "11": 3637371904.0, + "12": 3637371904.0, + "13": 3637371904.0, + "14": 3637371904.0, + "15": 3637371904.0, + "16": 3637371904.0, + "17": 3637371904.0, + "18": 3637371904.0, + "19": 3637371904.0, + "20": 3637371904.0, + "21": 3637371904.0, + "22": 3637371904.0, + "23": 3637371904.0, + "24": 3637371904.0, + "25": 3637371904.0, + "26": 3637371904.0, + "27": 3637371904.0, + "28": 3637371904.0, + "29": 3637371904.0, + "30": 3637371904.0, + "31": 3637371904.0, + "32": 3637371904.0, + "33": 3637371904.0, + "34": 3637371904.0, + "35": 3637371904.0, + "36": 3637371904.0, + "37": 3637371904.0, + "38": 3637371904.0, + "39": 3637371904.0, + "40": 3637371904.0, + "41": 3637371904.0, + "42": 3637371904.0, + "43": 3637371904.0, + "44": 3637371904.0, + "45": 3637371904.0, + "46": 3637371904.0, + "47": 3637371904.0, + "48": 3637371904.0, + "49": 3637371904.0, + "50": 3637371904.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 5.51421, + "2": 0.1601, + "3": 0.13443, + "4": 0.13403, + "5": 0.13289, + "6": 0.13124, + "7": 0.13139, + "8": 0.13164, + "9": 0.12936, + "10": 0.1315, + "11": 0.13031, + "12": 0.12986, + "13": 0.13068, + "14": 0.13035, + "15": 0.12992, + "16": 0.12988, + "17": 0.12998, + "18": 0.13022, + "19": 0.13175, + "20": 0.13299, + "21": 0.13082, + "22": 0.13147, + "23": 0.13039, + "24": 0.13108, + "25": 0.13113, + "26": 0.1301, + "27": 0.12969, + "28": 0.12939, + "29": 0.13157, + "30": 0.13294, + "31": 0.132, + "32": 0.13107, + "33": 0.13092, + "34": 0.12992, + "35": 0.13029, + "36": 0.13044, + "37": 0.13082, + "38": 0.1305, + "39": 0.13098, + "40": 0.13116, + "41": 0.13121, + "42": 0.13136, + "43": 0.13117, + "44": 0.13317, + "45": 0.13163, + "46": 0.1312, + "47": 0.13036, + "48": 0.13105, + "49": 0.13091, + "50": 0.1304 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts_dgx_a100.json index 45cbf767489..bdc8c7f9895 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2/golden_values_lts_dgx_a100.json @@ -2,91 +2,286 @@ "lm loss": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.8337, - "5": 10.85677, - "10": 10.80851, - "15": 10.79856, - "20": 10.71089, - "25": 10.5436, - "30": 10.35069, - "35": 10.26074, + "1": 10.83572, + "2": 10.8327, + "3": 10.83034, + "4": 10.80223, + "5": 10.85556, + "6": 10.86667, + "7": 10.84637, + "8": 10.84251, + "9": 10.85429, + "10": 10.80752, + "11": 10.88921, + "12": 10.87043, + "13": 10.87395, + "14": 10.88615, + "15": 10.79982, + "16": 10.81152, + "17": 10.78946, + "18": 10.82078, + "19": 10.80788, + "20": 10.71283, + "21": 10.68647, + "22": 10.54255, + "23": 10.71926, + "24": 10.58463, + "25": 10.54402, + "26": 10.61055, + "27": 10.61018, + "28": 10.57117, + "29": 10.59062, + "30": 10.35312, + "31": 10.0924, + "32": 10.46991, + "33": 10.45536, + "34": 10.19985, + "35": 10.26269, + "36": 10.21197, + "37": 10.33645, + "38": 10.17551, + "39": 10.39309, "40": 10.07155, - "45": 9.81507, - "50": 9.88952 + "41": 10.13767, + "42": 10.19633, + "43": 9.81246, + "44": 9.93615, + "45": 9.81584, + "46": 9.80638, + "47": 10.12803, + "48": 9.82444, + "49": 9.50618, + "50": 9.89067 } }, "num-zeros": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 1563.0, - "5": 1808.0, - "10": 1377.0, - "15": 1872.0, - "20": 1675.0, - "25": 1549.0, - "30": 2043.0, - "35": 2002.0, - "40": 2311.0, - "45": 2149.0, - "50": 2368.0 + "1": 1564.0, + "2": 1660.0, + "3": 1617.0, + "4": 1711.0, + "5": 1840.0, + "6": 1754.0, + "7": 1793.0, + "8": 1599.0, + "9": 1894.0, + "10": 1424.0, + "11": 1793.0, + "12": 1727.0, + "13": 1856.0, + "14": 1761.0, + "15": 1915.0, + "16": 1859.0, + "17": 1727.0, + "18": 1585.0, + "19": 1747.0, + "20": 1655.0, + "21": 1783.0, + "22": 1671.0, + "23": 2028.0, + "24": 1698.0, + "25": 1618.0, + "26": 1708.0, + "27": 1804.0, + "28": 1978.0, + "29": 1950.0, + "30": 1911.0, + "31": 1582.0, + "32": 1852.0, + "33": 2049.0, + "34": 1912.0, + "35": 1999.0, + "36": 1972.0, + "37": 2236.0, + "38": 2294.0, + "39": 2209.0, + "40": 2171.0, + "41": 2340.0, + "42": 2153.0, + "43": 2015.0, + "44": 2122.0, + "45": 2123.0, + "46": 2194.0, + "47": 2463.0, + "48": 2382.0, + "49": 2300.0, + "50": 2397.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 948653056.0, - "5": 948653056.0, - "10": 948653056.0, - "15": 948653056.0, - "20": 948653056.0, - "25": 948653056.0, - "30": 948653056.0, - "35": 948653056.0, - "40": 948653056.0, - "45": 948653056.0, - "50": 948653056.0 + "1": 952847360.0, + "2": 952847360.0, + "3": 952847360.0, + "4": 952847360.0, + "5": 952847360.0, + "6": 952847360.0, + "7": 952847360.0, + "8": 952847360.0, + "9": 952847360.0, + "10": 952847360.0, + "11": 952847360.0, + "12": 952847360.0, + "13": 952847360.0, + "14": 952847360.0, + "15": 952847360.0, + "16": 952847360.0, + "17": 952847360.0, + "18": 952847360.0, + "19": 952847360.0, + "20": 952847360.0, + "21": 952847360.0, + "22": 952847360.0, + "23": 952847360.0, + "24": 952847360.0, + "25": 952847360.0, + "26": 952847360.0, + "27": 952847360.0, + "28": 952847360.0, + "29": 952847360.0, + "30": 952847360.0, + "31": 952847360.0, + "32": 952847360.0, + "33": 952847360.0, + "34": 952847360.0, + "35": 952847360.0, + "36": 952847360.0, + "37": 952847360.0, + "38": 952847360.0, + "39": 952847360.0, + "40": 952847360.0, + "41": 952847360.0, + "42": 952847360.0, + "43": 952847360.0, + "44": 952847360.0, + "45": 952847360.0, + "46": 952847360.0, + "47": 952847360.0, + "48": 952847360.0, + "49": 952847360.0, + "50": 952847360.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 3275284480.0, - "5": 3632653312.0, - "10": 3632653312.0, - "15": 3632653312.0, - "20": 3632653312.0, - "25": 3632653312.0, - "30": 3632653312.0, - "35": 3632653312.0, - "40": 3632653312.0, - "45": 3632653312.0, - "50": 3632653312.0 + "1": 3275808768.0, + "2": 3637371904.0, + "3": 3637371904.0, + "4": 3637371904.0, + "5": 3637371904.0, + "6": 3637371904.0, + "7": 3637371904.0, + "8": 3637371904.0, + "9": 3637371904.0, + "10": 3637371904.0, + "11": 3637371904.0, + "12": 3637371904.0, + "13": 3637371904.0, + "14": 3637371904.0, + "15": 3637371904.0, + "16": 3637371904.0, + "17": 3637371904.0, + "18": 3637371904.0, + "19": 3637371904.0, + "20": 3637371904.0, + "21": 3637371904.0, + "22": 3637371904.0, + "23": 3637371904.0, + "24": 3637371904.0, + "25": 3637371904.0, + "26": 3637371904.0, + "27": 3637371904.0, + "28": 3637371904.0, + "29": 3637371904.0, + "30": 3637371904.0, + "31": 3637371904.0, + "32": 3637371904.0, + "33": 3637371904.0, + "34": 3637371904.0, + "35": 3637371904.0, + "36": 3637371904.0, + "37": 3637371904.0, + "38": 3637371904.0, + "39": 3637371904.0, + "40": 3637371904.0, + "41": 3637371904.0, + "42": 3637371904.0, + "43": 3637371904.0, + "44": 3637371904.0, + "45": 3637371904.0, + "46": 3637371904.0, + "47": 3637371904.0, + "48": 3637371904.0, + "49": 3637371904.0, + "50": 3637371904.0 } }, "iteration-time": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 11.60457, - "5": 0.13759, - "10": 0.13772, - "15": 0.14601, - "20": 0.14893, - "25": 0.14839, - "30": 0.14809, - "35": 0.14777, - "40": 0.14825, - "45": 0.14788, - "50": 0.14852 + "1": 5.86972, + "2": 0.17288, + "3": 0.13781, + "4": 0.13826, + "5": 0.13569, + "6": 0.13252, + "7": 0.1323, + "8": 0.13208, + "9": 0.13237, + "10": 0.13177, + "11": 0.13164, + "12": 0.135, + "13": 0.13389, + "14": 0.13431, + "15": 0.13376, + "16": 0.1342, + "17": 0.13348, + "18": 0.13307, + "19": 0.13389, + "20": 0.13476, + "21": 0.13346, + "22": 0.13333, + "23": 0.13336, + "24": 0.13304, + "25": 0.13373, + "26": 0.13283, + "27": 0.1331, + "28": 0.13314, + "29": 0.13299, + "30": 0.13362, + "31": 0.13392, + "32": 0.13417, + "33": 0.13406, + "34": 0.13351, + "35": 0.13357, + "36": 0.13345, + "37": 0.13422, + "38": 0.1339, + "39": 0.13419, + "40": 0.13437, + "41": 0.13425, + "42": 0.13364, + "43": 0.13389, + "44": 0.13482, + "45": 0.13461, + "46": 0.134, + "47": 0.13363, + "48": 0.13416, + "49": 0.13386, + "50": 0.13343 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts.json new file mode 100644 index 00000000000..f6017e22e9a --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.83568, + "2": 10.83266, + "3": 10.83151, + "4": 10.80343, + "5": 10.8567, + "6": 10.86778, + "7": 10.84836, + "8": 10.84624, + "9": 10.85924, + "10": 10.81478, + "11": 10.89821, + "12": 10.88433, + "13": 10.88963, + "14": 10.90075, + "15": 10.85098, + "16": 10.86603, + "17": 10.85455, + "18": 10.88507, + "19": 10.8773, + "20": 10.85865, + "21": 10.85654, + "22": 10.79685, + "23": 10.88724, + "24": 10.82649, + "25": 10.81343, + "26": 10.82705, + "27": 10.84612, + "28": 10.84227, + "29": 10.85329, + "30": 10.74969, + "31": 10.63041, + "32": 10.79004, + "33": 10.77234, + "34": 10.65722, + "35": 10.65857, + "36": 10.61583, + "37": 10.67536, + "38": 10.58101, + "39": 10.69083, + "40": 10.50359, + "41": 10.52777, + "42": 10.55371, + "43": 10.28636, + "44": 10.36369, + "45": 10.2738, + "46": 10.24567, + "47": 10.45103, + "48": 10.23707, + "49": 9.99555, + "50": 10.25588, + "51": 10.20129, + "52": 10.10855, + "53": 10.34609, + "54": 10.24857, + "55": 10.18782, + "56": 9.95521, + "57": 9.81221, + "58": 10.10875, + "59": 9.8863, + "60": 9.80901, + "61": 9.94824, + "62": 10.1999, + "63": 9.64431, + "64": 9.9951, + "65": 9.24475, + "66": 9.90917, + "67": 9.59735, + "68": 9.97285, + "69": 9.96332, + "70": 9.91039, + "71": 9.78596, + "72": 9.77263, + "73": 9.6618, + "74": 9.16289, + "75": 9.5812, + "76": 9.26137, + "77": 10.17615, + "78": 9.85644, + "79": 9.50644, + "80": 9.54102, + "81": 9.61313, + "82": 9.80669, + "83": 9.44696, + "84": 9.52782, + "85": 9.72633, + "86": 9.19099, + "87": 9.68736, + "88": 9.85216, + "89": 9.71335, + "90": 9.90316, + "91": 9.46064, + "92": 9.46059, + "93": 9.19418, + "94": 8.93434, + "95": 9.60258, + "96": 9.61852, + "97": 9.39594, + "98": 9.76012, + "99": 8.98668, + "100": 9.49405 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 684610560.0, + "2": 685659136.0, + "3": 685659136.0, + "4": 685659136.0, + "5": 685659136.0, + "6": 685659136.0, + "7": 685659136.0, + "8": 685659136.0, + "9": 685659136.0, + "10": 685659136.0, + "11": 685659136.0, + "12": 685659136.0, + "13": 685659136.0, + "14": 685659136.0, + "15": 685659136.0, + "16": 685659136.0, + "17": 1043027456.0, + "18": 1043027456.0, + "19": 1043027456.0, + "20": 1043027456.0, + "21": 1043027456.0, + "22": 1043027456.0, + "23": 1043027456.0, + "24": 1043027456.0, + "25": 1043027456.0, + "26": 1043027456.0, + "27": 1043027456.0, + "28": 1043027456.0, + "29": 1043027456.0, + "30": 1043027456.0, + "31": 1043027456.0, + "32": 1043027456.0, + "33": 1043027456.0, + "34": 1043027456.0, + "35": 1043027456.0, + "36": 1043027456.0, + "37": 1043027456.0, + "38": 1043027456.0, + "39": 1043027456.0, + "40": 1043027456.0, + "41": 1043027456.0, + "42": 1043027456.0, + "43": 1043027456.0, + "44": 1043027456.0, + "45": 1043027456.0, + "46": 1043027456.0, + "47": 1043027456.0, + "48": 1043027456.0, + "49": 1043027456.0, + "50": 1043027456.0, + "51": 1043027456.0, + "52": 1043027456.0, + "53": 1043027456.0, + "54": 1043027456.0, + "55": 1043027456.0, + "56": 1043027456.0, + "57": 1043027456.0, + "58": 1043027456.0, + "59": 1043027456.0, + "60": 1043027456.0, + "61": 1043027456.0, + "62": 1043027456.0, + "63": 1043027456.0, + "64": 1043027456.0, + "65": 1043027456.0, + "66": 1043027456.0, + "67": 1043027456.0, + "68": 1043027456.0, + "69": 1043027456.0, + "70": 1043027456.0, + "71": 1043027456.0, + "72": 1043027456.0, + "73": 1043027456.0, + "74": 1043027456.0, + "75": 1043027456.0, + "76": 1043027456.0, + "77": 1043027456.0, + "78": 1043027456.0, + "79": 1043027456.0, + "80": 1043027456.0, + "81": 1043027456.0, + "82": 1043027456.0, + "83": 1043027456.0, + "84": 1043027456.0, + "85": 1043027456.0, + "86": 1043027456.0, + "87": 1043027456.0, + "88": 1043027456.0, + "89": 1043027456.0, + "90": 1043027456.0, + "91": 1043027456.0, + "92": 1043027456.0, + "93": 1043027456.0, + "94": 1043027456.0, + "95": 1043027456.0, + "96": 1043027456.0, + "97": 1043027456.0, + "98": 1043027456.0, + "99": 1043027456.0, + "100": 1043027456.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 3187304960.0, + "2": 3187305472.0, + "3": 3187305472.0, + "4": 3187305472.0, + "5": 3187305472.0, + "6": 3187305472.0, + "7": 3187305472.0, + "8": 3187305472.0, + "9": 3187305472.0, + "10": 3187305472.0, + "11": 3187305472.0, + "12": 3187305472.0, + "13": 3187305472.0, + "14": 3187305472.0, + "15": 3187305472.0, + "16": 3187305472.0, + "17": 3187305472.0, + "18": 3544935936.0, + "19": 3544935936.0, + "20": 3544935936.0, + "21": 3544935936.0, + "22": 3544935936.0, + "23": 3544935936.0, + "24": 3544935936.0, + "25": 3544935936.0, + "26": 3544935936.0, + "27": 3544935936.0, + "28": 3544935936.0, + "29": 3544935936.0, + "30": 3544935936.0, + "31": 3544935936.0, + "32": 3544935936.0, + "33": 3544935936.0, + "34": 3544935936.0, + "35": 3544935936.0, + "36": 3544935936.0, + "37": 3544935936.0, + "38": 3544935936.0, + "39": 3544935936.0, + "40": 3544935936.0, + "41": 3544935936.0, + "42": 3544935936.0, + "43": 3544935936.0, + "44": 3544935936.0, + "45": 3544935936.0, + "46": 3544935936.0, + "47": 3544935936.0, + "48": 3544935936.0, + "49": 3544935936.0, + "50": 3544935936.0, + "51": 3544935936.0, + "52": 3544935936.0, + "53": 3544935936.0, + "54": 3544935936.0, + "55": 3544935936.0, + "56": 3544935936.0, + "57": 3544935936.0, + "58": 3544935936.0, + "59": 3544935936.0, + "60": 3544935936.0, + "61": 3544935936.0, + "62": 3544935936.0, + "63": 3544935936.0, + "64": 3544935936.0, + "65": 3544935936.0, + "66": 3544935936.0, + "67": 3544935936.0, + "68": 3544935936.0, + "69": 3544935936.0, + "70": 3544935936.0, + "71": 3544935936.0, + "72": 3544935936.0, + "73": 3544935936.0, + "74": 3544935936.0, + "75": 3544935936.0, + "76": 3544935936.0, + "77": 3544935936.0, + "78": 3544935936.0, + "79": 3544935936.0, + "80": 3544935936.0, + "81": 3544935936.0, + "82": 3544935936.0, + "83": 3544935936.0, + "84": 3544935936.0, + "85": 3544935936.0, + "86": 3544935936.0, + "87": 3544935936.0, + "88": 3544935936.0, + "89": 3544935936.0, + "90": 3544935936.0, + "91": 3544935936.0, + "92": 3544935936.0, + "93": 3544935936.0, + "94": 3544935936.0, + "95": 3544935936.0, + "96": 3544935936.0, + "97": 3544935936.0, + "98": 3544935936.0, + "99": 3544935936.0, + "100": 3544935936.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 5.71216, + "2": 0.14973, + "3": 0.11823, + "4": 0.11589, + "5": 0.115, + "6": 0.11544, + "7": 0.11494, + "8": 0.11629, + "9": 0.11558, + "10": 0.11559, + "11": 0.11587, + "12": 0.11557, + "13": 0.11565, + "14": 0.11485, + "15": 0.11461, + "16": 0.11592, + "17": 0.17863, + "18": 0.13323, + "19": 0.12474, + "20": 0.12384, + "21": 0.12332, + "22": 0.11528, + "23": 0.12299, + "24": 0.12347, + "25": 0.12391, + "26": 0.12403, + "27": 0.12332, + "28": 0.12373, + "29": 0.12271, + "30": 0.12236, + "31": 0.12244, + "32": 0.12402, + "33": 0.12212, + "34": 0.12202, + "35": 0.1228, + "36": 0.12235, + "37": 0.12236, + "38": 0.12224, + "39": 0.12198, + "40": 0.12302, + "41": 0.12287, + "42": 0.1224, + "43": 0.12222, + "44": 0.12187, + "45": 0.12269, + "46": 0.1224, + "47": 0.12251, + "48": 0.12187, + "49": 0.12239, + "50": 0.12176, + "51": 0.12901, + "52": 0.12249, + "53": 0.12142, + "54": 0.12162, + "55": 0.12146, + "56": 0.12102, + "57": 0.12365, + "58": 0.12178, + "59": 0.12229, + "60": 0.12129, + "61": 0.12124, + "62": 0.12162, + "63": 0.12218, + "64": 0.12145, + "65": 0.1222, + "66": 0.12127, + "67": 0.12238, + "68": 0.12143, + "69": 0.12118, + "70": 0.12095, + "71": 0.12155, + "72": 0.12227, + "73": 0.12265, + "74": 0.1222, + "75": 0.1232, + "76": 0.12175, + "77": 0.12226, + "78": 0.12166, + "79": 0.12163, + "80": 0.12235, + "81": 0.12164, + "82": 0.1221, + "83": 0.12172, + "84": 0.12179, + "85": 0.1221, + "86": 0.12134, + "87": 0.12203, + "88": 0.12166, + "89": 0.12224, + "90": 0.1218, + "91": 0.12135, + "92": 0.12216, + "93": 0.12267, + "94": 0.12146, + "95": 0.1222, + "96": 0.12287, + "97": 0.12296, + "98": 0.12234, + "99": 0.12184, + "100": 0.12221 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": "nan", + "17": 2249.0, + "18": 2165.0, + "19": 2362.0, + "20": 1953.0, + "21": 1898.0, + "22": "nan", + "23": 2371.0, + "24": 1984.0, + "25": 1818.0, + "26": 1980.0, + "27": 2078.0, + "28": 2467.0, + "29": 2395.0, + "30": 2298.0, + "31": 1682.0, + "32": 2236.0, + "33": 2192.0, + "34": 1800.0, + "35": 2083.0, + "36": 2139.0, + "37": 2498.0, + "38": 2218.0, + "39": 2642.0, + "40": 2287.0, + "41": 2344.0, + "42": 2304.0, + "43": 2098.0, + "44": 2107.0, + "45": 2243.0, + "46": 1960.0, + "47": 2729.0, + "48": 2418.0, + "49": 1910.0, + "50": 2426.0, + "51": 2335.0, + "52": 2407.0, + "53": 2888.0, + "54": 2477.0, + "55": 2440.0, + "56": 2286.0, + "57": 2340.0, + "58": 2652.0, + "59": 2321.0, + "60": 2493.0, + "61": 2812.0, + "62": 2711.0, + "63": 2367.0, + "64": 2802.0, + "65": 2411.0, + "66": 2869.0, + "67": 2577.0, + "68": 2859.0, + "69": 2524.0, + "70": 3119.0, + "71": 2926.0, + "72": 2251.0, + "73": 2929.0, + "74": 2110.0, + "75": 2884.0, + "76": 2992.0, + "77": 3380.0, + "78": 3484.0, + "79": 3533.0, + "80": 3549.0, + "81": 3616.0, + "82": 3347.0, + "83": 3124.0, + "84": 3276.0, + "85": 3721.0, + "86": 3207.0, + "87": 3941.0, + "88": 3250.0, + "89": 3863.0, + "90": 3452.0, + "91": 2630.0, + "92": 3431.0, + "93": 3123.0, + "94": 3671.0, + "95": 3340.0, + "96": 3874.0, + "97": 3519.0, + "98": 3727.0, + "99": 3447.0, + "100": 3338.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json index 56c78e6ebf6..094be8516a7 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp2_resume_torch_dist/golden_values_lts_dgx_a100.json @@ -2,141 +2,536 @@ "lm loss": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.8337, - "5": 10.85789, - "10": 10.81578, - "15": 10.84971, - "20": 10.85686, - "25": 10.81326, - "30": 10.74663, - "35": 10.65647, - "40": 10.50351, - "45": 10.27258, - "50": 10.25445, - "55": 10.18699, - "60": 9.8098, - "65": 9.24409, - "70": 9.91024, - "75": 9.58173, - "80": 9.54167, - "85": 9.7262, - "90": 9.90242, - "95": 9.60208, - "100": 9.49424 + "1": 10.83568, + "2": 10.83266, + "3": 10.83151, + "4": 10.80343, + "5": 10.8567, + "6": 10.86778, + "7": 10.84836, + "8": 10.84624, + "9": 10.85924, + "10": 10.81478, + "11": 10.89821, + "12": 10.88433, + "13": 10.88963, + "14": 10.90075, + "15": 10.85098, + "16": 10.86603, + "17": 10.85455, + "18": 10.88507, + "19": 10.8773, + "20": 10.85865, + "21": 10.85654, + "22": 10.79685, + "23": 10.88724, + "24": 10.82649, + "25": 10.81343, + "26": 10.82705, + "27": 10.84612, + "28": 10.84227, + "29": 10.85329, + "30": 10.74969, + "31": 10.63041, + "32": 10.79004, + "33": 10.77234, + "34": 10.65722, + "35": 10.65857, + "36": 10.61583, + "37": 10.67536, + "38": 10.58101, + "39": 10.69083, + "40": 10.50359, + "41": 10.52777, + "42": 10.55371, + "43": 10.28636, + "44": 10.36369, + "45": 10.2738, + "46": 10.24567, + "47": 10.45103, + "48": 10.23707, + "49": 9.99555, + "50": 10.25588, + "51": 10.20129, + "52": 10.10855, + "53": 10.34609, + "54": 10.24857, + "55": 10.18782, + "56": 9.95521, + "57": 9.81221, + "58": 10.10875, + "59": 9.8863, + "60": 9.80901, + "61": 9.94824, + "62": 10.1999, + "63": 9.64431, + "64": 9.9951, + "65": 9.24475, + "66": 9.90917, + "67": 9.59735, + "68": 9.97285, + "69": 9.96332, + "70": 9.91039, + "71": 9.78596, + "72": 9.77263, + "73": 9.6618, + "74": 9.16289, + "75": 9.5812, + "76": 9.26137, + "77": 10.17615, + "78": 9.85644, + "79": 9.50644, + "80": 9.54102, + "81": 9.61313, + "82": 9.80669, + "83": 9.44696, + "84": 9.52782, + "85": 9.72633, + "86": 9.19099, + "87": 9.68736, + "88": 9.85216, + "89": 9.71335, + "90": 9.90316, + "91": 9.46064, + "92": 9.46059, + "93": 9.19418, + "94": 8.93434, + "95": 9.60258, + "96": 9.61852, + "97": 9.39594, + "98": 9.76012, + "99": 8.98668, + "100": 9.49405 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { "1": 684610560.0, - "5": 684610560.0, - "10": 684610560.0, - "15": 684610560.0, + "2": 685659136.0, + "3": 685659136.0, + "4": 685659136.0, + "5": 685659136.0, + "6": 685659136.0, + "7": 685659136.0, + "8": 685659136.0, + "9": 685659136.0, + "10": 685659136.0, + "11": 685659136.0, + "12": 685659136.0, + "13": 685659136.0, + "14": 685659136.0, + "15": 685659136.0, + "16": 685659136.0, + "17": 1043027456.0, + "18": 1043027456.0, + "19": 1043027456.0, "20": 1043027456.0, + "21": 1043027456.0, + "22": 1043027456.0, + "23": 1043027456.0, + "24": 1043027456.0, "25": 1043027456.0, + "26": 1043027456.0, + "27": 1043027456.0, + "28": 1043027456.0, + "29": 1043027456.0, "30": 1043027456.0, + "31": 1043027456.0, + "32": 1043027456.0, + "33": 1043027456.0, + "34": 1043027456.0, "35": 1043027456.0, + "36": 1043027456.0, + "37": 1043027456.0, + "38": 1043027456.0, + "39": 1043027456.0, "40": 1043027456.0, + "41": 1043027456.0, + "42": 1043027456.0, + "43": 1043027456.0, + "44": 1043027456.0, "45": 1043027456.0, + "46": 1043027456.0, + "47": 1043027456.0, + "48": 1043027456.0, + "49": 1043027456.0, "50": 1043027456.0, + "51": 1043027456.0, + "52": 1043027456.0, + "53": 1043027456.0, + "54": 1043027456.0, "55": 1043027456.0, + "56": 1043027456.0, + "57": 1043027456.0, + "58": 1043027456.0, + "59": 1043027456.0, "60": 1043027456.0, + "61": 1043027456.0, + "62": 1043027456.0, + "63": 1043027456.0, + "64": 1043027456.0, "65": 1043027456.0, + "66": 1043027456.0, + "67": 1043027456.0, + "68": 1043027456.0, + "69": 1043027456.0, "70": 1043027456.0, + "71": 1043027456.0, + "72": 1043027456.0, + "73": 1043027456.0, + "74": 1043027456.0, "75": 1043027456.0, + "76": 1043027456.0, + "77": 1043027456.0, + "78": 1043027456.0, + "79": 1043027456.0, "80": 1043027456.0, + "81": 1043027456.0, + "82": 1043027456.0, + "83": 1043027456.0, + "84": 1043027456.0, "85": 1043027456.0, + "86": 1043027456.0, + "87": 1043027456.0, + "88": 1043027456.0, + "89": 1043027456.0, "90": 1043027456.0, + "91": 1043027456.0, + "92": 1043027456.0, + "93": 1043027456.0, + "94": 1043027456.0, "95": 1043027456.0, + "96": 1043027456.0, + "97": 1043027456.0, + "98": 1043027456.0, + "99": 1043027456.0, "100": 1043027456.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { "1": 3187304960.0, + "2": 3187305472.0, + "3": 3187305472.0, + "4": 3187305472.0, "5": 3187305472.0, + "6": 3187305472.0, + "7": 3187305472.0, + "8": 3187305472.0, + "9": 3187305472.0, "10": 3187305472.0, + "11": 3187305472.0, + "12": 3187305472.0, + "13": 3187305472.0, + "14": 3187305472.0, "15": 3187305472.0, - "20": 3547033088.0, - "25": 3547033088.0, - "30": 3547033088.0, - "35": 3547033088.0, - "40": 3547033088.0, - "45": 3547033088.0, - "50": 3547033088.0, - "55": 3547033088.0, - "60": 3547033088.0, - "65": 3547033088.0, - "70": 3547033088.0, - "75": 3547033088.0, - "80": 3547033088.0, - "85": 3547033088.0, - "90": 3547033088.0, - "95": 3547033088.0, - "100": 3547033088.0 + "16": 3187305472.0, + "17": 3187305472.0, + "18": 3544935936.0, + "19": 3544935936.0, + "20": 3544935936.0, + "21": 3544935936.0, + "22": 3544935936.0, + "23": 3544935936.0, + "24": 3544935936.0, + "25": 3544935936.0, + "26": 3544935936.0, + "27": 3544935936.0, + "28": 3544935936.0, + "29": 3544935936.0, + "30": 3544935936.0, + "31": 3544935936.0, + "32": 3544935936.0, + "33": 3544935936.0, + "34": 3544935936.0, + "35": 3544935936.0, + "36": 3544935936.0, + "37": 3544935936.0, + "38": 3544935936.0, + "39": 3544935936.0, + "40": 3544935936.0, + "41": 3544935936.0, + "42": 3544935936.0, + "43": 3544935936.0, + "44": 3544935936.0, + "45": 3544935936.0, + "46": 3544935936.0, + "47": 3544935936.0, + "48": 3544935936.0, + "49": 3544935936.0, + "50": 3544935936.0, + "51": 3544935936.0, + "52": 3544935936.0, + "53": 3544935936.0, + "54": 3544935936.0, + "55": 3544935936.0, + "56": 3544935936.0, + "57": 3544935936.0, + "58": 3544935936.0, + "59": 3544935936.0, + "60": 3544935936.0, + "61": 3544935936.0, + "62": 3544935936.0, + "63": 3544935936.0, + "64": 3544935936.0, + "65": 3544935936.0, + "66": 3544935936.0, + "67": 3544935936.0, + "68": 3544935936.0, + "69": 3544935936.0, + "70": 3544935936.0, + "71": 3544935936.0, + "72": 3544935936.0, + "73": 3544935936.0, + "74": 3544935936.0, + "75": 3544935936.0, + "76": 3544935936.0, + "77": 3544935936.0, + "78": 3544935936.0, + "79": 3544935936.0, + "80": 3544935936.0, + "81": 3544935936.0, + "82": 3544935936.0, + "83": 3544935936.0, + "84": 3544935936.0, + "85": 3544935936.0, + "86": 3544935936.0, + "87": 3544935936.0, + "88": 3544935936.0, + "89": 3544935936.0, + "90": 3544935936.0, + "91": 3544935936.0, + "92": 3544935936.0, + "93": 3544935936.0, + "94": 3544935936.0, + "95": 3544935936.0, + "96": 3544935936.0, + "97": 3544935936.0, + "98": 3544935936.0, + "99": 3544935936.0, + "100": 3544935936.0 } }, "iteration-time": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.71226, - "5": 0.14227, - "10": 0.14747, - "15": 0.14757, - "20": 0.1588, - "25": 0.15692, - "30": 0.15748, - "35": 0.15684, - "40": 0.15704, - "45": 0.15798, - "50": 0.15606, - "55": 0.15074, - "60": 0.15245, - "65": 0.15193, - "70": 0.15162, - "75": 0.14856, - "80": 0.14952, - "85": 0.14876, - "90": 0.14933, - "95": 0.15012, - "100": 0.15591 + "1": 7.5468, + "2": 0.1514, + "3": 0.11679, + "4": 0.11442, + "5": 0.11418, + "6": 0.1134, + "7": 0.11341, + "8": 0.11355, + "9": 0.11332, + "10": 0.11336, + "11": 0.11414, + "12": 0.11322, + "13": 0.11309, + "14": 0.11355, + "15": 0.11296, + "16": 0.11311, + "17": 0.19183, + "18": 0.13278, + "19": 0.12368, + "20": 0.1244, + "21": 0.12354, + "22": 0.11533, + "23": 0.12281, + "24": 0.12403, + "25": 0.12406, + "26": 0.12339, + "27": 0.12448, + "28": 0.12265, + "29": 0.1229, + "30": 0.1231, + "31": 0.12325, + "32": 0.12261, + "33": 0.12283, + "34": 0.12275, + "35": 0.12311, + "36": 0.12273, + "37": 0.12367, + "38": 0.12288, + "39": 0.12297, + "40": 0.12264, + "41": 0.1206, + "42": 0.12099, + "43": 0.12152, + "44": 0.12016, + "45": 0.12042, + "46": 0.12101, + "47": 0.12019, + "48": 0.12057, + "49": 0.12054, + "50": 0.12043, + "51": 0.12804, + "52": 0.12188, + "53": 0.12082, + "54": 0.12046, + "55": 0.12243, + "56": 0.12099, + "57": 0.12158, + "58": 0.12118, + "59": 0.12094, + "60": 0.12085, + "61": 0.12158, + "62": 0.12129, + "63": 0.12239, + "64": 0.12127, + "65": 0.12091, + "66": 0.12161, + "67": 0.12115, + "68": 0.12107, + "69": 0.12194, + "70": 0.12208, + "71": 0.12158, + "72": 0.12253, + "73": 0.12311, + "74": 0.12157, + "75": 0.12129, + "76": 0.12243, + "77": 0.1209, + "78": 0.12118, + "79": 0.12236, + "80": 0.12456, + "81": 0.12169, + "82": 0.12201, + "83": 0.12239, + "84": 0.12311, + "85": 0.12253, + "86": 0.12237, + "87": 0.12156, + "88": 0.12306, + "89": 0.12961, + "90": 0.12349, + "91": 0.12189, + "92": 0.12121, + "93": 0.12178, + "94": 0.12615, + "95": 0.12189, + "96": 0.12145, + "97": 0.12112, + "98": 0.12242, + "99": 0.12142, + "100": 0.12094 } }, "num-zeros": { "start_step": 1, "end_step": 100, - "step_interval": 5, + "step_interval": 1, "values": { "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", "15": "nan", - "20": 1969.0, - "25": 1863.0, - "30": 2312.0, - "35": 2063.0, - "40": 2212.0, - "45": 2333.0, - "50": 2369.0, - "55": 2357.0, - "60": 2500.0, - "65": 2438.0, - "70": 3075.0, - "75": 2803.0, - "80": 3568.0, - "85": 3675.0, - "90": 3397.0, - "95": 3468.0, - "100": 3267.0 + "16": "nan", + "17": 2249.0, + "18": 2165.0, + "19": 2362.0, + "20": 1953.0, + "21": 1898.0, + "22": "nan", + "23": 2371.0, + "24": 1984.0, + "25": 1818.0, + "26": 1980.0, + "27": 2078.0, + "28": 2467.0, + "29": 2395.0, + "30": 2298.0, + "31": 1682.0, + "32": 2236.0, + "33": 2192.0, + "34": 1800.0, + "35": 2083.0, + "36": 2139.0, + "37": 2498.0, + "38": 2218.0, + "39": 2642.0, + "40": 2287.0, + "41": 2344.0, + "42": 2304.0, + "43": 2098.0, + "44": 2107.0, + "45": 2243.0, + "46": 1960.0, + "47": 2729.0, + "48": 2418.0, + "49": 1910.0, + "50": 2426.0, + "51": 2335.0, + "52": 2407.0, + "53": 2888.0, + "54": 2477.0, + "55": 2440.0, + "56": 2286.0, + "57": 2340.0, + "58": 2652.0, + "59": 2321.0, + "60": 2493.0, + "61": 2812.0, + "62": 2711.0, + "63": 2367.0, + "64": 2802.0, + "65": 2411.0, + "66": 2869.0, + "67": 2577.0, + "68": 2859.0, + "69": 2524.0, + "70": 3119.0, + "71": 2926.0, + "72": 2251.0, + "73": 2929.0, + "74": 2110.0, + "75": 2884.0, + "76": 2992.0, + "77": 3380.0, + "78": 3484.0, + "79": 3533.0, + "80": 3549.0, + "81": 3616.0, + "82": 3347.0, + "83": 3124.0, + "84": 3276.0, + "85": 3721.0, + "86": 3207.0, + "87": 3941.0, + "88": 3250.0, + "89": 3863.0, + "90": 3452.0, + "91": 2630.0, + "92": 3431.0, + "93": 3123.0, + "94": 3671.0, + "95": 3340.0, + "96": 3874.0, + "97": 3519.0, + "98": 3727.0, + "99": 3447.0, + "100": 3338.0 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts.json new file mode 100644 index 00000000000..ed50a469580 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.79432, + "2": 10.80634, + "3": 10.80586, + "4": 10.77237, + "5": 10.84693, + "6": 10.86605, + "7": 10.82692, + "8": 10.81129, + "9": 10.8342, + "10": 10.76876, + "11": 10.89167, + "12": 10.84477, + "13": 10.85758, + "14": 10.88197, + "15": 10.78831, + "16": 10.7793, + "17": 10.75446, + "18": 10.79296, + "19": 10.79494, + "20": 10.67877, + "21": 10.65858, + "22": 10.50081, + "23": 10.71065, + "24": 10.55089, + "25": 10.50321, + "26": 10.58033, + "27": 10.58262, + "28": 10.55556, + "29": 10.56003, + "30": 10.32992, + "31": 10.08344, + "32": 10.44434, + "33": 10.44238, + "34": 10.19765, + "35": 10.25197, + "36": 10.19117, + "37": 10.31772, + "38": 10.1631, + "39": 10.37486, + "40": 10.05284, + "41": 10.1344, + "42": 10.18877, + "43": 9.80641, + "44": 9.92687, + "45": 9.80332, + "46": 9.811, + "47": 10.12605, + "48": 9.82455, + "49": 9.50975, + "50": 9.88831 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1620.0, + "2": 1664.0, + "3": 1748.0, + "4": 1757.0, + "5": 1754.0, + "6": 1841.0, + "7": 1877.0, + "8": 1697.0, + "9": 1886.0, + "10": 1404.0, + "11": 1889.0, + "12": 1689.0, + "13": 1918.0, + "14": 1757.0, + "15": 1913.0, + "16": 1860.0, + "17": 1797.0, + "18": 1655.0, + "19": 1784.0, + "20": 1616.0, + "21": 1887.0, + "22": 1751.0, + "23": 2100.0, + "24": 1717.0, + "25": 1696.0, + "26": 1723.0, + "27": 1819.0, + "28": 1980.0, + "29": 1962.0, + "30": 2046.0, + "31": 1562.0, + "32": 1935.0, + "33": 2182.0, + "34": 1919.0, + "35": 1994.0, + "36": 1947.0, + "37": 2436.0, + "38": 2218.0, + "39": 2319.0, + "40": 2278.0, + "41": 2348.0, + "42": 2258.0, + "43": 1967.0, + "44": 2011.0, + "45": 2215.0, + "46": 2291.0, + "47": 2519.0, + "48": 2517.0, + "49": 2334.0, + "50": 2325.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 779997184.0, + "2": 779997184.0, + "3": 779997184.0, + "4": 779997184.0, + "5": 779997184.0, + "6": 779997184.0, + "7": 779997184.0, + "8": 779997184.0, + "9": 779997184.0, + "10": 779997184.0, + "11": 779997184.0, + "12": 779997184.0, + "13": 779997184.0, + "14": 779997184.0, + "15": 779997184.0, + "16": 779997184.0, + "17": 779997184.0, + "18": 779997184.0, + "19": 779997184.0, + "20": 779997184.0, + "21": 779997184.0, + "22": 779997184.0, + "23": 779997184.0, + "24": 779997184.0, + "25": 779997184.0, + "26": 779997184.0, + "27": 779997184.0, + "28": 779997184.0, + "29": 779997184.0, + "30": 779997184.0, + "31": 779997184.0, + "32": 779997184.0, + "33": 779997184.0, + "34": 779997184.0, + "35": 779997184.0, + "36": 779997184.0, + "37": 779997184.0, + "38": 779997184.0, + "39": 779997184.0, + "40": 779997184.0, + "41": 779997184.0, + "42": 779997184.0, + "43": 779997184.0, + "44": 779997184.0, + "45": 779997184.0, + "46": 779997184.0, + "47": 779997184.0, + "48": 779997184.0, + "49": 779997184.0, + "50": 779997184.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 2463815168.0, + "2": 2746575872.0, + "3": 2746575872.0, + "4": 2746575872.0, + "5": 2746575872.0, + "6": 2746575872.0, + "7": 2746575872.0, + "8": 2746575872.0, + "9": 2746575872.0, + "10": 2746575872.0, + "11": 2746575872.0, + "12": 2746575872.0, + "13": 2746575872.0, + "14": 2746575872.0, + "15": 2746575872.0, + "16": 2746575872.0, + "17": 2746575872.0, + "18": 2746575872.0, + "19": 2746575872.0, + "20": 2746575872.0, + "21": 2746575872.0, + "22": 2746575872.0, + "23": 2746575872.0, + "24": 2746575872.0, + "25": 2746575872.0, + "26": 2746575872.0, + "27": 2746575872.0, + "28": 2746575872.0, + "29": 2746575872.0, + "30": 2746575872.0, + "31": 2746575872.0, + "32": 2746575872.0, + "33": 2746575872.0, + "34": 2746575872.0, + "35": 2746575872.0, + "36": 2746575872.0, + "37": 2746575872.0, + "38": 2746575872.0, + "39": 2746575872.0, + "40": 2746575872.0, + "41": 2746575872.0, + "42": 2746575872.0, + "43": 2746575872.0, + "44": 2746575872.0, + "45": 2746575872.0, + "46": 2746575872.0, + "47": 2746575872.0, + "48": 2746575872.0, + "49": 2746575872.0, + "50": 2746575872.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 8.01512, + "2": 0.18918, + "3": 0.2837, + "4": 0.16138, + "5": 0.1616, + "6": 0.16078, + "7": 0.16042, + "8": 0.15997, + "9": 0.16098, + "10": 0.16102, + "11": 0.16098, + "12": 0.16041, + "13": 0.16091, + "14": 0.16108, + "15": 0.16115, + "16": 0.16297, + "17": 0.16105, + "18": 0.16124, + "19": 0.16111, + "20": 0.16078, + "21": 0.16059, + "22": 0.16143, + "23": 0.1618, + "24": 0.16075, + "25": 0.1607, + "26": 0.16058, + "27": 0.16134, + "28": 0.16032, + "29": 0.16066, + "30": 0.1619, + "31": 0.16069, + "32": 0.16055, + "33": 0.16041, + "34": 0.16109, + "35": 0.1616, + "36": 0.16, + "37": 0.16147, + "38": 0.16094, + "39": 0.16098, + "40": 0.16007, + "41": 0.16179, + "42": 0.1607, + "43": 0.16132, + "44": 0.16157, + "45": 0.16066, + "46": 0.16082, + "47": 0.16056, + "48": 0.16095, + "49": 0.16092, + "50": 0.16103 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts_dgx_a100.json index e7e40a40328..06342d2a540 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4/golden_values_lts_dgx_a100.json @@ -2,91 +2,286 @@ "lm loss": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 10.79203, - "5": 10.84593, - "10": 10.76951, - "15": 10.78971, - "20": 10.67886, - "25": 10.50431, - "30": 10.33089, - "35": 10.25278, - "40": 10.05241, - "45": 9.80259, - "50": 9.88804 + "1": 10.79432, + "2": 10.80634, + "3": 10.80586, + "4": 10.77237, + "5": 10.84693, + "6": 10.86605, + "7": 10.82692, + "8": 10.81129, + "9": 10.8342, + "10": 10.76876, + "11": 10.89167, + "12": 10.84477, + "13": 10.85758, + "14": 10.88197, + "15": 10.78831, + "16": 10.7793, + "17": 10.75446, + "18": 10.79296, + "19": 10.79494, + "20": 10.67877, + "21": 10.65858, + "22": 10.50081, + "23": 10.71065, + "24": 10.55089, + "25": 10.50321, + "26": 10.58033, + "27": 10.58262, + "28": 10.55556, + "29": 10.56003, + "30": 10.32992, + "31": 10.08344, + "32": 10.44434, + "33": 10.44238, + "34": 10.19765, + "35": 10.25197, + "36": 10.19117, + "37": 10.31772, + "38": 10.1631, + "39": 10.37486, + "40": 10.05284, + "41": 10.1344, + "42": 10.18877, + "43": 9.80641, + "44": 9.92687, + "45": 9.80332, + "46": 9.811, + "47": 10.12605, + "48": 9.82455, + "49": 9.50975, + "50": 9.88831 } }, "num-zeros": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 1649.0, - "5": 1890.0, - "10": 1397.0, - "15": 1928.0, - "20": 1565.0, - "25": 1699.0, - "30": 1943.0, - "35": 2018.0, - "40": 2191.0, - "45": 2207.0, - "50": 2362.0 + "1": 1620.0, + "2": 1664.0, + "3": 1748.0, + "4": 1757.0, + "5": 1754.0, + "6": 1841.0, + "7": 1877.0, + "8": 1697.0, + "9": 1886.0, + "10": 1404.0, + "11": 1889.0, + "12": 1689.0, + "13": 1918.0, + "14": 1757.0, + "15": 1913.0, + "16": 1860.0, + "17": 1797.0, + "18": 1655.0, + "19": 1784.0, + "20": 1616.0, + "21": 1887.0, + "22": 1751.0, + "23": 2100.0, + "24": 1717.0, + "25": 1696.0, + "26": 1723.0, + "27": 1819.0, + "28": 1980.0, + "29": 1962.0, + "30": 2046.0, + "31": 1562.0, + "32": 1935.0, + "33": 2182.0, + "34": 1919.0, + "35": 1994.0, + "36": 1947.0, + "37": 2436.0, + "38": 2218.0, + "39": 2319.0, + "40": 2278.0, + "41": 2348.0, + "42": 2258.0, + "43": 1967.0, + "44": 2011.0, + "45": 2215.0, + "46": 2291.0, + "47": 2519.0, + "48": 2517.0, + "49": 2334.0, + "50": 2325.0 } }, "mem-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 782094336.0, - "5": 782094336.0, - "10": 782094336.0, - "15": 782094336.0, - "20": 782094336.0, - "25": 782094336.0, - "30": 782094336.0, - "35": 782094336.0, - "40": 782094336.0, - "45": 782094336.0, - "50": 782094336.0 + "1": 777900032.0, + "2": 777900032.0, + "3": 777900032.0, + "4": 777900032.0, + "5": 777900032.0, + "6": 777900032.0, + "7": 777900032.0, + "8": 777900032.0, + "9": 777900032.0, + "10": 777900032.0, + "11": 777900032.0, + "12": 777900032.0, + "13": 777900032.0, + "14": 777900032.0, + "15": 777900032.0, + "16": 777900032.0, + "17": 777900032.0, + "18": 777900032.0, + "19": 777900032.0, + "20": 777900032.0, + "21": 777900032.0, + "22": 777900032.0, + "23": 777900032.0, + "24": 777900032.0, + "25": 777900032.0, + "26": 777900032.0, + "27": 777900032.0, + "28": 777900032.0, + "29": 777900032.0, + "30": 777900032.0, + "31": 777900032.0, + "32": 777900032.0, + "33": 777900032.0, + "34": 777900032.0, + "35": 777900032.0, + "36": 777900032.0, + "37": 777900032.0, + "38": 777900032.0, + "39": 777900032.0, + "40": 777900032.0, + "41": 777900032.0, + "42": 777900032.0, + "43": 777900032.0, + "44": 777900032.0, + "45": 777900032.0, + "46": 777900032.0, + "47": 777900032.0, + "48": 777900032.0, + "49": 777900032.0, + "50": 777900032.0 } }, "mem-max-allocated-bytes": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { "1": 2462767104.0, - "5": 2748673024.0, - "10": 2748673024.0, - "15": 2748673024.0, - "20": 2748673024.0, - "25": 2748673024.0, - "30": 2748673024.0, - "35": 2748673024.0, - "40": 2748673024.0, - "45": 2748673024.0, - "50": 2748673024.0 + "2": 2744478720.0, + "3": 2744478720.0, + "4": 2744478720.0, + "5": 2744478720.0, + "6": 2744478720.0, + "7": 2744478720.0, + "8": 2744478720.0, + "9": 2744478720.0, + "10": 2744478720.0, + "11": 2744478720.0, + "12": 2744478720.0, + "13": 2744478720.0, + "14": 2744478720.0, + "15": 2744478720.0, + "16": 2744478720.0, + "17": 2744478720.0, + "18": 2744478720.0, + "19": 2744478720.0, + "20": 2744478720.0, + "21": 2744478720.0, + "22": 2744478720.0, + "23": 2744478720.0, + "24": 2744478720.0, + "25": 2744478720.0, + "26": 2744478720.0, + "27": 2744478720.0, + "28": 2744478720.0, + "29": 2744478720.0, + "30": 2744478720.0, + "31": 2744478720.0, + "32": 2744478720.0, + "33": 2744478720.0, + "34": 2744478720.0, + "35": 2744478720.0, + "36": 2744478720.0, + "37": 2744478720.0, + "38": 2744478720.0, + "39": 2744478720.0, + "40": 2744478720.0, + "41": 2744478720.0, + "42": 2744478720.0, + "43": 2744478720.0, + "44": 2744478720.0, + "45": 2744478720.0, + "46": 2744478720.0, + "47": 2744478720.0, + "48": 2744478720.0, + "49": 2744478720.0, + "50": 2744478720.0 } }, "iteration-time": { "start_step": 1, "end_step": 50, - "step_interval": 5, + "step_interval": 1, "values": { - "1": 16.61466, - "5": 0.16864, - "10": 0.16989, - "15": 0.1682, - "20": 0.16954, - "25": 0.16878, - "30": 0.2008, - "35": 0.18359, - "40": 0.16981, - "45": 0.17863, - "50": 0.18407 + "1": 9.69348, + "2": 0.20058, + "3": 0.16793, + "4": 0.16851, + "5": 0.16769, + "6": 0.16776, + "7": 0.1679, + "8": 0.1698, + "9": 0.16773, + "10": 0.16689, + "11": 0.16616, + "12": 0.16649, + "13": 0.16602, + "14": 0.16651, + "15": 0.16681, + "16": 0.16794, + "17": 0.17068, + "18": 0.16616, + "19": 0.16604, + "20": 0.16664, + "21": 0.16675, + "22": 0.16587, + "23": 0.16669, + "24": 0.16593, + "25": 0.16666, + "26": 0.16624, + "27": 0.16546, + "28": 0.16503, + "29": 0.16469, + "30": 0.1651, + "31": 0.16508, + "32": 0.16533, + "33": 0.16475, + "34": 0.16518, + "35": 0.16543, + "36": 0.16422, + "37": 0.1648, + "38": 0.16453, + "39": 0.16423, + "40": 0.16482, + "41": 0.16457, + "42": 0.1653, + "43": 0.16536, + "44": 0.16541, + "45": 0.16481, + "46": 0.16481, + "47": 0.16542, + "48": 0.16607, + "49": 0.1639, + "50": 0.1641 } } } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts.json new file mode 100644 index 00000000000..44dd2d42336 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.79449, + "2": 10.80656, + "3": 10.80727, + "4": 10.77389, + "5": 10.84829, + "6": 10.86736, + "7": 10.82922, + "8": 10.81537, + "9": 10.83956, + "10": 10.77652, + "11": 10.90107, + "12": 10.85927, + "13": 10.87396, + "14": 10.89723, + "15": 10.83961, + "16": 10.83508, + "17": 10.82101, + "18": 10.86029, + "19": 10.86558, + "20": 10.82896, + "21": 10.83275, + "22": 10.75286, + "23": 10.88062, + "24": 10.78219, + "25": 10.76607, + "26": 10.79522, + "27": 10.79866, + "28": 10.81697, + "29": 10.82169, + "30": 10.69891, + "31": 10.55698, + "32": 10.75759, + "33": 10.74362, + "34": 10.59976, + "35": 10.61772, + "36": 10.56389, + "37": 10.63614, + "38": 10.53029, + "39": 10.65358, + "40": 10.44072, + "41": 10.49636, + "42": 10.50954, + "43": 10.22362, + "44": 10.30902, + "45": 10.21065, + "46": 10.19943, + "47": 10.41641, + "48": 10.18128, + "49": 9.94311, + "50": 10.21224, + "51": 10.16759, + "52": 10.06895, + "53": 10.30707, + "54": 10.20911, + "55": 10.15688, + "56": 9.91474, + "57": 9.77696, + "58": 10.07417, + "59": 9.86333, + "60": 9.77328, + "61": 9.9292, + "62": 10.17156, + "63": 9.62041, + "64": 9.97113, + "65": 9.21979, + "66": 9.88693, + "67": 9.58363, + "68": 9.94922, + "69": 9.95271, + "70": 9.89312, + "71": 9.77658, + "72": 9.75435, + "73": 9.6497, + "74": 9.1439, + "75": 9.56121, + "76": 9.25111, + "77": 10.17063, + "78": 9.85402, + "79": 9.49965, + "80": 9.53086, + "81": 9.60555, + "82": 9.80179, + "83": 9.43744, + "84": 9.51987, + "85": 9.7196, + "86": 9.18595, + "87": 9.68687, + "88": 9.8443, + "89": 9.70586, + "90": 9.89977, + "91": 9.45029, + "92": 9.45356, + "93": 9.18554, + "94": 8.92968, + "95": 9.59767, + "96": 9.61491, + "97": 9.39084, + "98": 9.75667, + "99": 8.97921, + "100": 9.49001 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 570640384.0, + "2": 570640384.0, + "3": 570640384.0, + "4": 570640384.0, + "5": 570640384.0, + "6": 570640384.0, + "7": 570640384.0, + "8": 570640384.0, + "9": 570640384.0, + "10": 570640384.0, + "11": 570640384.0, + "12": 570640384.0, + "13": 570640384.0, + "14": 570640384.0, + "15": 570640384.0, + "16": 570640384.0, + "17": 852351488.0, + "18": 852351488.0, + "19": 852351488.0, + "20": 852351488.0, + "21": 852351488.0, + "22": 852351488.0, + "23": 852351488.0, + "24": 852351488.0, + "25": 852351488.0, + "26": 852351488.0, + "27": 852351488.0, + "28": 852351488.0, + "29": 852351488.0, + "30": 852351488.0, + "31": 852351488.0, + "32": 852351488.0, + "33": 852351488.0, + "34": 852351488.0, + "35": 852351488.0, + "36": 852351488.0, + "37": 852351488.0, + "38": 852351488.0, + "39": 852351488.0, + "40": 852351488.0, + "41": 852351488.0, + "42": 852351488.0, + "43": 852351488.0, + "44": 852351488.0, + "45": 852351488.0, + "46": 852351488.0, + "47": 852351488.0, + "48": 852351488.0, + "49": 852351488.0, + "50": 852351488.0, + "51": 852351488.0, + "52": 852351488.0, + "53": 852351488.0, + "54": 852351488.0, + "55": 852351488.0, + "56": 852351488.0, + "57": 852351488.0, + "58": 852351488.0, + "59": 852351488.0, + "60": 852351488.0, + "61": 852351488.0, + "62": 852351488.0, + "63": 852351488.0, + "64": 852351488.0, + "65": 852351488.0, + "66": 852351488.0, + "67": 852351488.0, + "68": 852351488.0, + "69": 852351488.0, + "70": 852351488.0, + "71": 852351488.0, + "72": 852351488.0, + "73": 852351488.0, + "74": 852351488.0, + "75": 852351488.0, + "76": 852351488.0, + "77": 852351488.0, + "78": 852351488.0, + "79": 852351488.0, + "80": 852351488.0, + "81": 852351488.0, + "82": 852351488.0, + "83": 852351488.0, + "84": 852351488.0, + "85": 852351488.0, + "86": 852351488.0, + "87": 852351488.0, + "88": 852351488.0, + "89": 852351488.0, + "90": 852351488.0, + "91": 852351488.0, + "92": 852351488.0, + "93": 852351488.0, + "94": 852351488.0, + "95": 852351488.0, + "96": 852351488.0, + "97": 852351488.0, + "98": 852351488.0, + "99": 852351488.0, + "100": 852351488.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2394265600.0, + "2": 2394265600.0, + "3": 2394265600.0, + "4": 2394265600.0, + "5": 2394265600.0, + "6": 2394265600.0, + "7": 2394265600.0, + "8": 2394265600.0, + "9": 2394265600.0, + "10": 2394265600.0, + "11": 2394265600.0, + "12": 2394265600.0, + "13": 2394265600.0, + "14": 2394265600.0, + "15": 2394265600.0, + "16": 2394265600.0, + "17": 2394265600.0, + "18": 2675191296.0, + "19": 2675191296.0, + "20": 2675191296.0, + "21": 2675191296.0, + "22": 2675191296.0, + "23": 2675191296.0, + "24": 2675191296.0, + "25": 2675191296.0, + "26": 2675191296.0, + "27": 2675191296.0, + "28": 2675191296.0, + "29": 2675191296.0, + "30": 2675191296.0, + "31": 2675191296.0, + "32": 2675191296.0, + "33": 2675191296.0, + "34": 2675191296.0, + "35": 2675191296.0, + "36": 2675191296.0, + "37": 2675191296.0, + "38": 2675191296.0, + "39": 2675191296.0, + "40": 2675191296.0, + "41": 2675191296.0, + "42": 2675191296.0, + "43": 2675191296.0, + "44": 2675191296.0, + "45": 2675191296.0, + "46": 2675191296.0, + "47": 2675191296.0, + "48": 2675191296.0, + "49": 2675191296.0, + "50": 2675191296.0, + "51": 2675191296.0, + "52": 2675191296.0, + "53": 2675191296.0, + "54": 2675191296.0, + "55": 2675191296.0, + "56": 2675191296.0, + "57": 2675191296.0, + "58": 2675191296.0, + "59": 2675191296.0, + "60": 2675191296.0, + "61": 2675191296.0, + "62": 2675191296.0, + "63": 2675191296.0, + "64": 2675191296.0, + "65": 2675191296.0, + "66": 2675191296.0, + "67": 2675191296.0, + "68": 2675191296.0, + "69": 2675191296.0, + "70": 2675191296.0, + "71": 2675191296.0, + "72": 2675191296.0, + "73": 2675191296.0, + "74": 2675191296.0, + "75": 2675191296.0, + "76": 2675191296.0, + "77": 2675191296.0, + "78": 2675191296.0, + "79": 2675191296.0, + "80": 2675191296.0, + "81": 2675191296.0, + "82": 2675191296.0, + "83": 2675191296.0, + "84": 2675191296.0, + "85": 2675191296.0, + "86": 2675191296.0, + "87": 2675191296.0, + "88": 2675191296.0, + "89": 2675191296.0, + "90": 2675191296.0, + "91": 2675191296.0, + "92": 2675191296.0, + "93": 2675191296.0, + "94": 2675191296.0, + "95": 2675191296.0, + "96": 2675191296.0, + "97": 2675191296.0, + "98": 2675191296.0, + "99": 2675191296.0, + "100": 2675191296.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 7.94598, + "2": 0.18624, + "3": 0.25859, + "4": 0.15175, + "5": 0.15224, + "6": 0.15109, + "7": 0.15137, + "8": 0.1508, + "9": 0.1517, + "10": 0.15243, + "11": 0.15119, + "12": 0.15082, + "13": 0.15199, + "14": 0.1522, + "15": 0.15257, + "16": 0.15242, + "17": 0.21211, + "18": 0.16275, + "19": 0.15814, + "20": 0.15774, + "21": 0.15784, + "22": 0.15701, + "23": 0.15663, + "24": 0.15702, + "25": 0.15682, + "26": 0.15759, + "27": 0.15671, + "28": 0.15664, + "29": 0.15666, + "30": 0.15733, + "31": 0.15729, + "32": 0.15598, + "33": 0.1563, + "34": 0.15661, + "35": 0.15747, + "36": 0.15621, + "37": 0.15693, + "38": 0.15652, + "39": 0.15686, + "40": 0.15725, + "41": 0.15693, + "42": 0.1567, + "43": 0.15752, + "44": 0.15682, + "45": 0.15685, + "46": 0.15675, + "47": 0.15696, + "48": 0.15702, + "49": 0.15714, + "50": 0.15648, + "51": 0.1656, + "52": 0.15563, + "53": 0.1545, + "54": 0.15554, + "55": 0.15521, + "56": 0.15534, + "57": 0.15463, + "58": 0.15657, + "59": 0.15534, + "60": 0.15488, + "61": 0.15475, + "62": 0.15571, + "63": 0.15676, + "64": 0.15647, + "65": 0.1567, + "66": 0.15541, + "67": 0.15585, + "68": 0.15577, + "69": 0.15571, + "70": 0.15462, + "71": 0.15484, + "72": 0.15532, + "73": 0.15732, + "74": 0.15634, + "75": 0.15545, + "76": 0.1569, + "77": 0.15472, + "78": 0.15486, + "79": 0.15517, + "80": 0.15532, + "81": 0.15621, + "82": 0.15556, + "83": 0.15556, + "84": 0.15546, + "85": 0.15484, + "86": 0.15503, + "87": 0.15496, + "88": 0.15534, + "89": 0.15573, + "90": 0.15449, + "91": 0.15665, + "92": 0.15529, + "93": 0.15627, + "94": 0.15525, + "95": 0.15483, + "96": 0.15509, + "97": 0.15618, + "98": 0.15569, + "99": 0.15482, + "100": 0.15516 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": "nan", + "17": 2437.0, + "18": 2405.0, + "19": 2950.0, + "20": 1827.0, + "21": 2154.0, + "22": 2731.0, + "23": 2609.0, + "24": 2290.0, + "25": 2325.0, + "26": 2079.0, + "27": 2138.0, + "28": 2702.0, + "29": 2576.0, + "30": 2528.0, + "31": 1895.0, + "32": 2628.0, + "33": 2325.0, + "34": 1928.0, + "35": 2061.0, + "36": 2153.0, + "37": 2600.0, + "38": 2350.0, + "39": 2997.0, + "40": 2053.0, + "41": 3352.0, + "42": 2497.0, + "43": 2867.0, + "44": 2109.0, + "45": 2490.0, + "46": 2279.0, + "47": 3051.0, + "48": 2527.0, + "49": 1973.0, + "50": 2887.0, + "51": 2310.0, + "52": 2526.0, + "53": 3705.0, + "54": 2888.0, + "55": 2440.0, + "56": 2496.0, + "57": 2338.0, + "58": 3283.0, + "59": 2849.0, + "60": 2893.0, + "61": 2956.0, + "62": 3134.0, + "63": 3275.0, + "64": 3176.0, + "65": 2318.0, + "66": 3857.0, + "67": 2606.0, + "68": 3313.0, + "69": 2826.0, + "70": 3665.0, + "71": 3011.0, + "72": 2693.0, + "73": 3357.0, + "74": 2271.0, + "75": 2955.0, + "76": 3617.0, + "77": 3936.0, + "78": 3951.0, + "79": 4065.0, + "80": 3665.0, + "81": 5191.0, + "82": 3511.0, + "83": 3263.0, + "84": 3876.0, + "85": 4048.0, + "86": 3414.0, + "87": 3980.0, + "88": 3617.0, + "89": 4400.0, + "90": 3695.0, + "91": 2857.0, + "92": 4432.0, + "93": 3494.0, + "94": 4438.0, + "95": 4076.0, + "96": 3948.0, + "97": 4242.0, + "98": 4943.0, + "99": 3861.0, + "100": 3631.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts_dgx_a100.json index a8c7cb012b6..3b0a03dc6ef 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp1_pp4_resume_torch_dist/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.79219, "5": 10.84727, "10": 10.77729, "15": 10.84106, "20": 10.82889, "25": 10.7666, "30": 10.69961, "35": 10.61845, "40": 10.44051, "45": 10.20859, "50": 10.21168, "55": 10.15675, "60": 9.77265, "65": 9.22128, "70": 9.89371, "75": 9.56098, "80": 9.5311, "85": 9.71911, "90": 9.89983, "95": 9.59785, "100": 9.49009}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 570640384.0, "5": 570640384.0, "10": 570640384.0, "15": 570640384.0, "20": 852351488.0, "25": 852351488.0, "30": 852351488.0, "35": 852351488.0, "40": 852351488.0, "45": 852351488.0, "50": 852351488.0, "55": 852351488.0, "60": 852351488.0, "65": 852351488.0, "70": 852351488.0, "75": 852351488.0, "80": 852351488.0, "85": 852351488.0, "90": 852351488.0, "95": 852351488.0, "100": 852351488.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 2393217536.0, "5": 2393218048.0, "10": 2393218048.0, "15": 2393218048.0, "20": 2675191296.0, "25": 2675191296.0, "30": 2675191296.0, "35": 2675191296.0, "40": 2675191296.0, "45": 2675191296.0, "50": 2675191296.0, "55": 2675191296.0, "60": 2675191296.0, "65": 2675191296.0, "70": 2675191296.0, "75": 2675191296.0, "80": 2675191296.0, "85": 2675191296.0, "90": 2675191296.0, "95": 2675191296.0, "100": 2675191296.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 20.32613, "5": 0.16735, "10": 0.16973, "15": 0.16584, "20": 0.17045, "25": 0.17023, "30": 0.16985, "35": 0.17228, "40": 0.17914, "45": 0.17032, "50": 0.17169, "55": 0.16858, "60": 0.16807, "65": 0.16897, "70": 0.16857, "75": 0.16759, "80": 0.16701, "85": 0.16722, "90": 0.16741, "95": 0.16829, "100": 0.16715}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": "nan", "5": "nan", "10": "nan", "15": "nan", "20": 1788.0, "25": 2300.0, "30": 2419.0, "35": 2097.0, "40": 2126.0, "45": 2520.0, "50": 2929.0, "55": 2457.0, "60": 2961.0, "65": 2359.0, "70": 3633.0, "75": 2932.0, "80": 3595.0, "85": 3959.0, "90": 3785.0, "95": 4072.0, "100": 3581.0}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.79449, + "2": 10.80656, + "3": 10.80727, + "4": 10.77389, + "5": 10.84829, + "6": 10.86736, + "7": 10.82922, + "8": 10.81537, + "9": 10.83956, + "10": 10.77652, + "11": 10.90107, + "12": 10.85927, + "13": 10.87396, + "14": 10.89723, + "15": 10.83961, + "16": 10.83508, + "17": 10.82101, + "18": 10.86029, + "19": 10.86558, + "20": 10.82896, + "21": 10.83275, + "22": 10.75286, + "23": 10.88062, + "24": 10.78219, + "25": 10.76607, + "26": 10.79522, + "27": 10.79866, + "28": 10.81697, + "29": 10.82169, + "30": 10.69891, + "31": 10.55698, + "32": 10.75759, + "33": 10.74362, + "34": 10.59976, + "35": 10.61772, + "36": 10.56389, + "37": 10.63614, + "38": 10.53029, + "39": 10.65358, + "40": 10.44072, + "41": 10.49636, + "42": 10.50954, + "43": 10.22362, + "44": 10.30902, + "45": 10.21065, + "46": 10.19943, + "47": 10.41641, + "48": 10.18128, + "49": 9.94311, + "50": 10.21224, + "51": 10.16759, + "52": 10.06895, + "53": 10.30707, + "54": 10.20911, + "55": 10.15688, + "56": 9.91474, + "57": 9.77696, + "58": 10.07417, + "59": 9.86333, + "60": 9.77328, + "61": 9.9292, + "62": 10.17156, + "63": 9.62041, + "64": 9.97113, + "65": 9.21979, + "66": 9.88693, + "67": 9.58363, + "68": 9.94922, + "69": 9.95271, + "70": 9.89312, + "71": 9.77658, + "72": 9.75435, + "73": 9.6497, + "74": 9.1439, + "75": 9.56121, + "76": 9.25111, + "77": 10.17063, + "78": 9.85402, + "79": 9.49965, + "80": 9.53086, + "81": 9.60555, + "82": 9.80179, + "83": 9.43744, + "84": 9.51987, + "85": 9.7196, + "86": 9.18595, + "87": 9.68687, + "88": 9.8443, + "89": 9.70586, + "90": 9.89977, + "91": 9.45029, + "92": 9.45356, + "93": 9.18554, + "94": 8.92968, + "95": 9.59767, + "96": 9.61491, + "97": 9.39084, + "98": 9.75667, + "99": 8.97921, + "100": 9.49001 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 570640384.0, + "2": 570640384.0, + "3": 570640384.0, + "4": 570640384.0, + "5": 570640384.0, + "6": 570640384.0, + "7": 570640384.0, + "8": 570640384.0, + "9": 570640384.0, + "10": 570640384.0, + "11": 570640384.0, + "12": 570640384.0, + "13": 570640384.0, + "14": 570640384.0, + "15": 570640384.0, + "16": 570640384.0, + "17": 852351488.0, + "18": 852351488.0, + "19": 852351488.0, + "20": 852351488.0, + "21": 852351488.0, + "22": 852351488.0, + "23": 852351488.0, + "24": 852351488.0, + "25": 852351488.0, + "26": 852351488.0, + "27": 852351488.0, + "28": 852351488.0, + "29": 852351488.0, + "30": 852351488.0, + "31": 852351488.0, + "32": 852351488.0, + "33": 852351488.0, + "34": 852351488.0, + "35": 852351488.0, + "36": 852351488.0, + "37": 852351488.0, + "38": 852351488.0, + "39": 852351488.0, + "40": 852351488.0, + "41": 852351488.0, + "42": 852351488.0, + "43": 852351488.0, + "44": 852351488.0, + "45": 852351488.0, + "46": 852351488.0, + "47": 852351488.0, + "48": 852351488.0, + "49": 852351488.0, + "50": 852351488.0, + "51": 852351488.0, + "52": 852351488.0, + "53": 852351488.0, + "54": 852351488.0, + "55": 852351488.0, + "56": 852351488.0, + "57": 852351488.0, + "58": 852351488.0, + "59": 852351488.0, + "60": 852351488.0, + "61": 852351488.0, + "62": 852351488.0, + "63": 852351488.0, + "64": 852351488.0, + "65": 852351488.0, + "66": 852351488.0, + "67": 852351488.0, + "68": 852351488.0, + "69": 852351488.0, + "70": 852351488.0, + "71": 852351488.0, + "72": 852351488.0, + "73": 852351488.0, + "74": 852351488.0, + "75": 852351488.0, + "76": 852351488.0, + "77": 852351488.0, + "78": 852351488.0, + "79": 852351488.0, + "80": 852351488.0, + "81": 852351488.0, + "82": 852351488.0, + "83": 852351488.0, + "84": 852351488.0, + "85": 852351488.0, + "86": 852351488.0, + "87": 852351488.0, + "88": 852351488.0, + "89": 852351488.0, + "90": 852351488.0, + "91": 852351488.0, + "92": 852351488.0, + "93": 852351488.0, + "94": 852351488.0, + "95": 852351488.0, + "96": 852351488.0, + "97": 852351488.0, + "98": 852351488.0, + "99": 852351488.0, + "100": 852351488.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 2393217536.0, + "2": 2393218048.0, + "3": 2393218048.0, + "4": 2394266624.0, + "5": 2394266624.0, + "6": 2394266624.0, + "7": 2394266624.0, + "8": 2394266624.0, + "9": 2394266624.0, + "10": 2394266624.0, + "11": 2394266624.0, + "12": 2394266624.0, + "13": 2394266624.0, + "14": 2394266624.0, + "15": 2394266624.0, + "16": 2394266624.0, + "17": 2394266624.0, + "18": 2675191296.0, + "19": 2675191296.0, + "20": 2675191296.0, + "21": 2675191296.0, + "22": 2675191296.0, + "23": 2675191296.0, + "24": 2675191296.0, + "25": 2675191296.0, + "26": 2675191296.0, + "27": 2675191296.0, + "28": 2675191296.0, + "29": 2675191296.0, + "30": 2675191296.0, + "31": 2675191296.0, + "32": 2675191296.0, + "33": 2675191296.0, + "34": 2675191296.0, + "35": 2675191296.0, + "36": 2675191296.0, + "37": 2675191296.0, + "38": 2675191296.0, + "39": 2675191296.0, + "40": 2675191296.0, + "41": 2675191296.0, + "42": 2675191296.0, + "43": 2675191296.0, + "44": 2675191296.0, + "45": 2675191296.0, + "46": 2675191296.0, + "47": 2675191296.0, + "48": 2675191296.0, + "49": 2675191296.0, + "50": 2675191296.0, + "51": 2675191296.0, + "52": 2675191296.0, + "53": 2675191296.0, + "54": 2675191296.0, + "55": 2675191296.0, + "56": 2675191296.0, + "57": 2675191296.0, + "58": 2675191296.0, + "59": 2675191296.0, + "60": 2675191296.0, + "61": 2675191296.0, + "62": 2675191296.0, + "63": 2675191296.0, + "64": 2675191296.0, + "65": 2675191296.0, + "66": 2675191296.0, + "67": 2675191296.0, + "68": 2675191296.0, + "69": 2675191296.0, + "70": 2675191296.0, + "71": 2675191296.0, + "72": 2675191296.0, + "73": 2675191296.0, + "74": 2675191296.0, + "75": 2675191296.0, + "76": 2675191296.0, + "77": 2675191296.0, + "78": 2675191296.0, + "79": 2675191296.0, + "80": 2675191296.0, + "81": 2675191296.0, + "82": 2675191296.0, + "83": 2675191296.0, + "84": 2675191296.0, + "85": 2675191296.0, + "86": 2675191296.0, + "87": 2675191296.0, + "88": 2675191296.0, + "89": 2675191296.0, + "90": 2675191296.0, + "91": 2675191296.0, + "92": 2675191296.0, + "93": 2675191296.0, + "94": 2675191296.0, + "95": 2675191296.0, + "96": 2675191296.0, + "97": 2675191296.0, + "98": 2675191296.0, + "99": 2675191296.0, + "100": 2675191296.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.58025, + "2": 0.18555, + "3": 0.31194, + "4": 0.1522, + "5": 0.15205, + "6": 0.1496, + "7": 0.14979, + "8": 0.14921, + "9": 0.14957, + "10": 0.15024, + "11": 0.14887, + "12": 0.14852, + "13": 0.14925, + "14": 0.15079, + "15": 0.14925, + "16": 0.14936, + "17": 0.2057, + "18": 0.15996, + "19": 0.15397, + "20": 0.15414, + "21": 0.1543, + "22": 0.15499, + "23": 0.15504, + "24": 0.15679, + "25": 0.15462, + "26": 0.15509, + "27": 0.15394, + "28": 0.15487, + "29": 0.15522, + "30": 0.1553, + "31": 0.15536, + "32": 0.15406, + "33": 0.15461, + "34": 0.1548, + "35": 0.15472, + "36": 0.15413, + "37": 0.1548, + "38": 0.15446, + "39": 0.15545, + "40": 0.15442, + "41": 0.15567, + "42": 0.15413, + "43": 0.15585, + "44": 0.15428, + "45": 0.15497, + "46": 0.15438, + "47": 0.15508, + "48": 0.15481, + "49": 0.15466, + "50": 0.15476, + "51": 0.16245, + "52": 0.15411, + "53": 0.15376, + "54": 0.15405, + "55": 0.15375, + "56": 0.15402, + "57": 0.15434, + "58": 0.15404, + "59": 0.15454, + "60": 0.15434, + "61": 0.15384, + "62": 0.15505, + "63": 0.15431, + "64": 0.15388, + "65": 0.1547, + "66": 0.15453, + "67": 0.15364, + "68": 0.15388, + "69": 0.15362, + "70": 0.15366, + "71": 0.15425, + "72": 0.15393, + "73": 0.15476, + "74": 0.15414, + "75": 0.15415, + "76": 0.1535, + "77": 0.15481, + "78": 0.1541, + "79": 0.15382, + "80": 0.15363, + "81": 0.15386, + "82": 0.18555, + "83": 0.15422, + "84": 0.15393, + "85": 0.15462, + "86": 0.15512, + "87": 0.15391, + "88": 0.15431, + "89": 0.15431, + "90": 0.15521, + "91": 0.15475, + "92": 0.154, + "93": 0.15414, + "94": 0.15426, + "95": 0.15422, + "96": 0.15393, + "97": 0.15497, + "98": 0.1538, + "99": 0.15481, + "100": 0.15442 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": "nan", + "17": 2437.0, + "18": 2405.0, + "19": 2950.0, + "20": 1827.0, + "21": 2154.0, + "22": 2731.0, + "23": 2609.0, + "24": 2290.0, + "25": 2325.0, + "26": 2079.0, + "27": 2138.0, + "28": 2702.0, + "29": 2576.0, + "30": 2528.0, + "31": 1895.0, + "32": 2628.0, + "33": 2325.0, + "34": 1928.0, + "35": 2061.0, + "36": 2153.0, + "37": 2600.0, + "38": 2350.0, + "39": 2997.0, + "40": 2053.0, + "41": 3352.0, + "42": 2497.0, + "43": 2867.0, + "44": 2109.0, + "45": 2490.0, + "46": 2279.0, + "47": 3051.0, + "48": 2527.0, + "49": 1973.0, + "50": 2887.0, + "51": 2310.0, + "52": 2526.0, + "53": 3705.0, + "54": 2888.0, + "55": 2440.0, + "56": 2496.0, + "57": 2338.0, + "58": 3283.0, + "59": 2849.0, + "60": 2893.0, + "61": 2956.0, + "62": 3134.0, + "63": 3275.0, + "64": 3176.0, + "65": 2318.0, + "66": 3857.0, + "67": 2606.0, + "68": 3313.0, + "69": 2826.0, + "70": 3665.0, + "71": 3011.0, + "72": 2693.0, + "73": 3357.0, + "74": 2271.0, + "75": 2955.0, + "76": 3617.0, + "77": 3936.0, + "78": 3951.0, + "79": 4065.0, + "80": 3665.0, + "81": 5191.0, + "82": 3511.0, + "83": 3263.0, + "84": 3876.0, + "85": 4048.0, + "86": 3414.0, + "87": 3980.0, + "88": 3617.0, + "89": 4400.0, + "90": 3695.0, + "91": 2857.0, + "92": 4432.0, + "93": 3494.0, + "94": 4438.0, + "95": 4076.0, + "96": 3948.0, + "97": 4242.0, + "98": 4943.0, + "99": 3861.0, + "100": 3631.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts.json new file mode 100644 index 00000000000..646419f3d75 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.8595, + "2": 10.8576, + "3": 10.85984, + "4": 10.85001, + "5": 10.88364, + "6": 10.88818, + "7": 10.86353, + "8": 10.87179, + "9": 10.87022, + "10": 10.845, + "11": 10.88619, + "12": 10.88637, + "13": 10.89401, + "14": 10.9025, + "15": 10.88061, + "16": 10.88557, + "17": 10.86363, + "18": 10.88903, + "19": 10.87964, + "20": 10.87344, + "21": 10.8919, + "22": 10.83039, + "23": 10.89392, + "24": 10.8602, + "25": 10.83015, + "26": 10.82911, + "27": 10.8537, + "28": 10.84349, + "29": 10.85387, + "30": 10.77206, + "31": 10.672, + "32": 10.78864, + "33": 10.77618, + "34": 10.67579, + "35": 10.67298, + "36": 10.63381, + "37": 10.69227, + "38": 10.60773, + "39": 10.70463, + "40": 10.5185, + "41": 10.5453, + "42": 10.56937, + "43": 10.32495, + "44": 10.3911, + "45": 10.28431, + "46": 10.2732, + "47": 10.48175, + "48": 10.25374, + "49": 10.01592, + "50": 10.27755, + "51": 10.21727, + "52": 10.1271, + "53": 10.36018, + "54": 10.25981, + "55": 10.20104, + "56": 9.98213, + "57": 9.84717, + "58": 10.12257, + "59": 9.90914, + "60": 9.83288, + "61": 9.9713, + "62": 10.22005, + "63": 9.67481, + "64": 10.01706, + "65": 9.27085, + "66": 9.93979, + "67": 9.62899, + "68": 9.98681, + "69": 9.9839, + "70": 9.92559, + "71": 9.81011, + "72": 9.79196, + "73": 9.68163, + "74": 9.17945, + "75": 9.61324, + "76": 9.28951, + "77": 10.19435, + "78": 9.8755, + "79": 9.5297, + "80": 9.56593, + "81": 9.63478, + "82": 9.82295, + "83": 9.47164, + "84": 9.54623, + "85": 9.74358, + "86": 9.20093, + "87": 9.70179, + "88": 9.86553, + "89": 9.73045, + "90": 9.92108, + "91": 9.48732, + "92": 9.47637, + "93": 9.21283, + "94": 8.94903, + "95": 9.6165, + "96": 9.63374, + "97": 9.41244, + "98": 9.7751, + "99": 9.00191, + "100": 9.50967 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 284527616.0, + "2": 284527616.0, + "3": 284527616.0, + "4": 284527616.0, + "5": 284527616.0, + "6": 284527616.0, + "7": 284527616.0, + "8": 284527616.0, + "9": 284527616.0, + "10": 284527616.0, + "11": 284527616.0, + "12": 284527616.0, + "13": 284527616.0, + "14": 284527616.0, + "15": 284527616.0, + "16": 416513536.0, + "17": 416513536.0, + "18": 416513536.0, + "19": 416513536.0, + "20": 416513536.0, + "21": 416513536.0, + "22": 416513536.0, + "23": 416513536.0, + "24": 416513536.0, + "25": 416513536.0, + "26": 416513536.0, + "27": 416513536.0, + "28": 416513536.0, + "29": 416513536.0, + "30": 416513536.0, + "31": 416513536.0, + "32": 416513536.0, + "33": 416513536.0, + "34": 416513536.0, + "35": 416513536.0, + "36": 416513536.0, + "37": 416513536.0, + "38": 416513536.0, + "39": 416513536.0, + "40": 416513536.0, + "41": 416513536.0, + "42": 416513536.0, + "43": 416513536.0, + "44": 416513536.0, + "45": 416513536.0, + "46": 416513536.0, + "47": 416513536.0, + "48": 416513536.0, + "49": 416513536.0, + "50": 416513536.0, + "51": 416513536.0, + "52": 416513536.0, + "53": 416513536.0, + "54": 416513536.0, + "55": 416513536.0, + "56": 416513536.0, + "57": 416513536.0, + "58": 416513536.0, + "59": 416513536.0, + "60": 416513536.0, + "61": 416513536.0, + "62": 416513536.0, + "63": 416513536.0, + "64": 416513536.0, + "65": 416513536.0, + "66": 416513536.0, + "67": 416513536.0, + "68": 416513536.0, + "69": 416513536.0, + "70": 416513536.0, + "71": 416513536.0, + "72": 416513536.0, + "73": 416513536.0, + "74": 416513536.0, + "75": 416513536.0, + "76": 416513536.0, + "77": 416513536.0, + "78": 416513536.0, + "79": 416513536.0, + "80": 416513536.0, + "81": 416513536.0, + "82": 416513536.0, + "83": 416513536.0, + "84": 416513536.0, + "85": 416513536.0, + "86": 416513536.0, + "87": 416513536.0, + "88": 416513536.0, + "89": 416513536.0, + "90": 416513536.0, + "91": 416513536.0, + "92": 416513536.0, + "93": 416513536.0, + "94": 416513536.0, + "95": 416513536.0, + "96": 416513536.0, + "97": 416513536.0, + "98": 416513536.0, + "99": 416513536.0, + "100": 416513536.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1465367040.0, + "2": 1465367040.0, + "3": 1465367040.0, + "4": 1465367040.0, + "5": 1465367040.0, + "6": 1465367040.0, + "7": 1465368064.0, + "8": 1465368064.0, + "9": 1465368064.0, + "10": 1465368064.0, + "11": 1465368064.0, + "12": 1465368064.0, + "13": 1465368064.0, + "14": 1465368064.0, + "15": 1465368064.0, + "16": 1465368064.0, + "17": 1597485568.0, + "18": 1597485568.0, + "19": 1597485568.0, + "20": 1597485568.0, + "21": 1597485568.0, + "22": 1597485568.0, + "23": 1597485568.0, + "24": 1597485568.0, + "25": 1597485568.0, + "26": 1597485568.0, + "27": 1597485568.0, + "28": 1597485568.0, + "29": 1597485568.0, + "30": 1597485568.0, + "31": 1597485568.0, + "32": 1597485568.0, + "33": 1597485568.0, + "34": 1597485568.0, + "35": 1597485568.0, + "36": 1597485568.0, + "37": 1597485568.0, + "38": 1597485568.0, + "39": 1597485568.0, + "40": 1597485568.0, + "41": 1597485568.0, + "42": 1597485568.0, + "43": 1597485568.0, + "44": 1597485568.0, + "45": 1597485568.0, + "46": 1597485568.0, + "47": 1597485568.0, + "48": 1597485568.0, + "49": 1597485568.0, + "50": 1597485568.0, + "51": 1597485568.0, + "52": 1597485568.0, + "53": 1597485568.0, + "54": 1597485568.0, + "55": 1597485568.0, + "56": 1597485568.0, + "57": 1597485568.0, + "58": 1597485568.0, + "59": 1597485568.0, + "60": 1597485568.0, + "61": 1597485568.0, + "62": 1597485568.0, + "63": 1597485568.0, + "64": 1597485568.0, + "65": 1597485568.0, + "66": 1597485568.0, + "67": 1597485568.0, + "68": 1597485568.0, + "69": 1597485568.0, + "70": 1597485568.0, + "71": 1597485568.0, + "72": 1597485568.0, + "73": 1597485568.0, + "74": 1597485568.0, + "75": 1597485568.0, + "76": 1597485568.0, + "77": 1597485568.0, + "78": 1597485568.0, + "79": 1597485568.0, + "80": 1597485568.0, + "81": 1597485568.0, + "82": 1597485568.0, + "83": 1597485568.0, + "84": 1597485568.0, + "85": 1597485568.0, + "86": 1597485568.0, + "87": 1597485568.0, + "88": 1597485568.0, + "89": 1597485568.0, + "90": 1597485568.0, + "91": 1597485568.0, + "92": 1597485568.0, + "93": 1597485568.0, + "94": 1597485568.0, + "95": 1597485568.0, + "96": 1597485568.0, + "97": 1597485568.0, + "98": 1597485568.0, + "99": 1597485568.0, + "100": 1597485568.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 3.93622, + "2": 0.31349, + "3": 0.28163, + "4": 0.27921, + "5": 0.27918, + "6": 0.27813, + "7": 0.27823, + "8": 0.27889, + "9": 0.27839, + "10": 0.2785, + "11": 0.27567, + "12": 0.27474, + "13": 0.2746, + "14": 0.27424, + "15": 0.27387, + "16": 0.4724, + "17": 0.27409, + "18": 0.28601, + "19": 0.28651, + "20": 0.28586, + "21": 0.29036, + "22": 0.27749, + "23": 0.29042, + "24": 0.29143, + "25": 0.29191, + "26": 0.29136, + "27": 0.29223, + "28": 0.29253, + "29": 0.29127, + "30": 0.29158, + "31": 0.29283, + "32": 0.29224, + "33": 0.29404, + "34": 0.29214, + "35": 0.29125, + "36": 0.29141, + "37": 0.29119, + "38": 0.29131, + "39": 0.29195, + "40": 0.29134, + "41": 0.29104, + "42": 0.2909, + "43": 0.29202, + "44": 0.29149, + "45": 0.29285, + "46": 0.29117, + "47": 0.29278, + "48": 0.29328, + "49": 0.2921, + "50": 0.29144, + "51": 0.2946, + "52": 0.29041, + "53": 0.28952, + "54": 0.28982, + "55": 0.28907, + "56": 0.28812, + "57": 0.2882, + "58": 0.29098, + "59": 0.29394, + "60": 0.29381, + "61": 0.29366, + "62": 0.29495, + "63": 0.29248, + "64": 0.29429, + "65": 0.29369, + "66": 0.29315, + "67": 0.29284, + "68": 0.2941, + "69": 0.29349, + "70": 0.29458, + "71": 0.29385, + "72": 0.29691, + "73": 0.29214, + "74": 0.292, + "75": 0.29157, + "76": 0.29169, + "77": 0.29162, + "78": 0.2922, + "79": 0.29243, + "80": 0.29113, + "81": 0.2927, + "82": 0.29109, + "83": 0.29115, + "84": 0.29064, + "85": 0.29302, + "86": 0.29203, + "87": 0.29135, + "88": 0.29306, + "89": 0.29406, + "90": 0.29439, + "91": 0.29348, + "92": 0.30393, + "93": 0.29287, + "94": 0.29232, + "95": 0.29711, + "96": 0.29103, + "97": 0.29472, + "98": 0.29334, + "99": 0.29389, + "100": 0.29184 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": 2308.0, + "17": "nan", + "18": 2336.0, + "19": 2843.0, + "20": 1690.0, + "21": 2021.0, + "22": "nan", + "23": 2506.0, + "24": 2095.0, + "25": 2035.0, + "26": 1875.0, + "27": 2000.0, + "28": 2435.0, + "29": 2512.0, + "30": 2279.0, + "31": 1598.0, + "32": 2494.0, + "33": 2128.0, + "34": 1682.0, + "35": 1868.0, + "36": 1970.0, + "37": 2549.0, + "38": 2069.0, + "39": 2950.0, + "40": 1905.0, + "41": 3069.0, + "42": 2521.0, + "43": 2635.0, + "44": 1835.0, + "45": 2455.0, + "46": 2204.0, + "47": 2799.0, + "48": 2423.0, + "49": 1759.0, + "50": 2677.0, + "51": 2195.0, + "52": 2330.0, + "53": 3549.0, + "54": 2650.0, + "55": 2247.0, + "56": 2422.0, + "57": 2195.0, + "58": 3241.0, + "59": 2626.0, + "60": 2775.0, + "61": 2747.0, + "62": 2926.0, + "63": 2898.0, + "64": 3090.0, + "65": 2245.0, + "66": 3827.0, + "67": 2655.0, + "68": 3117.0, + "69": 2656.0, + "70": 3659.0, + "71": 2819.0, + "72": 2710.0, + "73": 3355.0, + "74": 2210.0, + "75": 2927.0, + "76": 3577.0, + "77": 3727.0, + "78": 3855.0, + "79": 4237.0, + "80": 3462.0, + "81": 5157.0, + "82": 3426.0, + "83": 3234.0, + "84": 3878.0, + "85": 3734.0, + "86": 3184.0, + "87": 4090.0, + "88": 3594.0, + "89": 4234.0, + "90": 3744.0, + "91": 2967.0, + "92": 4509.0, + "93": 3649.0, + "94": 4486.0, + "95": 4215.0, + "96": 3851.0, + "97": 4098.0, + "98": 5029.0, + "99": 3975.0, + "100": 3445.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts_dgx_a100.json index c8abc0e775c..9f83249318a 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.86104, "5": 10.88371, "10": 10.84263, "15": 10.87935, "20": 10.87405, "25": 10.82867, "30": 10.77191, "35": 10.67622, "40": 10.517, "45": 10.28436, "50": 10.27861, "55": 10.20112, "60": 9.83306, "65": 9.26979, "70": 9.92662, "75": 9.61385, "80": 9.56419, "85": 9.74319, "90": 9.92148, "95": 9.6163, "100": 9.5087}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 284527616.0, "5": 284527616.0, "10": 284527616.0, "15": 284527616.0, "20": 416513536.0, "25": 416513536.0, "30": 416513536.0, "35": 416513536.0, "40": 416513536.0, "45": 416513536.0, "50": 416513536.0, "55": 416513536.0, "60": 416513536.0, "65": 416513536.0, "70": 416513536.0, "75": 416513536.0, "80": 416513536.0, "85": 416513536.0, "90": 416513536.0, "95": 416513536.0, "100": 416513536.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1465368064.0, "5": 1465368576.0, "10": 1465368576.0, "15": 1465368576.0, "20": 1596305408.0, "25": 1596305920.0, "30": 1596305920.0, "35": 1596305920.0, "40": 1596305920.0, "45": 1596305920.0, "50": 1596305920.0, "55": 1596305920.0, "60": 1596305920.0, "65": 1596305920.0, "70": 1596305920.0, "75": 1596305920.0, "80": 1596305920.0, "85": 1596305920.0, "90": 1596305920.0, "95": 1596305920.0, "100": 1596305920.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 7.32922, "5": 0.3111, "10": 0.3117, "15": 0.30486, "20": 0.3229, "25": 0.31791, "30": 0.31805, "35": 0.32249, "40": 0.32048, "45": 0.32173, "50": 0.31691, "55": 0.31145, "60": 0.31713, "65": 0.31381, "70": 0.31308, "75": 0.31799, "80": 0.31492, "85": 0.31756, "90": 0.31282, "95": 0.41456, "100": 0.30993}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": "nan", "5": "nan", "10": "nan", "15": "nan", "20": 1777.0, "25": 2124.0, "30": 2262.0, "35": 1763.0, "40": 1875.0, "45": 2434.0, "50": 2634.0, "55": 2383.0, "60": 2832.0, "65": 2223.0, "70": 3836.0, "75": 2913.0, "80": 3398.0, "85": 3618.0, "90": 3676.0, "95": 4082.0, "100": 3502.0}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.8595, + "2": 10.8576, + "3": 10.85984, + "4": 10.85001, + "5": 10.88364, + "6": 10.88818, + "7": 10.86353, + "8": 10.87179, + "9": 10.87022, + "10": 10.845, + "11": 10.88619, + "12": 10.88637, + "13": 10.89401, + "14": 10.9025, + "15": 10.88061, + "16": 10.88557, + "17": 10.86363, + "18": 10.88903, + "19": 10.87964, + "20": 10.87344, + "21": 10.8919, + "22": 10.83039, + "23": 10.89392, + "24": 10.8602, + "25": 10.83015, + "26": 10.82911, + "27": 10.8537, + "28": 10.84349, + "29": 10.85387, + "30": 10.77206, + "31": 10.672, + "32": 10.78864, + "33": 10.77618, + "34": 10.67579, + "35": 10.67298, + "36": 10.63381, + "37": 10.69227, + "38": 10.60773, + "39": 10.70463, + "40": 10.5185, + "41": 10.5453, + "42": 10.56937, + "43": 10.32495, + "44": 10.3911, + "45": 10.28431, + "46": 10.2732, + "47": 10.48175, + "48": 10.25374, + "49": 10.01592, + "50": 10.27755, + "51": 10.21727, + "52": 10.1271, + "53": 10.36018, + "54": 10.25981, + "55": 10.20104, + "56": 9.98213, + "57": 9.84717, + "58": 10.12257, + "59": 9.90914, + "60": 9.83288, + "61": 9.9713, + "62": 10.22005, + "63": 9.67481, + "64": 10.01706, + "65": 9.27085, + "66": 9.93979, + "67": 9.62899, + "68": 9.98681, + "69": 9.9839, + "70": 9.92559, + "71": 9.81011, + "72": 9.79196, + "73": 9.68163, + "74": 9.17945, + "75": 9.61324, + "76": 9.28951, + "77": 10.19435, + "78": 9.8755, + "79": 9.5297, + "80": 9.56593, + "81": 9.63478, + "82": 9.82295, + "83": 9.47164, + "84": 9.54623, + "85": 9.74358, + "86": 9.20093, + "87": 9.70179, + "88": 9.86553, + "89": 9.73045, + "90": 9.92108, + "91": 9.48732, + "92": 9.47637, + "93": 9.21283, + "94": 8.94903, + "95": 9.6165, + "96": 9.63374, + "97": 9.41244, + "98": 9.7751, + "99": 9.00191, + "100": 9.50967 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 284527616.0, + "2": 284527616.0, + "3": 284527616.0, + "4": 284527616.0, + "5": 284527616.0, + "6": 284527616.0, + "7": 284527616.0, + "8": 284527616.0, + "9": 284527616.0, + "10": 284527616.0, + "11": 284527616.0, + "12": 284527616.0, + "13": 284527616.0, + "14": 284527616.0, + "15": 284527616.0, + "16": 416513536.0, + "17": 416513536.0, + "18": 416513536.0, + "19": 416513536.0, + "20": 416513536.0, + "21": 416513536.0, + "22": 416513536.0, + "23": 416513536.0, + "24": 416513536.0, + "25": 416513536.0, + "26": 416513536.0, + "27": 416513536.0, + "28": 416513536.0, + "29": 416513536.0, + "30": 416513536.0, + "31": 416513536.0, + "32": 416513536.0, + "33": 416513536.0, + "34": 416513536.0, + "35": 416513536.0, + "36": 416513536.0, + "37": 416513536.0, + "38": 416513536.0, + "39": 416513536.0, + "40": 416513536.0, + "41": 416513536.0, + "42": 416513536.0, + "43": 416513536.0, + "44": 416513536.0, + "45": 416513536.0, + "46": 416513536.0, + "47": 416513536.0, + "48": 416513536.0, + "49": 416513536.0, + "50": 416513536.0, + "51": 416513536.0, + "52": 416513536.0, + "53": 416513536.0, + "54": 416513536.0, + "55": 416513536.0, + "56": 416513536.0, + "57": 416513536.0, + "58": 416513536.0, + "59": 416513536.0, + "60": 416513536.0, + "61": 416513536.0, + "62": 416513536.0, + "63": 416513536.0, + "64": 416513536.0, + "65": 416513536.0, + "66": 416513536.0, + "67": 416513536.0, + "68": 416513536.0, + "69": 416513536.0, + "70": 416513536.0, + "71": 416513536.0, + "72": 416513536.0, + "73": 416513536.0, + "74": 416513536.0, + "75": 416513536.0, + "76": 416513536.0, + "77": 416513536.0, + "78": 416513536.0, + "79": 416513536.0, + "80": 416513536.0, + "81": 416513536.0, + "82": 416513536.0, + "83": 416513536.0, + "84": 416513536.0, + "85": 416513536.0, + "86": 416513536.0, + "87": 416513536.0, + "88": 416513536.0, + "89": 416513536.0, + "90": 416513536.0, + "91": 416513536.0, + "92": 416513536.0, + "93": 416513536.0, + "94": 416513536.0, + "95": 416513536.0, + "96": 416513536.0, + "97": 416513536.0, + "98": 416513536.0, + "99": 416513536.0, + "100": 416513536.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1465367040.0, + "2": 1465367552.0, + "3": 1465367552.0, + "4": 1465367552.0, + "5": 1465367552.0, + "6": 1465367552.0, + "7": 1465367552.0, + "8": 1465367552.0, + "9": 1465367552.0, + "10": 1465367552.0, + "11": 1465367552.0, + "12": 1465367552.0, + "13": 1465367552.0, + "14": 1465367552.0, + "15": 1465367552.0, + "16": 1465367552.0, + "17": 1597485568.0, + "18": 1597485568.0, + "19": 1597485568.0, + "20": 1597485568.0, + "21": 1597485568.0, + "22": 1597485568.0, + "23": 1597485568.0, + "24": 1597485568.0, + "25": 1597485568.0, + "26": 1597485568.0, + "27": 1597485568.0, + "28": 1597485568.0, + "29": 1597485568.0, + "30": 1597485568.0, + "31": 1597485568.0, + "32": 1597485568.0, + "33": 1597485568.0, + "34": 1597485568.0, + "35": 1597485568.0, + "36": 1597485568.0, + "37": 1597485568.0, + "38": 1597485568.0, + "39": 1597485568.0, + "40": 1597485568.0, + "41": 1597485568.0, + "42": 1597485568.0, + "43": 1597485568.0, + "44": 1597485568.0, + "45": 1597485568.0, + "46": 1597485568.0, + "47": 1597485568.0, + "48": 1597485568.0, + "49": 1597485568.0, + "50": 1597485568.0, + "51": 1597485568.0, + "52": 1597485568.0, + "53": 1597485568.0, + "54": 1597485568.0, + "55": 1597485568.0, + "56": 1597485568.0, + "57": 1597485568.0, + "58": 1597485568.0, + "59": 1597485568.0, + "60": 1597485568.0, + "61": 1597485568.0, + "62": 1597485568.0, + "63": 1597485568.0, + "64": 1597485568.0, + "65": 1597485568.0, + "66": 1597485568.0, + "67": 1597485568.0, + "68": 1597485568.0, + "69": 1597485568.0, + "70": 1597485568.0, + "71": 1597485568.0, + "72": 1597485568.0, + "73": 1597485568.0, + "74": 1597485568.0, + "75": 1597485568.0, + "76": 1597485568.0, + "77": 1597485568.0, + "78": 1597485568.0, + "79": 1597485568.0, + "80": 1597485568.0, + "81": 1597485568.0, + "82": 1597485568.0, + "83": 1597485568.0, + "84": 1597485568.0, + "85": 1597485568.0, + "86": 1597485568.0, + "87": 1597485568.0, + "88": 1597485568.0, + "89": 1597485568.0, + "90": 1597485568.0, + "91": 1597485568.0, + "92": 1597485568.0, + "93": 1597485568.0, + "94": 1597485568.0, + "95": 1597485568.0, + "96": 1597485568.0, + "97": 1597485568.0, + "98": 1597485568.0, + "99": 1597485568.0, + "100": 1597485568.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 3.81628, + "2": 0.32142, + "3": 0.27555, + "4": 0.28299, + "5": 0.28901, + "6": 0.28043, + "7": 0.29138, + "8": 0.30944, + "9": 0.28461, + "10": 0.28789, + "11": 0.28709, + "12": 0.29186, + "13": 0.29114, + "14": 0.29464, + "15": 0.31626, + "16": 0.48847, + "17": 0.28436, + "18": 0.30264, + "19": 0.29287, + "20": 0.30599, + "21": 0.29335, + "22": 0.27957, + "23": 0.29491, + "24": 0.29371, + "25": 0.29398, + "26": 0.29344, + "27": 0.29457, + "28": 0.29449, + "29": 0.29412, + "30": 0.29337, + "31": 0.29404, + "32": 0.29391, + "33": 0.29483, + "34": 0.29389, + "35": 0.29433, + "36": 0.29449, + "37": 0.29463, + "38": 0.29428, + "39": 0.29385, + "40": 0.29379, + "41": 0.29345, + "42": 0.29404, + "43": 0.29413, + "44": 0.29357, + "45": 0.29308, + "46": 0.29302, + "47": 0.29311, + "48": 0.29341, + "49": 0.2946, + "50": 0.29365, + "51": 0.29978, + "52": 0.31599, + "53": 0.29361, + "54": 0.29341, + "55": 0.29321, + "56": 0.29262, + "57": 0.29474, + "58": 0.29427, + "59": 0.29281, + "60": 0.29314, + "61": 0.29219, + "62": 0.29346, + "63": 0.29348, + "64": 0.30211, + "65": 0.29324, + "66": 0.29357, + "67": 0.29314, + "68": 0.29229, + "69": 0.30197, + "70": 0.29329, + "71": 0.30206, + "72": 0.29435, + "73": 0.29495, + "74": 0.2943, + "75": 0.29926, + "76": 0.29332, + "77": 0.29464, + "78": 0.29342, + "79": 0.29434, + "80": 0.29439, + "81": 0.29391, + "82": 0.29436, + "83": 0.29426, + "84": 0.29408, + "85": 0.29452, + "86": 0.29406, + "87": 0.29421, + "88": 0.29373, + "89": 0.29437, + "90": 0.29425, + "91": 0.29383, + "92": 0.2933, + "93": 0.29369, + "94": 0.2937, + "95": 0.29465, + "96": 0.29439, + "97": 0.29435, + "98": 0.2952, + "99": 0.29361, + "100": 0.2936 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": 2308.0, + "17": "nan", + "18": 2336.0, + "19": 2843.0, + "20": 1690.0, + "21": 2021.0, + "22": "nan", + "23": 2506.0, + "24": 2095.0, + "25": 2035.0, + "26": 1875.0, + "27": 2000.0, + "28": 2435.0, + "29": 2512.0, + "30": 2279.0, + "31": 1598.0, + "32": 2494.0, + "33": 2128.0, + "34": 1682.0, + "35": 1868.0, + "36": 1970.0, + "37": 2549.0, + "38": 2069.0, + "39": 2950.0, + "40": 1905.0, + "41": 3069.0, + "42": 2521.0, + "43": 2635.0, + "44": 1835.0, + "45": 2455.0, + "46": 2204.0, + "47": 2799.0, + "48": 2423.0, + "49": 1759.0, + "50": 2677.0, + "51": 2195.0, + "52": 2330.0, + "53": 3549.0, + "54": 2650.0, + "55": 2247.0, + "56": 2422.0, + "57": 2195.0, + "58": 3241.0, + "59": 2626.0, + "60": 2775.0, + "61": 2747.0, + "62": 2926.0, + "63": 2898.0, + "64": 3090.0, + "65": 2245.0, + "66": 3827.0, + "67": 2655.0, + "68": 3117.0, + "69": 2656.0, + "70": 3659.0, + "71": 2819.0, + "72": 2710.0, + "73": 3355.0, + "74": 2210.0, + "75": 2927.0, + "76": 3577.0, + "77": 3727.0, + "78": 3855.0, + "79": 4237.0, + "80": 3462.0, + "81": 5157.0, + "82": 3426.0, + "83": 3234.0, + "84": 3878.0, + "85": 3734.0, + "86": 3184.0, + "87": 4090.0, + "88": 3594.0, + "89": 4234.0, + "90": 3744.0, + "91": 2967.0, + "92": 4509.0, + "93": 3649.0, + "94": 4486.0, + "95": 4215.0, + "96": 3851.0, + "97": 4098.0, + "98": 5029.0, + "99": 3975.0, + "100": 3445.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts.json new file mode 100644 index 00000000000..a7feec6d207 --- /dev/null +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts.json @@ -0,0 +1,537 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.8595, + "2": 10.8576, + "3": 10.85984, + "4": 10.85001, + "5": 10.88364, + "6": 10.88818, + "7": 10.86353, + "8": 10.87179, + "9": 10.87022, + "10": 10.845, + "11": 10.88619, + "12": 10.88637, + "13": 10.89401, + "14": 10.9025, + "15": 10.88061, + "16": 10.88557, + "17": 10.86363, + "18": 10.88903, + "19": 10.87964, + "20": 10.87344, + "21": 10.8919, + "22": 10.83039, + "23": 10.89392, + "24": 10.8602, + "25": 10.83015, + "26": 10.82911, + "27": 10.8537, + "28": 10.84349, + "29": 10.85387, + "30": 10.77206, + "31": 10.672, + "32": 10.78864, + "33": 10.77618, + "34": 10.67579, + "35": 10.67298, + "36": 10.63381, + "37": 10.69227, + "38": 10.60773, + "39": 10.70463, + "40": 10.5185, + "41": 10.5453, + "42": 10.56937, + "43": 10.32495, + "44": 10.3911, + "45": 10.28431, + "46": 10.2732, + "47": 10.48175, + "48": 10.25374, + "49": 10.01592, + "50": 10.27755, + "51": 10.21727, + "52": 10.1271, + "53": 10.36018, + "54": 10.25981, + "55": 10.20104, + "56": 9.98213, + "57": 9.84717, + "58": 10.12257, + "59": 9.90914, + "60": 9.83288, + "61": 9.9713, + "62": 10.22005, + "63": 9.67481, + "64": 10.01706, + "65": 9.27085, + "66": 9.93979, + "67": 9.62899, + "68": 9.98681, + "69": 9.9839, + "70": 9.92559, + "71": 9.81011, + "72": 9.79196, + "73": 9.68163, + "74": 9.17945, + "75": 9.61324, + "76": 9.28951, + "77": 10.19435, + "78": 9.8755, + "79": 9.5297, + "80": 9.56593, + "81": 9.63478, + "82": 9.82295, + "83": 9.47164, + "84": 9.54623, + "85": 9.74358, + "86": 9.20093, + "87": 9.70179, + "88": 9.86553, + "89": 9.73045, + "90": 9.92108, + "91": 9.48732, + "92": 9.47637, + "93": 9.21283, + "94": 8.94903, + "95": 9.6165, + "96": 9.63374, + "97": 9.41244, + "98": 9.7751, + "99": 9.00191, + "100": 9.50967 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 284527616.0, + "2": 284527616.0, + "3": 284527616.0, + "4": 284527616.0, + "5": 284527616.0, + "6": 284527616.0, + "7": 284527616.0, + "8": 284527616.0, + "9": 284527616.0, + "10": 284527616.0, + "11": 284527616.0, + "12": 284527616.0, + "13": 284527616.0, + "14": 284527616.0, + "15": 284527616.0, + "16": 416513536.0, + "17": 416513536.0, + "18": 416513536.0, + "19": 416513536.0, + "20": 416513536.0, + "21": 416513536.0, + "22": 416513536.0, + "23": 416513536.0, + "24": 416513536.0, + "25": 416513536.0, + "26": 416513536.0, + "27": 416513536.0, + "28": 416513536.0, + "29": 416513536.0, + "30": 416513536.0, + "31": 416513536.0, + "32": 416513536.0, + "33": 416513536.0, + "34": 416513536.0, + "35": 416513536.0, + "36": 416513536.0, + "37": 416513536.0, + "38": 416513536.0, + "39": 416513536.0, + "40": 416513536.0, + "41": 416513536.0, + "42": 416513536.0, + "43": 416513536.0, + "44": 416513536.0, + "45": 416513536.0, + "46": 416513536.0, + "47": 416513536.0, + "48": 416513536.0, + "49": 416513536.0, + "50": 416513536.0, + "51": 416513536.0, + "52": 416513536.0, + "53": 416513536.0, + "54": 416513536.0, + "55": 416513536.0, + "56": 416513536.0, + "57": 416513536.0, + "58": 416513536.0, + "59": 416513536.0, + "60": 416513536.0, + "61": 416513536.0, + "62": 416513536.0, + "63": 416513536.0, + "64": 416513536.0, + "65": 416513536.0, + "66": 416513536.0, + "67": 416513536.0, + "68": 416513536.0, + "69": 416513536.0, + "70": 416513536.0, + "71": 416513536.0, + "72": 416513536.0, + "73": 416513536.0, + "74": 416513536.0, + "75": 416513536.0, + "76": 416513536.0, + "77": 416513536.0, + "78": 416513536.0, + "79": 416513536.0, + "80": 416513536.0, + "81": 416513536.0, + "82": 416513536.0, + "83": 416513536.0, + "84": 416513536.0, + "85": 416513536.0, + "86": 416513536.0, + "87": 416513536.0, + "88": 416513536.0, + "89": 416513536.0, + "90": 416513536.0, + "91": 416513536.0, + "92": 416513536.0, + "93": 416513536.0, + "94": 416513536.0, + "95": 416513536.0, + "96": 416513536.0, + "97": 416513536.0, + "98": 416513536.0, + "99": 416513536.0, + "100": 416513536.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1465367040.0, + "2": 1465368576.0, + "3": 1465368576.0, + "4": 1465368576.0, + "5": 1465368576.0, + "6": 1465368576.0, + "7": 1465368576.0, + "8": 1465368576.0, + "9": 1465368576.0, + "10": 1465368576.0, + "11": 1465368576.0, + "12": 1465368576.0, + "13": 1465368576.0, + "14": 1465368576.0, + "15": 1465368576.0, + "16": 1465368576.0, + "17": 1597092352.0, + "18": 1597484544.0, + "19": 1597485568.0, + "20": 1597485568.0, + "21": 1597485568.0, + "22": 1597485568.0, + "23": 1597485568.0, + "24": 1597485568.0, + "25": 1597485568.0, + "26": 1597485568.0, + "27": 1597485568.0, + "28": 1597485568.0, + "29": 1597485568.0, + "30": 1597485568.0, + "31": 1597485568.0, + "32": 1597485568.0, + "33": 1597485568.0, + "34": 1597485568.0, + "35": 1597485568.0, + "36": 1597485568.0, + "37": 1597485568.0, + "38": 1597485568.0, + "39": 1597485568.0, + "40": 1597485568.0, + "41": 1597485568.0, + "42": 1597485568.0, + "43": 1597485568.0, + "44": 1597485568.0, + "45": 1597485568.0, + "46": 1597485568.0, + "47": 1597485568.0, + "48": 1597485568.0, + "49": 1597485568.0, + "50": 1597485568.0, + "51": 1597485568.0, + "52": 1597485568.0, + "53": 1597485568.0, + "54": 1597485568.0, + "55": 1597485568.0, + "56": 1597485568.0, + "57": 1597485568.0, + "58": 1597485568.0, + "59": 1597485568.0, + "60": 1597485568.0, + "61": 1597485568.0, + "62": 1597485568.0, + "63": 1597485568.0, + "64": 1597485568.0, + "65": 1597485568.0, + "66": 1597485568.0, + "67": 1597485568.0, + "68": 1597485568.0, + "69": 1597485568.0, + "70": 1597485568.0, + "71": 1597485568.0, + "72": 1597485568.0, + "73": 1597485568.0, + "74": 1597485568.0, + "75": 1597485568.0, + "76": 1597485568.0, + "77": 1597485568.0, + "78": 1597485568.0, + "79": 1597485568.0, + "80": 1597485568.0, + "81": 1597485568.0, + "82": 1597485568.0, + "83": 1597485568.0, + "84": 1597485568.0, + "85": 1597485568.0, + "86": 1597485568.0, + "87": 1597485568.0, + "88": 1597485568.0, + "89": 1597485568.0, + "90": 1597485568.0, + "91": 1597485568.0, + "92": 1597485568.0, + "93": 1597485568.0, + "94": 1597485568.0, + "95": 1597485568.0, + "96": 1597485568.0, + "97": 1597485568.0, + "98": 1597485568.0, + "99": 1597485568.0, + "100": 1597485568.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 3.79491, + "2": 0.31619, + "3": 0.28095, + "4": 0.28167, + "5": 0.28111, + "6": 0.28053, + "7": 0.27397, + "8": 0.27382, + "9": 0.2729, + "10": 0.28341, + "11": 0.27301, + "12": 0.27739, + "13": 0.27433, + "14": 0.27589, + "15": 0.27377, + "16": 0.45757, + "17": 0.28453, + "18": 0.29428, + "19": 0.29061, + "20": 0.28748, + "21": 0.28947, + "22": 0.27305, + "23": 0.28802, + "24": 0.29052, + "25": 0.28857, + "26": 0.28938, + "27": 0.28789, + "28": 0.29629, + "29": 0.29633, + "30": 0.29452, + "31": 0.29612, + "32": 0.29638, + "33": 0.29802, + "34": 0.29681, + "35": 0.29807, + "36": 0.29648, + "37": 0.29732, + "38": 0.29691, + "39": 0.29854, + "40": 0.29738, + "41": 0.29825, + "42": 0.29748, + "43": 0.29734, + "44": 0.29746, + "45": 0.29836, + "46": 0.29887, + "47": 0.29739, + "48": 0.29926, + "49": 0.29788, + "50": 0.29895, + "51": 0.29828, + "52": 0.29254, + "53": 0.29242, + "54": 0.29234, + "55": 0.29132, + "56": 0.29158, + "57": 0.29153, + "58": 0.29113, + "59": 0.29239, + "60": 0.29622, + "61": 0.29477, + "62": 0.29358, + "63": 0.29465, + "64": 0.29445, + "65": 0.29533, + "66": 0.29531, + "67": 0.29354, + "68": 0.29434, + "69": 0.29379, + "70": 0.29468, + "71": 0.29423, + "72": 0.29484, + "73": 0.29584, + "74": 0.2949, + "75": 0.29561, + "76": 0.29586, + "77": 0.29535, + "78": 0.29491, + "79": 0.29562, + "80": 0.29515, + "81": 0.2951, + "82": 0.29484, + "83": 0.2928, + "84": 0.29076, + "85": 0.29104, + "86": 0.29208, + "87": 0.29116, + "88": 0.29384, + "89": 0.29252, + "90": 0.29125, + "91": 0.29184, + "92": 0.29214, + "93": 0.29151, + "94": 0.29183, + "95": 0.29202, + "96": 0.29138, + "97": 0.29213, + "98": 0.2924, + "99": 0.29154, + "100": 0.29129 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": 2308.0, + "17": "nan", + "18": 2336.0, + "19": 2843.0, + "20": 1690.0, + "21": 2021.0, + "22": "nan", + "23": 2506.0, + "24": 2095.0, + "25": 2035.0, + "26": 1875.0, + "27": 2000.0, + "28": 2435.0, + "29": 2512.0, + "30": 2279.0, + "31": 1598.0, + "32": 2494.0, + "33": 2128.0, + "34": 1682.0, + "35": 1868.0, + "36": 1970.0, + "37": 2549.0, + "38": 2069.0, + "39": 2950.0, + "40": 1905.0, + "41": 3069.0, + "42": 2521.0, + "43": 2635.0, + "44": 1835.0, + "45": 2455.0, + "46": 2204.0, + "47": 2799.0, + "48": 2423.0, + "49": 1759.0, + "50": 2677.0, + "51": 2195.0, + "52": 2330.0, + "53": 3549.0, + "54": 2650.0, + "55": 2247.0, + "56": 2422.0, + "57": 2195.0, + "58": 3241.0, + "59": 2626.0, + "60": 2775.0, + "61": 2747.0, + "62": 2926.0, + "63": 2898.0, + "64": 3090.0, + "65": 2245.0, + "66": 3827.0, + "67": 2655.0, + "68": 3117.0, + "69": 2656.0, + "70": 3659.0, + "71": 2819.0, + "72": 2710.0, + "73": 3355.0, + "74": 2210.0, + "75": 2927.0, + "76": 3577.0, + "77": 3727.0, + "78": 3855.0, + "79": 4237.0, + "80": 3462.0, + "81": 5157.0, + "82": 3426.0, + "83": 3234.0, + "84": 3878.0, + "85": 3734.0, + "86": 3184.0, + "87": 4090.0, + "88": 3594.0, + "89": 4234.0, + "90": 3744.0, + "91": 2967.0, + "92": 4509.0, + "93": 3649.0, + "94": 4486.0, + "95": 4215.0, + "96": 3851.0, + "97": 4098.0, + "98": 5029.0, + "99": 3975.0, + "100": 3445.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts_dgx_a100.json index f9728255608..0eef09cf2c1 100644 --- a/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/gpt/gpt3_mcore_tp4_pp1_resume_torch_dist/golden_values_lts_dgx_a100.json @@ -1 +1,537 @@ -{"lm loss": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 10.86104, "5": 10.88371, "10": 10.84263, "15": 10.87935, "20": 10.87405, "25": 10.82867, "30": 10.77191, "35": 10.67622, "40": 10.517, "45": 10.28436, "50": 10.27861, "55": 10.20112, "60": 9.83306, "65": 9.26979, "70": 9.92662, "75": 9.61385, "80": 9.56419, "85": 9.74319, "90": 9.92148, "95": 9.6163, "100": 9.5087}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 284527616.0, "5": 284527616.0, "10": 284527616.0, "15": 284527616.0, "20": 416513536.0, "25": 416513536.0, "30": 416513536.0, "35": 416513536.0, "40": 416513536.0, "45": 416513536.0, "50": 416513536.0, "55": 416513536.0, "60": 416513536.0, "65": 416513536.0, "70": 416513536.0, "75": 416513536.0, "80": 416513536.0, "85": 416513536.0, "90": 416513536.0, "95": 416513536.0, "100": 416513536.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 1465368064.0, "5": 1465368576.0, "10": 1465368576.0, "15": 1465368576.0, "20": 1596305920.0, "25": 1596305920.0, "30": 1596305920.0, "35": 1596305920.0, "40": 1596305920.0, "45": 1596305920.0, "50": 1596305920.0, "55": 1596305920.0, "60": 1596305920.0, "65": 1596305920.0, "70": 1596305920.0, "75": 1596305920.0, "80": 1596305920.0, "85": 1596305920.0, "90": 1596305920.0, "95": 1596305920.0, "100": 1596305920.0}}, "iteration-time": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": 8.79594, "5": 0.30836, "10": 0.30237, "15": 0.30482, "20": 0.31834, "25": 0.31761, "30": 0.31732, "35": 0.31511, "40": 0.31755, "45": 0.31516, "50": 0.31689, "55": 0.31106, "60": 0.31323, "65": 0.31051, "70": 0.31046, "75": 0.31201, "80": 0.30466, "85": 0.3063, "90": 0.30526, "95": 0.30371, "100": 0.30515}}, "num-zeros": {"start_step": 1, "end_step": 100, "step_interval": 5, "values": {"1": "nan", "5": "nan", "10": "nan", "15": "nan", "20": 1777.0, "25": 2124.0, "30": 2262.0, "35": 1763.0, "40": 1875.0, "45": 2434.0, "50": 2634.0, "55": 2383.0, "60": 2832.0, "65": 2223.0, "70": 3836.0, "75": 2913.0, "80": 3398.0, "85": 3618.0, "90": 3676.0, "95": 4082.0, "100": 3502.0}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 10.8595, + "2": 10.8576, + "3": 10.85984, + "4": 10.85001, + "5": 10.88364, + "6": 10.88818, + "7": 10.86353, + "8": 10.87179, + "9": 10.87022, + "10": 10.845, + "11": 10.88619, + "12": 10.88637, + "13": 10.89401, + "14": 10.9025, + "15": 10.88061, + "16": 10.88557, + "17": 10.86363, + "18": 10.88903, + "19": 10.87964, + "20": 10.87344, + "21": 10.8919, + "22": 10.83039, + "23": 10.89392, + "24": 10.8602, + "25": 10.83015, + "26": 10.82911, + "27": 10.8537, + "28": 10.84349, + "29": 10.85387, + "30": 10.77206, + "31": 10.672, + "32": 10.78864, + "33": 10.77618, + "34": 10.67579, + "35": 10.67298, + "36": 10.63381, + "37": 10.69227, + "38": 10.60773, + "39": 10.70463, + "40": 10.5185, + "41": 10.5453, + "42": 10.56937, + "43": 10.32495, + "44": 10.3911, + "45": 10.28431, + "46": 10.2732, + "47": 10.48175, + "48": 10.25374, + "49": 10.01592, + "50": 10.27755, + "51": 10.21727, + "52": 10.1271, + "53": 10.36018, + "54": 10.25981, + "55": 10.20104, + "56": 9.98213, + "57": 9.84717, + "58": 10.12257, + "59": 9.90914, + "60": 9.83288, + "61": 9.9713, + "62": 10.22005, + "63": 9.67481, + "64": 10.01706, + "65": 9.27085, + "66": 9.93979, + "67": 9.62899, + "68": 9.98681, + "69": 9.9839, + "70": 9.92559, + "71": 9.81011, + "72": 9.79196, + "73": 9.68163, + "74": 9.17945, + "75": 9.61324, + "76": 9.28951, + "77": 10.19435, + "78": 9.8755, + "79": 9.5297, + "80": 9.56593, + "81": 9.63478, + "82": 9.82295, + "83": 9.47164, + "84": 9.54623, + "85": 9.74358, + "86": 9.20093, + "87": 9.70179, + "88": 9.86553, + "89": 9.73045, + "90": 9.92108, + "91": 9.48732, + "92": 9.47637, + "93": 9.21283, + "94": 8.94903, + "95": 9.6165, + "96": 9.63374, + "97": 9.41244, + "98": 9.7751, + "99": 9.00191, + "100": 9.50967 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 284527616.0, + "2": 284527616.0, + "3": 284527616.0, + "4": 284527616.0, + "5": 284527616.0, + "6": 284527616.0, + "7": 284527616.0, + "8": 284527616.0, + "9": 284527616.0, + "10": 284527616.0, + "11": 284527616.0, + "12": 284527616.0, + "13": 284527616.0, + "14": 284527616.0, + "15": 284527616.0, + "16": 416513536.0, + "17": 416513536.0, + "18": 416513536.0, + "19": 416513536.0, + "20": 416513536.0, + "21": 416513536.0, + "22": 416513536.0, + "23": 416513536.0, + "24": 416513536.0, + "25": 416513536.0, + "26": 416513536.0, + "27": 416513536.0, + "28": 416513536.0, + "29": 416513536.0, + "30": 416513536.0, + "31": 416513536.0, + "32": 416513536.0, + "33": 416513536.0, + "34": 416513536.0, + "35": 416513536.0, + "36": 416513536.0, + "37": 416513536.0, + "38": 416513536.0, + "39": 416513536.0, + "40": 416513536.0, + "41": 416513536.0, + "42": 416513536.0, + "43": 416513536.0, + "44": 416513536.0, + "45": 416513536.0, + "46": 416513536.0, + "47": 416513536.0, + "48": 416513536.0, + "49": 416513536.0, + "50": 416513536.0, + "51": 416513536.0, + "52": 416513536.0, + "53": 416513536.0, + "54": 416513536.0, + "55": 416513536.0, + "56": 416513536.0, + "57": 416513536.0, + "58": 416513536.0, + "59": 416513536.0, + "60": 416513536.0, + "61": 416513536.0, + "62": 416513536.0, + "63": 416513536.0, + "64": 416513536.0, + "65": 416513536.0, + "66": 416513536.0, + "67": 416513536.0, + "68": 416513536.0, + "69": 416513536.0, + "70": 416513536.0, + "71": 416513536.0, + "72": 416513536.0, + "73": 416513536.0, + "74": 416513536.0, + "75": 416513536.0, + "76": 416513536.0, + "77": 416513536.0, + "78": 416513536.0, + "79": 416513536.0, + "80": 416513536.0, + "81": 416513536.0, + "82": 416513536.0, + "83": 416513536.0, + "84": 416513536.0, + "85": 416513536.0, + "86": 416513536.0, + "87": 416513536.0, + "88": 416513536.0, + "89": 416513536.0, + "90": 416513536.0, + "91": 416513536.0, + "92": 416513536.0, + "93": 416513536.0, + "94": 416513536.0, + "95": 416513536.0, + "96": 416513536.0, + "97": 416513536.0, + "98": 416513536.0, + "99": 416513536.0, + "100": 416513536.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 1465367040.0, + "2": 1465367040.0, + "3": 1465368064.0, + "4": 1465368576.0, + "5": 1465368576.0, + "6": 1465368576.0, + "7": 1465368576.0, + "8": 1465368576.0, + "9": 1465368576.0, + "10": 1465368576.0, + "11": 1465368576.0, + "12": 1465368576.0, + "13": 1465368576.0, + "14": 1465368576.0, + "15": 1465368576.0, + "16": 1465368576.0, + "17": 1597485568.0, + "18": 1597485568.0, + "19": 1597485568.0, + "20": 1597485568.0, + "21": 1597485568.0, + "22": 1597485568.0, + "23": 1597485568.0, + "24": 1597485568.0, + "25": 1597485568.0, + "26": 1597485568.0, + "27": 1597485568.0, + "28": 1597485568.0, + "29": 1597485568.0, + "30": 1597485568.0, + "31": 1597485568.0, + "32": 1597485568.0, + "33": 1597485568.0, + "34": 1597485568.0, + "35": 1597485568.0, + "36": 1597485568.0, + "37": 1597485568.0, + "38": 1597485568.0, + "39": 1597485568.0, + "40": 1597485568.0, + "41": 1597485568.0, + "42": 1597485568.0, + "43": 1597485568.0, + "44": 1597485568.0, + "45": 1597485568.0, + "46": 1597485568.0, + "47": 1597485568.0, + "48": 1597485568.0, + "49": 1597485568.0, + "50": 1597485568.0, + "51": 1597485568.0, + "52": 1597485568.0, + "53": 1597485568.0, + "54": 1597485568.0, + "55": 1597485568.0, + "56": 1597485568.0, + "57": 1597485568.0, + "58": 1597485568.0, + "59": 1597485568.0, + "60": 1597485568.0, + "61": 1597485568.0, + "62": 1597485568.0, + "63": 1597485568.0, + "64": 1597485568.0, + "65": 1597485568.0, + "66": 1597485568.0, + "67": 1597485568.0, + "68": 1597485568.0, + "69": 1597485568.0, + "70": 1597485568.0, + "71": 1597485568.0, + "72": 1597485568.0, + "73": 1597485568.0, + "74": 1597485568.0, + "75": 1597485568.0, + "76": 1597485568.0, + "77": 1597485568.0, + "78": 1597485568.0, + "79": 1597485568.0, + "80": 1597485568.0, + "81": 1597485568.0, + "82": 1597485568.0, + "83": 1597485568.0, + "84": 1597485568.0, + "85": 1597485568.0, + "86": 1597485568.0, + "87": 1597485568.0, + "88": 1597485568.0, + "89": 1597485568.0, + "90": 1597485568.0, + "91": 1597485568.0, + "92": 1597485568.0, + "93": 1597485568.0, + "94": 1597485568.0, + "95": 1597485568.0, + "96": 1597485568.0, + "97": 1597485568.0, + "98": 1597485568.0, + "99": 1597485568.0, + "100": 1597485568.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": 8.02782, + "2": 0.31435, + "3": 0.27957, + "4": 0.27933, + "5": 0.27866, + "6": 0.27855, + "7": 0.2779, + "8": 0.27621, + "9": 0.27704, + "10": 0.27611, + "11": 0.27501, + "12": 0.27489, + "13": 0.27468, + "14": 0.27386, + "15": 0.27315, + "16": 0.41595, + "17": 0.27523, + "18": 0.28979, + "19": 0.28871, + "20": 0.2888, + "21": 0.28867, + "22": 0.27653, + "23": 0.29205, + "24": 0.29078, + "25": 0.29104, + "26": 0.29087, + "27": 0.28794, + "28": 0.28784, + "29": 0.28659, + "30": 0.28669, + "31": 0.28638, + "32": 0.2878, + "33": 0.28717, + "34": 0.28616, + "35": 0.28626, + "36": 0.28648, + "37": 0.28977, + "38": 0.28615, + "39": 0.2864, + "40": 0.28588, + "41": 0.28749, + "42": 0.28735, + "43": 0.28605, + "44": 0.28798, + "45": 0.2882, + "46": 0.28727, + "47": 0.28616, + "48": 0.28603, + "49": 0.2876, + "50": 0.29155, + "51": 0.30309, + "52": 0.29889, + "53": 0.29736, + "54": 0.29772, + "55": 0.29611, + "56": 0.29565, + "57": 0.29413, + "58": 0.29391, + "59": 0.29344, + "60": 0.29428, + "61": 0.29695, + "62": 0.29282, + "63": 0.29418, + "64": 0.29352, + "65": 0.29274, + "66": 0.29449, + "67": 0.29627, + "68": 0.29636, + "69": 0.29393, + "70": 0.28967, + "71": 0.28925, + "72": 0.28962, + "73": 0.28944, + "74": 0.28948, + "75": 0.28996, + "76": 0.28938, + "77": 0.28855, + "78": 0.28891, + "79": 0.28905, + "80": 0.28968, + "81": 0.28873, + "82": 0.28966, + "83": 0.2884, + "84": 0.28842, + "85": 0.29077, + "86": 0.28927, + "87": 0.28888, + "88": 0.28909, + "89": 0.28807, + "90": 0.28887, + "91": 0.28894, + "92": 0.28908, + "93": 0.28985, + "94": 0.289, + "95": 0.28861, + "96": 0.28831, + "97": 0.2877, + "98": 0.29019, + "99": 0.28839, + "100": 0.2881 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 100, + "step_interval": 1, + "values": { + "1": "nan", + "2": "nan", + "3": "nan", + "4": "nan", + "5": "nan", + "6": "nan", + "7": "nan", + "8": "nan", + "9": "nan", + "10": "nan", + "11": "nan", + "12": "nan", + "13": "nan", + "14": "nan", + "15": "nan", + "16": 2308.0, + "17": "nan", + "18": 2336.0, + "19": 2843.0, + "20": 1690.0, + "21": 2021.0, + "22": "nan", + "23": 2506.0, + "24": 2095.0, + "25": 2035.0, + "26": 1875.0, + "27": 2000.0, + "28": 2435.0, + "29": 2512.0, + "30": 2279.0, + "31": 1598.0, + "32": 2494.0, + "33": 2128.0, + "34": 1682.0, + "35": 1868.0, + "36": 1970.0, + "37": 2549.0, + "38": 2069.0, + "39": 2950.0, + "40": 1905.0, + "41": 3069.0, + "42": 2521.0, + "43": 2635.0, + "44": 1835.0, + "45": 2455.0, + "46": 2204.0, + "47": 2799.0, + "48": 2423.0, + "49": 1759.0, + "50": 2677.0, + "51": 2195.0, + "52": 2330.0, + "53": 3549.0, + "54": 2650.0, + "55": 2247.0, + "56": 2422.0, + "57": 2195.0, + "58": 3241.0, + "59": 2626.0, + "60": 2775.0, + "61": 2747.0, + "62": 2926.0, + "63": 2898.0, + "64": 3090.0, + "65": 2245.0, + "66": 3827.0, + "67": 2655.0, + "68": 3117.0, + "69": 2656.0, + "70": 3659.0, + "71": 2819.0, + "72": 2710.0, + "73": 3355.0, + "74": 2210.0, + "75": 2927.0, + "76": 3577.0, + "77": 3727.0, + "78": 3855.0, + "79": 4237.0, + "80": 3462.0, + "81": 5157.0, + "82": 3426.0, + "83": 3234.0, + "84": 3878.0, + "85": 3734.0, + "86": 3184.0, + "87": 4090.0, + "88": 3594.0, + "89": 4234.0, + "90": 3744.0, + "91": 2967.0, + "92": 4509.0, + "93": 3649.0, + "94": 4486.0, + "95": 4215.0, + "96": 3851.0, + "97": 4098.0, + "98": 5029.0, + "99": 3975.0, + "100": 3445.0 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts.json new file mode 100644 index 00000000000..d547773495d --- /dev/null +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.81189, + "2": 10.82837, + "3": 10.81793, + "4": 10.80617, + "5": 10.84927, + "6": 10.86922, + "7": 10.84362, + "8": 10.83419, + "9": 10.84988, + "10": 10.78408, + "11": 10.88038, + "12": 10.85362, + "13": 10.86619, + "14": 10.88223, + "15": 10.82311, + "16": 10.81052, + "17": 10.78202, + "18": 10.81541, + "19": 10.81756, + "20": 10.74584, + "21": 10.72627, + "22": 10.60022, + "23": 10.74769, + "24": 10.6365, + "25": 10.59453, + "26": 10.64799, + "27": 10.66378, + "28": 10.64562, + "29": 10.65242, + "30": 10.44192, + "31": 10.21776, + "32": 10.52786, + "33": 10.52222, + "34": 10.30567, + "35": 10.35142, + "36": 10.32502, + "37": 10.42585, + "38": 10.28522, + "39": 10.47826, + "40": 10.19414, + "41": 10.22953, + "42": 10.29398, + "43": 9.95703, + "44": 10.06609, + "45": 9.95939, + "46": 9.92711, + "47": 10.22774, + "48": 9.96376, + "49": 9.65724, + "50": 10.01644 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 31381.0, + "2": 33910.0, + "3": 33570.0, + "4": 31384.0, + "5": 35903.0, + "6": 37599.0, + "7": 35525.0, + "8": 31635.0, + "9": 34509.0, + "10": 30410.0, + "11": 37757.0, + "12": 35967.0, + "13": 36886.0, + "14": 38227.0, + "15": 35788.0, + "16": 36247.0, + "17": 35378.0, + "18": 35284.0, + "19": 36213.0, + "20": 33124.0, + "21": 33424.0, + "22": 31395.0, + "23": 38414.0, + "24": 32277.0, + "25": 31634.0, + "26": 35264.0, + "27": 35935.0, + "28": 37638.0, + "29": 38145.0, + "30": 33261.0, + "31": 30972.0, + "32": 36646.0, + "33": 38318.0, + "34": 33243.0, + "35": 34813.0, + "36": 35446.0, + "37": 38278.0, + "38": 35590.0, + "39": 38681.0, + "40": 36027.0, + "41": 36509.0, + "42": 37301.0, + "43": 34597.0, + "44": 34024.0, + "45": 35938.0, + "46": 37229.0, + "47": 40862.0, + "48": 35537.0, + "49": 35095.0, + "50": 39711.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 880441344.0, + "2": 880437760.0, + "3": 880442368.0, + "4": 880448512.0, + "5": 880440832.0, + "6": 880441344.0, + "7": 880445440.0, + "8": 880442880.0, + "9": 880440320.0, + "10": 880443392.0, + "11": 880442368.0, + "12": 880439808.0, + "13": 880439808.0, + "14": 880443904.0, + "15": 880443904.0, + "16": 880441856.0, + "17": 880448512.0, + "18": 880437760.0, + "19": 880440320.0, + "20": 880442880.0, + "21": 880445440.0, + "22": 880450048.0, + "23": 880449024.0, + "24": 880440320.0, + "25": 880440320.0, + "26": 880445952.0, + "27": 880441344.0, + "28": 880439808.0, + "29": 880443392.0, + "30": 880441344.0, + "31": 880454656.0, + "32": 880444928.0, + "33": 880440320.0, + "34": 880440832.0, + "35": 880446976.0, + "36": 880441344.0, + "37": 880442880.0, + "38": 880439808.0, + "39": 880441856.0, + "40": 880442880.0, + "41": 880445952.0, + "42": 880441344.0, + "43": 880444416.0, + "44": 880439808.0, + "45": 880440832.0, + "46": 880447488.0, + "47": 880440320.0, + "48": 880441856.0, + "49": 880444416.0, + "50": 880442368.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 2909851648.0, + "2": 3151821824.0, + "3": 3152806912.0, + "4": 3156619264.0, + "5": 3156619264.0, + "6": 3156619264.0, + "7": 3156619264.0, + "8": 3156619264.0, + "9": 3156619264.0, + "10": 3156619264.0, + "11": 3156619264.0, + "12": 3156619264.0, + "13": 3156619264.0, + "14": 3156619264.0, + "15": 3156619264.0, + "16": 3156619264.0, + "17": 3156619264.0, + "18": 3156619264.0, + "19": 3156619264.0, + "20": 3156619264.0, + "21": 3156619264.0, + "22": 3156619264.0, + "23": 3156619264.0, + "24": 3156619264.0, + "25": 3156619264.0, + "26": 3156619264.0, + "27": 3156619264.0, + "28": 3156619264.0, + "29": 3156619264.0, + "30": 3156619264.0, + "31": 3167942656.0, + "32": 3167942656.0, + "33": 3167942656.0, + "34": 3167942656.0, + "35": 3167942656.0, + "36": 3167942656.0, + "37": 3167942656.0, + "38": 3167942656.0, + "39": 3167942656.0, + "40": 3167942656.0, + "41": 3167942656.0, + "42": 3167942656.0, + "43": 3167942656.0, + "44": 3167942656.0, + "45": 3167942656.0, + "46": 3167942656.0, + "47": 3167942656.0, + "48": 3167942656.0, + "49": 3167942656.0, + "50": 3167942656.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 6.71086, + "2": 0.34876, + "3": 0.30494, + "4": 0.2983, + "5": 0.31094, + "6": 0.29581, + "7": 0.29535, + "8": 0.29392, + "9": 0.31226, + "10": 0.29284, + "11": 0.29297, + "12": 0.29417, + "13": 0.29411, + "14": 0.29617, + "15": 0.30137, + "16": 0.29884, + "17": 0.29723, + "18": 0.2965, + "19": 0.29582, + "20": 0.29827, + "21": 0.29422, + "22": 0.29464, + "23": 0.29372, + "24": 0.29476, + "25": 0.29448, + "26": 0.29512, + "27": 0.29393, + "28": 0.2949, + "29": 0.29363, + "30": 0.29407, + "31": 0.29478, + "32": 0.2959, + "33": 0.29578, + "34": 0.29539, + "35": 0.295, + "36": 0.29765, + "37": 0.29552, + "38": 0.2962, + "39": 0.29593, + "40": 0.29517, + "41": 0.29558, + "42": 0.2974, + "43": 0.29483, + "44": 0.29357, + "45": 0.29143, + "46": 0.29287, + "47": 0.28977, + "48": 0.30711, + "49": 0.29644, + "50": 0.29278 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts_dgx_a100.json index 63ffa2aa706..f91ad30ed3a 100644 --- a/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts2parallel_ddp_average_in_collective/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.8028, "5": 10.85317, "10": 10.79253, "15": 10.81762, "20": 10.74263, "25": 10.58726, "30": 10.43425, "35": 10.35057, "40": 10.18634, "45": 9.95891, "50": 10.0194}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 31321.0, "5": 36637.0, "10": 30318.0, "15": 35096.0, "20": 33013.0, "25": 30677.0, "30": 32775.0, "35": 34420.0, "40": 36074.0, "45": 35624.0, "50": 39159.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 863505920.0, "5": 863502848.0, "10": 863507456.0, "15": 863503872.0, "20": 863504896.0, "25": 863506944.0, "30": 863508992.0, "35": 863511040.0, "40": 863508480.0, "45": 863503872.0, "50": 863505920.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 2741182976.0, "5": 2984047104.0, "10": 2984047104.0, "15": 2984047104.0, "20": 2985508864.0, "25": 2985508864.0, "30": 2985508864.0, "35": 2986774016.0, "40": 2988336640.0, "45": 2988336640.0, "50": 2990856704.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 30.77131, "5": 0.27562, "10": 0.2823, "15": 0.2732, "20": 0.2737, "25": 0.28195, "30": 0.27083, "35": 0.27437, "40": 0.26787, "45": 0.26819, "50": 0.28362}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.81189, + "2": 10.82837, + "3": 10.81793, + "4": 10.80617, + "5": 10.84927, + "6": 10.86922, + "7": 10.84362, + "8": 10.83419, + "9": 10.84988, + "10": 10.78408, + "11": 10.88038, + "12": 10.85362, + "13": 10.86619, + "14": 10.88223, + "15": 10.82311, + "16": 10.81052, + "17": 10.78202, + "18": 10.81541, + "19": 10.81756, + "20": 10.74584, + "21": 10.72627, + "22": 10.60022, + "23": 10.74769, + "24": 10.6365, + "25": 10.59453, + "26": 10.64799, + "27": 10.66378, + "28": 10.64562, + "29": 10.65242, + "30": 10.44192, + "31": 10.21776, + "32": 10.52786, + "33": 10.52222, + "34": 10.30567, + "35": 10.35142, + "36": 10.32502, + "37": 10.42585, + "38": 10.28522, + "39": 10.47826, + "40": 10.19414, + "41": 10.22953, + "42": 10.29398, + "43": 9.95703, + "44": 10.06609, + "45": 9.95939, + "46": 9.92711, + "47": 10.22774, + "48": 9.96376, + "49": 9.65724, + "50": 10.01644 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 31381.0, + "2": 33910.0, + "3": 33570.0, + "4": 31384.0, + "5": 35903.0, + "6": 37599.0, + "7": 35525.0, + "8": 31635.0, + "9": 34509.0, + "10": 30410.0, + "11": 37757.0, + "12": 35967.0, + "13": 36886.0, + "14": 38227.0, + "15": 35788.0, + "16": 36247.0, + "17": 35378.0, + "18": 35284.0, + "19": 36213.0, + "20": 33124.0, + "21": 33424.0, + "22": 31395.0, + "23": 38414.0, + "24": 32277.0, + "25": 31634.0, + "26": 35264.0, + "27": 35935.0, + "28": 37638.0, + "29": 38145.0, + "30": 33261.0, + "31": 30972.0, + "32": 36646.0, + "33": 38318.0, + "34": 33243.0, + "35": 34813.0, + "36": 35446.0, + "37": 38278.0, + "38": 35590.0, + "39": 38681.0, + "40": 36027.0, + "41": 36509.0, + "42": 37301.0, + "43": 34597.0, + "44": 34024.0, + "45": 35938.0, + "46": 37229.0, + "47": 40862.0, + "48": 35537.0, + "49": 35095.0, + "50": 39711.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 880441344.0, + "2": 880437760.0, + "3": 880442368.0, + "4": 880448512.0, + "5": 880440832.0, + "6": 880441344.0, + "7": 880445440.0, + "8": 880442880.0, + "9": 880440320.0, + "10": 880443392.0, + "11": 880442368.0, + "12": 880439808.0, + "13": 880439808.0, + "14": 880443904.0, + "15": 880443904.0, + "16": 880441856.0, + "17": 880448512.0, + "18": 880437760.0, + "19": 880440320.0, + "20": 880442880.0, + "21": 880445440.0, + "22": 880450048.0, + "23": 880449024.0, + "24": 880440320.0, + "25": 880440320.0, + "26": 880445952.0, + "27": 880441344.0, + "28": 880439808.0, + "29": 880443392.0, + "30": 880441344.0, + "31": 880454656.0, + "32": 880444928.0, + "33": 880440320.0, + "34": 880440832.0, + "35": 880446976.0, + "36": 880441344.0, + "37": 880442880.0, + "38": 880439808.0, + "39": 880441856.0, + "40": 880442880.0, + "41": 880445952.0, + "42": 880441344.0, + "43": 880444416.0, + "44": 880439808.0, + "45": 880440832.0, + "46": 880447488.0, + "47": 880440320.0, + "48": 880441856.0, + "49": 880444416.0, + "50": 880442368.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 2910859264.0, + "2": 3151821824.0, + "3": 3152806912.0, + "4": 3156619264.0, + "5": 3156619264.0, + "6": 3156619264.0, + "7": 3156619264.0, + "8": 3156619264.0, + "9": 3156619264.0, + "10": 3156619264.0, + "11": 3156619264.0, + "12": 3156619264.0, + "13": 3156619264.0, + "14": 3156619264.0, + "15": 3156619264.0, + "16": 3156619264.0, + "17": 3156619264.0, + "18": 3156619264.0, + "19": 3156619264.0, + "20": 3156619264.0, + "21": 3156619264.0, + "22": 3156619264.0, + "23": 3156619264.0, + "24": 3156619264.0, + "25": 3156619264.0, + "26": 3156619264.0, + "27": 3156619264.0, + "28": 3156619264.0, + "29": 3156619264.0, + "30": 3156619264.0, + "31": 3167942656.0, + "32": 3167942656.0, + "33": 3167942656.0, + "34": 3167942656.0, + "35": 3167942656.0, + "36": 3167942656.0, + "37": 3167942656.0, + "38": 3167942656.0, + "39": 3167942656.0, + "40": 3167942656.0, + "41": 3167942656.0, + "42": 3167942656.0, + "43": 3167942656.0, + "44": 3167942656.0, + "45": 3167942656.0, + "46": 3167942656.0, + "47": 3167942656.0, + "48": 3167942656.0, + "49": 3167942656.0, + "50": 3167942656.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 6.90142, + "2": 0.35609, + "3": 0.29589, + "4": 0.29327, + "5": 0.29594, + "6": 0.293, + "7": 0.29087, + "8": 0.29178, + "9": 0.29184, + "10": 0.29303, + "11": 0.29381, + "12": 0.29249, + "13": 0.2936, + "14": 0.29671, + "15": 0.29969, + "16": 0.30214, + "17": 0.29463, + "18": 0.30986, + "19": 0.29429, + "20": 0.29497, + "21": 0.29609, + "22": 0.29421, + "23": 0.2931, + "24": 0.29341, + "25": 0.29443, + "26": 0.28879, + "27": 0.28844, + "28": 0.28873, + "29": 0.28741, + "30": 0.28737, + "31": 0.28905, + "32": 0.28701, + "33": 0.28706, + "34": 0.28739, + "35": 0.28701, + "36": 0.28751, + "37": 0.28826, + "38": 0.28792, + "39": 0.28663, + "40": 0.28805, + "41": 0.28776, + "42": 0.28855, + "43": 0.28777, + "44": 0.28801, + "45": 0.2885, + "46": 0.28907, + "47": 0.28755, + "48": 0.28719, + "49": 0.28878, + "50": 0.28677 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts.json new file mode 100644 index 00000000000..00b01bf0048 --- /dev/null +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.78519, + "2": 10.81141, + "3": 10.79553, + "4": 10.78363, + "5": 10.83004, + "6": 10.8417, + "7": 10.81276, + "8": 10.81576, + "9": 10.82408, + "10": 10.75834, + "11": 10.86449, + "12": 10.83694, + "13": 10.84627, + "14": 10.85637, + "15": 10.79099, + "16": 10.78206, + "17": 10.73911, + "18": 10.77969, + "19": 10.77703, + "20": 10.69044, + "21": 10.66086, + "22": 10.51537, + "23": 10.68288, + "24": 10.54469, + "25": 10.49929, + "26": 10.5582, + "27": 10.57541, + "28": 10.54334, + "29": 10.55412, + "30": 10.31857, + "31": 10.06911, + "32": 10.42007, + "33": 10.42435, + "34": 10.16897, + "35": 10.22944, + "36": 10.19358, + "37": 10.29976, + "38": 10.1465, + "39": 10.37282, + "40": 10.04287, + "41": 10.09714, + "42": 10.17339, + "43": 9.79317, + "44": 9.91871, + "45": 9.79389, + "46": 9.77586, + "47": 10.10721, + "48": 9.81704, + "49": 9.48887, + "50": 9.87988 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 26764.0, + "2": 29274.0, + "3": 28827.0, + "4": 27434.0, + "5": 31796.0, + "6": 32589.0, + "7": 31434.0, + "8": 27373.0, + "9": 30359.0, + "10": 25775.0, + "11": 33420.0, + "12": 30835.0, + "13": 31910.0, + "14": 33275.0, + "15": 30931.0, + "16": 31713.0, + "17": 31263.0, + "18": 30574.0, + "19": 31200.0, + "20": 28330.0, + "21": 28769.0, + "22": 27643.0, + "23": 34373.0, + "24": 28585.0, + "25": 27693.0, + "26": 30668.0, + "27": 31536.0, + "28": 33620.0, + "29": 34457.0, + "30": 29810.0, + "31": 27999.0, + "32": 33871.0, + "33": 35836.0, + "34": 30770.0, + "35": 32783.0, + "36": 33452.0, + "37": 36437.0, + "38": 34114.0, + "39": 37433.0, + "40": 35063.0, + "41": 34239.0, + "42": 36041.0, + "43": 33976.0, + "44": 33303.0, + "45": 35148.0, + "46": 36112.0, + "47": 38996.0, + "48": 34779.0, + "49": 34913.0, + "50": 38547.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1364012544.0, + "2": 1364020736.0, + "3": 1364009472.0, + "4": 1364020224.0, + "5": 1364007424.0, + "6": 1364005888.0, + "7": 1364011520.0, + "8": 1364006912.0, + "9": 1364019712.0, + "10": 1364001280.0, + "11": 1364009984.0, + "12": 1364022784.0, + "13": 1364008960.0, + "14": 1364003840.0, + "15": 1364007936.0, + "16": 1363994112.0, + "17": 1363993088.0, + "18": 1364017152.0, + "19": 1364009984.0, + "20": 1363999744.0, + "21": 1364006400.0, + "22": 1363983360.0, + "23": 1363997696.0, + "24": 1364001792.0, + "25": 1363992576.0, + "26": 1364003328.0, + "27": 1363998720.0, + "28": 1363982336.0, + "29": 1363995136.0, + "30": 1363979776.0, + "31": 1363991552.0, + "32": 1363983872.0, + "33": 1363983872.0, + "34": 1363997184.0, + "35": 1363991040.0, + "36": 1363984896.0, + "37": 1363998720.0, + "38": 1363991040.0, + "39": 1363976704.0, + "40": 1363971584.0, + "41": 1363983872.0, + "42": 1363977728.0, + "43": 1363967488.0, + "44": 1363974656.0, + "45": 1363974144.0, + "46": 1363965952.0, + "47": 1363952640.0, + "48": 1363951616.0, + "49": 1363960320.0, + "50": 1363956736.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3404911104.0, + "2": 3972516352.0, + "3": 3976973312.0, + "4": 3976973312.0, + "5": 3976973312.0, + "6": 3976973312.0, + "7": 3976973312.0, + "8": 3976973312.0, + "9": 3976973312.0, + "10": 3976973312.0, + "11": 3976973312.0, + "12": 3976975872.0, + "13": 3976975872.0, + "14": 3976975872.0, + "15": 3976975872.0, + "16": 3976975872.0, + "17": 3976975872.0, + "18": 3976975872.0, + "19": 3976975872.0, + "20": 3976975872.0, + "21": 3976975872.0, + "22": 3976975872.0, + "23": 3976975872.0, + "24": 3976975872.0, + "25": 3976975872.0, + "26": 3976975872.0, + "27": 3976975872.0, + "28": 3976975872.0, + "29": 3976975872.0, + "30": 3976975872.0, + "31": 3976975872.0, + "32": 3976975872.0, + "33": 3976975872.0, + "34": 3976975872.0, + "35": 3976975872.0, + "36": 3976975872.0, + "37": 3976975872.0, + "38": 3976975872.0, + "39": 3976975872.0, + "40": 3976975872.0, + "41": 3976975872.0, + "42": 3976975872.0, + "43": 3976975872.0, + "44": 3976975872.0, + "45": 3976975872.0, + "46": 3976975872.0, + "47": 3976975872.0, + "48": 3976975872.0, + "49": 3976975872.0, + "50": 3976975872.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 7.13471, + "2": 0.38969, + "3": 0.3103, + "4": 0.30799, + "5": 0.30603, + "6": 0.30643, + "7": 0.30599, + "8": 0.30393, + "9": 0.31467, + "10": 0.306, + "11": 0.30312, + "12": 0.30329, + "13": 0.30269, + "14": 0.30471, + "15": 0.30849, + "16": 0.30377, + "17": 0.30261, + "18": 0.3009, + "19": 0.30087, + "20": 0.30146, + "21": 0.30129, + "22": 0.30052, + "23": 0.30116, + "24": 0.2999, + "25": 0.30045, + "26": 0.30179, + "27": 0.30152, + "28": 0.30154, + "29": 0.30096, + "30": 0.31152, + "31": 0.31066, + "32": 0.30418, + "33": 0.35425, + "34": 0.30235, + "35": 0.30245, + "36": 0.302, + "37": 0.31083, + "38": 0.30275, + "39": 0.30205, + "40": 0.30289, + "41": 0.30375, + "42": 0.30405, + "43": 0.30174, + "44": 0.30207, + "45": 0.303, + "46": 0.30186, + "47": 0.30147, + "48": 0.30311, + "49": 0.30205, + "50": 0.3031 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts_dgx_a100.json index e640ba5b102..9114b4bb385 100644 --- a/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_8experts_etp1_ep4/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.8174, "5": 10.86097, "10": 10.80463, "15": 10.79539, "20": 10.71135, "25": 10.51962, "30": 10.33346, "35": 10.22683, "40": 10.041, "45": 9.7722, "50": 9.86932}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 26535.0, "5": 31546.0, "10": 25541.0, "15": 30463.0, "20": 28331.0, "25": 27263.0, "30": 29642.0, "35": 32022.0, "40": 34911.0, "45": 35017.0, "50": 38975.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1356172288.0, "5": 1356170240.0, "10": 1356160000.0, "15": 1356180480.0, "20": 1356170240.0, "25": 1356182528.0, "30": 1356198400.0, "35": 1356182016.0, "40": 1356156416.0, "45": 1356140544.0, "50": 1356098560.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 3163797504.0, "5": 3751905792.0, "10": 3759570944.0, "15": 3759570944.0, "20": 3759570944.0, "25": 3759570944.0, "30": 3770054144.0, "35": 3770054144.0, "40": 3770054144.0, "45": 3770054144.0, "50": 3770054144.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 25.66526, "5": 0.29505, "10": 0.28776, "15": 0.28997, "20": 0.28516, "25": 0.29206, "30": 0.2932, "35": 0.29941, "40": 0.30125, "45": 0.29922, "50": 0.30133}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.78519, + "2": 10.81141, + "3": 10.79553, + "4": 10.78363, + "5": 10.83004, + "6": 10.8417, + "7": 10.81276, + "8": 10.81576, + "9": 10.82408, + "10": 10.75834, + "11": 10.86449, + "12": 10.83694, + "13": 10.84627, + "14": 10.85637, + "15": 10.79099, + "16": 10.78206, + "17": 10.73911, + "18": 10.77969, + "19": 10.77703, + "20": 10.69044, + "21": 10.66086, + "22": 10.51537, + "23": 10.68288, + "24": 10.54469, + "25": 10.49929, + "26": 10.5582, + "27": 10.57541, + "28": 10.54334, + "29": 10.55412, + "30": 10.31857, + "31": 10.06911, + "32": 10.42007, + "33": 10.42435, + "34": 10.16897, + "35": 10.22944, + "36": 10.19358, + "37": 10.29976, + "38": 10.1465, + "39": 10.37282, + "40": 10.04287, + "41": 10.09714, + "42": 10.17339, + "43": 9.79317, + "44": 9.91871, + "45": 9.79389, + "46": 9.77586, + "47": 10.10721, + "48": 9.81704, + "49": 9.48887, + "50": 9.87988 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 26764.0, + "2": 29274.0, + "3": 28827.0, + "4": 27434.0, + "5": 31796.0, + "6": 32589.0, + "7": 31434.0, + "8": 27373.0, + "9": 30359.0, + "10": 25775.0, + "11": 33420.0, + "12": 30835.0, + "13": 31910.0, + "14": 33275.0, + "15": 30931.0, + "16": 31713.0, + "17": 31263.0, + "18": 30574.0, + "19": 31200.0, + "20": 28330.0, + "21": 28769.0, + "22": 27643.0, + "23": 34373.0, + "24": 28585.0, + "25": 27693.0, + "26": 30668.0, + "27": 31536.0, + "28": 33620.0, + "29": 34457.0, + "30": 29810.0, + "31": 27999.0, + "32": 33871.0, + "33": 35836.0, + "34": 30770.0, + "35": 32783.0, + "36": 33452.0, + "37": 36437.0, + "38": 34114.0, + "39": 37433.0, + "40": 35063.0, + "41": 34239.0, + "42": 36041.0, + "43": 33976.0, + "44": 33303.0, + "45": 35148.0, + "46": 36112.0, + "47": 38996.0, + "48": 34779.0, + "49": 34913.0, + "50": 38547.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1364012544.0, + "2": 1364020736.0, + "3": 1364009472.0, + "4": 1364020224.0, + "5": 1364007424.0, + "6": 1364005888.0, + "7": 1364011520.0, + "8": 1364006912.0, + "9": 1364019712.0, + "10": 1364001280.0, + "11": 1364009984.0, + "12": 1364022784.0, + "13": 1364008960.0, + "14": 1364003840.0, + "15": 1364007936.0, + "16": 1363994112.0, + "17": 1363993088.0, + "18": 1364017152.0, + "19": 1364009984.0, + "20": 1363999744.0, + "21": 1364006400.0, + "22": 1363983360.0, + "23": 1363997696.0, + "24": 1364001792.0, + "25": 1363992576.0, + "26": 1364003328.0, + "27": 1363998720.0, + "28": 1363982336.0, + "29": 1363995136.0, + "30": 1363979776.0, + "31": 1363991552.0, + "32": 1363983872.0, + "33": 1363983872.0, + "34": 1363997184.0, + "35": 1363991040.0, + "36": 1363984896.0, + "37": 1363998720.0, + "38": 1363991040.0, + "39": 1363976704.0, + "40": 1363971584.0, + "41": 1363983872.0, + "42": 1363977728.0, + "43": 1363967488.0, + "44": 1363974656.0, + "45": 1363974144.0, + "46": 1363965952.0, + "47": 1363952640.0, + "48": 1363951616.0, + "49": 1363960320.0, + "50": 1363956736.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3404911104.0, + "2": 3972516352.0, + "3": 3976973312.0, + "4": 3976973312.0, + "5": 3976973312.0, + "6": 3976973312.0, + "7": 3976973312.0, + "8": 3976973312.0, + "9": 3976973312.0, + "10": 3976973312.0, + "11": 3976973312.0, + "12": 3976975872.0, + "13": 3976975872.0, + "14": 3976975872.0, + "15": 3976975872.0, + "16": 3976975872.0, + "17": 3976975872.0, + "18": 3976975872.0, + "19": 3976975872.0, + "20": 3976975872.0, + "21": 3976975872.0, + "22": 3976975872.0, + "23": 3976975872.0, + "24": 3976975872.0, + "25": 3976975872.0, + "26": 3976975872.0, + "27": 3976975872.0, + "28": 3976975872.0, + "29": 3976975872.0, + "30": 3976975872.0, + "31": 3976975872.0, + "32": 3976975872.0, + "33": 3976975872.0, + "34": 3976975872.0, + "35": 3976975872.0, + "36": 3976975872.0, + "37": 3976975872.0, + "38": 3976975872.0, + "39": 3976975872.0, + "40": 3976975872.0, + "41": 3976975872.0, + "42": 3976975872.0, + "43": 3976975872.0, + "44": 3976975872.0, + "45": 3976975872.0, + "46": 3976975872.0, + "47": 3976975872.0, + "48": 3976975872.0, + "49": 3976975872.0, + "50": 3976975872.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 7.62035, + "2": 0.36752, + "3": 0.30562, + "4": 0.29876, + "5": 0.298, + "6": 0.29743, + "7": 0.29729, + "8": 0.2967, + "9": 0.29751, + "10": 0.29912, + "11": 0.29575, + "12": 0.29589, + "13": 0.29696, + "14": 0.29898, + "15": 0.30053, + "16": 0.30093, + "17": 0.2977, + "18": 0.2973, + "19": 0.29596, + "20": 0.29757, + "21": 0.2967, + "22": 0.29963, + "23": 0.29707, + "24": 0.29748, + "25": 0.29701, + "26": 0.29838, + "27": 0.29889, + "28": 0.29962, + "29": 0.30399, + "30": 0.30932, + "31": 0.30553, + "32": 0.29765, + "33": 0.30499, + "34": 0.29754, + "35": 0.29747, + "36": 0.29801, + "37": 0.30768, + "38": 0.29693, + "39": 0.29912, + "40": 0.299, + "41": 0.2982, + "42": 0.37256, + "43": 0.29865, + "44": 0.29774, + "45": 0.29961, + "46": 0.2988, + "47": 0.30454, + "48": 0.30466, + "49": 0.30093, + "50": 0.29883 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_a2a_ovlp_8experts_etp1_ep4/golden_values_dev.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_a2a_ovlp_8experts_etp1_ep4/golden_values_dev.json new file mode 100644 index 00000000000..390f4b8f13f --- /dev/null +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_te_tp2_pp1_te_a2a_ovlp_8experts_etp1_ep4/golden_values_dev.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.77518, + "2": 10.78038, + "3": 10.79302, + "4": 10.74107, + "5": 10.82013, + "6": 10.82951, + "7": 10.7953, + "8": 10.78263, + "9": 10.79278, + "10": 10.7446, + "11": 10.85147, + "12": 10.82613, + "13": 10.82825, + "14": 10.85504, + "15": 10.75536, + "16": 10.75777, + "17": 10.72319, + "18": 10.76274, + "19": 10.75075, + "20": 10.66587, + "21": 10.6419, + "22": 10.47523, + "23": 10.66959, + "24": 10.54157, + "25": 10.4825, + "26": 10.55255, + "27": 10.57459, + "28": 10.55159, + "29": 10.5668, + "30": 10.31134, + "31": 10.01921, + "32": 10.42655, + "33": 10.42294, + "34": 10.14739, + "35": 10.21574, + "36": 10.15811, + "37": 10.30279, + "38": 10.14031, + "39": 10.36301, + "40": 10.02669, + "41": 10.07635, + "42": 10.16156, + "43": 9.74374, + "44": 9.88962, + "45": 9.75874, + "46": 9.73618, + "47": 10.0844, + "48": 9.78532, + "49": 9.45072, + "50": 9.85634 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 27105.0, + "2": 28791.0, + "3": 29282.0, + "4": 27583.0, + "5": 31595.0, + "6": 32831.0, + "7": 31023.0, + "8": 27107.0, + "9": 30780.0, + "10": 25505.0, + "11": 33684.0, + "12": 30235.0, + "13": 32960.0, + "14": 32880.0, + "15": 30405.0, + "16": 32455.0, + "17": 30933.0, + "18": 30623.0, + "19": 30803.0, + "20": 28593.0, + "21": 29002.0, + "22": 27030.0, + "23": 34463.0, + "24": 29154.0, + "25": 27827.0, + "26": 31119.0, + "27": 32108.0, + "28": 33412.0, + "29": 34737.0, + "30": 30465.0, + "31": 28775.0, + "32": 33115.0, + "33": 34745.0, + "34": 30785.0, + "35": 32116.0, + "36": 33968.0, + "37": 36757.0, + "38": 34150.0, + "39": 37240.0, + "40": 35353.0, + "41": 34638.0, + "42": 36703.0, + "43": 34601.0, + "44": 33783.0, + "45": 35388.0, + "46": 35484.0, + "47": 40591.0, + "48": 36671.0, + "49": 36174.0, + "50": 38231.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1566715392.0, + "2": 1564834816.0, + "3": 1564860416.0, + "4": 1564313088.0, + "5": 1564120576.0, + "6": 1565958144.0, + "7": 1564614656.0, + "8": 1563520512.0, + "9": 1563819008.0, + "10": 1563891712.0, + "11": 1563430400.0, + "12": 1564003840.0, + "13": 1564584960.0, + "14": 1566458880.0, + "15": 1564517376.0, + "16": 1565116928.0, + "17": 1564445184.0, + "18": 1566232576.0, + "19": 1565403136.0, + "20": 1565009408.0, + "21": 1568513024.0, + "22": 1564807168.0, + "23": 1567177216.0, + "24": 1564333568.0, + "25": 1566986240.0, + "26": 1565763584.0, + "27": 1563955200.0, + "28": 1564926464.0, + "29": 1563690496.0, + "30": 1563930624.0, + "31": 1564862464.0, + "32": 1564173824.0, + "33": 1565158400.0, + "34": 1564895232.0, + "35": 1564069376.0, + "36": 1565074944.0, + "37": 1563990016.0, + "38": 1565044736.0, + "39": 1563646976.0, + "40": 1565059072.0, + "41": 1566659584.0, + "42": 1564623360.0, + "43": 1563140608.0, + "44": 1565100032.0, + "45": 1567626752.0, + "46": 1565074944.0, + "47": 1564590080.0, + "48": 1564522496.0, + "49": 1563403776.0, + "50": 1564356096.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 3737165824.0, + "2": 4315653632.0, + "3": 4318730752.0, + "4": 4318730752.0, + "5": 4318730752.0, + "6": 4346984960.0, + "7": 4346984960.0, + "8": 4346984960.0, + "9": 4346984960.0, + "10": 4346984960.0, + "11": 4346984960.0, + "12": 4346984960.0, + "13": 4346984960.0, + "14": 4346984960.0, + "15": 4346984960.0, + "16": 4346984960.0, + "17": 4346984960.0, + "18": 4346984960.0, + "19": 4346984960.0, + "20": 4346984960.0, + "21": 4346984960.0, + "22": 4346984960.0, + "23": 4346984960.0, + "24": 4346984960.0, + "25": 4346984960.0, + "26": 4346984960.0, + "27": 4346984960.0, + "28": 4346984960.0, + "29": 4346984960.0, + "30": 4346984960.0, + "31": 4346984960.0, + "32": 4346984960.0, + "33": 4346984960.0, + "34": 4346984960.0, + "35": 4346984960.0, + "36": 4346984960.0, + "37": 4346984960.0, + "38": 4346984960.0, + "39": 4346984960.0, + "40": 4346984960.0, + "41": 4346984960.0, + "42": 4346984960.0, + "43": 4346984960.0, + "44": 4346984960.0, + "45": 4346984960.0, + "46": 4346984960.0, + "47": 4346984960.0, + "48": 4346984960.0, + "49": 4346984960.0, + "50": 4346984960.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 19.53588, + "2": 0.42103, + "3": 0.37171, + "4": 0.32787, + "5": 0.32504, + "6": 0.29089, + "7": 0.29215, + "8": 0.28165, + "9": 0.287, + "10": 0.28805, + "11": 0.27222, + "12": 0.2768, + "13": 0.26942, + "14": 0.27369, + "15": 0.27287, + "16": 0.26492, + "17": 0.27231, + "18": 0.26408, + "19": 0.26251, + "20": 0.26769, + "21": 0.26539, + "22": 0.27591, + "23": 0.26191, + "24": 0.27512, + "25": 0.26855, + "26": 0.27323, + "27": 0.26526, + "28": 0.26748, + "29": 0.27054, + "30": 0.28834, + "31": 0.27784, + "32": 0.27006, + "33": 0.29268, + "34": 0.27918, + "35": 0.29002, + "36": 0.28672, + "37": 0.28354, + "38": 0.27713, + "39": 0.28145, + "40": 0.62986, + "41": 0.2715, + "42": 0.2633, + "43": 0.27508, + "44": 0.28176, + "45": 0.26745, + "46": 0.27357, + "47": 0.26873, + "48": 0.26907, + "49": 0.26843, + "50": 0.63541 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts.json new file mode 100644 index 00000000000..779e572fdd4 --- /dev/null +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.79175, + "2": 10.80907, + "3": 10.81011, + "4": 10.78146, + "5": 10.82288, + "6": 10.84057, + "7": 10.81192, + "8": 10.80005, + "9": 10.81667, + "10": 10.7688, + "11": 10.8618, + "12": 10.84042, + "13": 10.84452, + "14": 10.86421, + "15": 10.79157, + "16": 10.78199, + "17": 10.75122, + "18": 10.79446, + "19": 10.79523, + "20": 10.71001, + "21": 10.68811, + "22": 10.53736, + "23": 10.7066, + "24": 10.58865, + "25": 10.54662, + "26": 10.59492, + "27": 10.62142, + "28": 10.5969, + "29": 10.60036, + "30": 10.39407, + "31": 10.12951, + "32": 10.49684, + "33": 10.48779, + "34": 10.24347, + "35": 10.30461, + "36": 10.26056, + "37": 10.38859, + "38": 10.24848, + "39": 10.43799, + "40": 10.13303, + "41": 10.18651, + "42": 10.25823, + "43": 9.892, + "44": 10.02576, + "45": 9.90015, + "46": 9.88387, + "47": 10.19565, + "48": 9.91255, + "49": 9.60147, + "50": 9.97874 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 5656.0, + "2": 6018.0, + "3": 5790.0, + "4": 5941.0, + "5": 6476.0, + "6": 6653.0, + "7": 6287.0, + "8": 5875.0, + "9": 6239.0, + "10": 5453.0, + "11": 6936.0, + "12": 6711.0, + "13": 6655.0, + "14": 6814.0, + "15": 6233.0, + "16": 6533.0, + "17": 6397.0, + "18": 6112.0, + "19": 6678.0, + "20": 5837.0, + "21": 6403.0, + "22": 5715.0, + "23": 6744.0, + "24": 6051.0, + "25": 5811.0, + "26": 6104.0, + "27": 6484.0, + "28": 6884.0, + "29": 7253.0, + "30": 6047.0, + "31": 5593.0, + "32": 6625.0, + "33": 7054.0, + "34": 6104.0, + "35": 6712.0, + "36": 6684.0, + "37": 7523.0, + "38": 7273.0, + "39": 7620.0, + "40": 7062.0, + "41": 6895.0, + "42": 7426.0, + "43": 6713.0, + "44": 6664.0, + "45": 6681.0, + "46": 6923.0, + "47": 7705.0, + "48": 7248.0, + "49": 7331.0, + "50": 7527.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 462408192.0, + "2": 462406144.0, + "3": 462409728.0, + "4": 462406144.0, + "5": 462407680.0, + "6": 462408192.0, + "7": 462410752.0, + "8": 462410752.0, + "9": 462407168.0, + "10": 462410240.0, + "11": 462408192.0, + "12": 462408192.0, + "13": 462408704.0, + "14": 462409728.0, + "15": 462409728.0, + "16": 462407168.0, + "17": 462408704.0, + "18": 462408704.0, + "19": 462408704.0, + "20": 462408704.0, + "21": 462406144.0, + "22": 462412800.0, + "23": 462409216.0, + "24": 462408704.0, + "25": 462406144.0, + "26": 462410240.0, + "27": 462405120.0, + "28": 462408192.0, + "29": 462407168.0, + "30": 462406144.0, + "31": 462413312.0, + "32": 462408704.0, + "33": 462409216.0, + "34": 462406144.0, + "35": 462410240.0, + "36": 462407168.0, + "37": 462409728.0, + "38": 462408192.0, + "39": 462408192.0, + "40": 462407680.0, + "41": 462411264.0, + "42": 462409728.0, + "43": 462411264.0, + "44": 462407680.0, + "45": 462408704.0, + "46": 462410752.0, + "47": 462407680.0, + "48": 462408192.0, + "49": 462409728.0, + "50": 462409216.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1033451008.0, + "2": 1197371392.0, + "3": 1197371392.0, + "4": 1197880320.0, + "5": 1197880320.0, + "6": 1197880320.0, + "7": 1197880320.0, + "8": 1197880320.0, + "9": 1197965824.0, + "10": 1197965824.0, + "11": 1197965824.0, + "12": 1197965824.0, + "13": 1197965824.0, + "14": 1197965824.0, + "15": 1197965824.0, + "16": 1197965824.0, + "17": 1197965824.0, + "18": 1197965824.0, + "19": 1197965824.0, + "20": 1197965824.0, + "21": 1197965824.0, + "22": 1198112768.0, + "23": 1198112768.0, + "24": 1198112768.0, + "25": 1198112768.0, + "26": 1198112768.0, + "27": 1198112768.0, + "28": 1198112768.0, + "29": 1198112768.0, + "30": 1198112768.0, + "31": 1198112768.0, + "32": 1198112768.0, + "33": 1198112768.0, + "34": 1198112768.0, + "35": 1198112768.0, + "36": 1198112768.0, + "37": 1198112768.0, + "38": 1198112768.0, + "39": 1198112768.0, + "40": 1198333440.0, + "41": 1198333440.0, + "42": 1198333440.0, + "43": 1198444032.0, + "44": 1198444032.0, + "45": 1198444032.0, + "46": 1198444032.0, + "47": 1198444032.0, + "48": 1198444032.0, + "49": 1198444032.0, + "50": 1198444032.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 7.59918, + "2": 0.61895, + "3": 0.56068, + "4": 0.55629, + "5": 0.55614, + "6": 0.55955, + "7": 0.55763, + "8": 0.55984, + "9": 0.55, + "10": 0.5499, + "11": 0.55012, + "12": 0.54844, + "13": 0.55795, + "14": 0.54851, + "15": 0.5504, + "16": 0.55068, + "17": 0.54716, + "18": 0.55003, + "19": 0.54872, + "20": 0.54841, + "21": 0.55411, + "22": 0.55114, + "23": 0.54838, + "24": 0.54877, + "25": 0.54811, + "26": 0.54808, + "27": 0.54959, + "28": 0.55486, + "29": 0.55193, + "30": 0.54966, + "31": 0.54964, + "32": 0.55053, + "33": 0.55025, + "34": 0.55174, + "35": 0.55, + "36": 0.55117, + "37": 0.55004, + "38": 0.55089, + "39": 0.54857, + "40": 0.55402, + "41": 0.55168, + "42": 0.54916, + "43": 0.55132, + "44": 0.54941, + "45": 0.54876, + "46": 0.55724, + "47": 0.54849, + "48": 0.55007, + "49": 0.55215, + "50": 0.54754 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts_dgx_a100.json index 7aae0170419..a186febffbe 100644 --- a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.79288, "5": 10.828, "10": 10.76831, "15": 10.79073, "20": 10.7066, "25": 10.54061, "30": 10.39485, "35": 10.30488, "40": 10.13079, "45": 9.90236, "50": 9.97938}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 5601.0, "5": 6601.0, "10": 5254.0, "15": 6250.0, "20": 5969.0, "25": 5816.0, "30": 6181.0, "35": 6751.0, "40": 6831.0, "45": 6881.0, "50": 7684.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 458211840.0, "5": 458212864.0, "10": 458214912.0, "15": 458215424.0, "20": 458212864.0, "25": 458215424.0, "30": 458211840.0, "35": 458214400.0, "40": 458214912.0, "45": 458213888.0, "50": 458214912.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1016394240.0, "5": 1180904960.0, "10": 1180934144.0, "15": 1180990976.0, "20": 1180990976.0, "25": 1181222912.0, "30": 1181222912.0, "35": 1181468160.0, "40": 1181468160.0, "45": 1183467008.0, "50": 1183467008.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 16.31521, "5": 0.56321, "10": 0.56536, "15": 0.56469, "20": 0.55362, "25": 0.55331, "30": 0.55482, "35": 0.57032, "40": 0.56489, "45": 0.55226, "50": 0.54242}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.79175, + "2": 10.80907, + "3": 10.81011, + "4": 10.78146, + "5": 10.82288, + "6": 10.84057, + "7": 10.81192, + "8": 10.80005, + "9": 10.81667, + "10": 10.7688, + "11": 10.8618, + "12": 10.84042, + "13": 10.84452, + "14": 10.86421, + "15": 10.79157, + "16": 10.78199, + "17": 10.75122, + "18": 10.79446, + "19": 10.79523, + "20": 10.71001, + "21": 10.68811, + "22": 10.53736, + "23": 10.7066, + "24": 10.58865, + "25": 10.54662, + "26": 10.59492, + "27": 10.62142, + "28": 10.5969, + "29": 10.60036, + "30": 10.39407, + "31": 10.12951, + "32": 10.49684, + "33": 10.48779, + "34": 10.24347, + "35": 10.30461, + "36": 10.26056, + "37": 10.38859, + "38": 10.24848, + "39": 10.43799, + "40": 10.13303, + "41": 10.18651, + "42": 10.25823, + "43": 9.892, + "44": 10.02576, + "45": 9.90015, + "46": 9.88387, + "47": 10.19565, + "48": 9.91255, + "49": 9.60147, + "50": 9.97874 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 5656.0, + "2": 6018.0, + "3": 5790.0, + "4": 5941.0, + "5": 6476.0, + "6": 6653.0, + "7": 6287.0, + "8": 5875.0, + "9": 6239.0, + "10": 5453.0, + "11": 6936.0, + "12": 6711.0, + "13": 6655.0, + "14": 6814.0, + "15": 6233.0, + "16": 6533.0, + "17": 6397.0, + "18": 6112.0, + "19": 6678.0, + "20": 5837.0, + "21": 6403.0, + "22": 5715.0, + "23": 6744.0, + "24": 6051.0, + "25": 5811.0, + "26": 6104.0, + "27": 6484.0, + "28": 6884.0, + "29": 7253.0, + "30": 6047.0, + "31": 5593.0, + "32": 6625.0, + "33": 7054.0, + "34": 6104.0, + "35": 6712.0, + "36": 6684.0, + "37": 7523.0, + "38": 7273.0, + "39": 7620.0, + "40": 7062.0, + "41": 6895.0, + "42": 7426.0, + "43": 6713.0, + "44": 6664.0, + "45": 6681.0, + "46": 6923.0, + "47": 7705.0, + "48": 7248.0, + "49": 7331.0, + "50": 7527.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 462408192.0, + "2": 462406144.0, + "3": 462409728.0, + "4": 462406144.0, + "5": 462407680.0, + "6": 462408192.0, + "7": 462410752.0, + "8": 462410752.0, + "9": 462407168.0, + "10": 462410240.0, + "11": 462408192.0, + "12": 462408192.0, + "13": 462408704.0, + "14": 462409728.0, + "15": 462409728.0, + "16": 462407168.0, + "17": 462408704.0, + "18": 462408704.0, + "19": 462408704.0, + "20": 462408704.0, + "21": 462406144.0, + "22": 462412800.0, + "23": 462409216.0, + "24": 462408704.0, + "25": 462406144.0, + "26": 462410240.0, + "27": 462405120.0, + "28": 462408192.0, + "29": 462407168.0, + "30": 462406144.0, + "31": 462413312.0, + "32": 462408704.0, + "33": 462409216.0, + "34": 462406144.0, + "35": 462410240.0, + "36": 462407168.0, + "37": 462409728.0, + "38": 462408192.0, + "39": 462408192.0, + "40": 462407680.0, + "41": 462411264.0, + "42": 462409728.0, + "43": 462411264.0, + "44": 462407680.0, + "45": 462408704.0, + "46": 462410752.0, + "47": 462407680.0, + "48": 462408192.0, + "49": 462409728.0, + "50": 462409216.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1033451008.0, + "2": 1197371392.0, + "3": 1197371392.0, + "4": 1197880320.0, + "5": 1197880320.0, + "6": 1197880320.0, + "7": 1197880320.0, + "8": 1197880320.0, + "9": 1197965824.0, + "10": 1197965824.0, + "11": 1197965824.0, + "12": 1197965824.0, + "13": 1197965824.0, + "14": 1197965824.0, + "15": 1197965824.0, + "16": 1197965824.0, + "17": 1197965824.0, + "18": 1197965824.0, + "19": 1197965824.0, + "20": 1197965824.0, + "21": 1197965824.0, + "22": 1198112768.0, + "23": 1198112768.0, + "24": 1198112768.0, + "25": 1198112768.0, + "26": 1198112768.0, + "27": 1198112768.0, + "28": 1198112768.0, + "29": 1198112768.0, + "30": 1198112768.0, + "31": 1198112768.0, + "32": 1198112768.0, + "33": 1198112768.0, + "34": 1198112768.0, + "35": 1198112768.0, + "36": 1198112768.0, + "37": 1198112768.0, + "38": 1198112768.0, + "39": 1198112768.0, + "40": 1198333440.0, + "41": 1198333440.0, + "42": 1198333440.0, + "43": 1198444032.0, + "44": 1198444032.0, + "45": 1198444032.0, + "46": 1198444032.0, + "47": 1198444032.0, + "48": 1198444032.0, + "49": 1198444032.0, + "50": 1198444032.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 12.49228, + "2": 0.63481, + "3": 0.56951, + "4": 0.57807, + "5": 0.581, + "6": 0.58159, + "7": 0.5705, + "8": 0.56929, + "9": 0.56794, + "10": 0.56314, + "11": 0.57935, + "12": 0.57294, + "13": 0.56865, + "14": 0.56698, + "15": 0.56505, + "16": 0.56266, + "17": 0.56337, + "18": 0.56237, + "19": 0.56197, + "20": 0.5626, + "21": 0.5642, + "22": 0.56373, + "23": 0.57291, + "24": 0.56432, + "25": 0.56287, + "26": 0.56295, + "27": 0.56146, + "28": 0.56459, + "29": 0.56415, + "30": 0.56587, + "31": 0.5671, + "32": 0.56896, + "33": 0.57526, + "34": 0.57281, + "35": 0.57407, + "36": 0.57321, + "37": 0.57403, + "38": 0.57296, + "39": 0.57248, + "40": 0.57089, + "41": 0.57201, + "42": 0.5661, + "43": 0.57044, + "44": 0.56777, + "45": 0.56877, + "46": 0.57143, + "47": 0.57031, + "48": 0.56952, + "49": 0.57353, + "50": 0.56636 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts.json new file mode 100644 index 00000000000..63611a809be --- /dev/null +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.79175, + "2": 10.80907, + "3": 10.81011, + "4": 10.78146, + "5": 10.82288, + "6": 10.84057, + "7": 10.81192, + "8": 10.80005, + "9": 10.81667, + "10": 10.7688, + "11": 10.8618, + "12": 10.84042, + "13": 10.84452, + "14": 10.86421, + "15": 10.79157, + "16": 10.78199, + "17": 10.75122, + "18": 10.79446, + "19": 10.79523, + "20": 10.71001, + "21": 10.68811, + "22": 10.53736, + "23": 10.7066, + "24": 10.58865, + "25": 10.54662, + "26": 10.59492, + "27": 10.62142, + "28": 10.5969, + "29": 10.60036, + "30": 10.39407, + "31": 10.12951, + "32": 10.49684, + "33": 10.48779, + "34": 10.24347, + "35": 10.30461, + "36": 10.26056, + "37": 10.38859, + "38": 10.24848, + "39": 10.43799, + "40": 10.13303, + "41": 10.18651, + "42": 10.25823, + "43": 9.892, + "44": 10.02576, + "45": 9.90015, + "46": 9.88387, + "47": 10.19565, + "48": 9.91255, + "49": 9.60147, + "50": 9.97874 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 5656.0, + "2": 6018.0, + "3": 5790.0, + "4": 5941.0, + "5": 6476.0, + "6": 6653.0, + "7": 6287.0, + "8": 5875.0, + "9": 6239.0, + "10": 5453.0, + "11": 6936.0, + "12": 6711.0, + "13": 6655.0, + "14": 6814.0, + "15": 6233.0, + "16": 6533.0, + "17": 6397.0, + "18": 6112.0, + "19": 6678.0, + "20": 5837.0, + "21": 6403.0, + "22": 5715.0, + "23": 6744.0, + "24": 6051.0, + "25": 5811.0, + "26": 6104.0, + "27": 6484.0, + "28": 6884.0, + "29": 7253.0, + "30": 6047.0, + "31": 5593.0, + "32": 6625.0, + "33": 7054.0, + "34": 6104.0, + "35": 6712.0, + "36": 6684.0, + "37": 7523.0, + "38": 7273.0, + "39": 7620.0, + "40": 7062.0, + "41": 6895.0, + "42": 7426.0, + "43": 6713.0, + "44": 6664.0, + "45": 6681.0, + "46": 6923.0, + "47": 7705.0, + "48": 7248.0, + "49": 7331.0, + "50": 7527.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 462408192.0, + "2": 462406144.0, + "3": 462409728.0, + "4": 462406144.0, + "5": 462407680.0, + "6": 462408192.0, + "7": 462410752.0, + "8": 462410752.0, + "9": 462407168.0, + "10": 462410240.0, + "11": 462408192.0, + "12": 462408192.0, + "13": 462408704.0, + "14": 462409728.0, + "15": 462409728.0, + "16": 462407168.0, + "17": 462408704.0, + "18": 462408704.0, + "19": 462408704.0, + "20": 462408704.0, + "21": 462406144.0, + "22": 462412800.0, + "23": 462409216.0, + "24": 462408704.0, + "25": 462406144.0, + "26": 462410240.0, + "27": 462405120.0, + "28": 462408192.0, + "29": 462407168.0, + "30": 462406144.0, + "31": 462413312.0, + "32": 462408704.0, + "33": 462409216.0, + "34": 462406144.0, + "35": 462410240.0, + "36": 462407168.0, + "37": 462409728.0, + "38": 462408192.0, + "39": 462408192.0, + "40": 462407680.0, + "41": 462411264.0, + "42": 462409728.0, + "43": 462411264.0, + "44": 462407680.0, + "45": 462408704.0, + "46": 462410752.0, + "47": 462407680.0, + "48": 462408192.0, + "49": 462409728.0, + "50": 462409216.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1033451008.0, + "2": 1197371392.0, + "3": 1197371392.0, + "4": 1197880320.0, + "5": 1197880320.0, + "6": 1197880320.0, + "7": 1197880320.0, + "8": 1197880320.0, + "9": 1197965824.0, + "10": 1197965824.0, + "11": 1197965824.0, + "12": 1197965824.0, + "13": 1197965824.0, + "14": 1197965824.0, + "15": 1197965824.0, + "16": 1197965824.0, + "17": 1197965824.0, + "18": 1197965824.0, + "19": 1197965824.0, + "20": 1197965824.0, + "21": 1197965824.0, + "22": 1198112768.0, + "23": 1198112768.0, + "24": 1198112768.0, + "25": 1198112768.0, + "26": 1198112768.0, + "27": 1198112768.0, + "28": 1198112768.0, + "29": 1198112768.0, + "30": 1198112768.0, + "31": 1198112768.0, + "32": 1198112768.0, + "33": 1198112768.0, + "34": 1198112768.0, + "35": 1198112768.0, + "36": 1198112768.0, + "37": 1198112768.0, + "38": 1198112768.0, + "39": 1198112768.0, + "40": 1198333440.0, + "41": 1198333440.0, + "42": 1198333440.0, + "43": 1198444032.0, + "44": 1198444032.0, + "45": 1198444032.0, + "46": 1198444032.0, + "47": 1198444032.0, + "48": 1198444032.0, + "49": 1198444032.0, + "50": 1198444032.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 7.94206, + "2": 0.63285, + "3": 0.57182, + "4": 0.57773, + "5": 0.57872, + "6": 0.57643, + "7": 0.57659, + "8": 0.57355, + "9": 0.57629, + "10": 0.56867, + "11": 0.56833, + "12": 0.56771, + "13": 0.56904, + "14": 0.59894, + "15": 0.67038, + "16": 0.5641, + "17": 0.56097, + "18": 0.56495, + "19": 0.56059, + "20": 0.56119, + "21": 0.55935, + "22": 0.55364, + "23": 0.55179, + "24": 0.55091, + "25": 0.55193, + "26": 0.55148, + "27": 0.55193, + "28": 0.55181, + "29": 0.55146, + "30": 0.55214, + "31": 0.55292, + "32": 0.55164, + "33": 0.55141, + "34": 0.54974, + "35": 0.55215, + "36": 0.55139, + "37": 0.55509, + "38": 0.5519, + "39": 0.55134, + "40": 0.55133, + "41": 0.55143, + "42": 0.5495, + "43": 0.54991, + "44": 0.5491, + "45": 0.54833, + "46": 0.54896, + "47": 0.54857, + "48": 0.5489, + "49": 0.54919, + "50": 0.54936 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts_dgx_a100.json index 5f0c72de4dd..4ebfff8da76 100644 --- a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_etp2_te_4experts2parallel_dp_last/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.79288, "5": 10.828, "10": 10.76831, "15": 10.79073, "20": 10.7066, "25": 10.54061, "30": 10.39485, "35": 10.30488, "40": 10.13079, "45": 9.90236, "50": 9.97938}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 5601.0, "5": 6601.0, "10": 5254.0, "15": 6250.0, "20": 5969.0, "25": 5816.0, "30": 6181.0, "35": 6751.0, "40": 6831.0, "45": 6881.0, "50": 7684.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 458211840.0, "5": 458212864.0, "10": 458214912.0, "15": 458215424.0, "20": 458212864.0, "25": 458215424.0, "30": 458211840.0, "35": 458214400.0, "40": 458214912.0, "45": 458213888.0, "50": 458214912.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1016394240.0, "5": 1180904960.0, "10": 1180934144.0, "15": 1180990976.0, "20": 1180990976.0, "25": 1181222912.0, "30": 1181222912.0, "35": 1181468160.0, "40": 1181468160.0, "45": 1183467008.0, "50": 1183467008.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 19.9711, "5": 0.5845, "10": 0.59728, "15": 0.60305, "20": 0.58013, "25": 0.57491, "30": 0.5625, "35": 0.56368, "40": 0.56421, "45": 0.57011, "50": 0.58956}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.79175, + "2": 10.80907, + "3": 10.81011, + "4": 10.78146, + "5": 10.82288, + "6": 10.84057, + "7": 10.81192, + "8": 10.80005, + "9": 10.81667, + "10": 10.7688, + "11": 10.8618, + "12": 10.84042, + "13": 10.84452, + "14": 10.86421, + "15": 10.79157, + "16": 10.78199, + "17": 10.75122, + "18": 10.79446, + "19": 10.79523, + "20": 10.71001, + "21": 10.68811, + "22": 10.53736, + "23": 10.7066, + "24": 10.58865, + "25": 10.54662, + "26": 10.59492, + "27": 10.62142, + "28": 10.5969, + "29": 10.60036, + "30": 10.39407, + "31": 10.12951, + "32": 10.49684, + "33": 10.48779, + "34": 10.24347, + "35": 10.30461, + "36": 10.26056, + "37": 10.38859, + "38": 10.24848, + "39": 10.43799, + "40": 10.13303, + "41": 10.18651, + "42": 10.25823, + "43": 9.892, + "44": 10.02576, + "45": 9.90015, + "46": 9.88387, + "47": 10.19565, + "48": 9.91255, + "49": 9.60147, + "50": 9.97874 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 5656.0, + "2": 6018.0, + "3": 5790.0, + "4": 5941.0, + "5": 6476.0, + "6": 6653.0, + "7": 6287.0, + "8": 5875.0, + "9": 6239.0, + "10": 5453.0, + "11": 6936.0, + "12": 6711.0, + "13": 6655.0, + "14": 6814.0, + "15": 6233.0, + "16": 6533.0, + "17": 6397.0, + "18": 6112.0, + "19": 6678.0, + "20": 5837.0, + "21": 6403.0, + "22": 5715.0, + "23": 6744.0, + "24": 6051.0, + "25": 5811.0, + "26": 6104.0, + "27": 6484.0, + "28": 6884.0, + "29": 7253.0, + "30": 6047.0, + "31": 5593.0, + "32": 6625.0, + "33": 7054.0, + "34": 6104.0, + "35": 6712.0, + "36": 6684.0, + "37": 7523.0, + "38": 7273.0, + "39": 7620.0, + "40": 7062.0, + "41": 6895.0, + "42": 7426.0, + "43": 6713.0, + "44": 6664.0, + "45": 6681.0, + "46": 6923.0, + "47": 7705.0, + "48": 7248.0, + "49": 7331.0, + "50": 7527.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 462408192.0, + "2": 462406144.0, + "3": 462409728.0, + "4": 462406144.0, + "5": 462407680.0, + "6": 462408192.0, + "7": 462410752.0, + "8": 462410752.0, + "9": 462407168.0, + "10": 462410240.0, + "11": 462408192.0, + "12": 462408192.0, + "13": 462408704.0, + "14": 462409728.0, + "15": 462409728.0, + "16": 462407168.0, + "17": 462408704.0, + "18": 462408704.0, + "19": 462408704.0, + "20": 462408704.0, + "21": 462406144.0, + "22": 462412800.0, + "23": 462409216.0, + "24": 462408704.0, + "25": 462406144.0, + "26": 462410240.0, + "27": 462405120.0, + "28": 462408192.0, + "29": 462407168.0, + "30": 462406144.0, + "31": 462413312.0, + "32": 462408704.0, + "33": 462409216.0, + "34": 462406144.0, + "35": 462410240.0, + "36": 462407168.0, + "37": 462409728.0, + "38": 462408192.0, + "39": 462408192.0, + "40": 462407680.0, + "41": 462411264.0, + "42": 462409728.0, + "43": 462411264.0, + "44": 462407680.0, + "45": 462408704.0, + "46": 462410752.0, + "47": 462407680.0, + "48": 462408192.0, + "49": 462409728.0, + "50": 462409216.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1033451008.0, + "2": 1197371392.0, + "3": 1197371392.0, + "4": 1197880320.0, + "5": 1197880320.0, + "6": 1197880320.0, + "7": 1197880320.0, + "8": 1197880320.0, + "9": 1197965824.0, + "10": 1197965824.0, + "11": 1197965824.0, + "12": 1197965824.0, + "13": 1197965824.0, + "14": 1197965824.0, + "15": 1197965824.0, + "16": 1197965824.0, + "17": 1197965824.0, + "18": 1197965824.0, + "19": 1197965824.0, + "20": 1197965824.0, + "21": 1197965824.0, + "22": 1198112768.0, + "23": 1198112768.0, + "24": 1198112768.0, + "25": 1198112768.0, + "26": 1198112768.0, + "27": 1198112768.0, + "28": 1198112768.0, + "29": 1198112768.0, + "30": 1198112768.0, + "31": 1198112768.0, + "32": 1198112768.0, + "33": 1198112768.0, + "34": 1198112768.0, + "35": 1198112768.0, + "36": 1198112768.0, + "37": 1198112768.0, + "38": 1198112768.0, + "39": 1198112768.0, + "40": 1198333440.0, + "41": 1198333440.0, + "42": 1198333440.0, + "43": 1198444032.0, + "44": 1198444032.0, + "45": 1198444032.0, + "46": 1198444032.0, + "47": 1198444032.0, + "48": 1198444032.0, + "49": 1198444032.0, + "50": 1198444032.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 8.27777, + "2": 0.60806, + "3": 0.55409, + "4": 0.55324, + "5": 0.54815, + "6": 0.54698, + "7": 0.54712, + "8": 0.55008, + "9": 0.55718, + "10": 0.55527, + "11": 0.55082, + "12": 0.56208, + "13": 0.55625, + "14": 0.55717, + "15": 0.56582, + "16": 0.55953, + "17": 0.57188, + "18": 0.55508, + "19": 0.55956, + "20": 0.55934, + "21": 0.55676, + "22": 0.55842, + "23": 0.55867, + "24": 0.55987, + "25": 0.55941, + "26": 0.55642, + "27": 0.55364, + "28": 0.55209, + "29": 0.55397, + "30": 0.55602, + "31": 0.55344, + "32": 0.55195, + "33": 0.56308, + "34": 0.55588, + "35": 0.55251, + "36": 0.55314, + "37": 0.55563, + "38": 0.56708, + "39": 0.5661, + "40": 0.56725, + "41": 0.5663, + "42": 0.56565, + "43": 0.5725, + "44": 0.56736, + "45": 0.5674, + "46": 0.56751, + "47": 0.56642, + "48": 0.56257, + "49": 0.56841, + "50": 0.56452 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_dev.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_dev.json new file mode 100644 index 00000000000..2c1e24efd92 --- /dev/null +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_dev.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.82004, + "2": 10.8392, + "3": 10.81124, + "4": 10.81983, + "5": 10.84794, + "6": 10.8608, + "7": 10.84085, + "8": 10.84432, + "9": 10.8504, + "10": 10.79461, + "11": 10.85658, + "12": 10.84848, + "13": 10.86929, + "14": 10.8667, + "15": 10.82911, + "16": 10.81111, + "17": 10.79027, + "18": 10.80981, + "19": 10.81143, + "20": 10.73175, + "21": 10.71285, + "22": 10.58199, + "23": 10.72, + "24": 10.61704, + "25": 10.57964, + "26": 10.63372, + "27": 10.6365, + "28": 10.60641, + "29": 10.61561, + "30": 10.40859, + "31": 10.17068, + "32": 10.49958, + "33": 10.4963, + "34": 10.25574, + "35": 10.31503, + "36": 10.28536, + "37": 10.38742, + "38": 10.24676, + "39": 10.44249, + "40": 10.14367, + "41": 10.19116, + "42": 10.25654, + "43": 9.90671, + "44": 10.02653, + "45": 9.914, + "46": 9.89613, + "47": 10.18885, + "48": 9.92993, + "49": 9.61419, + "50": 9.97565 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 12826.0, + "2": 14613.0, + "3": 14549.0, + "4": 13422.0, + "5": 15951.0, + "6": 16055.0, + "7": 15208.0, + "8": 12944.0, + "9": 15110.0, + "10": 12611.0, + "11": 16586.0, + "12": 14954.0, + "13": 15925.0, + "14": 16182.0, + "15": 14834.0, + "16": 16023.0, + "17": 15486.0, + "18": 15116.0, + "19": 15584.0, + "20": 13675.0, + "21": 13873.0, + "22": 12917.0, + "23": 16766.0, + "24": 13924.0, + "25": 13129.0, + "26": 14794.0, + "27": 15169.0, + "28": 16393.0, + "29": 16719.0, + "30": 14652.0, + "31": 13126.0, + "32": 15987.0, + "33": 17372.0, + "34": 14206.0, + "35": 15183.0, + "36": 15837.0, + "37": 17507.0, + "38": 16617.0, + "39": 17712.0, + "40": 16971.0, + "41": 16795.0, + "42": 17304.0, + "43": 15578.0, + "44": 15564.0, + "45": 16188.0, + "46": 17443.0, + "47": 19238.0, + "48": 16575.0, + "49": 16273.0, + "50": 18998.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 629738496.0, + "2": 629705216.0, + "3": 629710336.0, + "4": 629699584.0, + "5": 629732864.0, + "6": 629703168.0, + "7": 629718528.0, + "8": 629722624.0, + "9": 629763072.0, + "10": 629733888.0, + "11": 629810176.0, + "12": 629705728.0, + "13": 629848576.0, + "14": 629702144.0, + "15": 629870592.0, + "16": 629805568.0, + "17": 629698048.0, + "18": 629731328.0, + "19": 629798912.0, + "20": 629752832.0, + "21": 629716480.0, + "22": 629699584.0, + "23": 629705216.0, + "24": 629736448.0, + "25": 629699584.0, + "26": 629736960.0, + "27": 629704192.0, + "28": 629750272.0, + "29": 629728256.0, + "30": 629933568.0, + "31": 629847040.0, + "32": 629700096.0, + "33": 629703168.0, + "34": 629752832.0, + "35": 629725696.0, + "36": 629724160.0, + "37": 629702656.0, + "38": 629704192.0, + "39": 629733888.0, + "40": 629749760.0, + "41": 629700096.0, + "42": 629729280.0, + "43": 629699072.0, + "44": 629769728.0, + "45": 629713920.0, + "46": 629804544.0, + "47": 629719552.0, + "48": 629843456.0, + "49": 630007296.0, + "50": 629703168.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1847654400.0, + "2": 2077632000.0, + "3": 2078750208.0, + "4": 2078750208.0, + "5": 2079077888.0, + "6": 2079077888.0, + "7": 2080535040.0, + "8": 2080535040.0, + "9": 2080535040.0, + "10": 2080535040.0, + "11": 2080535040.0, + "12": 2080535040.0, + "13": 2080535040.0, + "14": 2080535040.0, + "15": 2080535040.0, + "16": 2080535040.0, + "17": 2080535040.0, + "18": 2080535040.0, + "19": 2080535040.0, + "20": 2080535040.0, + "21": 2080535040.0, + "22": 2080535040.0, + "23": 2080535040.0, + "24": 2080535040.0, + "25": 2080535040.0, + "26": 2080535040.0, + "27": 2080535040.0, + "28": 2080535040.0, + "29": 2080535040.0, + "30": 2080535040.0, + "31": 2080535040.0, + "32": 2080535040.0, + "33": 2080535040.0, + "34": 2080535040.0, + "35": 2080535040.0, + "36": 2080535040.0, + "37": 2080535040.0, + "38": 2080535040.0, + "39": 2080535040.0, + "40": 2080535040.0, + "41": 2080535040.0, + "42": 2080535040.0, + "43": 2080535040.0, + "44": 2080535040.0, + "45": 2080535040.0, + "46": 2080535040.0, + "47": 2080535040.0, + "48": 2080535040.0, + "49": 2080535040.0, + "50": 2080535040.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 11.85676, + "2": 0.38679, + "3": 0.33955, + "4": 0.34149, + "5": 0.33738, + "6": 0.3367, + "7": 0.33549, + "8": 0.33607, + "9": 0.33582, + "10": 0.33626, + "11": 0.33555, + "12": 0.33476, + "13": 0.33518, + "14": 0.33155, + "15": 0.33236, + "16": 0.33276, + "17": 0.33237, + "18": 0.33234, + "19": 0.33191, + "20": 0.33586, + "21": 0.334, + "22": 0.33303, + "23": 0.33299, + "24": 0.33339, + "25": 0.33301, + "26": 0.33368, + "27": 0.33213, + "28": 0.33242, + "29": 0.33251, + "30": 0.33285, + "31": 0.33233, + "32": 0.33175, + "33": 0.33133, + "34": 0.33224, + "35": 0.3317, + "36": 0.33247, + "37": 0.33189, + "38": 0.3324, + "39": 0.33157, + "40": 0.33224, + "41": 0.33218, + "42": 0.33335, + "43": 0.33381, + "44": 0.33284, + "45": 0.33399, + "46": 0.33341, + "47": 0.33248, + "48": 0.33301, + "49": 0.33248, + "50": 0.33145 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts.json new file mode 100644 index 00000000000..c1d418bd4a8 --- /dev/null +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts.json @@ -0,0 +1,287 @@ +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.82004, + "2": 10.8392, + "3": 10.81124, + "4": 10.81983, + "5": 10.84794, + "6": 10.8608, + "7": 10.84085, + "8": 10.84432, + "9": 10.8504, + "10": 10.79461, + "11": 10.85658, + "12": 10.84848, + "13": 10.86929, + "14": 10.8667, + "15": 10.82911, + "16": 10.81111, + "17": 10.79027, + "18": 10.80981, + "19": 10.81143, + "20": 10.73175, + "21": 10.71285, + "22": 10.58199, + "23": 10.72, + "24": 10.61704, + "25": 10.57964, + "26": 10.63372, + "27": 10.6365, + "28": 10.60641, + "29": 10.61561, + "30": 10.40859, + "31": 10.17068, + "32": 10.49958, + "33": 10.4963, + "34": 10.25574, + "35": 10.31503, + "36": 10.28536, + "37": 10.38742, + "38": 10.24676, + "39": 10.44249, + "40": 10.14367, + "41": 10.19116, + "42": 10.25654, + "43": 9.90671, + "44": 10.02653, + "45": 9.914, + "46": 9.89613, + "47": 10.18885, + "48": 9.92993, + "49": 9.61419, + "50": 9.97565 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 12826.0, + "2": 14613.0, + "3": 14549.0, + "4": 13422.0, + "5": 15951.0, + "6": 16055.0, + "7": 15208.0, + "8": 12944.0, + "9": 15110.0, + "10": 12611.0, + "11": 16586.0, + "12": 14954.0, + "13": 15925.0, + "14": 16182.0, + "15": 14834.0, + "16": 16023.0, + "17": 15486.0, + "18": 15116.0, + "19": 15584.0, + "20": 13675.0, + "21": 13873.0, + "22": 12917.0, + "23": 16766.0, + "24": 13924.0, + "25": 13129.0, + "26": 14794.0, + "27": 15169.0, + "28": 16393.0, + "29": 16719.0, + "30": 14652.0, + "31": 13126.0, + "32": 15987.0, + "33": 17372.0, + "34": 14206.0, + "35": 15183.0, + "36": 15837.0, + "37": 17507.0, + "38": 16617.0, + "39": 17712.0, + "40": 16971.0, + "41": 16795.0, + "42": 17304.0, + "43": 15578.0, + "44": 15564.0, + "45": 16188.0, + "46": 17443.0, + "47": 19238.0, + "48": 16575.0, + "49": 16273.0, + "50": 18998.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 629738496.0, + "2": 629705216.0, + "3": 629710336.0, + "4": 629699584.0, + "5": 629732864.0, + "6": 629703168.0, + "7": 629718528.0, + "8": 629722624.0, + "9": 629763072.0, + "10": 629733888.0, + "11": 629810176.0, + "12": 629705728.0, + "13": 629848576.0, + "14": 629702144.0, + "15": 629870592.0, + "16": 629805568.0, + "17": 629698048.0, + "18": 629731328.0, + "19": 629798912.0, + "20": 629752832.0, + "21": 629716480.0, + "22": 629699584.0, + "23": 629705216.0, + "24": 629736448.0, + "25": 629699584.0, + "26": 629736960.0, + "27": 629704192.0, + "28": 629750272.0, + "29": 629728256.0, + "30": 629933568.0, + "31": 629847040.0, + "32": 629700096.0, + "33": 629703168.0, + "34": 629752832.0, + "35": 629725696.0, + "36": 629724160.0, + "37": 629702656.0, + "38": 629704192.0, + "39": 629733888.0, + "40": 629749760.0, + "41": 629700096.0, + "42": 629729280.0, + "43": 629699072.0, + "44": 629769728.0, + "45": 629713920.0, + "46": 629804544.0, + "47": 629719552.0, + "48": 629843456.0, + "49": 630007296.0, + "50": 629703168.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1847654400.0, + "2": 2077632000.0, + "3": 2078750208.0, + "4": 2078750208.0, + "5": 2079077888.0, + "6": 2079077888.0, + "7": 2080535040.0, + "8": 2080535040.0, + "9": 2080535040.0, + "10": 2080535040.0, + "11": 2080535040.0, + "12": 2080535040.0, + "13": 2080535040.0, + "14": 2080535040.0, + "15": 2080535040.0, + "16": 2080535040.0, + "17": 2080535040.0, + "18": 2080535040.0, + "19": 2080535040.0, + "20": 2080535040.0, + "21": 2080535040.0, + "22": 2080535040.0, + "23": 2080535040.0, + "24": 2080535040.0, + "25": 2080535040.0, + "26": 2080535040.0, + "27": 2080535040.0, + "28": 2080535040.0, + "29": 2080535040.0, + "30": 2080535040.0, + "31": 2080535040.0, + "32": 2080535040.0, + "33": 2080535040.0, + "34": 2080535040.0, + "35": 2080535040.0, + "36": 2080535040.0, + "37": 2080535040.0, + "38": 2080535040.0, + "39": 2080535040.0, + "40": 2080535040.0, + "41": 2080535040.0, + "42": 2080535040.0, + "43": 2080535040.0, + "44": 2080535040.0, + "45": 2080535040.0, + "46": 2080535040.0, + "47": 2080535040.0, + "48": 2080535040.0, + "49": 2080535040.0, + "50": 2080535040.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 12.62289, + "2": 0.39639, + "3": 0.35696, + "4": 0.3674, + "5": 0.3577, + "6": 0.35509, + "7": 0.35808, + "8": 0.35462, + "9": 0.35492, + "10": 0.35391, + "11": 0.35546, + "12": 0.35515, + "13": 0.35432, + "14": 0.35491, + "15": 0.35335, + "16": 0.35396, + "17": 0.35304, + "18": 0.35201, + "19": 0.35198, + "20": 0.35194, + "21": 0.35412, + "22": 0.35208, + "23": 0.3541, + "24": 0.3519, + "25": 0.38526, + "26": 0.39355, + "27": 0.39377, + "28": 0.3934, + "29": 0.39406, + "30": 0.39393, + "31": 0.38905, + "32": 0.3893, + "33": 0.39052, + "34": 0.39004, + "35": 0.38977, + "36": 0.39027, + "37": 0.38961, + "38": 0.38929, + "39": 0.38944, + "40": 0.38968, + "41": 0.38938, + "42": 0.38964, + "43": 0.3909, + "44": 0.39131, + "45": 0.38436, + "46": 0.34892, + "47": 0.34845, + "48": 0.34853, + "49": 0.3474, + "50": 0.34681 + } + } +} \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts_dgx_a100.json b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts_dgx_a100.json index 1f335e82393..478bae6fdec 100644 --- a/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts_dgx_a100.json +++ b/tests/functional_tests/test_cases/moe/gpt3_mcore_tp2_pp2_ep2_te_4experts2parallel/golden_values_lts_dgx_a100.json @@ -1 +1,287 @@ -{"lm loss": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 10.82416, "5": 10.84149, "10": 10.79041, "15": 10.8302, "20": 10.73076, "25": 10.57969, "30": 10.41029, "35": 10.31774, "40": 10.14481, "45": 9.91307, "50": 9.97569}}, "num-zeros": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 12709.0, "5": 15699.0, "10": 12503.0, "15": 14756.0, "20": 13658.0, "25": 13295.0, "30": 14801.0, "35": 15233.0, "40": 16737.0, "45": 16130.0, "50": 19242.0}}, "mem-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 625788416.0, "5": 625793536.0, "10": 625788928.0, "15": 625790976.0, "20": 625793024.0, "25": 625789440.0, "30": 625790976.0, "35": 625789952.0, "40": 625793536.0, "45": 625790976.0, "50": 625793024.0}}, "mem-max-allocated-bytes": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 1818507264.0, "5": 2049478144.0, "10": 2049478144.0, "15": 2050050048.0, "20": 2050050048.0, "25": 2050050048.0, "30": 2050050048.0, "35": 2050050048.0, "40": 2050050048.0, "45": 2050050048.0, "50": 2050050048.0}}, "iteration-time": {"start_step": 1, "end_step": 50, "step_interval": 5, "values": {"1": 16.64702, "5": 0.34446, "10": 0.34582, "15": 0.34645, "20": 0.34853, "25": 0.34852, "30": 0.34703, "35": 0.34516, "40": 0.34201, "45": 0.34861, "50": 0.3491}}} \ No newline at end of file +{ + "lm loss": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.82004, + "2": 10.8392, + "3": 10.81124, + "4": 10.81983, + "5": 10.84794, + "6": 10.8608, + "7": 10.84085, + "8": 10.84432, + "9": 10.8504, + "10": 10.79461, + "11": 10.85658, + "12": 10.84848, + "13": 10.86929, + "14": 10.8667, + "15": 10.82911, + "16": 10.81111, + "17": 10.79027, + "18": 10.80981, + "19": 10.81143, + "20": 10.73175, + "21": 10.71285, + "22": 10.58199, + "23": 10.72, + "24": 10.61704, + "25": 10.57964, + "26": 10.63372, + "27": 10.6365, + "28": 10.60641, + "29": 10.61561, + "30": 10.40859, + "31": 10.17068, + "32": 10.49958, + "33": 10.4963, + "34": 10.25574, + "35": 10.31503, + "36": 10.28536, + "37": 10.38742, + "38": 10.24676, + "39": 10.44249, + "40": 10.14367, + "41": 10.19116, + "42": 10.25654, + "43": 9.90671, + "44": 10.02653, + "45": 9.914, + "46": 9.89613, + "47": 10.18885, + "48": 9.92993, + "49": 9.61419, + "50": 9.97565 + } + }, + "num-zeros": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 12826.0, + "2": 14613.0, + "3": 14549.0, + "4": 13422.0, + "5": 15951.0, + "6": 16055.0, + "7": 15208.0, + "8": 12944.0, + "9": 15110.0, + "10": 12611.0, + "11": 16586.0, + "12": 14954.0, + "13": 15925.0, + "14": 16182.0, + "15": 14834.0, + "16": 16023.0, + "17": 15486.0, + "18": 15116.0, + "19": 15584.0, + "20": 13675.0, + "21": 13873.0, + "22": 12917.0, + "23": 16766.0, + "24": 13924.0, + "25": 13129.0, + "26": 14794.0, + "27": 15169.0, + "28": 16393.0, + "29": 16719.0, + "30": 14652.0, + "31": 13126.0, + "32": 15987.0, + "33": 17372.0, + "34": 14206.0, + "35": 15183.0, + "36": 15837.0, + "37": 17507.0, + "38": 16617.0, + "39": 17712.0, + "40": 16971.0, + "41": 16795.0, + "42": 17304.0, + "43": 15578.0, + "44": 15564.0, + "45": 16188.0, + "46": 17443.0, + "47": 19238.0, + "48": 16575.0, + "49": 16273.0, + "50": 18998.0 + } + }, + "mem-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 629738496.0, + "2": 629705216.0, + "3": 629710336.0, + "4": 629699584.0, + "5": 629732864.0, + "6": 629703168.0, + "7": 629718528.0, + "8": 629722624.0, + "9": 629763072.0, + "10": 629733888.0, + "11": 629810176.0, + "12": 629705728.0, + "13": 629848576.0, + "14": 629702144.0, + "15": 629870592.0, + "16": 629805568.0, + "17": 629698048.0, + "18": 629731328.0, + "19": 629798912.0, + "20": 629752832.0, + "21": 629716480.0, + "22": 629699584.0, + "23": 629705216.0, + "24": 629736448.0, + "25": 629699584.0, + "26": 629736960.0, + "27": 629704192.0, + "28": 629750272.0, + "29": 629728256.0, + "30": 629933568.0, + "31": 629847040.0, + "32": 629700096.0, + "33": 629703168.0, + "34": 629752832.0, + "35": 629725696.0, + "36": 629724160.0, + "37": 629702656.0, + "38": 629704192.0, + "39": 629733888.0, + "40": 629749760.0, + "41": 629700096.0, + "42": 629729280.0, + "43": 629699072.0, + "44": 629769728.0, + "45": 629713920.0, + "46": 629804544.0, + "47": 629719552.0, + "48": 629843456.0, + "49": 630007296.0, + "50": 629703168.0 + } + }, + "mem-max-allocated-bytes": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 1847654400.0, + "2": 2077632000.0, + "3": 2078750208.0, + "4": 2078750208.0, + "5": 2079077888.0, + "6": 2079077888.0, + "7": 2080535040.0, + "8": 2080535040.0, + "9": 2080535040.0, + "10": 2080535040.0, + "11": 2080535040.0, + "12": 2080535040.0, + "13": 2080535040.0, + "14": 2080535040.0, + "15": 2080535040.0, + "16": 2080535040.0, + "17": 2080535040.0, + "18": 2080535040.0, + "19": 2080535040.0, + "20": 2080535040.0, + "21": 2080535040.0, + "22": 2080535040.0, + "23": 2080535040.0, + "24": 2080535040.0, + "25": 2080535040.0, + "26": 2080535040.0, + "27": 2080535040.0, + "28": 2080535040.0, + "29": 2080535040.0, + "30": 2080535040.0, + "31": 2080535040.0, + "32": 2080535040.0, + "33": 2080535040.0, + "34": 2080535040.0, + "35": 2080535040.0, + "36": 2080535040.0, + "37": 2080535040.0, + "38": 2080535040.0, + "39": 2080535040.0, + "40": 2080535040.0, + "41": 2080535040.0, + "42": 2080535040.0, + "43": 2080535040.0, + "44": 2080535040.0, + "45": 2080535040.0, + "46": 2080535040.0, + "47": 2080535040.0, + "48": 2080535040.0, + "49": 2080535040.0, + "50": 2080535040.0 + } + }, + "iteration-time": { + "start_step": 1, + "end_step": 50, + "step_interval": 1, + "values": { + "1": 10.46534, + "2": 0.4102, + "3": 0.34219, + "4": 0.34093, + "5": 0.34255, + "6": 0.33706, + "7": 0.33661, + "8": 0.33616, + "9": 0.33565, + "10": 0.33568, + "11": 0.33538, + "12": 0.33457, + "13": 0.33488, + "14": 0.33416, + "15": 0.33683, + "16": 0.33684, + "17": 0.33708, + "18": 0.33815, + "19": 0.33805, + "20": 0.33696, + "21": 0.33675, + "22": 0.33623, + "23": 0.33752, + "24": 0.33699, + "25": 0.3409, + "26": 0.33513, + "27": 0.33524, + "28": 0.33491, + "29": 0.33714, + "30": 0.33571, + "31": 0.33638, + "32": 0.33629, + "33": 0.3369, + "34": 0.33685, + "35": 0.33651, + "36": 0.33539, + "37": 0.33561, + "38": 0.33636, + "39": 0.33558, + "40": 0.3356, + "41": 0.33618, + "42": 0.33669, + "43": 0.33535, + "44": 0.3362, + "45": 0.3354, + "46": 0.33686, + "47": 0.33486, + "48": 0.33657, + "49": 0.33563, + "50": 0.33513 + } + } +} \ No newline at end of file diff --git a/tests/test_utils/python_scripts/download_golden_values.py b/tests/test_utils/python_scripts/download_golden_values.py index 650867f231f..e2294b32fbb 100644 --- a/tests/test_utils/python_scripts/download_golden_values.py +++ b/tests/test_utils/python_scripts/download_golden_values.py @@ -1,3 +1,5 @@ +# Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. + import logging import os import pathlib @@ -91,8 +93,6 @@ def main(pipeline_id: int, only_failing: bool): continue golden_values_source_name = golden_values_source.name - golden_values_source_name = golden_values_source_name.replace("_dgx_h100", "") - golden_values_source_name = golden_values_source_name.replace("_dgx_a100", "") golden_values_source_name = golden_values_source_name.replace( "generations", "golden_values" ) diff --git a/tests/test_utils/python_scripts/launch_jet_workload.py b/tests/test_utils/python_scripts/launch_jet_workload.py index 7dc4a7357a7..846ca8a1521 100644 --- a/tests/test_utils/python_scripts/launch_jet_workload.py +++ b/tests/test_utils/python_scripts/launch_jet_workload.py @@ -1,3 +1,5 @@ +# Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. + import json import logging import os @@ -289,6 +291,7 @@ def is_flaky_failure(concat_allranks_logs: str) -> bool: or "unspecified launch failure" in concat_allranks_logs or "free(): corrupted unsorted chunks" in concat_allranks_logs or "Segfault encountered" in concat_allranks_logs + or "Fatal glibc error" in concat_allranks_logs ) diff --git a/uv.lock b/uv.lock index 5451e635d0c..3de5e29b62b 100644 --- a/uv.lock +++ b/uv.lock @@ -300,12 +300,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c", size = 100916, upload-time = "2025-03-17T00:02:52.713Z" }, ] -[[package]] -name = "asciitree" -version = "0.3.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/2d/6a/885bc91484e1aa8f618f6f0228d76d0e67000b0fdd6090673b777e311913/asciitree-0.3.3.tar.gz", hash = "sha256:4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e", size = 3951, upload-time = "2016-09-05T19:10:42.681Z" } - [[package]] name = "astroid" version = "3.2.4" @@ -986,82 +980,6 @@ toml = [ { name = "tomli", marker = "python_full_version <= '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] -[[package]] -name = "crc32c" -version = "2.8" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/e3/66/7e97aa77af7cf6afbff26e3651b564fe41932599bc2d3dce0b2f73d4829a/crc32c-2.8.tar.gz", hash = "sha256:578728964e59c47c356aeeedee6220e021e124b9d3e8631d95d9a5e5f06e261c", size = 48179, upload-time = "2025-10-17T06:20:13.61Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c4/a0/28b4686a8db0bb0f77970f4c6ccede90d1d5740a1d4b4703bd54c3e75655/crc32c-2.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:2c0f4eb01fe7c0a3e3f973a418e04d52101bb077dd77626fd80c658ec60aaf95", size = 66321, upload-time = "2025-10-17T06:18:53.543Z" }, - { url = "https://files.pythonhosted.org/packages/76/1f/1697f5b8b770f715ed9b264d79e36b4f77ae0527f81f3c749ef08937a32e/crc32c-2.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6baefcfbca82b1a9678455416da24f18629769a76920c640d5a538620a7d12bb", size = 62985, upload-time = "2025-10-17T06:18:54.97Z" }, - { url = "https://files.pythonhosted.org/packages/e0/e5/333cfa5ffa8d5779733aced2b984b5e5139b4a8ceaa2c6bc563e9a1092f3/crc32c-2.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d7f959fcf6c5aad1c4a653ee1a50f05760dab1d1c35d98ec4d7f0f68643f7612", size = 61517, upload-time = "2025-10-17T06:18:55.795Z" }, - { url = "https://files.pythonhosted.org/packages/e1/d8/362a009e8140dd926a153b44d56753e3aa7cb50aca243779a84adadbff11/crc32c-2.8-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:9bb678507a4e4cf3f0506607b046ecc4ed1c58a19e08a3fb3c2d25441c480bf1", size = 79385, upload-time = "2025-10-17T06:18:56.598Z" }, - { url = "https://files.pythonhosted.org/packages/4a/9f/0d4ea3aa71ffb15f1285669d23024cc40779388ce32157d339dc2584491c/crc32c-2.8-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1a16f7ffa4c242a909558565567cbba95148603717b53538ea299c98da68e7a9", size = 80965, upload-time = "2025-10-17T06:18:57.384Z" }, - { url = "https://files.pythonhosted.org/packages/20/44/d77657aaca4a2c0283f2356a3da6f8e91b003567bb8f09daaf540cbf192f/crc32c-2.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:0184369aad562d801f91f454c81f56b9ecb966f6b96684c4d6cf82fc8741d2ad", size = 79993, upload-time = "2025-10-17T06:18:58.503Z" }, - { url = "https://files.pythonhosted.org/packages/ab/c0/07017a93ebf85d9408028b7e03ef96d5c6bfb14cb77cfe90d35eedcc1501/crc32c-2.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:86d2eeb5f0189bd803720abe7387019328ea34c4acde62999e5723f789bc316b", size = 79243, upload-time = "2025-10-17T06:18:59.273Z" }, - { url = "https://files.pythonhosted.org/packages/c7/1a/b3c5ac4cf2fd1f82395173d0bd8e1a15d09f0bc1eccdf10ea7f8caaccd67/crc32c-2.8-cp310-cp310-win32.whl", hash = "sha256:51da61904a9e753780a2e6011885677d601db1fa840be4b68799643a113e6f08", size = 64888, upload-time = "2025-10-17T06:19:00.089Z" }, - { url = "https://files.pythonhosted.org/packages/b6/f2/60c45fc7bb2221d3c93c7a872e921be591f40d45228fe46f879b1d8c0424/crc32c-2.8-cp310-cp310-win_amd64.whl", hash = "sha256:b2d6a1f2500daaf2e4b08f97ad0349aa2eff5faaaa5fd3350314a26eade334cd", size = 66639, upload-time = "2025-10-17T06:19:00.974Z" }, - { url = "https://files.pythonhosted.org/packages/dc/0b/5e03b22d913698e9cc563f39b9f6bbd508606bf6b8e9122cd6bf196b87ea/crc32c-2.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e560a97fbb96c9897cb1d9b5076ef12fc12e2e25622530a1afd0de4240f17e1f", size = 66329, upload-time = "2025-10-17T06:19:01.771Z" }, - { url = "https://files.pythonhosted.org/packages/6b/38/2fe0051ffe8c6a650c8b1ac0da31b8802d1dbe5fa40a84e4b6b6f5583db5/crc32c-2.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6762d276d90331a490ef7e71ffee53b9c0eb053bd75a272d786f3b08d3fe3671", size = 62988, upload-time = "2025-10-17T06:19:02.953Z" }, - { url = "https://files.pythonhosted.org/packages/3e/30/5837a71c014be83aba1469c58820d287fc836512a0cad6b8fdd43868accd/crc32c-2.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:60670569f5ede91e39f48fb0cb4060e05b8d8704dd9e17ede930bf441b2f73ef", size = 61522, upload-time = "2025-10-17T06:19:03.796Z" }, - { url = "https://files.pythonhosted.org/packages/ca/29/63972fc1452778e2092ae998c50cbfc2fc93e3fa9798a0278650cd6169c5/crc32c-2.8-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:711743da6ccc70b3c6718c328947b0b6f34a1fe6a6c27cc6c1d69cc226bf70e9", size = 80200, upload-time = "2025-10-17T06:19:04.617Z" }, - { url = "https://files.pythonhosted.org/packages/cb/3a/60eb49d7bdada4122b3ffd45b0df54bdc1b8dd092cda4b069a287bdfcff4/crc32c-2.8-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5eb4094a2054774f13b26f21bf56792bb44fa1fcee6c6ad099387a43ffbfb4fa", size = 81757, upload-time = "2025-10-17T06:19:05.496Z" }, - { url = "https://files.pythonhosted.org/packages/f5/63/6efc1b64429ef7d23bd58b75b7ac24d15df327e3ebbe9c247a0f7b1c2ed1/crc32c-2.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:fff15bf2bd3e95780516baae935ed12be88deaa5ebe6143c53eb0d26a7bdc7b7", size = 80830, upload-time = "2025-10-17T06:19:06.621Z" }, - { url = "https://files.pythonhosted.org/packages/e1/eb/0ae9f436f8004f1c88f7429e659a7218a3879bd11a6b18ed1257aad7e98b/crc32c-2.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4c0e11e3826668121fa53e0745635baf5e4f0ded437e8ff63ea56f38fc4f970a", size = 80095, upload-time = "2025-10-17T06:19:07.381Z" }, - { url = "https://files.pythonhosted.org/packages/9e/81/4afc9d468977a4cd94a2eb62908553345009a7c0d30e74463a15d4b48ec3/crc32c-2.8-cp311-cp311-win32.whl", hash = "sha256:38f915336715d1f1353ab07d7d786f8a789b119e273aea106ba55355dfc9101d", size = 64886, upload-time = "2025-10-17T06:19:08.497Z" }, - { url = "https://files.pythonhosted.org/packages/d6/e8/94e839c9f7e767bf8479046a207afd440a08f5c59b52586e1af5e64fa4a0/crc32c-2.8-cp311-cp311-win_amd64.whl", hash = "sha256:60e0a765b1caab8d31b2ea80840639253906a9351d4b861551c8c8625ea20f86", size = 66639, upload-time = "2025-10-17T06:19:09.338Z" }, - { url = "https://files.pythonhosted.org/packages/b6/36/fd18ef23c42926b79c7003e16cb0f79043b5b179c633521343d3b499e996/crc32c-2.8-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:572ffb1b78cce3d88e8d4143e154d31044a44be42cb3f6fbbf77f1e7a941c5ab", size = 66379, upload-time = "2025-10-17T06:19:10.115Z" }, - { url = "https://files.pythonhosted.org/packages/7f/b8/c584958e53f7798dd358f5bdb1bbfc97483134f053ee399d3eeb26cca075/crc32c-2.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:cf827b3758ee0c4aacd21ceca0e2da83681f10295c38a10bfeb105f7d98f7a68", size = 63042, upload-time = "2025-10-17T06:19:10.946Z" }, - { url = "https://files.pythonhosted.org/packages/62/e6/6f2af0ec64a668a46c861e5bc778ea3ee42171fedfc5440f791f470fd783/crc32c-2.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:106fbd79013e06fa92bc3b51031694fcc1249811ed4364ef1554ee3dd2c7f5a2", size = 61528, upload-time = "2025-10-17T06:19:11.768Z" }, - { url = "https://files.pythonhosted.org/packages/17/8b/4a04bd80a024f1a23978f19ae99407783e06549e361ab56e9c08bba3c1d3/crc32c-2.8-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:6dde035f91ffbfe23163e68605ee5a4bb8ceebd71ed54bb1fb1d0526cdd125a2", size = 80028, upload-time = "2025-10-17T06:19:12.554Z" }, - { url = "https://files.pythonhosted.org/packages/21/8f/01c7afdc76ac2007d0e6a98e7300b4470b170480f8188475b597d1f4b4c6/crc32c-2.8-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e41ebe7c2f0fdcd9f3a3fd206989a36b460b4d3f24816d53e5be6c7dba72c5e1", size = 81531, upload-time = "2025-10-17T06:19:13.406Z" }, - { url = "https://files.pythonhosted.org/packages/32/2b/8f78c5a8cc66486be5f51b6f038fc347c3ba748d3ea68be17a014283c331/crc32c-2.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ecf66cf90266d9c15cea597d5cc86c01917cd1a238dc3c51420c7886fa750d7e", size = 80608, upload-time = "2025-10-17T06:19:14.223Z" }, - { url = "https://files.pythonhosted.org/packages/db/86/fad1a94cdeeeb6b6e2323c87f970186e74bfd6fbfbc247bf5c88ad0873d5/crc32c-2.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:59eee5f3a69ad0793d5fa9cdc9b9d743b0cd50edf7fccc0a3988a821fef0208c", size = 79886, upload-time = "2025-10-17T06:19:15.345Z" }, - { url = "https://files.pythonhosted.org/packages/d5/db/1a7cb6757a1e32376fa2dfce00c815ea4ee614a94f9bff8228e37420c183/crc32c-2.8-cp312-cp312-win32.whl", hash = "sha256:a73d03ce3604aa5d7a2698e9057a0eef69f529c46497b27ee1c38158e90ceb76", size = 64896, upload-time = "2025-10-17T06:19:16.457Z" }, - { url = "https://files.pythonhosted.org/packages/bf/8e/2024de34399b2e401a37dcb54b224b56c747b0dc46de4966886827b4d370/crc32c-2.8-cp312-cp312-win_amd64.whl", hash = "sha256:56b3b7d015247962cf58186e06d18c3d75a1a63d709d3233509e1c50a2d36aa2", size = 66645, upload-time = "2025-10-17T06:19:17.235Z" }, - { url = "https://files.pythonhosted.org/packages/e8/d8/3ae227890b3be40955a7144106ef4dd97d6123a82c2a5310cdab58ca49d8/crc32c-2.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:36f1e03ee9e9c6938e67d3bcb60e36f260170aa5f37da1185e04ef37b56af395", size = 66380, upload-time = "2025-10-17T06:19:18.009Z" }, - { url = "https://files.pythonhosted.org/packages/bd/8b/178d3f987cd0e049b484615512d3f91f3d2caeeb8ff336bb5896ae317438/crc32c-2.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b2f3226b94b85a8dd9b3533601d7a63e9e3e8edf03a8a169830ee8303a199aeb", size = 63048, upload-time = "2025-10-17T06:19:18.853Z" }, - { url = "https://files.pythonhosted.org/packages/f2/a1/48145ae2545ebc0169d3283ebe882da580ea4606bfb67cf4ca922ac3cfc3/crc32c-2.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6e08628bc72d5b6bc8e0730e8f142194b610e780a98c58cb6698e665cb885a5b", size = 61530, upload-time = "2025-10-17T06:19:19.974Z" }, - { url = "https://files.pythonhosted.org/packages/06/4b/cf05ed9d934cc30e5ae22f97c8272face420a476090e736615d9a6b53de0/crc32c-2.8-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:086f64793c5ec856d1ab31a026d52ad2b895ac83d7a38fce557d74eb857f0a82", size = 80001, upload-time = "2025-10-17T06:19:20.784Z" }, - { url = "https://files.pythonhosted.org/packages/15/ab/4b04801739faf36345f6ba1920be5b1c70282fec52f8280afd3613fb13e2/crc32c-2.8-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bcf72ee7e0135b3d941c34bb2c26c3fc6bc207106b49fd89aaafaeae223ae209", size = 81543, upload-time = "2025-10-17T06:19:21.557Z" }, - { url = "https://files.pythonhosted.org/packages/a9/1b/6e38dde5bfd2ea69b7f2ab6ec229fcd972a53d39e2db4efe75c0ac0382ce/crc32c-2.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:8a717dd9c3fd777d9bc6603717eae172887d402c4ab589d124ebd0184a83f89e", size = 80644, upload-time = "2025-10-17T06:19:22.325Z" }, - { url = "https://files.pythonhosted.org/packages/ce/45/012176ffee90059ae8ec7131019c71724ea472aa63e72c0c8edbd1fad1d7/crc32c-2.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:0450bb845b3c3c7b9bdc0b4e95620ec9a40824abdc8c86d6285c919a90743c1a", size = 79919, upload-time = "2025-10-17T06:19:23.101Z" }, - { url = "https://files.pythonhosted.org/packages/f0/2b/f557629842f9dec2b3461cb3a0d854bb586ec45b814cea58b082c32f0dde/crc32c-2.8-cp313-cp313-win32.whl", hash = "sha256:765d220bfcbcffa6598ac11eb1e10af0ee4802b49fe126aa6bf79f8ddb9931d1", size = 64896, upload-time = "2025-10-17T06:19:23.88Z" }, - { url = "https://files.pythonhosted.org/packages/d0/db/fd0f698c15d1e21d47c64181a98290665a08fcbb3940cd559e9c15bda57e/crc32c-2.8-cp313-cp313-win_amd64.whl", hash = "sha256:171ff0260d112c62abcce29332986950a57bddee514e0a2418bfde493ea06bb3", size = 66646, upload-time = "2025-10-17T06:19:24.702Z" }, - { url = "https://files.pythonhosted.org/packages/db/b9/8e5d7054fe8e7eecab10fd0c8e7ffb01439417bdb6de1d66a81c38fc4a20/crc32c-2.8-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b977a32a3708d6f51703c8557008f190aaa434d7347431efb0e86fcbe78c2a50", size = 66203, upload-time = "2025-10-17T06:19:25.872Z" }, - { url = "https://files.pythonhosted.org/packages/55/5f/cc926c70057a63cc0c98a3c8a896eb15fc7e74d3034eadd53c94917c6cc3/crc32c-2.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:7399b01db4adaf41da2fb36fe2408e75a8d82a179a9564ed7619412e427b26d6", size = 62956, upload-time = "2025-10-17T06:19:26.652Z" }, - { url = "https://files.pythonhosted.org/packages/a1/8a/0660c44a2dd2cb6ccbb529eb363b9280f5c766f1017bc8355ed8d695bd94/crc32c-2.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4379f73f9cdad31958a673d11a332ec725ca71572401ca865867229f5f15e853", size = 61442, upload-time = "2025-10-17T06:19:27.74Z" }, - { url = "https://files.pythonhosted.org/packages/f5/5a/6108d2dfc0fe33522ce83ba07aed4b22014911b387afa228808a278e27cd/crc32c-2.8-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:2e68264555fab19bab08331550dab58573e351a63ed79c869d455edd3b0aa417", size = 79109, upload-time = "2025-10-17T06:19:28.535Z" }, - { url = "https://files.pythonhosted.org/packages/84/1e/c054f9e390090c197abf3d2936f4f9effaf0c6ee14569ae03d6ddf86958a/crc32c-2.8-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b48f2486727b8d0e7ccbae4a34cb0300498433d2a9d6b49cb13cb57c2e3f19cb", size = 80987, upload-time = "2025-10-17T06:19:29.305Z" }, - { url = "https://files.pythonhosted.org/packages/c8/ad/1650e5c3341e4a485f800ea83116d72965030c5d48ccc168fcc685756e4d/crc32c-2.8-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:ecf123348934a086df8c8fde7f9f2d716d523ca0707c5a1367b8bb00d8134823", size = 79994, upload-time = "2025-10-17T06:19:30.109Z" }, - { url = "https://files.pythonhosted.org/packages/d7/3b/f2ed924b177729cbb2ab30ca2902abff653c31d48c95e7b66717a9ca9fcc/crc32c-2.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e636ac60f76de538f7a2c0d0f3abf43104ee83a8f5e516f6345dc283ed1a4df7", size = 79046, upload-time = "2025-10-17T06:19:30.894Z" }, - { url = "https://files.pythonhosted.org/packages/4b/80/413b05ee6ace613208b31b3670c3135ee1cf451f0e72a9c839b4946acc04/crc32c-2.8-cp313-cp313t-win32.whl", hash = "sha256:8dd4a19505e0253892e1b2f1425cc3bd47f79ae5a04cb8800315d00aad7197f2", size = 64837, upload-time = "2025-10-17T06:19:32.03Z" }, - { url = "https://files.pythonhosted.org/packages/3b/1b/85eddb6ac5b38496c4e35c20298aae627970c88c3c624a22ab33e84f16c7/crc32c-2.8-cp313-cp313t-win_amd64.whl", hash = "sha256:4bb18e4bd98fb266596523ffc6be9c5b2387b2fa4e505ec56ca36336f49cb639", size = 66574, upload-time = "2025-10-17T06:19:33.143Z" }, - { url = "https://files.pythonhosted.org/packages/aa/df/50e9079b532ff53dbfc0e66eed781374bd455af02ed5df8b56ad538de4ff/crc32c-2.8-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3a3b2e4bcf7b3ee333050e7d3ff38e2ba46ea205f1d73d8949b248aaffe937ac", size = 66399, upload-time = "2025-10-17T06:19:34.279Z" }, - { url = "https://files.pythonhosted.org/packages/5a/2e/67e3b0bc3d30e46ea5d16365cc81203286387671e22f2307eb41f19abb9c/crc32c-2.8-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:445e559e66dff16be54f8a4ef95aa6b01db799a639956d995c5498ba513fccc2", size = 63044, upload-time = "2025-10-17T06:19:35.062Z" }, - { url = "https://files.pythonhosted.org/packages/36/ea/1723b17437e4344ed8d067456382ecb1f5b535d83fdc5aaebab676c6d273/crc32c-2.8-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:bf3040919e17afa5782e01b1875d6a05f44b8f19c05f211d8b9f8a1deb8bbd9c", size = 61541, upload-time = "2025-10-17T06:19:36.204Z" }, - { url = "https://files.pythonhosted.org/packages/4c/6a/cbec8a235c5b46a01f319939b538958662159aec0ed3a74944e3a6de21f1/crc32c-2.8-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:5607ab8221e1ffd411f64aa40dbb6850cf06dd2908c9debd05d371e1acf62ff3", size = 80139, upload-time = "2025-10-17T06:19:37.351Z" }, - { url = "https://files.pythonhosted.org/packages/21/31/d096722fe74b692d6e8206c27da1ea5f6b2a12ff92c54a62a6ba2f376254/crc32c-2.8-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c7f5db4f16816926986d3c94253314920689706ae13a9bf4888b47336c6735ce", size = 81736, upload-time = "2025-10-17T06:19:38.16Z" }, - { url = "https://files.pythonhosted.org/packages/f6/a2/f75ef716ff7e3c22f385ba6ef30c5de80c19a21ebe699dc90824a1903275/crc32c-2.8-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:70b0153c4d418b673309d3529334d117e1074c4a3b2d7f676e430d72c14de67b", size = 80795, upload-time = "2025-10-17T06:19:38.948Z" }, - { url = "https://files.pythonhosted.org/packages/d8/94/6d647a12d96ab087d9b8eacee3da073f981987827d57c7072f89ffc7b6cd/crc32c-2.8-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5c8933531442042438753755a5c8a9034e4d88b01da9eb796f7e151b31a7256c", size = 80042, upload-time = "2025-10-17T06:19:39.725Z" }, - { url = "https://files.pythonhosted.org/packages/cd/dc/32b8896b40a0afee7a3c040536d0da5a73e68df2be9fadd21770fd158e16/crc32c-2.8-cp314-cp314-win32.whl", hash = "sha256:cdc83a3fe6c4e5df9457294cfd643de7d95bd4e9382c1dd6ed1e0f0f9169172c", size = 64914, upload-time = "2025-10-17T06:19:40.527Z" }, - { url = "https://files.pythonhosted.org/packages/f2/b4/4308b27d307e8ecaf8dd1dcc63bbb0e47ae1826d93faa3e62d1ee00ee2d5/crc32c-2.8-cp314-cp314-win_amd64.whl", hash = "sha256:509e10035106df66770fe24b9eb8d9e32b6fb967df17744402fb67772d8b2bc7", size = 66723, upload-time = "2025-10-17T06:19:42.449Z" }, - { url = "https://files.pythonhosted.org/packages/90/d5/a19d2489fa997a143bfbbf971a5c9a43f8b1ba9e775b1fb362d8fb15260c/crc32c-2.8-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:864359a39777a07b09b28eb31337c0cc603d5c1bf0fc328c3af736a8da624ec0", size = 66201, upload-time = "2025-10-17T06:19:43.273Z" }, - { url = "https://files.pythonhosted.org/packages/98/c2/5f82f22d2c1242cb6f6fe92aa9a42991ebea86de994b8f9974d9c1d128e2/crc32c-2.8-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:14511d7cfc5d9f5e1a6c6b64caa6225c2bdc1ed00d725e9a374a3e84073ce180", size = 62956, upload-time = "2025-10-17T06:19:44.099Z" }, - { url = "https://files.pythonhosted.org/packages/9b/61/3d43d33489cf974fb78bfb3500845770e139ae6d1d83473b660bd8f79a6c/crc32c-2.8-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:918b7999b52b5dcbcea34081e9a02d46917d571921a3f209956a9a429b2e06e5", size = 61443, upload-time = "2025-10-17T06:19:44.89Z" }, - { url = "https://files.pythonhosted.org/packages/52/6d/f306ce64a352a3002f76b0fc88a1373f4541f9d34fad3668688610bab14b/crc32c-2.8-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:cc445da03fc012a5a03b71da1df1b40139729e6a5571fd4215ab40bfb39689c7", size = 79106, upload-time = "2025-10-17T06:19:45.688Z" }, - { url = "https://files.pythonhosted.org/packages/a5/b7/1f74965dd7ea762954a69d172dfb3a706049c84ffa45d31401d010a4a126/crc32c-2.8-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e3dde2ec59a8a830511d72a086ead95c0b0b7f0d418f93ea106244c5e77e350", size = 80983, upload-time = "2025-10-17T06:19:46.792Z" }, - { url = "https://files.pythonhosted.org/packages/1b/50/af93f0d91ccd61833ce77374ebfbd16f5805f5c17d18c6470976d9866d76/crc32c-2.8-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:61d51681a08b6a2a2e771b7f0cd1947fb87cb28f38ed55a01cb7c40b2ac4cdd8", size = 80009, upload-time = "2025-10-17T06:19:47.619Z" }, - { url = "https://files.pythonhosted.org/packages/ee/fa/94f394beb68a88258af694dab2f1284f55a406b615d7900bdd6235283bc4/crc32c-2.8-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:67c0716c3b1a02d5235be649487b637eed21f2d070f2b3f63f709dcd2fefb4c7", size = 79066, upload-time = "2025-10-17T06:19:48.409Z" }, - { url = "https://files.pythonhosted.org/packages/91/c6/a6050e0c64fd73c67a97da96cb59f08b05111e00b958fb87ecdce99f17ac/crc32c-2.8-cp314-cp314t-win32.whl", hash = "sha256:2e8fe863fbbd8bdb6b414a2090f1b0f52106e76e9a9c96a413495dbe5ebe492a", size = 64869, upload-time = "2025-10-17T06:19:49.197Z" }, - { url = "https://files.pythonhosted.org/packages/08/1f/c7735034e401cb1ea14f996a224518e3a3fa9987cb13680e707328a7d779/crc32c-2.8-cp314-cp314t-win_amd64.whl", hash = "sha256:20a9cfb897693eb6da19e52e2a7be2026fd4d9fc8ae318f086c0d71d5dd2d8e0", size = 66633, upload-time = "2025-10-17T06:19:50.003Z" }, - { url = "https://files.pythonhosted.org/packages/a7/1d/dd926c68eb8aac8b142a1a10b8eb62d95212c1cf81775644373fe7cceac2/crc32c-2.8-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:5833f4071da7ea182c514ba17d1eee8aec3c5be927d798222fbfbbd0f5eea02c", size = 62345, upload-time = "2025-10-17T06:20:09.39Z" }, - { url = "https://files.pythonhosted.org/packages/51/be/803404e5abea2ef2c15042edca04bbb7f625044cca879e47f186b43887c2/crc32c-2.8-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:1dc4da036126ac07b39dd9d03e93e585ec615a2ad28ff12757aef7de175295a8", size = 61229, upload-time = "2025-10-17T06:20:10.236Z" }, - { url = "https://files.pythonhosted.org/packages/fc/3a/00cc578cd27ed0b22c9be25cef2c24539d92df9fa80ebd67a3fc5419724c/crc32c-2.8-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:15905fa78344654e241371c47e6ed2411f9eeb2b8095311c68c88eccf541e8b4", size = 64108, upload-time = "2025-10-17T06:20:11.072Z" }, - { url = "https://files.pythonhosted.org/packages/6b/bc/0587ef99a1c7629f95dd0c9d4f3d894de383a0df85831eb16c48a6afdae4/crc32c-2.8-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c596f918688821f796434e89b431b1698396c38bf0b56de873621528fe3ecb1e", size = 64815, upload-time = "2025-10-17T06:20:11.919Z" }, - { url = "https://files.pythonhosted.org/packages/73/42/94f2b8b92eae9064fcfb8deef2b971514065bd606231f8857ff8ae02bebd/crc32c-2.8-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:8d23c4fe01b3844cb6e091044bc1cebdef7d16472e058ce12d9fadf10d2614af", size = 66659, upload-time = "2025-10-17T06:20:12.766Z" }, -] - [[package]] name = "cryptography" version = "42.0.8" @@ -1182,8 +1100,8 @@ name = "deprecated" version = "1.3.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "wrapt", version = "1.17.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev'" }, - { name = "wrapt", version = "2.0.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, + { name = "wrapt", version = "1.17.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev' or extra == 'extra-13-megatron-core-lts'" }, + { name = "wrapt", version = "2.0.0", source = { registry = "https://pypi.org/simple" }, marker = "(extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/49/85/12f0a49a7c4ffb70572b6c2ef13c90c88fd190debda93b23f026b25f9634/deprecated-1.3.1.tar.gz", hash = "sha256:b1b50e0ff0c1fddaa5708a2c6b0a6588bb09b892825ab2b214ac9ea9d92a5223", size = 2932523, upload-time = "2025-10-30T08:19:02.757Z" } wheels = [ @@ -1231,18 +1149,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl", hash = "sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2", size = 587408, upload-time = "2024-04-23T18:57:14.835Z" }, ] -[[package]] -name = "donfig" -version = "0.8.1.post1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pyyaml", marker = "python_full_version >= '3.11'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/25/71/80cc718ff6d7abfbabacb1f57aaa42e9c1552bfdd01e64ddd704e4a03638/donfig-0.8.1.post1.tar.gz", hash = "sha256:3bef3413a4c1c601b585e8d297256d0c1470ea012afa6e8461dc28bfb7c23f52", size = 19506, upload-time = "2024-05-23T14:14:31.513Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/0c/d5/c5db1ea3394c6e1732fb3286b3bd878b59507a8f77d32a2cebda7d7b7cd4/donfig-0.8.1.post1-py3-none-any.whl", hash = "sha256:2a3175ce74a06109ff9307d90a230f81215cbac9a751f4d1c6194644b8204f9d", size = 21592, upload-time = "2024-05-23T14:13:55.283Z" }, -] - [[package]] name = "ebmlite" version = "3.4.1" @@ -1303,15 +1209,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/81/cc/1c33d05f62c9349bb80dfe789cc9a7409bdfb337a63fa347fd651d25294a/fastapi-0.120.2-py3-none-any.whl", hash = "sha256:bedcf2c14240e43d56cb9a339b32bcf15104fe6b5897c0222603cb7ec416c8eb", size = 108383, upload-time = "2025-10-29T13:47:32.978Z" }, ] -[[package]] -name = "fasteners" -version = "0.20" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/2d/18/7881a99ba5244bfc82f06017316ffe93217dbbbcfa52b887caa1d4f2a6d3/fasteners-0.20.tar.gz", hash = "sha256:55dce8792a41b56f727ba6e123fcaee77fd87e638a6863cec00007bfea84c8d8", size = 25087, upload-time = "2025-08-11T10:19:37.785Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/51/ac/e5d886f892666d2d1e5cb8c1a41146e1d79ae8896477b1153a21711d3b44/fasteners-0.20-py3-none-any.whl", hash = "sha256:9422c40d1e350e4259f509fb2e608d6bc43c0136f79a00db1b49046029d0b3b7", size = 18702, upload-time = "2025-08-11T10:19:35.716Z" }, -] - [[package]] name = "fiddle" version = "0.3.0" @@ -1814,7 +1711,7 @@ resolution-markers = [ "python_full_version < '3.11' and sys_platform != 'linux'", ] dependencies = [ - { name = "zipp", marker = "extra == 'extra-13-megatron-core-dev'" }, + { name = "zipp", marker = "extra == 'extra-13-megatron-core-dev' or extra == 'extra-13-megatron-core-lts'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/33/08/c1395a292bb23fd03bdf572a1357c5a733d3eecbab877641ceacab23db6e/importlib_metadata-8.6.1.tar.gz", hash = "sha256:310b41d755445d74569f993ccfc22838295d9fe005425094fad953d7f15c8580", size = 55767, upload-time = "2025-01-20T22:21:30.429Z" } wheels = [ @@ -1826,35 +1723,23 @@ name = "importlib-metadata" version = "8.7.0" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", ] dependencies = [ - { name = "zipp", marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, + { name = "zipp", marker = "(extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/76/66/650a33bd90f786193e4de4b3ad86ea60b53c89b669a5c7be931fac31cdb0/importlib_metadata-8.7.0.tar.gz", hash = "sha256:d13b81ad223b890aa16c5471f2ac3056cf76c5f10f82d6f9292f0b415f389000", size = 56641, upload-time = "2025-04-27T15:29:01.736Z" } wheels = [ @@ -2280,16 +2165,23 @@ dev = [ { name = "wget" }, ] lts = [ + { name = "av" }, + { name = "causal-conv1d" }, { name = "einops" }, + { name = "flashinfer-python" }, + { name = "mamba-ssm" }, + { name = "megatron-energon", extra = ["av-decode"], marker = "extra == 'extra-13-megatron-core-lts'" }, + { name = "multi-storage-client" }, + { name = "nv-grouped-gemm" }, { name = "nvtx" }, + { name = "onnxscript", version = "0.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "onnxscript", version = "0.5.4", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "opentelemetry-api" }, { name = "setuptools" }, { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tensorstore", version = "0.1.78", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tqdm" }, - { name = "transformers" }, { name = "wget" }, - { name = "zarr", version = "2.18.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "zarr", version = "3.1.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] mlm = [ { name = "flask-restful" }, @@ -2347,46 +2239,53 @@ test = [ { name = "pytest-random-order" }, { name = "pyyaml" }, { name = "tensorboard" }, - { name = "wrapt", version = "1.17.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev'" }, - { name = "wrapt", version = "2.0.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, + { name = "wrapt", version = "1.17.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev' or extra == 'extra-13-megatron-core-lts'" }, + { name = "wrapt", version = "2.0.0", source = { registry = "https://pypi.org/simple" }, marker = "(extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts')" }, ] [package.metadata] requires-dist = [ { name = "av", marker = "extra == 'dev'", specifier = "<16.0.0" }, + { name = "av", marker = "extra == 'lts'", specifier = "<16.0.0" }, { name = "causal-conv1d", marker = "extra == 'dev'", specifier = "~=1.5" }, + { name = "causal-conv1d", marker = "extra == 'lts'", specifier = "~=1.5" }, { name = "einops", marker = "extra == 'dev'", specifier = "~=0.8" }, - { name = "einops", marker = "extra == 'lts'" }, + { name = "einops", marker = "extra == 'lts'", specifier = "~=0.8" }, { name = "flashinfer-python", marker = "extra == 'dev'" }, + { name = "flashinfer-python", marker = "extra == 'lts'" }, { name = "flask-restful", marker = "extra == 'mlm'" }, { name = "mamba-ssm", marker = "extra == 'dev'", specifier = "~=2.2" }, + { name = "mamba-ssm", marker = "extra == 'lts'", specifier = "~=2.2" }, { name = "megatron-energon", extras = ["av-decode"], marker = "extra == 'dev'", specifier = "~=6.0" }, + { name = "megatron-energon", extras = ["av-decode"], marker = "extra == 'lts'", specifier = "~=6.0" }, { name = "multi-storage-client", marker = "extra == 'dev'", specifier = "~=0.27" }, + { name = "multi-storage-client", marker = "extra == 'lts'", specifier = "~=0.27" }, { name = "numpy", specifier = "<2.0.0" }, { name = "nv-grouped-gemm", marker = "extra == 'dev'", specifier = "~=1.1" }, + { name = "nv-grouped-gemm", marker = "extra == 'lts'", specifier = "~=1.1" }, { name = "nvidia-modelopt", extras = ["torch"], marker = "sys_platform != 'darwin' and extra == 'dev'" }, - { name = "nvidia-resiliency-ext", marker = "extra == 'dev'", specifier = ">=0.4.0a0,<0.5.0" }, + { name = "nvidia-resiliency-ext", marker = "extra == 'dev'" }, { name = "nvtx", marker = "extra == 'dev'", specifier = "~=0.2" }, - { name = "nvtx", marker = "extra == 'lts'" }, + { name = "nvtx", marker = "extra == 'lts'", specifier = "~=0.2" }, { name = "onnxscript", marker = "extra == 'dev'" }, + { name = "onnxscript", marker = "extra == 'lts'" }, { name = "opentelemetry-api", marker = "extra == 'dev'", specifier = "~=1.33.1" }, + { name = "opentelemetry-api", marker = "extra == 'lts'", specifier = "~=1.33.1" }, { name = "packaging", specifier = ">=24.2" }, { name = "sentencepiece", marker = "extra == 'mlm'" }, { name = "setuptools", marker = "extra == 'dev'", specifier = "<80.0.0" }, { name = "setuptools", marker = "extra == 'lts'", specifier = "<80.0.0" }, { name = "tensorstore", marker = "extra == 'dev'", specifier = "~=0.1,!=0.1.46,!=0.1.72" }, - { name = "tensorstore", marker = "extra == 'lts'", specifier = "!=0.1.46,!=0.1.72" }, + { name = "tensorstore", marker = "extra == 'lts'", specifier = "~=0.1,!=0.1.46,!=0.1.72" }, { name = "tiktoken", marker = "extra == 'mlm'" }, { name = "torch" }, { name = "tqdm", marker = "extra == 'dev'" }, { name = "tqdm", marker = "extra == 'lts'" }, { name = "transformer-engine", extras = ["pytorch"], marker = "extra == 'dev'", git = "https://github.com/NVIDIA/TransformerEngine.git?rev=release_v2.9" }, - { name = "transformers", marker = "extra == 'lts'" }, { name = "transformers", marker = "extra == 'mlm'" }, { name = "wandb", marker = "extra == 'mlm'" }, { name = "wget", marker = "extra == 'dev'" }, { name = "wget", marker = "extra == 'lts'" }, - { name = "zarr", marker = "extra == 'lts'" }, ] provides-extras = ["mlm", "dev", "lts"] @@ -2939,81 +2838,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/60/90/81ac364ef94209c100e12579629dc92bf7a709a84af32f8c551b02c07e94/nltk-3.9.2-py3-none-any.whl", hash = "sha256:1e209d2b3009110635ed9709a67a1a3e33a10f799490fa71cf4bec218c11c88a", size = 1513404, upload-time = "2025-10-01T07:19:21.648Z" }, ] -[[package]] -name = "numcodecs" -version = "0.13.1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version < '3.11' and sys_platform == 'linux'", - "python_full_version < '3.11' and sys_platform != 'linux'", -] -dependencies = [ - { name = "numpy", marker = "python_full_version < '3.11'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/85/56/8895a76abe4ec94ebd01eeb6d74f587bc4cddd46569670e1402852a5da13/numcodecs-0.13.1.tar.gz", hash = "sha256:a3cf37881df0898f3a9c0d4477df88133fe85185bffe57ba31bcc2fa207709bc", size = 5955215, upload-time = "2024-10-09T16:28:00.188Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/14/c0/6d72cde772bcec196b7188731d41282993b2958440f77fdf0db216f722da/numcodecs-0.13.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:96add4f783c5ce57cc7e650b6cac79dd101daf887c479a00a29bc1487ced180b", size = 1580012, upload-time = "2024-10-09T16:27:19.069Z" }, - { url = "https://files.pythonhosted.org/packages/94/1d/f81fc1fa9210bbea97258242393a1f9feab4f6d8fb201f81f76003005e4b/numcodecs-0.13.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:237b7171609e868a20fd313748494444458ccd696062f67e198f7f8f52000c15", size = 1176919, upload-time = "2024-10-09T16:27:21.634Z" }, - { url = "https://files.pythonhosted.org/packages/16/e4/b9ec2f4dfc34ecf724bc1beb96a9f6fa9b91801645688ffadacd485089da/numcodecs-0.13.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96e42f73c31b8c24259c5fac6adba0c3ebf95536e37749dc6c62ade2989dca28", size = 8625842, upload-time = "2024-10-09T16:27:24.168Z" }, - { url = "https://files.pythonhosted.org/packages/fe/90/299952e1477954ec4f92813fa03e743945e3ff711bb4f6c9aace431cb3da/numcodecs-0.13.1-cp310-cp310-win_amd64.whl", hash = "sha256:eda7d7823c9282e65234731fd6bd3986b1f9e035755f7fed248d7d366bb291ab", size = 828638, upload-time = "2024-10-09T16:27:27.063Z" }, - { url = "https://files.pythonhosted.org/packages/f0/78/34b8e869ef143e88d62e8231f4dbfcad85e5c41302a11fc5bd2228a13df5/numcodecs-0.13.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2eda97dd2f90add98df6d295f2c6ae846043396e3d51a739ca5db6c03b5eb666", size = 1580199, upload-time = "2024-10-09T16:27:29.336Z" }, - { url = "https://files.pythonhosted.org/packages/3b/cf/f70797d86bb585d258d1e6993dced30396f2044725b96ce8bcf87a02be9c/numcodecs-0.13.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2a86f5367af9168e30f99727ff03b27d849c31ad4522060dde0bce2923b3a8bc", size = 1177203, upload-time = "2024-10-09T16:27:31.011Z" }, - { url = "https://files.pythonhosted.org/packages/a8/b5/d14ad69b63fde041153dfd05d7181a49c0d4864de31a7a1093c8370da957/numcodecs-0.13.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:233bc7f26abce24d57e44ea8ebeb5cd17084690b4e7409dd470fdb75528d615f", size = 8868743, upload-time = "2024-10-09T16:27:32.833Z" }, - { url = "https://files.pythonhosted.org/packages/13/d4/27a7b5af0b33f6d61e198faf177fbbf3cb83ff10d9d1a6857b7efc525ad5/numcodecs-0.13.1-cp311-cp311-win_amd64.whl", hash = "sha256:796b3e6740107e4fa624cc636248a1580138b3f1c579160f260f76ff13a4261b", size = 829603, upload-time = "2024-10-09T16:27:35.415Z" }, - { url = "https://files.pythonhosted.org/packages/37/3a/bc09808425e7d3df41e5fc73fc7a802c429ba8c6b05e55f133654ade019d/numcodecs-0.13.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:5195bea384a6428f8afcece793860b1ab0ae28143c853f0b2b20d55a8947c917", size = 1575806, upload-time = "2024-10-09T16:27:37.804Z" }, - { url = "https://files.pythonhosted.org/packages/3a/cc/dc74d0bfdf9ec192332a089d199f1e543e747c556b5659118db7a437dcca/numcodecs-0.13.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3501a848adaddce98a71a262fee15cd3618312692aa419da77acd18af4a6a3f6", size = 1178233, upload-time = "2024-10-09T16:27:40.169Z" }, - { url = "https://files.pythonhosted.org/packages/d4/ce/434e8e3970b8e92ae9ab6d9db16cb9bc7aa1cd02e17c11de6848224100a1/numcodecs-0.13.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da2230484e6102e5fa3cc1a5dd37ca1f92dfbd183d91662074d6f7574e3e8f53", size = 8857827, upload-time = "2024-10-09T16:27:42.743Z" }, - { url = "https://files.pythonhosted.org/packages/83/e7/1d8b1b266a92f9013c755b1c146c5ad71a2bff147ecbc67f86546a2e4d6a/numcodecs-0.13.1-cp312-cp312-win_amd64.whl", hash = "sha256:e5db4824ebd5389ea30e54bc8aeccb82d514d28b6b68da6c536b8fa4596f4bca", size = 826539, upload-time = "2024-10-09T16:27:44.808Z" }, - { url = "https://files.pythonhosted.org/packages/83/8b/06771dead2cc4a8ae1ea9907737cf1c8d37a323392fa28f938a586373468/numcodecs-0.13.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7a60d75179fd6692e301ddfb3b266d51eb598606dcae7b9fc57f986e8d65cb43", size = 1571660, upload-time = "2024-10-09T16:27:47.125Z" }, - { url = "https://files.pythonhosted.org/packages/f9/ea/d925bf85f92dfe4635356018da9fe4bfecb07b1c72f62b01c1bc47f936b1/numcodecs-0.13.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3f593c7506b0ab248961a3b13cb148cc6e8355662ff124ac591822310bc55ecf", size = 1169925, upload-time = "2024-10-09T16:27:49.512Z" }, - { url = "https://files.pythonhosted.org/packages/0f/d6/643a3839d571d8e439a2c77dc4b0b8cab18d96ac808e4a81dbe88e959ab6/numcodecs-0.13.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80d3071465f03522e776a31045ddf2cfee7f52df468b977ed3afdd7fe5869701", size = 8814257, upload-time = "2024-10-09T16:27:52.059Z" }, - { url = "https://files.pythonhosted.org/packages/a6/c5/f3e56bc9b4e438a287fff738993d6d11abef368c0328a612ac2842ba9fca/numcodecs-0.13.1-cp313-cp313-win_amd64.whl", hash = "sha256:90d3065ae74c9342048ae0046006f99dcb1388b7288da5a19b3bddf9c30c3176", size = 821887, upload-time = "2024-10-09T16:27:55.039Z" }, -] - -[[package]] -name = "numcodecs" -version = "0.16.3" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", - "python_full_version == '3.12.*' and sys_platform != 'linux'", - "python_full_version == '3.11.*' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and sys_platform != 'linux'", -] -dependencies = [ - { name = "numpy", marker = "python_full_version >= '3.11'" }, - { name = "typing-extensions", marker = "python_full_version >= '3.11'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/f6/48/6188e359b90a9d8a1850f2bc888c023e66f4a8b2b496820babbea414f008/numcodecs-0.16.3.tar.gz", hash = "sha256:53d705865faaf0a7927c973af3777532001c8fbb653de119c1e844608614d799", size = 6275704, upload-time = "2025-09-18T18:54:57.221Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d4/cc/917a85972537498f2bbd7914047efc98babc8667587ceb9dcb228378978a/numcodecs-0.16.3-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:95c9f2a49bef10cf91ad614a761cba9bfe96656b60c12540e1080de5d909b4ca", size = 1642356, upload-time = "2025-09-18T18:54:36.402Z" }, - { url = "https://files.pythonhosted.org/packages/3b/6a/64c25a089e8537441fe67c09ecb7f3f7fb5d98cd04faf01f605d43aca41c/numcodecs-0.16.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e2afe73d5ebaf9ca0cd5c83aad945da80d29a33d860a80d43a7248491d8813ff", size = 1169186, upload-time = "2025-09-18T18:54:37.838Z" }, - { url = "https://files.pythonhosted.org/packages/d8/a0/0de627baeb43e2045a3d4b3de99bf8b69af329a33df1ed4cda468d70c1fb/numcodecs-0.16.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:913f08194d82dcb37594e6705e6d4ae6ccd4b6571500b832fb3e4a155de1dfe8", size = 8341668, upload-time = "2025-09-18T18:54:39.444Z" }, - { url = "https://files.pythonhosted.org/packages/b6/0f/49d1f74a216149240c4b9403218111f11670bd11af0919fda357bb056bf2/numcodecs-0.16.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85a7f1cae9eb18b85709af46570bf9c60056e7155c4c8f610e8080c68124d0e5", size = 8866611, upload-time = "2025-09-18T18:54:41.168Z" }, - { url = "https://files.pythonhosted.org/packages/aa/51/03aece765108fe247717105b5131856546e5428f22a56a14ffdebd017424/numcodecs-0.16.3-cp311-cp311-win_amd64.whl", hash = "sha256:f7bb7f2c46eb7ec8a1c5f8d8fe1a72c222256dd6d6df5af9eaac7a6b905f3575", size = 806787, upload-time = "2025-09-18T18:54:42.78Z" }, - { url = "https://files.pythonhosted.org/packages/0d/78/e4b34803a3aa1d0769919695de4b133266c18c80c474d32ebc462fa1a9bd/numcodecs-0.16.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c77454d92941a335d148b0b822f5d4783103f392774d5d76283bbf7f21b49529", size = 1681108, upload-time = "2025-09-18T18:54:43.856Z" }, - { url = "https://files.pythonhosted.org/packages/25/cf/ca36f463b03a4097767d2a1c1b72f31810e8c6384e9449dd9b925203783c/numcodecs-0.16.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:270e7a33ee96bdf5c957acf25a2487002a233811a125a155c400c2f036b69c73", size = 1165589, upload-time = "2025-09-18T18:54:44.954Z" }, - { url = "https://files.pythonhosted.org/packages/ed/ae/670260c3c4b5ed34a0674561355f3d4ce7fcbdf09a667e5bc841526d271c/numcodecs-0.16.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:12f43fa4a347d1dba775c4506a1c9b15b90144c258433b81f79f1c1b1a990db5", size = 8316365, upload-time = "2025-09-18T18:54:46.073Z" }, - { url = "https://files.pythonhosted.org/packages/bb/fa/94e022419c751a60ff0f53642ebae5ef81ed3cc3640f958588e3ad3dc18d/numcodecs-0.16.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44869ef564a50aa545215c6a0d42ba5bbc34e9715523fb2336ada3d1fb2b331d", size = 8846228, upload-time = "2025-09-18T18:54:47.858Z" }, - { url = "https://files.pythonhosted.org/packages/71/60/f23733589f3e059bf8589508acd23ffeec230bdf179f138a54f5ab16e0a6/numcodecs-0.16.3-cp312-cp312-win_amd64.whl", hash = "sha256:9aae6996172ba10c5f5111b2998709071b5aeba6b58b1ee0b26b61ed6aa7f2f4", size = 806260, upload-time = "2025-09-18T18:54:49.41Z" }, - { url = "https://files.pythonhosted.org/packages/3c/d5/d3536d06ac1e5fb848a3186958204082b68b106364c9a3669652dd786731/numcodecs-0.16.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:947406b01c20f2ce7ce2e631e7f21b782e8a9d4b57b374a41c9e7b1341a8f3a2", size = 1677129, upload-time = "2025-09-18T18:54:50.5Z" }, - { url = "https://files.pythonhosted.org/packages/e1/fd/b0513a3428dc2b38ec85eea771703ae69c49f09b9650d6c44c9105c80073/numcodecs-0.16.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7cf50e351398a34b45817974c411527629e88937b7683695e276afd65da6ed6f", size = 1159058, upload-time = "2025-09-18T18:54:51.675Z" }, - { url = "https://files.pythonhosted.org/packages/98/05/b7c127283cfb154a97abb284363825401b69302d71a28608af66f73257cc/numcodecs-0.16.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7938502fcc060ed9543814f38ca67048b33d7bd2667756e36e6b1060455b17e", size = 8260987, upload-time = "2025-09-18T18:54:52.883Z" }, - { url = "https://files.pythonhosted.org/packages/ff/46/320d960aff884bc63abaaf846ffa3de4803e83e8070b6f84c5688464839c/numcodecs-0.16.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:010d628c95be1214536fb22c0df4ced58da954b404b1fcb25ddebf64e4a3f7f3", size = 8805295, upload-time = "2025-09-18T18:54:54.698Z" }, - { url = "https://files.pythonhosted.org/packages/31/ae/acc2e0f1f49ba32afa2174578f170673139248ef86f77e334f2619133867/numcodecs-0.16.3-cp313-cp313-win_amd64.whl", hash = "sha256:e83115e3c32de798c7b7164503e06aae9f9746c1cef564d029616eb44bd6cd90", size = 803204, upload-time = "2025-09-18T18:54:56.192Z" }, -] - -[package.optional-dependencies] -crc32c = [ - { name = "crc32c", marker = "python_full_version >= '3.11'" }, -] - [[package]] name = "numpy" version = "1.26.4" @@ -3057,59 +2881,6 @@ dependencies = [ ] sdist = { url = "https://files.pythonhosted.org/packages/05/79/87c45f32e661b25e0aaa1e325ba166511f57be5dff8f0fcabc12d3e73b64/nv_grouped_gemm-1.1.4.post6.tar.gz", hash = "sha256:dad6115f4b4ff7ceb0bc40ad44e923c13a24fc88cfe1e20b1a6b4c9cf24c445c", size = 26508, upload-time = "2025-10-10T18:52:29.508Z" } -[[package]] -name = "nvidia-cublas-cu12" -version = "12.8.4.1" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/29/99/db44d685f0e257ff0e213ade1964fc459b4a690a73293220e98feb3307cf/nvidia_cublas_cu12-12.8.4.1-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:b86f6dd8935884615a0683b663891d43781b819ac4f2ba2b0c9604676af346d0", size = 590537124, upload-time = "2025-03-07T01:43:53.556Z" }, - { url = "https://files.pythonhosted.org/packages/dc/61/e24b560ab2e2eaeb3c839129175fb330dfcfc29e5203196e5541a4c44682/nvidia_cublas_cu12-12.8.4.1-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:8ac4e771d5a348c551b2a426eda6193c19aa630236b418086020df5ba9667142", size = 594346921, upload-time = "2025-03-07T01:44:31.254Z" }, - { url = "https://files.pythonhosted.org/packages/70/61/7d7b3c70186fb651d0fbd35b01dbfc8e755f69fd58f817f3d0f642df20c3/nvidia_cublas_cu12-12.8.4.1-py3-none-win_amd64.whl", hash = "sha256:47e9b82132fa8d2b4944e708049229601448aaad7e6f296f630f2d1a32de35af", size = 567544208, upload-time = "2025-03-07T01:53:30.535Z" }, -] - -[[package]] -name = "nvidia-cuda-cupti-cu12" -version = "12.8.90" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d5/1f/b3bd73445e5cb342727fd24fe1f7b748f690b460acadc27ea22f904502c8/nvidia_cuda_cupti_cu12-12.8.90-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:4412396548808ddfed3f17a467b104ba7751e6b58678a4b840675c56d21cf7ed", size = 9533318, upload-time = "2025-03-07T01:40:10.421Z" }, - { url = "https://files.pythonhosted.org/packages/f8/02/2adcaa145158bf1a8295d83591d22e4103dbfd821bcaf6f3f53151ca4ffa/nvidia_cuda_cupti_cu12-12.8.90-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ea0cb07ebda26bb9b29ba82cda34849e73c166c18162d3913575b0c9db9a6182", size = 10248621, upload-time = "2025-03-07T01:40:21.213Z" }, - { url = "https://files.pythonhosted.org/packages/41/bc/83f5426095d93694ae39fe1311431b5d5a9bb82e48bf0dd8e19be2765942/nvidia_cuda_cupti_cu12-12.8.90-py3-none-win_amd64.whl", hash = "sha256:bb479dcdf7e6d4f8b0b01b115260399bf34154a1a2e9fe11c85c517d87efd98e", size = 7015759, upload-time = "2025-03-07T01:51:11.355Z" }, -] - -[[package]] -name = "nvidia-cuda-nvrtc-cu12" -version = "12.8.93" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/05/6b/32f747947df2da6994e999492ab306a903659555dddc0fbdeb9d71f75e52/nvidia_cuda_nvrtc_cu12-12.8.93-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:a7756528852ef889772a84c6cd89d41dfa74667e24cca16bb31f8f061e3e9994", size = 88040029, upload-time = "2025-03-07T01:42:13.562Z" }, - { url = "https://files.pythonhosted.org/packages/eb/d1/e50d0acaab360482034b84b6e27ee83c6738f7d32182b987f9c7a4e32962/nvidia_cuda_nvrtc_cu12-12.8.93-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fc1fec1e1637854b4c0a65fb9a8346b51dd9ee69e61ebaccc82058441f15bce8", size = 43106076, upload-time = "2025-03-07T01:41:59.817Z" }, - { url = "https://files.pythonhosted.org/packages/45/51/52a3d84baa2136cc8df15500ad731d74d3a1114d4c123e043cb608d4a32b/nvidia_cuda_nvrtc_cu12-12.8.93-py3-none-win_amd64.whl", hash = "sha256:7a4b6b2904850fe78e0bd179c4b655c404d4bb799ef03ddc60804247099ae909", size = 73586838, upload-time = "2025-03-07T01:52:13.483Z" }, -] - -[[package]] -name = "nvidia-cuda-runtime-cu12" -version = "12.8.90" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7c/75/f865a3b236e4647605ea34cc450900854ba123834a5f1598e160b9530c3a/nvidia_cuda_runtime_cu12-12.8.90-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:52bf7bbee900262ffefe5e9d5a2a69a30d97e2bc5bb6cc866688caa976966e3d", size = 965265, upload-time = "2025-03-07T01:39:43.533Z" }, - { url = "https://files.pythonhosted.org/packages/0d/9b/a997b638fcd068ad6e4d53b8551a7d30fe8b404d6f1804abf1df69838932/nvidia_cuda_runtime_cu12-12.8.90-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:adade8dcbd0edf427b7204d480d6066d33902cab2a4707dcfc48a2d0fd44ab90", size = 954765, upload-time = "2025-03-07T01:40:01.615Z" }, - { url = "https://files.pythonhosted.org/packages/30/a5/a515b7600ad361ea14bfa13fb4d6687abf500adc270f19e89849c0590492/nvidia_cuda_runtime_cu12-12.8.90-py3-none-win_amd64.whl", hash = "sha256:c0c6027f01505bfed6c3b21ec546f69c687689aad5f1a377554bc6ca4aa993a8", size = 944318, upload-time = "2025-03-07T01:51:01.794Z" }, -] - -[[package]] -name = "nvidia-cudnn-cu12" -version = "9.10.2.21" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "nvidia-cublas-cu12" }, -] -wheels = [ - { url = "https://files.pythonhosted.org/packages/fa/41/e79269ce215c857c935fd86bcfe91a451a584dfc27f1e068f568b9ad1ab7/nvidia_cudnn_cu12-9.10.2.21-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:c9132cc3f8958447b4910a1720036d9eff5928cc3179b0a51fb6d167c6cc87d8", size = 705026878, upload-time = "2025-06-06T21:52:51.348Z" }, - { url = "https://files.pythonhosted.org/packages/ba/51/e123d997aa098c61d029f76663dedbfb9bc8dcf8c60cbd6adbe42f76d049/nvidia_cudnn_cu12-9.10.2.21-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:949452be657fa16687d0930933f032835951ef0892b37d2d53824d1a84dc97a8", size = 706758467, upload-time = "2025-06-06T21:54:08.597Z" }, - { url = "https://files.pythonhosted.org/packages/3d/90/0bd6e586701b3a890fd38aa71c387dab4883d619d6e5ad912ccbd05bfd67/nvidia_cudnn_cu12-9.10.2.21-py3-none-win_amd64.whl", hash = "sha256:c6288de7d63e6cf62988f0923f96dc339cea362decb1bf5b3141883392a7d65e", size = 692992268, upload-time = "2025-06-06T21:55:18.114Z" }, -] - [[package]] name = "nvidia-cudnn-frontend" version = "1.15.0" @@ -3129,76 +2900,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d1/04/519fd6e3ea12fe7fe98c497c4d51f6c5c87763d02e90ea3102cef32a6ef1/nvidia_cudnn_frontend-1.15.0-cp313-cp313-win_amd64.whl", hash = "sha256:7c8c6f12534b73b0cd55956c5e9419b7840a01e4c260837606112450ce1ca0d9", size = 1297324, upload-time = "2025-10-10T18:46:53.104Z" }, ] -[[package]] -name = "nvidia-cufft-cu12" -version = "11.3.3.83" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "nvidia-nvjitlink-cu12" }, -] -wheels = [ - { url = "https://files.pythonhosted.org/packages/60/bc/7771846d3a0272026c416fbb7e5f4c1f146d6d80704534d0b187dd6f4800/nvidia_cufft_cu12-11.3.3.83-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:848ef7224d6305cdb2a4df928759dca7b1201874787083b6e7550dd6765ce69a", size = 193109211, upload-time = "2025-03-07T01:44:56.873Z" }, - { url = "https://files.pythonhosted.org/packages/1f/13/ee4e00f30e676b66ae65b4f08cb5bcbb8392c03f54f2d5413ea99a5d1c80/nvidia_cufft_cu12-11.3.3.83-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4d2dd21ec0b88cf61b62e6b43564355e5222e4a3fb394cac0db101f2dd0d4f74", size = 193118695, upload-time = "2025-03-07T01:45:27.821Z" }, - { url = "https://files.pythonhosted.org/packages/7d/ec/ce1629f1e478bb5ccd208986b5f9e0316a78538dd6ab1d0484f012f8e2a1/nvidia_cufft_cu12-11.3.3.83-py3-none-win_amd64.whl", hash = "sha256:7a64a98ef2a7c47f905aaf8931b69a3a43f27c55530c698bb2ed7c75c0b42cb7", size = 192216559, upload-time = "2025-03-07T01:53:57.106Z" }, -] - -[[package]] -name = "nvidia-cufile-cu12" -version = "1.13.1.3" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/bb/fe/1bcba1dfbfb8d01be8d93f07bfc502c93fa23afa6fd5ab3fc7c1df71038a/nvidia_cufile_cu12-1.13.1.3-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1d069003be650e131b21c932ec3d8969c1715379251f8d23a1860554b1cb24fc", size = 1197834, upload-time = "2025-03-07T01:45:50.723Z" }, - { url = "https://files.pythonhosted.org/packages/1e/f5/5607710447a6fe9fd9b3283956fceeee8a06cda1d2f56ce31371f595db2a/nvidia_cufile_cu12-1.13.1.3-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:4beb6d4cce47c1a0f1013d72e02b0994730359e17801d395bdcbf20cfb3bb00a", size = 1120705, upload-time = "2025-03-07T01:45:41.434Z" }, -] - -[[package]] -name = "nvidia-curand-cu12" -version = "10.3.9.90" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/45/5e/92aa15eca622a388b80fbf8375d4760738df6285b1e92c43d37390a33a9a/nvidia_curand_cu12-10.3.9.90-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:dfab99248034673b779bc6decafdc3404a8a6f502462201f2f31f11354204acd", size = 63625754, upload-time = "2025-03-07T01:46:10.735Z" }, - { url = "https://files.pythonhosted.org/packages/fb/aa/6584b56dc84ebe9cf93226a5cde4d99080c8e90ab40f0c27bda7a0f29aa1/nvidia_curand_cu12-10.3.9.90-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:b32331d4f4df5d6eefa0554c565b626c7216f87a06a4f56fab27c3b68a830ec9", size = 63619976, upload-time = "2025-03-07T01:46:23.323Z" }, - { url = "https://files.pythonhosted.org/packages/b9/75/70c05b2f3ed5be3bb30b7102b6eb78e100da4bbf6944fd6725c012831cab/nvidia_curand_cu12-10.3.9.90-py3-none-win_amd64.whl", hash = "sha256:f149a8ca457277da854f89cf282d6ef43176861926c7ac85b2a0fbd237c587ec", size = 62765309, upload-time = "2025-03-07T01:54:20.478Z" }, -] - -[[package]] -name = "nvidia-cusolver-cu12" -version = "11.7.3.90" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "nvidia-cublas-cu12" }, - { name = "nvidia-cusparse-cu12" }, - { name = "nvidia-nvjitlink-cu12" }, -] -wheels = [ - { url = "https://files.pythonhosted.org/packages/c8/32/f7cd6ce8a7690544d084ea21c26e910a97e077c9b7f07bf5de623ee19981/nvidia_cusolver_cu12-11.7.3.90-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:db9ed69dbef9715071232caa9b69c52ac7de3a95773c2db65bdba85916e4e5c0", size = 267229841, upload-time = "2025-03-07T01:46:54.356Z" }, - { url = "https://files.pythonhosted.org/packages/85/48/9a13d2975803e8cf2777d5ed57b87a0b6ca2cc795f9a4f59796a910bfb80/nvidia_cusolver_cu12-11.7.3.90-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:4376c11ad263152bd50ea295c05370360776f8c3427b30991df774f9fb26c450", size = 267506905, upload-time = "2025-03-07T01:47:16.273Z" }, - { url = "https://files.pythonhosted.org/packages/13/c0/76ca8551b8a84146ffa189fec81c26d04adba4bc0dbe09cd6e6fd9b7de04/nvidia_cusolver_cu12-11.7.3.90-py3-none-win_amd64.whl", hash = "sha256:4a550db115fcabc4d495eb7d39ac8b58d4ab5d8e63274d3754df1c0ad6a22d34", size = 256720438, upload-time = "2025-03-07T01:54:39.898Z" }, -] - -[[package]] -name = "nvidia-cusparse-cu12" -version = "12.5.8.93" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "nvidia-nvjitlink-cu12" }, -] -wheels = [ - { url = "https://files.pythonhosted.org/packages/bc/f7/cd777c4109681367721b00a106f491e0d0d15cfa1fd59672ce580ce42a97/nvidia_cusparse_cu12-12.5.8.93-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:9b6c161cb130be1a07a27ea6923df8141f3c295852f4b260c65f18f3e0a091dc", size = 288117129, upload-time = "2025-03-07T01:47:40.407Z" }, - { url = "https://files.pythonhosted.org/packages/c2/f5/e1854cb2f2bcd4280c44736c93550cc300ff4b8c95ebe370d0aa7d2b473d/nvidia_cusparse_cu12-12.5.8.93-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1ec05d76bbbd8b61b06a80e1eaf8cf4959c3d4ce8e711b65ebd0443bb0ebb13b", size = 288216466, upload-time = "2025-03-07T01:48:13.779Z" }, - { url = "https://files.pythonhosted.org/packages/62/07/f3b2ad63f8e3d257a599f422ae34eb565e70c41031aecefa3d18b62cabd1/nvidia_cusparse_cu12-12.5.8.93-py3-none-win_amd64.whl", hash = "sha256:9a33604331cb2cac199f2e7f5104dfbb8a5a898c367a53dfda9ff2acb6b6b4dd", size = 284937404, upload-time = "2025-03-07T01:55:07.742Z" }, -] - -[[package]] -name = "nvidia-cusparselt-cu12" -version = "0.7.1" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/73/b9/598f6ff36faaece4b3c50d26f50e38661499ff34346f00e057760b35cc9d/nvidia_cusparselt_cu12-0.7.1-py3-none-manylinux2014_aarch64.whl", hash = "sha256:8878dce784d0fac90131b6817b607e803c36e629ba34dc5b433471382196b6a5", size = 283835557, upload-time = "2025-02-26T00:16:54.265Z" }, - { url = "https://files.pythonhosted.org/packages/56/79/12978b96bd44274fe38b5dde5cfb660b1d114f70a65ef962bcbbed99b549/nvidia_cusparselt_cu12-0.7.1-py3-none-manylinux2014_x86_64.whl", hash = "sha256:f1bb701d6b930d5a7cea44c19ceb973311500847f81b634d802b7b539dc55623", size = 287193691, upload-time = "2025-02-26T00:15:44.104Z" }, - { url = "https://files.pythonhosted.org/packages/2f/d8/a6b0d0d0c2435e9310f3e2bb0d9c9dd4c33daef86aa5f30b3681defd37ea/nvidia_cusparselt_cu12-0.7.1-py3-none-win_amd64.whl", hash = "sha256:f67fbb5831940ec829c9117b7f33807db9f9678dc2a617fbe781cac17b4e1075", size = 271020911, upload-time = "2025-02-26T00:14:47.204Z" }, -] - [[package]] name = "nvidia-mathdx" version = "25.1.1" @@ -3240,44 +2941,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/27/a8/85034a33753a56ef120b931dda1183d98efef1010e379c54d3c3214a5048/nvidia_modelopt-0.37.0-py3-none-any.whl", hash = "sha256:3490b6d6aea3541aa5d475d81230fee627e2c16ff47bbab1cba4b80a1eb119a2", size = 831271, upload-time = "2025-10-08T18:37:03.951Z" }, ] -[[package]] -name = "nvidia-nccl-cu12" -version = "2.27.5" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/bb/1c/857979db0ef194ca5e21478a0612bcdbbe59458d7694361882279947b349/nvidia_nccl_cu12-2.27.5-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:31432ad4d1fb1004eb0c56203dc9bc2178a1ba69d1d9e02d64a6938ab5e40e7a", size = 322400625, upload-time = "2025-06-26T04:11:04.496Z" }, - { url = "https://files.pythonhosted.org/packages/6e/89/f7a07dc961b60645dbbf42e80f2bc85ade7feb9a491b11a1e973aa00071f/nvidia_nccl_cu12-2.27.5-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ad730cf15cb5d25fe849c6e6ca9eb5b76db16a80f13f425ac68d8e2e55624457", size = 322348229, upload-time = "2025-06-26T04:11:28.385Z" }, -] - -[[package]] -name = "nvidia-nvjitlink-cu12" -version = "12.8.93" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/f6/74/86a07f1d0f42998ca31312f998bd3b9a7eff7f52378f4f270c8679c77fb9/nvidia_nvjitlink_cu12-12.8.93-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:81ff63371a7ebd6e6451970684f916be2eab07321b73c9d244dc2b4da7f73b88", size = 39254836, upload-time = "2025-03-07T01:49:55.661Z" }, - { url = "https://files.pythonhosted.org/packages/2a/a2/8cee5da30d13430e87bf99bb33455d2724d0a4a9cb5d7926d80ccb96d008/nvidia_nvjitlink_cu12-12.8.93-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:adccd7161ace7261e01bb91e44e88da350895c270d23f744f0820c818b7229e7", size = 38386204, upload-time = "2025-03-07T01:49:43.612Z" }, - { url = "https://files.pythonhosted.org/packages/ed/d7/34f02dad2e30c31b10a51f6b04e025e5dd60e5f936af9045a9b858a05383/nvidia_nvjitlink_cu12-12.8.93-py3-none-win_amd64.whl", hash = "sha256:bd93fbeeee850917903583587f4fc3a4eafa022e34572251368238ab5e6bd67f", size = 268553710, upload-time = "2025-03-07T01:56:24.13Z" }, -] - -[[package]] -name = "nvidia-nvshmem-cu12" -version = "3.3.20" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/92/9d/3dd98852568fb845ec1f7902c90a22b240fe1cbabda411ccedf2fd737b7b/nvidia_nvshmem_cu12-3.3.20-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0b0b960da3842212758e4fa4696b94f129090b30e5122fea3c5345916545cff0", size = 124484616, upload-time = "2025-08-04T20:24:59.172Z" }, - { url = "https://files.pythonhosted.org/packages/3b/6c/99acb2f9eb85c29fc6f3a7ac4dccfd992e22666dd08a642b303311326a97/nvidia_nvshmem_cu12-3.3.20-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d00f26d3f9b2e3c3065be895e3059d6479ea5c638a3f38c9fec49b1b9dd7c1e5", size = 124657145, upload-time = "2025-08-04T20:25:19.995Z" }, -] - -[[package]] -name = "nvidia-nvtx-cu12" -version = "12.8.90" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/10/c0/1b303feea90d296f6176f32a2a70b5ef230f9bdeb3a72bddb0dc922dc137/nvidia_nvtx_cu12-12.8.90-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d7ad891da111ebafbf7e015d34879f7112832fc239ff0d7d776b6cb685274615", size = 91161, upload-time = "2025-03-07T01:42:23.922Z" }, - { url = "https://files.pythonhosted.org/packages/a2/eb/86626c1bbc2edb86323022371c39aa48df6fd8b0a1647bc274577f72e90b/nvidia_nvtx_cu12-12.8.90-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:5b17e2001cc0d751a5bc2c6ec6d26ad95913324a4adb86788c944f8ce9ba441f", size = 89954, upload-time = "2025-03-07T01:42:44.131Z" }, - { url = "https://files.pythonhosted.org/packages/9f/99/4c9c0c329bf9fc125008c3b54c7c94c0023518d06fc025ae36431375e1fe/nvidia_nvtx_cu12-12.8.90-py3-none-win_amd64.whl", hash = "sha256:619c8304aedc69f02ea82dd244541a83c3d9d40993381b3b590f1adaed3db41e", size = 56492, upload-time = "2025-03-07T01:52:24.69Z" }, -] - [[package]] name = "nvidia-resiliency-ext" version = "0.4.1" @@ -3351,8 +3014,8 @@ name = "onnx" version = "1.19.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "numpy" }, { name = "protobuf" }, { name = "typing-extensions" }, @@ -5427,7 +5090,7 @@ name = "sympy" version = "1.14.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "mpmath" }, + { name = "mpmath", marker = "sys_platform != 'linux'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/83/d3/803453b36afefb7c2bb238361cd4ae6125a569b4db67cd9e79846ba2d68c/sympy-1.14.0.tar.gz", hash = "sha256:d3d3fe8df1e5a0b42f0e7bdf50541697dbe7d23746e894990c030e2b05e72517", size = 7793921, upload-time = "2025-04-27T18:05:01.611Z" } wheels = [ @@ -5711,30 +5374,15 @@ name = "torch" version = "2.9.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "filelock" }, - { name = "fsspec" }, - { name = "jinja2" }, - { name = "networkx", version = "3.4.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "networkx", version = "3.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "nvidia-cublas-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cuda-cupti-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cuda-nvrtc-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cuda-runtime-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cudnn-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cufft-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cufile-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-curand-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cusolver-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cusparse-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cusparselt-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nccl-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nvjitlink-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nvshmem-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nvtx-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "setuptools", marker = "python_full_version >= '3.12'" }, - { name = "sympy" }, + { name = "filelock", marker = "sys_platform != 'linux'" }, + { name = "fsspec", marker = "sys_platform != 'linux'" }, + { name = "jinja2", marker = "sys_platform != 'linux'" }, + { name = "networkx", version = "3.4.2", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and sys_platform != 'linux') or (python_full_version >= '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "networkx", version = "3.5", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and sys_platform != 'linux') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "setuptools", marker = "python_full_version >= '3.12' and sys_platform != 'linux'" }, + { name = "sympy", marker = "sys_platform != 'linux'" }, { name = "triton", marker = "sys_platform == 'never'" }, - { name = "typing-extensions" }, + { name = "typing-extensions", marker = "sys_platform != 'linux'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/bb/86/245c240d2138c17ed572c943c289056c2721abab70810d772c6bf5495b28/torch-2.9.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:030bbfe367379ae6a4ae4042b6c44da25383343b8b3c68abaa9c7231efbaf2dd", size = 104213554, upload-time = "2025-10-15T15:45:59.798Z" }, @@ -5830,8 +5478,8 @@ dependencies = [ { name = "docstring-parser" }, { name = "filelock" }, { name = "fsspec" }, - { name = "importlib-metadata", version = "8.6.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev'" }, - { name = "importlib-metadata", version = "8.7.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, + { name = "importlib-metadata", version = "8.6.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev' or extra == 'extra-13-megatron-core-lts'" }, + { name = "importlib-metadata", version = "8.7.0", source = { registry = "https://pypi.org/simple" }, marker = "(extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts')" }, { name = "pyre-extensions" }, { name = "pyyaml" }, { name = "tabulate" }, @@ -6342,32 +5990,20 @@ name = "wrapt" version = "2.0.0" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", - "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", ] sdist = { url = "https://files.pythonhosted.org/packages/49/19/5e5bcd855d808892fe02d49219f97a50f64cd6d8313d75df3494ee97b1a3/wrapt-2.0.0.tar.gz", hash = "sha256:35a542cc7a962331d0279735c30995b024e852cf40481e384fd63caaa391cbb9", size = 81722, upload-time = "2025-10-19T23:47:54.07Z" } wheels = [ @@ -6637,53 +6273,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/73/ae/b48f95715333080afb75a4504487cbe142cae1268afc482d06692d605ae6/yarl-1.22.0-py3-none-any.whl", hash = "sha256:1380560bdba02b6b6c90de54133c81c9f2a453dee9912fe58c1dcced1edb7cff", size = 46814, upload-time = "2025-10-06T14:12:53.872Z" }, ] -[[package]] -name = "zarr" -version = "2.18.3" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version < '3.11' and sys_platform == 'linux'", - "python_full_version < '3.11' and sys_platform != 'linux'", -] -dependencies = [ - { name = "asciitree", marker = "python_full_version < '3.11'" }, - { name = "fasteners", marker = "python_full_version < '3.11' and sys_platform != 'emscripten'" }, - { name = "numcodecs", version = "0.13.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" }, - { name = "numpy", marker = "python_full_version < '3.11'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/23/c4/187a21ce7cf7c8f00c060dd0e04c2a81139bb7b1ab178bba83f2e1134ce2/zarr-2.18.3.tar.gz", hash = "sha256:2580d8cb6dd84621771a10d31c4d777dca8a27706a1a89b29f42d2d37e2df5ce", size = 3603224, upload-time = "2024-09-04T23:20:16.595Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ed/c9/142095e654c2b97133ff71df60979422717b29738b08bc8a1709a5d5e0d0/zarr-2.18.3-py3-none-any.whl", hash = "sha256:b1f7dfd2496f436745cdd4c7bcf8d3b4bc1dceef5fdd0d589c87130d842496dd", size = 210723, upload-time = "2024-09-04T23:20:14.491Z" }, -] - -[[package]] -name = "zarr" -version = "3.1.3" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", - "python_full_version >= '3.13' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", - "python_full_version == '3.12.*' and sys_platform != 'linux'", - "python_full_version == '3.11.*' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and sys_platform != 'linux'", -] -dependencies = [ - { name = "donfig", marker = "python_full_version >= '3.11'" }, - { name = "numcodecs", version = "0.16.3", source = { registry = "https://pypi.org/simple" }, extra = ["crc32c"], marker = "(python_full_version >= '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "numpy", marker = "python_full_version >= '3.11'" }, - { name = "packaging", marker = "python_full_version >= '3.11'" }, - { name = "typing-extensions", marker = "python_full_version >= '3.11'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/d6/67/14be68a7bad15eecda09b1e81fca2420f7533645fe187bf4d6104c1aad52/zarr-3.1.3.tar.gz", hash = "sha256:01342f3e26a02ed5670db608a5576fbdb8d76acb5c280bd2d0082454b1ba6f79", size = 349125, upload-time = "2025-09-18T19:32:41.688Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/1a/71/9de7229515a53d1cc5705ca9c411530f711a2242f962214d9dbfe2741aa4/zarr-3.1.3-py3-none-any.whl", hash = "sha256:45f67f87f65f14fa453f99dd8110a5936b7ac69f3a21981d33e90407c80c302a", size = 276427, upload-time = "2025-09-18T19:32:40.042Z" }, -] - [[package]] name = "zipp" version = "3.23.0" From 0abff0841ed3325e3f1803e11f0d398616096898 Mon Sep 17 00:00:00 2001 From: Teodor-Dumitru Ene <34819528+tdene@users.noreply.github.com> Date: Fri, 7 Nov 2025 07:53:32 -0600 Subject: [PATCH 04/27] Hotfix to unit tests on hopper FA3 (bis) (#2179) --- .../gpt/test_gpt_inference_wrapper.py | 4 +++- .../test_simple_text_generation_controller.py | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/unit_tests/inference/model_inference_wrappers/gpt/test_gpt_inference_wrapper.py b/tests/unit_tests/inference/model_inference_wrappers/gpt/test_gpt_inference_wrapper.py index 644cb149988..07afebe1067 100644 --- a/tests/unit_tests/inference/model_inference_wrappers/gpt/test_gpt_inference_wrapper.py +++ b/tests/unit_tests/inference/model_inference_wrappers/gpt/test_gpt_inference_wrapper.py @@ -1,3 +1,5 @@ +# Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. + from argparse import Namespace import pytest @@ -32,7 +34,7 @@ def setup_model(self, tensor_parallel_size, pipeline_parallel_size): self.vocab_size = 100 self.batch_size = 4 self.sequence_length = 32 - hidden_size = 12 + hidden_size = 32 transformer_config = TransformerConfig( num_layers=4, diff --git a/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py b/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py index f23a9782646..10ffe2fdd40 100644 --- a/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py +++ b/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py @@ -66,7 +66,7 @@ def setup_model( else: model_parallel_cuda_manual_seed(123, inference_rng_tracker=True) self.batch_size = batch_size - self.hidden_size = 12 + self.hidden_size = 32 self.vocab_size = 100 self.sequence_length = 60 if fp8 else 64 # Test padding for fp8 transformer_config = TransformerConfig( From 0981e3cc96152db9d2dc004ed6b748fbd1048df8 Mon Sep 17 00:00:00 2001 From: Asha Anoosheh Date: Fri, 7 Nov 2025 15:13:34 +0100 Subject: [PATCH 05/27] Fix has_modelopt_state() for native Torch checkpoint format (#2160) Signed-off-by: Asha Anoosheh --- megatron/post_training/checkpointing.py | 87 ++++++++++++------------- 1 file changed, 43 insertions(+), 44 deletions(-) diff --git a/megatron/post_training/checkpointing.py b/megatron/post_training/checkpointing.py index cc26d5db2e3..aac59341e37 100644 --- a/megatron/post_training/checkpointing.py +++ b/megatron/post_training/checkpointing.py @@ -2,15 +2,13 @@ import logging from pathlib import Path -from typing import Dict, Optional, Tuple, Union +from typing import Optional, Tuple, Union import modelopt.torch.opt as mto -import torch import torch.nn as nn from modelopt.torch.opt.plugins import restore_sharded_modelopt_state from megatron.core import dist_checkpointing -from megatron.core.dist_checkpointing.strategies.common import COMMON_STATE_FNAME from megatron.core.utils import get_torch_version, is_torch_min_version from megatron.training import get_args from megatron.training.checkpointing import _load_base_checkpoint, load_checkpoint @@ -21,35 +19,36 @@ NEMO_WEIGHT_DIR_NAMES = {"model_weights": "model.", "weights": "module."} -def has_modelopt_state(checkpoint_path: str, ignore_kd_state: bool = False) -> bool: - """Check if modelopt_state folder exists inside the checkpoint path. +def has_modelopt_state(checkpoint_path: str) -> bool: + """Check if modelopt_state folder exists inside the checkpoint. Args: checkpoint_path: Path to the checkpoint directory - ignore_kd_state: If True, ignore the knowledge distillation state Returns: - True if modelopt_state folder exists when ignore_kd_state is False, - True if modelopt_state folder exists when ignore_kd_state is True and has only - distillation state, False otherwise + True if modelopt_state exists, False otherwise """ - load_dir, _ = get_sharded_load_dir(checkpoint_path) - if load_dir is None: - return False - modelopt_state_path = load_dir / "modelopt_state" - if not modelopt_state_path.is_dir(): - return False - elif ignore_kd_state: - return _has_only_kd_state(modelopt_state_path) - else: - return True - + args = get_args() -def _has_only_kd_state(modelopt_state_path: Path) -> bool: - modelopt_state = torch.load(modelopt_state_path / COMMON_STATE_FNAME, weights_only=False) - modes_dict = modelopt_state["modelopt_state_dict"] - if len(modes_dict) == 1 and modes_dict[0][0] == "kd_loss": - return True - return False + try: + if args.ckpt_format == "torch": + # Non-sharded + state_dict, _, _ = _load_base_checkpoint(checkpoint_path, rank0=False) + if state_dict is None: + return False + if "modelopt_state" not in state_dict: + return False + return True + else: + # Sharded + load_dir, _ = get_sharded_load_dir(checkpoint_path) + if load_dir is None: + return False + if not (load_dir / "modelopt_state").is_dir(): + return False + return True + except Exception as e: + print_rank_0(f"Failed to inspect checkpoint in {checkpoint_path}: {e}") + return False def get_sharded_load_dir(load_dir: str) -> Tuple[Union[Path, None], str]: @@ -89,41 +88,41 @@ def get_sharded_load_dir(load_dir: str) -> Tuple[Union[Path, None], str]: return sharded_load_dir, sharded_prefix -def load_modelopt_state(load_dir: Optional[str] = None, model: Optional[nn.Module] = None) -> Dict: +def load_modelopt_state(model: nn.Module, load_dir: Optional[str] = None) -> None: """Loading modelopt_state without loading the model. - If --use-dist-ckpt, we try to load from the sharded modelopt_state. This will not load the model - state_dict. Otherwise, if the checkpoint is not sharded, we load the base checkpoint (that - contains the model state as well) and extract the modelopt_state. + If distributed checkpointing in use, we try to load from the sharded modelopt_state. This will not + load the model state_dict. Otherwise, if the checkpoint is not sharded, we load the base checkpoint + (which contains the model state as well) and extract the modelopt_state. Args: + model: the model to load the modelopt_state into load_dir: optionally provide a different loading path - model: required when loading a sharded checkpoint """ args = get_args() + load_dir = load_dir or args.load - if load_dir is None: - load_dir = args.load - - if args.use_dist_ckpt: - assert model is not None, "`model` argument required when `args.use_dist_ckpt is True`" - sharded_load_dir, _ = get_sharded_load_dir(load_dir) - if sharded_load_dir is None: - print_rank_0("No sharded checkpoint found. Skipping loading modelopt_state.") - return {} - restore_sharded_modelopt_state([model], sharded_load_dir) - else: + if args.ckpt_format == "torch": + # Non-sharded print_rank_0(f"Loading ModelOpt state from base checkpoint ({load_dir})") try: state_dict, _, _ = _load_base_checkpoint(args.load, rank0=False) except Exception: print_rank_0("Failed to load base checkpoint via megatron _load_base_checkpoint!") + return if state_dict is None: print_rank_0("No checkpoint state_dict found. Skipping loading ModelOpt state.") - else: - modelopt_state = state_dict.get("modelopt_state", None) + return + modelopt_state = state_dict.get("modelopt_state", None) if modelopt_state is not None: mto.restore_from_modelopt_state(model, modelopt_state) + else: + # Sharded + sharded_load_dir, _ = get_sharded_load_dir(load_dir) + if sharded_load_dir is None: + print_rank_0("No sharded checkpoint found. Skipping loading modelopt_state.") + return + restore_sharded_modelopt_state([model], sharded_load_dir) def load_modelopt_checkpoint( From c63b921e4926c66e78a3cd14bb197961b04443bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 7 Nov 2025 16:09:30 +0100 Subject: [PATCH 06/27] chore: Remove codeowners (#2175) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- CODEOWNERS | 83 ------------------------------------------------------ 1 file changed, 83 deletions(-) delete mode 100644 CODEOWNERS diff --git a/CODEOWNERS b/CODEOWNERS deleted file mode 100644 index 73a5fd07ec8..00000000000 --- a/CODEOWNERS +++ /dev/null @@ -1,83 +0,0 @@ -# Core -[Core-ADLR] @mcore-reviewers/core-adlr -megatron/core/ - -[Core-NeMo] @mcore-reviewers/core-nemo -megatron/core/ - -^[Core-MLPerf] @mcore-reviewers/mlperf -megatron/core/ - -[GPT] @mcore-reviewers/gpt -megatron/core/models/gpt/ - -[Multimodal] @mcore-reviewers/multi-modal -megatron/core/models/multimodal/ - -[Hybrid-mamba] @mcore-reviewers/hybrid-mamba -megatron/core/models/mamba/ - -# Distributed Checkpointing -[Distributed Checkpointing] @mcore-reviewers/dist-checkpointing -megatron/core/dist_checkpointing/ - -# Distributed Optimizer -[Distributed Optimizer] @mcore-reviewers/dist-optimizer -megatron/core/optimizer/distrib_optimizer/ - -# Quantization and Inference (QAT) -[Quantization and Inference (QAT)] @mcore-reviewers/quantization-and-inference -megatron/core/inference/modelopt_support - -# Datasets -[Datasets] @mcore-reviewers/datasets -megatron/core/datasets/ - -# Parallelism -[Pipeline Parallelism] @mcore-reviewers/pipeline-parallelism -megatron/core/pipeline_parallel/ - -# Transformer -[Transformer] @mcore-reviewers/core-adlr @mcore-reviewers/core-nemo -megatron/core/transformer/ - -[MoE-ADLR] @mcore-reviewers/moe-adlr -megatron/core/transformer/moe/ - -[MoE-Moe] @mcore-reviewers/moe-moe -megatron/core/transformer/moe/ - -# Inference -[Inference] @mcore-reviewers/inference -megatron/core/inference/ - -# Parallel State -[ParallelState] @mcore-reviewers/core-adlr @mcore-reviewers/core-nemo -megatron/core/parallel_state.py - -[Post-Training] @mcore-reviewers/post-training -megatron/core/post_training/ -megatron/post_training - -[CI][1] @mcore-reviewers/ci -.gitlab/ -.github/ -.gitlab-ci.yml -docker/ -tests/unit_tests/run_ci_test.sh -tests/test_utils/python_scripts/ -tests/functional_tests/python_test_utils/ -tests/functional_tests/shell_test_utils/ -megatron/core/transformer/transformer_block.py -megatron/core/transformer/transformer_layer.py - -^[Tests][1] @mcore-reviewers/ci -tests/functional_tests/test_cases/ -tests/functional_tests/recipes/ -tests/unit_tests/ - -[RL] @mcore-reviewers/rl -megatron/rl/ -examples/rl/ -tests/unit_tests/test_rl_utils.py -train_rl.py From 9aa14ed68e1fdcf1faaca63eeb8229f8c7ceda98 Mon Sep 17 00:00:00 2001 From: Keshav Santhanam Date: Fri, 7 Nov 2025 19:05:30 +0000 Subject: [PATCH 07/27] Fix FP8 inference with sequence parallelism (#2009) Signed-off-by: Keshav Santhanam Co-authored-by: Teodor-Dumitru Ene <34819528+tdene@users.noreply.github.com> --- megatron/core/fp8_utils.py | 49 +++++++++++++++++++ .../inference/engines/test_dynamic_engine.py | 38 ++++++++++++-- 2 files changed, 84 insertions(+), 3 deletions(-) diff --git a/megatron/core/fp8_utils.py b/megatron/core/fp8_utils.py index c6ea15776bd..1c1159f6f7b 100644 --- a/megatron/core/fp8_utils.py +++ b/megatron/core/fp8_utils.py @@ -10,6 +10,12 @@ import torch from megatron.core.enums import Fp8Recipe +from megatron.core.tensor_parallel import ( + ColumnParallelLinear, + RowParallelLinear, + gather_from_sequence_parallel_region, + reduce_scatter_to_sequence_parallel_region, +) from megatron.core.transformer.transformer_config import TransformerConfig from megatron.core.utils import get_te_version, is_te_min_version @@ -112,6 +118,27 @@ def get_fp8_align_size(fp8_recipe: Fp8Recipe) -> int: return 16 +def is_column_parallel_linear(module): + """Returns whether the given module is a ColumnParallelLinear layer.""" + if HAVE_TE and ( + isinstance(module, TEColumnParallelLinear) + or isinstance(module, TELayerNormColumnParallelLinear) + ): + return True + elif isinstance(module, ColumnParallelLinear): + return True + return False + + +def is_row_parallel_linear(module): + """Returns whether the given module is a RowParallelLinear layer.""" + if HAVE_TE and isinstance(module, TERowParallelLinear): + return True + elif isinstance(module, RowParallelLinear): + return True + return False + + """ The code below abstracts the functionalities needed for implementing "--fp8-param-gather" into several functions. It provides different implementations for each function based on different @@ -587,6 +614,18 @@ def padded_forward(input_tensor, *args, **kwargs): if not FP8GlobalStateManager.is_fp8_enabled(): return original_forward(input_tensor, *args, **kwargs) + # With sequence parallelism we need to all-gather before padding + # and reduce-scatter after unpadding + if is_sequence_parallel := getattr(module, "sequence_parallel", False): + if is_column_parallel_linear(module): + input_tensor = gather_from_sequence_parallel_region( + input_tensor, group=module.tp_group + ) + + # Disable sequence parallelism on the module because we are handling the + # all-gather and reduce-scatter externally + module.sequence_parallel = False + seq_len, batch_size, hidden_size = input_tensor.shape # Reshape to (S, B*H) to pad sequence dimension input_2d = input_tensor.reshape(seq_len, -1) @@ -612,6 +651,16 @@ def padded_forward(input_tensor, *args, **kwargs): unpadded_output_2d = _unpad_func(output_2d, [seq_len]) unpadded_output = unpadded_output_2d.reshape(seq_len, batch_size, output_hidden_size) + if is_sequence_parallel: + # Reduce-scatter after unpadding + if is_row_parallel_linear(module): + unpadded_output = reduce_scatter_to_sequence_parallel_region( + unpadded_output, group=module.tp_group + ) + + # Reset sequence parallelism flag on the module + module.sequence_parallel = True + if other_outputs: return (unpadded_output,) + other_outputs else: diff --git a/tests/unit_tests/inference/engines/test_dynamic_engine.py b/tests/unit_tests/inference/engines/test_dynamic_engine.py index 2227367469b..4ce8a5b11db 100644 --- a/tests/unit_tests/inference/engines/test_dynamic_engine.py +++ b/tests/unit_tests/inference/engines/test_dynamic_engine.py @@ -9,6 +9,7 @@ import pytest import torch from tqdm import tqdm +from transformer_engine.pytorch.fp8 import check_fp8_support from megatron.core import parallel_state from megatron.core.inference.contexts.dynamic_context import ( @@ -31,7 +32,10 @@ from megatron.core.inference.text_generation_controllers.text_generation_controller import ( TextGenerationController, ) -from megatron.core.models.gpt.gpt_layer_specs import get_gpt_layer_local_spec +from megatron.core.models.gpt.gpt_layer_specs import ( + get_gpt_layer_local_spec, + get_gpt_layer_with_transformer_engine_spec, +) from megatron.core.models.gpt.gpt_model import GPTModel from megatron.core.tensor_parallel.random import model_parallel_cuda_manual_seed from megatron.core.transformer.cuda_graphs import CudaGraphManager, _CudagraphGlobalRecord @@ -89,6 +93,8 @@ class DynamicEngineTestConfig: # relevant to the test. The tests only check if the required # context attributes are set correctly. + fp8: bool = False + def __post_init__(self): # Compute max_sequence_length. @@ -239,7 +245,7 @@ def _build_test_env(cls, test_config): transformer_config = TransformerConfig( params_dtype=torch.bfloat16, num_layers=4, - hidden_size=32, + hidden_size=128 if test_config.fp8 else 32, num_attention_heads=4, use_cpu_initialization=True, cuda_graph_impl=( @@ -262,6 +268,12 @@ def _build_test_env(cls, test_config): inference_sampling_seed=test_config.random_seed, cuda_graph_scope=test_config.cuda_graph_scope, ) + if test_config.fp8: + transformer_config.fp8 = "hybrid" + transformer_config.fp8_recipe = "tensorwise" + layer_spec = get_gpt_layer_with_transformer_engine_spec() + else: + layer_spec = get_gpt_layer_local_spec() # Requests. requests = cls._build_requests(test_config) @@ -269,7 +281,7 @@ def _build_test_env(cls, test_config): # GPT model. model = GPTModel( config=transformer_config, - transformer_layer_spec=get_gpt_layer_local_spec(), + transformer_layer_spec=layer_spec, vocab_size=test_config.vocab_size, max_sequence_length=test_config.max_sequence_length, parallel_output=True, @@ -289,6 +301,7 @@ def _build_test_env(cls, test_config): fp32_residual_connection=False, params_dtype=transformer_config.params_dtype, padded_vocab_size=test_config.vocab_size, + fp8="hybrid" if test_config.fp8 else None, ) # Inference context. @@ -795,6 +808,25 @@ def test_parallel_inference( materialize_only_last_token_logits=materialize_only_last_token_logits, ) + @pytest.mark.internal + @pytest.mark.skipif( + not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" + ) + @pytest.mark.parametrize("materialize_only_last_token_logits", [False, True]) + def test_sequence_parallel_fp8_inference(self, materialize_only_last_token_logits: bool): + fp8_available, reason_for_no_fp8 = check_fp8_support() + if not fp8_available: + pytest.skip(reason_for_no_fp8) + + self._run_test( + min_prompt_length=19, + max_prompt_length=19, + tensor_model_parallel_size=4, + sequence_parallel=True, + materialize_only_last_token_logits=True, + fp8=True, + ) + @pytest.mark.internal @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" From 0f8fb9b3bb59e5422274e7158d886005ed2bba1e Mon Sep 17 00:00:00 2001 From: Asha Anoosheh Date: Fri, 7 Nov 2025 21:15:24 +0100 Subject: [PATCH 08/27] Replace ModelOpt generation server (#2147) Signed-off-by: Asha Anoosheh --- .../modelopt/generation_server.py | 198 ------------------ .../modelopt/generation_server.sh | 6 +- megatron/training/training.py | 23 +- tools/run_text_generation_server.py | 2 + 4 files changed, 16 insertions(+), 213 deletions(-) delete mode 100644 examples/post_training/modelopt/generation_server.py mode change 100644 => 100755 examples/post_training/modelopt/generation_server.sh diff --git a/examples/post_training/modelopt/generation_server.py b/examples/post_training/modelopt/generation_server.py deleted file mode 100644 index b32cca0d73f..00000000000 --- a/examples/post_training/modelopt/generation_server.py +++ /dev/null @@ -1,198 +0,0 @@ -# Copyright (c) 2025, NVIDIA CORPORATION. All rights reserved. - -"""Sample Generate""" -import os -import sys -import warnings -from functools import partial - -sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "../../../"))) -import os -import sys -from argparse import Namespace -from contextlib import nullcontext - -import torch - -from megatron.core import mpu -from megatron.core.inference.engines import AbstractEngine, StaticInferenceEngine -from megatron.core.inference.engines.abstract_engine import AbstractEngine -from megatron.core.inference.model_inference_wrappers.inference_wrapper_config import ( - InferenceWrapperConfig, -) -from megatron.core.inference.sampling_params import SamplingParams -from megatron.core.inference.text_generation_controllers.text_generation_controller import ( - TextGenerationController, -) -from megatron.core.transformer.module import MegatronModule -from megatron.inference.text_generation import beam_search_and_post_process -from megatron.inference.text_generation.mcore_engine_server import ( - ModelInferenceWrapperServer, - run_mcore_engine, -) -from megatron.inference.text_generation_server import MegatronServer -from megatron.post_training.arguments import add_modelopt_args -from megatron.training import get_args, get_model, get_tokenizer, print_rank_0 -from megatron.training.checkpointing import load_checkpoint -from megatron.training.initialize import initialize_megatron - - -def get_inference_engine(args: Namespace, model: MegatronModule) -> AbstractEngine: - """Get the relevant backend for running inference - - This function will automatically choose the TRTLLMBackend when possible, and default to Mcore - backend if the user does not specify any backends. TRTLLMBackend is not implmented yet. - - Args: - args (Namespace): The user arguments parsed from command line - model (MegatronModule): The megatron model. - - Returns: - AbstractBackend: The chosen backend - """ - tokenizer = get_tokenizer() - - inference_wrapper_config = InferenceWrapperConfig( - hidden_size=args.hidden_size, - inference_batch_times_seqlen_threshold=args.inference_batch_times_seqlen_threshold, - fp32_residual_connection=args.fp32_residual_connection, - params_dtype=args.params_dtype, - padded_vocab_size=args.padded_vocab_size, - inference_max_seq_length=args.inference_max_seq_length, - inference_max_requests=args.inference_max_batch_size, - nccl_all_reduce_for_prefill=args.nccl_all_reduce_for_prefill, - ) - - inference_wrapped_model = ModelInferenceWrapperServer(model, inference_wrapper_config) - text_generation_controller = TextGenerationController( - inference_wrapped_model=inference_wrapped_model, tokenizer=tokenizer - ) - return StaticInferenceEngine( - text_generation_controller=text_generation_controller, - max_batch_size=args.inference_max_batch_size, - ) - - -def add_text_generate_args(parser): - """Adds text generation arguments to parser.""" - group = parser.add_argument_group(title='text generation') - group.add_argument( - "--port", type=int, default=5000, help='port for text generation server to run on' - ) - group.add_argument("--temperature", type=float, default=1.0, help='Sampling temperature.') - group.add_argument("--top_k", type=int, default=1, help='Top k sampling.') - group.add_argument("--top_p", type=float, default=0.0, help='Top p sampling.') - group.add_argument( - "--return-log-probs", - action='store_true', - default=True, - help='Return the log probabilities of the final output tokens', - ) - group.add_argument( - "--num-tokens-to-generate", - type=int, - default=30, - help='Number of tokens to generate for each prompt', - ) - group.add_argument( - "--prompts", - metavar='N', - type=str, - nargs='+', - help='Input prompts with each prompt within quotes and seperated by space', - ) - group.add_argument( - "--max-batch-size", - type=int, - default=None, - help='Deprecated in favor of `--inference-max-batch-size`', - ) - add_modelopt_args(parser) - return parser - - -@torch.inference_mode() -def main(model_provider: str = "gpt"): - """Runs the text generation server with the specified model provider.""" - initialize_megatron( - extra_args_provider=add_text_generate_args, - args_defaults={ - 'no_load_rng': True, - 'no_load_optim': True, - 'exit_on_missing_checkpoint': True, - }, - ) - args = get_args() - if args.num_layers_per_virtual_pipeline_stage is not None: - print("Interleaved pipeline schedule is not yet supported for text generation.") - exit() - print_rank_0("WARNING: Forcing exit_on_missing_checkpoint to True for text " "generation.") - args.exit_on_missing_checkpoint = True - - # Set up model and load checkpoint - load_context = nullcontext() - if args.fp8: - from transformer_engine.pytorch.fp8 import fp8_model_init - - load_context = fp8_model_init() - with load_context: - - from megatron.post_training.model_builder import modelopt_gpt_mamba_builder - from model_provider import model_provider as root_model_provider - if model_provider == "gpt": - model = get_model(partial(root_model_provider, modelopt_gpt_mamba_builder), wrap_with_ddp=False) - elif model_provider == "mamba": - pass - else: - raise ValueError(f"Invalid model provider {model_provider}") - - if args.load is not None: - _ = load_checkpoint(model, None, None, strict=False) - - assert len(model) == 1, "Above condition should have caught this" - model = model[0] - model.eval() - - if args.max_batch_size is not None: - assert args.inference_max_batch_size is not None - args.inference_max_batch_size = max(args.inference_max_batch_size, args.max_batch_size) - warnings.warn( - "`--max-batch-size` has been deprecated in favor of `--inference-max-requests`, " - f"setting maximum batch size to {args.inference_max_batch_size}" - ) - - inference_engine = get_inference_engine(args, model) - - if args.cuda_graph_impl == "local": - print(f"Running warmup for CUDA graphs...") - inference_engine.generate( - prompts=["Test prompt"], sampling_params=SamplingParams(num_tokens_to_generate=10) - ) - - if ( - mpu.is_pipeline_first_stage() - and mpu.get_tensor_model_parallel_rank() == 0 - and mpu.get_expert_model_parallel_rank() == 0 - ): - server = MegatronServer(inference_engine, args) - server.run("0.0.0.0", port=args.port) - - while True: - choice = torch.tensor(1, dtype=torch.long, device='cuda') - torch.distributed.broadcast(choice, 0) - if choice.item() == 0: - try: - run_mcore_engine(inference_engine) - except ValueError as ve: - pass - elif choice.item() == 1: - try: - beam_search_and_post_process( - inference_engine.text_generation_controller.inference_wrapped_model.model - ) - except ValueError as ve: - pass - - -if __name__ == "__main__": - main(model_provider="gpt") diff --git a/examples/post_training/modelopt/generation_server.sh b/examples/post_training/modelopt/generation_server.sh old mode 100644 new mode 100755 index a4d7ff2dada..9acd61f3d04 --- a/examples/post_training/modelopt/generation_server.sh +++ b/examples/post_training/modelopt/generation_server.sh @@ -14,11 +14,9 @@ if [ -z ${MLM_MODEL_CKPT} ]; then exit 1 fi -if [ -z ${DRAFT_LEN} ]; then - DRAFT_LEN=0 -fi +TOOLS_DIR="$(realpath ${SCRIPT_DIR}/../../../tools)" -${LAUNCH_SCRIPT} ${SCRIPT_DIR}/generation_server.py \ +${LAUNCH_SCRIPT} ${TOOLS_DIR}/run_text_generation_server.py \ ${MODEL_ARGS} \ --tensor-model-parallel-size ${TP} \ --expert-tensor-parallel-size ${ETP} \ diff --git a/megatron/training/training.py b/megatron/training/training.py index 55cc6f00e41..d8b57326f67 100644 --- a/megatron/training/training.py +++ b/megatron/training/training.py @@ -855,6 +855,18 @@ def get_model(model_provider_func, model_type=ModelType.encoder_or_decoder, wrap args = get_args() args.model_type = model_type + if has_nvidia_modelopt: + from megatron.post_training.checkpointing import has_modelopt_state + # [ModelOpt]: Check if the checkpoint is a ModelOpt checkpoint and + # set a flag to use our model provider if so. + if args.load is not None and has_modelopt_state(args.load): + print_rank_0(f'ModelOpt checkpoint detected') + args.modelopt_enabled = True + elif getattr(args, "export_kd_teacher_load", None): + # For distillation ckpts without ModelOpt state + args.modelopt_enabled = True + + # Build model. def build_model(): if ( @@ -1081,17 +1093,6 @@ def setup_model_and_optimizer( timers = get_timers() one_logger = get_one_logger() - if has_nvidia_modelopt: - from megatron.post_training.checkpointing import has_modelopt_state - # [ModelOpt]: Check if the checkpoint is a ModelOpt checkpoint and - # set a flag to use our model provider if so. - if args.load is not None and has_modelopt_state(args.load): - print_rank_0(f'ModelOpt checkpoint detected') - args.modelopt_enabled = True - elif getattr(args, "export_kd_teacher_load", None): - # For distillation ckpts without ModelOpt state - args.modelopt_enabled = True - model = get_model(model_provider_func, model_type) unwrapped_model = unwrap_model(model) diff --git a/tools/run_text_generation_server.py b/tools/run_text_generation_server.py index fb5212f7649..350173dc16f 100644 --- a/tools/run_text_generation_server.py +++ b/tools/run_text_generation_server.py @@ -32,6 +32,7 @@ from megatron.core.inference.text_generation_server import MegatronServer from megatron.core.inference.text_generation_server.run_mcore_engine import run_mcore_engine from megatron.core.transformer.module import MegatronModule +from megatron.post_training.arguments import add_modelopt_args from megatron.training import get_model, print_rank_0 from model_provider import model_provider @@ -120,6 +121,7 @@ def add_text_generate_args(parser): default=None, help='Deprecated in favor of `--inference-max-batch-size`', ) + add_modelopt_args(parser) return parser From e07c4a4450b6faa187a1ef4ec082a35ad7d2f085 Mon Sep 17 00:00:00 2001 From: Keshav Santhanam Date: Fri, 7 Nov 2025 20:49:20 +0000 Subject: [PATCH 09/27] Add hybrid model support for dynamic inference engine (#1907) Signed-off-by: Keshav Santhanam Co-authored-by: Teodor-Dumitru Ene --- .../inference/gpt/gpt_dynamic_inference.py | 66 ++- examples/inference/gpt/utils.py | 3 + .../attention_context/mamba_metadata.py | 106 +++++ .../inference/contexts/dynamic_context.py | 220 ++++++++-- .../contexts/fused_kv_append_kernel.py | 4 +- .../core/inference/engines/dynamic_engine.py | 4 +- megatron/core/models/gpt/gpt_model.py | 4 +- megatron/core/models/mamba/mamba_model.py | 31 +- megatron/core/ssm/mamba_block.py | 41 +- .../core/ssm/mamba_hybrid_layer_allocation.py | 31 +- megatron/core/ssm/mamba_layer.py | 10 +- megatron/core/ssm/mamba_mixer.py | 358 +++++++++++++--- megatron/core/utils.py | 85 ++++ megatron/training/tokenizer/sft_tokenizer.py | 5 + .../contexts/test_dynamic_context.py | 373 +++++++++++++---- .../inference/engines/test_dynamic_engine.py | 389 ++++++++++++++---- tools/run_inference_performance_test.py | 115 +++--- 17 files changed, 1478 insertions(+), 367 deletions(-) create mode 100644 megatron/core/inference/contexts/attention_context/mamba_metadata.py diff --git a/examples/inference/gpt/gpt_dynamic_inference.py b/examples/inference/gpt/gpt_dynamic_inference.py index c456f7ea289..251aa100cba 100644 --- a/examples/inference/gpt/gpt_dynamic_inference.py +++ b/examples/inference/gpt/gpt_dynamic_inference.py @@ -11,7 +11,7 @@ from collections import defaultdict from functools import partial from tqdm import tqdm -from typing import Dict, List, Optional +from typing import Dict, List, Tuple, Optional import torch from tqdm import tqdm @@ -28,18 +28,21 @@ from megatron.core.inference.text_generation_controllers.text_generation_controller import ( TextGenerationController, ) +from megatron.core.ssm.mamba_hybrid_layer_allocation import Symbols from megatron.core.tokenizers.text.utils.build_tokenizer import build_tokenizer from megatron.core.transformer.module import MegatronModule +from megatron.core.utils import get_attr_wrapped_model sys.path.append( os.path.abspath(os.path.join(os.path.dirname(__file__), os.path.pardir, os.path.pardir)) ) from megatron.training import get_args, get_model as _get_model, get_tokenizer, initialize_megatron from megatron.training.checkpointing import load_checkpoint - -from megatron.core.utils import configure_nvtx_profiling from model_provider import model_provider from gpt_builders import gpt_builder +from mamba_builders import mamba_builder + +from megatron.core.utils import configure_nvtx_profiling import json @@ -54,7 +57,6 @@ from megatron.training import get_model as _get_model from megatron.training import get_tokenizer, initialize_megatron from megatron.training.checkpointing import load_checkpoint -from pretrain_gpt import model_provider import torch import io @@ -86,9 +88,16 @@ def get_model() -> MegatronModule: args = get_args() + if args.model_provider == "gpt": + model_builder = gpt_builder + elif args.model_provider == "mamba": + model_builder = mamba_builder + else: + raise ValueError(f"Invalid model provider {args.model_provider}") + # Build model. model = _get_model( - partial(model_provider, gpt_builder), + partial(model_provider, model_builder), wrap_with_ddp=False ) @@ -115,7 +124,10 @@ def get_model() -> MegatronModule: def get_inference_context( requests: List[Request], sampling_params: Optional[SamplingParams] = None, - calculate_max_sequence_length_from_requests: bool = True + calculate_max_sequence_length_from_requests: bool = True, + layer_type_list: Optional[List[str]] = None, + mamba_conv_states_shape: Optional[Tuple[int]] = None, + mamba_ssm_states_shape: Optional[Tuple[int]] = None, ): """The inference context manages the KV cache and other inference state.""" @@ -154,6 +166,9 @@ def get_inference_context( max_tokens_override=args.inference_dynamic_batching_max_tokens_override, tensor_model_parallel_size=args.tensor_model_parallel_size, materialize_only_last_token_logits=not args.return_log_probs, + layer_type_list=layer_type_list, + mamba_conv_states_shape=mamba_conv_states_shape, + mamba_ssm_states_shape=mamba_ssm_states_shape, cache_mla_latent=args.multi_latent_attention and args.cache_mla_latents, kv_lora_rank=args.kv_lora_rank if args.multi_latent_attention else None, qk_pos_emb_head_dim=args.qk_pos_emb_head_dim, @@ -364,21 +379,38 @@ def main(): termination_id=args.termination_id if args.termination_id is not None else tokenizer.eod, ) - # Requests, context, conroller. model = get_model() + + # Layer type list for hybrid models + decoder = get_attr_wrapped_model(model, "decoder") + layer_type_list = getattr(decoder, "layer_type_list", None) + if layer_type_list is not None and Symbols.MAMBA in layer_type_list: + (mamba_conv_states_shape, mamba_ssm_states_shape) = decoder.mamba_state_shapes_per_request() + else: + mamba_conv_states_shape = None + mamba_ssm_states_shape = None + + # Requests, context, controller. requests = build_requests(args, tokenizer, sampling_params) - context = get_inference_context(requests, sampling_params) + context = get_inference_context( + requests, + sampling_params, + layer_type_list=layer_type_list, + mamba_conv_states_shape=mamba_conv_states_shape, + mamba_ssm_states_shape=mamba_ssm_states_shape, + ) controller = get_inference_controller(model, context) # Validate all context_length's <= max_tokens. - invalid_prompt_length_map = {} - for request_idx, request in enumerate(requests): - if len(request.prompt_tokens) > context.max_tokens: - invalid_prompt_length_map[request_idx] = len(request.prompt_tokens) - assert not invalid_prompt_length_map, ( - "request idxs with prompts longer than context.max_tokens: " - ", ".join(f"{k}({v})" for k, v in invalid_prompt_length_map.items()) - ) + if args.disable_chunked_prefill: + invalid_prompt_length_map = {} + for request_idx, request in enumerate(requests): + if len(request.prompt_tokens) > context.max_tokens: + invalid_prompt_length_map[request_idx] = len(request.prompt_tokens) + assert not invalid_prompt_length_map, ( + "request idxs with prompts longer than context.max_tokens: " + ", ".join(f"{k}({v})" for k, v in invalid_prompt_length_map.items()) + ) # Inference engine. engine = DynamicInferenceEngine( @@ -418,8 +450,8 @@ def main(): ) # Print unique prompts + outputs. - if torch.distributed.get_rank() == 0: + if torch.distributed.get_rank() == 0: def escape_str(s): return s.replace("\n", "\\n") diff --git a/examples/inference/gpt/utils.py b/examples/inference/gpt/utils.py index baa25787e83..0ea1f5a3df0 100644 --- a/examples/inference/gpt/utils.py +++ b/examples/inference/gpt/utils.py @@ -222,6 +222,9 @@ def arrival(r): if len(time_offsets) == 0: time_offsets = [0.0] + # Ensure first time is 0. + time_offsets = [to - time_offsets[0] for to in time_offsets] + # Truncate to num_requests. assert len(time_offsets) >= num_requests time_offsets = time_offsets[:num_requests] diff --git a/megatron/core/inference/contexts/attention_context/mamba_metadata.py b/megatron/core/inference/contexts/attention_context/mamba_metadata.py new file mode 100644 index 00000000000..e9cd99a6c48 --- /dev/null +++ b/megatron/core/inference/contexts/attention_context/mamba_metadata.py @@ -0,0 +1,106 @@ +# Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. + +import torch + + +class MambaMetadata: + """Manages the metadata tensors required for Mamba layers during inference.""" + + def __init__(self, max_requests: int): + """ + Initializes the Mamba slot allocator. + + Args: + max_requests (int): The maximum number of concurrent requests. + """ + self.max_requests = max_requests + + # Metadata for mapping requests to slots in the static Mamba state buffer + self.request_to_mamba_state_idx = torch.full( + (self.max_requests,), -1, dtype=torch.int32, device=torch.cuda.current_device() + ) + + # Separate mapping used only for CUDA graph compatibility + self.request_to_mamba_state_idx_cudagraph_only = torch.full( + (self.max_requests,), -1, dtype=torch.int32, device=torch.cuda.current_device() + ) + + # Allocator for Mamba state slots + self.mamba_state_free_slots = torch.arange( + self.max_requests, dtype=torch.int32, device=torch.cuda.current_device() + ) + self.mamba_state_free_slot_count = self.max_requests + + def reset(self) -> None: + """ + Resets all Mamba states and frees all allocated slots. + """ + self.request_to_mamba_state_idx.fill_(-1) + self.request_to_mamba_state_idx_cudagraph_only.fill_(-1) + + # Re-initialize the free slot pool + self.mamba_state_free_slots = torch.arange( + self.max_requests, dtype=torch.int32, device=torch.cuda.current_device() + ) + self.mamba_state_free_slot_count = self.max_requests + + def reset_cudagraph_mapping(self) -> None: + """ + Resets only the CUDA graph mapping tensor. + """ + self.request_to_mamba_state_idx_cudagraph_only.fill_(-1) + + def update_cudagraph_mapping( + self, active_mamba_indices: torch.Tensor, num_active_requests: int + ) -> None: + """ + Updates the dedicated CUDA graph mapping tensor with the indices + of currently active requests. + + Args: + active_mamba_indices (Tensor): Tensor containing the Mamba slot indices + for active requests. + num_active_requests (int): The number of active requests. + """ + self.request_to_mamba_state_idx_cudagraph_only[0:num_active_requests] = active_mamba_indices + + def allocate_slot(self) -> int: + """ + Allocates a new slot for a request in the Mamba state buffers. + + Returns: + int: The index of the allocated slot. + Returns None if no slots are available. + """ + if self.mamba_state_free_slot_count == 0: + return None + + # Get a free slot + self.mamba_state_free_slot_count -= 1 + mamba_idx = self.mamba_state_free_slots[self.mamba_state_free_slot_count] + + return mamba_idx + + def free_slots(self, request_indices: torch.Tensor) -> None: + """ + Frees the Mamba state slots associated with the given request indices. + + Args: + request_indices (Tensor): A 1D tensor of request indices to free. + """ + # Get the Mamba state indices for finished requests + mamba_indices_to_free = self.request_to_mamba_state_idx[request_indices] + + # Filter out any invalid indices (e.g., -1) + mamba_indices_to_free = mamba_indices_to_free[mamba_indices_to_free != -1] + num_to_free = len(mamba_indices_to_free) + + if num_to_free > 0: + # Add the freed indices back to the free slot pool + start_idx = self.mamba_state_free_slot_count + end_idx = start_idx + num_to_free + self.mamba_state_free_slots[start_idx:end_idx] = mamba_indices_to_free + self.mamba_state_free_slot_count = end_idx + + # Invalidate the Mamba state index for the finished requests + self.request_to_mamba_state_idx[request_indices] = -1 diff --git a/megatron/core/inference/contexts/dynamic_context.py b/megatron/core/inference/contexts/dynamic_context.py index d6cc2598998..000b58200f8 100644 --- a/megatron/core/inference/contexts/dynamic_context.py +++ b/megatron/core/inference/contexts/dynamic_context.py @@ -23,9 +23,14 @@ from megatron.core.inference.utils import tensor_swap from megatron.core.models.common.embeddings.rope_utils import apply_rotary_pos_emb from megatron.core.package_info import __version__ as mcore_version +from megatron.core.ssm.mamba_hybrid_layer_allocation import ( + Symbols, + get_layer_maps_from_layer_type_list, +) from megatron.core.transformer import TransformerConfig from megatron.core.utils import divide as core_divide +from .attention_context.mamba_metadata import MambaMetadata from .attention_context.mha_metadata import GraphedMHAMetadata, NonGraphedMHAMetadata from .base_context import BaseInferenceContext from .dynamic_block_allocator import BlockAllocator @@ -227,8 +232,17 @@ class DynamicInferenceContext(BaseInferenceContext): where the cuda graph batch sizes range from 1 to `max_requests` (as computed below). Due to rounding, the actual number of cuda graphs may not equal this argument. - materialize_only_last_token_logits (bool): If True, only the last token logits - are materialized in the context. + materialize_only_last_token_logits (Optional[bool]): Whether to only + materialize logits for the last token. This should be set to False + if returning log probs. + layer_type_list (Optional[List[str]]): A list of strings that indicates + the layer type (Mamba / Attention / MLP) for each layer. + See `megatron/core/ssm/mamba_hybrid_layer_allocation.py` for the list + of symbols. This must be provided for hybrid models. + mamba_conv_states_shape: (Optional[Tuple[int]]): Mamba conv states shape per request. + This must be provided for hybrid models. + mamba_ssm_states_shape: (Optional[Tuple[int]]): Mamba ssm states shape per request. + This must be provided for hybrid models. use_cuda_graphs_for_non_decode_steps (bool): If True, use cuda graphs for non-decode engine steps. unified_memory_level (Optional[int]): Set unified memory usage within the @@ -259,7 +273,10 @@ def __init__( kv_lora_rank: Optional[int] = None, qk_pos_emb_head_dim: Optional[int] = None, num_cuda_graphs: Optional[int] = None, - materialize_only_last_token_logits: bool = True, + materialize_only_last_token_logits: Optional[bool] = True, + layer_type_list: Optional[List[str]] = None, + mamba_conv_states_shape: Optional[Tuple[int]] = None, + mamba_ssm_states_shape: Optional[Tuple[int]] = None, use_cuda_graphs_for_non_decode_steps: bool = True, use_flashinfer_fused_rope: bool = False, unified_memory_level: Optional[int] = 0, @@ -283,6 +300,41 @@ def __init__( tp_size = tensor_model_parallel_size hidden_size_per_attention_head = core_divide(projection_size, num_attention_heads) num_attention_heads_per_partition = core_divide(num_attention_heads, tp_size) + + # Mamba states. + self.is_hybrid_model = layer_type_list is not None and Symbols.MAMBA in layer_type_list + if self.is_hybrid_model: + assert ( + mamba_conv_states_shape is not None + ), "`mamba_conv_states_shape` must be specified for hybrid models" + assert ( + mamba_ssm_states_shape is not None + ), "`mamba_ssm_states_shape` must be specified for hybrid models" + assert ( + not use_cuda_graphs_for_non_decode_steps + ), "Non-decode CUDA graphs not yet supported for hybrid models" + + # For hybrid models, the layer map converts the global layer index to the + # corresponding attention layer index or Mamba layer index depending on the + # layer type. + attention_layer_map, mamba_layer_map, _ = get_layer_maps_from_layer_type_list( + layer_type_list + ) + self.num_attention_layers = len(attention_layer_map) + self.num_mamba_layers = len(mamba_layer_map) + self.layer_map = attention_layer_map | mamba_layer_map + else: + # The layer map is the identity function for pure Transformer models. + self.num_attention_layers = num_layers + self.num_mamba_layers = 0 + (mamba_conv_states_shape, mamba_ssm_states_shape) = (None, None) + self.layer_map = {i: i for i in range(self.num_attention_layers)} + + if self.num_attention_layers == 0: + raise NotImplementedError( + f"Using `DynamicInferenceContext` with no attention is not supported." + ) + # Block size tokens, bytes. dtype_size_bytes = params_dtype.itemsize self.block_size_tokens = block_size_tokens @@ -297,24 +349,38 @@ def __init__( self.block_size_bytes = ( dtype_size_bytes * 2 # key, value - * num_layers + * self.num_attention_layers * self.block_size_tokens * num_attention_heads_per_partition * hidden_size_per_attention_head ) + assert self.block_size_bytes > 0 # Adjust buffer to be a multiple of block size. buffer_size_bytes = int(buffer_size_gb * 1024**3) buffer_size_bytes_rem = buffer_size_bytes % self.block_size_bytes buffer_size_bytes = buffer_size_bytes - buffer_size_bytes_rem - # Compute max_requets, max_tokens from buffer size and overflow factor. + mamba_states_memory_per_request = 0 + if self.is_hybrid_model: + mamba_states_memory_per_request += math.prod(mamba_conv_states_shape) + mamba_states_memory_per_request += math.prod(mamba_ssm_states_shape) + mamba_states_memory_per_request *= self.num_mamba_layers + mamba_states_memory_per_request *= dtype_size_bytes + + # Compute max_requets, max_tokens from buffer size, overflow factor, and Mamba state size. def bytes_to_max_requests_and_tokens(n_bytes): - n_tokens = n_bytes / self.block_size_bytes * self.block_size_tokens - n_requests = n_tokens / max_sequence_length - return self.round_up_requests(int(n_requests), tp_size=tp_size), self.round_up_tokens( - int(n_tokens), tp_size=tp_size + bytes_per_token = self.block_size_bytes / self.block_size_tokens + cost_per_request_bytes = ( + mamba_states_memory_per_request + max_sequence_length * bytes_per_token ) + # TODO(ksanthanam): Leave room for an extra request in the event of padding + # for non-decode CUDA graphs + n_requests = n_bytes / cost_per_request_bytes + n_tokens = n_requests * max_sequence_length + n_requests = self.round_up_requests(int(n_requests), tp_size=tp_size) + n_tokens = self.round_up_tokens(int(n_tokens), tp_size=tp_size) + return n_requests, n_tokens self.max_requests, self.max_tokens = bytes_to_max_requests_and_tokens(buffer_size_bytes) if buffer_overflow_factor is not None: @@ -339,7 +405,6 @@ def bytes_to_max_requests_and_tokens(n_bytes): # Initialize context state. self.params_dtype = params_dtype - self.num_layers = num_layers self.max_sequence_length = max_sequence_length # Unified memory. @@ -390,8 +455,11 @@ def bytes_to_max_requests_and_tokens(n_bytes): self.token_to_position_in_request = torch.empty_like(self.token_to_input_ids) self.token_to_local_position_within_kv_block = torch.empty_like(self.token_to_input_ids) - # Calculate the total number of blocks available in the buffer - block_count_total = buffer_size_bytes // self.block_size_bytes + # Calculate the total number of chunks available in the buffer + total_mamba_states_memory = mamba_states_memory_per_request * self.max_requests + block_count_total = ( + max(0, buffer_size_bytes - total_mamba_states_memory) // self.block_size_bytes + ) # Memory buffer. ctx_manager = ( @@ -402,7 +470,12 @@ def bytes_to_max_requests_and_tokens(n_bytes): with ctx_manager: if cache_mla_latent: self.memory_buffer = torch.full( - (self.num_layers, block_count_total, self.block_size_tokens, kv_reduced_dim), + ( + self.num_attention_layers, + block_count_total, + self.block_size_tokens, + kv_reduced_dim, + ), -1, dtype=self.params_dtype, device=torch.cuda.current_device(), @@ -411,7 +484,7 @@ def bytes_to_max_requests_and_tokens(n_bytes): self.memory_buffer = torch.full( ( 2, # key and value - self.num_layers, + self.num_attention_layers, block_count_total, self.block_size_tokens, num_attention_heads_per_partition, @@ -516,14 +589,34 @@ def bytes_to_max_requests_and_tokens(n_bytes): block_count_total=block_count_total, gtd_block_count=self.gtd_block_count ) + # Optional state tensors for hybrid models + if self.is_hybrid_model: + self.mamba_metadata = MambaMetadata(max_requests=self.max_requests) + + with ctx_manager: + self.mamba_conv_states = torch.zeros( + (self.num_mamba_layers, self.max_requests) + mamba_conv_states_shape, + dtype=self.params_dtype, + device=torch.cuda.current_device(), + ) + self.mamba_ssm_states = torch.zeros( + (self.num_mamba_layers, self.max_requests) + mamba_ssm_states_shape, + dtype=self.params_dtype, + device=torch.cuda.current_device(), + ) + + else: + self.mamba_metadata = None + # Store the dummy block idx reference for convenience self.dummy_block_idx = self.block_allocator.dummy_block_idx # Deal with chunked prefill self.chunked_prefill_request_id = -1 - # Reset attention state. + # Reset attention and Mamba state. self.reset_attention_state() + self.reset_mamba_state() if use_flashinfer_fused_rope is True: assert HAVE_FLASHINFER, "flashinfer is not installed" @@ -628,7 +721,8 @@ def is_decode_only(self) -> bool: """Test if all active requests are in decode phase. For a request in prefill phase active_tokens = query length - Once the request moves to decode phase active tokens is 1 for that request. So if all active requests are in decode phase, they will be equal to active token count. + Once the request moves to decode phase active tokens is 1 for that request. + So if all active requests are in decode phase, they will be equal to active token count. """ total_active_requests = self.total_request_count - self.paused_request_count return total_active_requests == self.active_token_count @@ -664,11 +758,7 @@ def get_max_sequence_lengths(self) -> Tensor: def get_active_request_count(self): """Returns the current number of active requests.""" - active_sequence_lengths = self.get_active_sequence_lengths() - max_sequence_lengths = self.get_max_sequence_lengths() - active_requests_mask = torch.less(active_sequence_lengths, max_sequence_lengths).byte() - active_request_count = (active_requests_mask == 1).sum().item() - return active_request_count + return self.total_request_count - self.paused_request_count def append_key_value_cache(self, layer_number: int, key: Tensor, value: Tensor) -> None: """Append to KV cache. @@ -678,10 +768,12 @@ def append_key_value_cache(self, layer_number: int, key: Tensor, value: Tensor) key (Tensor): Key tensor. value (Tensor): Value tensor. """ + attention_layer_number = self.layer_map[layer_number - 1] + if triton_append_key_value_cache is not None and not self.cache_mla_latent: # currently does not support MLA latent cache return triton_append_key_value_cache( - layer_number=layer_number, + layer_number=attention_layer_number, key=key, value=value, memory_buffer=self.memory_buffer, @@ -706,14 +798,14 @@ def append_key_value_cache(self, layer_number: int, key: Tensor, value: Tensor) if self.cache_mla_latent: # We pass the kv_concat as the key in cache_mla_latent kv_concat = key - self.memory_buffer[layer_number - 1, block_idx, local_kv_seq_idx] = kv_concat[ + self.memory_buffer[attention_layer_number, block_idx, local_kv_seq_idx] = kv_concat[ : self.padded_active_token_count ] else: - self.memory_buffer[0, layer_number - 1, block_idx, local_kv_seq_idx] = key[ + self.memory_buffer[0, attention_layer_number, block_idx, local_kv_seq_idx] = key[ : self.padded_active_token_count ] - self.memory_buffer[1, layer_number - 1, block_idx, local_kv_seq_idx] = value[ + self.memory_buffer[1, attention_layer_number, block_idx, local_kv_seq_idx] = value[ : self.padded_active_token_count ] @@ -727,19 +819,30 @@ def key_value_cache(self, layer_number: int) -> Tuple[Tensor, Tensor]: (Tuple[Tensor, Tensor]) The key and value pointer tensors that point to blocks within the block-level memory buffer. """ + attention_layer_number = self.layer_map[layer_number - 1] if self.cache_mla_latent: return ( - self.memory_buffer[layer_number - 1], + self.memory_buffer[attention_layer_number], None, self.active_attn_metadata["mha_metadata"].state_data["block_table"], ) else: return ( - self.memory_buffer[0, layer_number - 1], - self.memory_buffer[1, layer_number - 1], + self.memory_buffer[0, attention_layer_number], + self.memory_buffer[1, attention_layer_number], self.active_attn_metadata["mha_metadata"].state_data["block_table"], ) + def mamba_states_cache(self, layer_number: int) -> Tuple[Tensor, Tensor]: + """Returns the Mamba state tensors for the given layer.""" + assert self.is_hybrid_model, "Only hybrid models have Mamba state tensors" + + mamba_layer_number = self.layer_map[layer_number - 1] + conv_state = self.mamba_conv_states[mamba_layer_number] + ssm_state = self.mamba_ssm_states[mamba_layer_number] + + return (conv_state, ssm_state) + def apply_fused_qk_rotary_emb( self, query: Tensor, key: Tensor, cos_sin_emb: Tensor, config: TransformerConfig ) -> Tuple[Tensor, Tensor]: @@ -854,6 +957,16 @@ def reset_attention_state(self) -> None: attn_metadata.reset() self.active_attn_metadata = None + if self.is_hybrid_model: + self.mamba_metadata.reset_cudagraph_mapping() + + def reset_mamba_state(self) -> None: + """Reset state used within Mamba layers.""" + if self.is_hybrid_model: + self.mamba_conv_states.fill_(0) + self.mamba_ssm_states.fill_(0) + self.mamba_metadata.reset() + def using_cuda_graph_this_step(self) -> bool: """Returns True if cuda graphs are being used for this step.""" has_cuda_graphs = self.cuda_graph_token_counts is not None @@ -977,6 +1090,17 @@ def initialize_attention_state( ) # All attention metadata calculations are now handled by MHAMetadata.update() + # Create Mamba state block table if it's a hybrid model + if self.is_hybrid_model: + active_mamba_indices = self.mamba_metadata.request_to_mamba_state_idx[ + self.paused_request_count : self.total_request_count + ] + + if self.is_decode_only() or self.using_cuda_graph_this_step(): + self.mamba_metadata.update_cudagraph_mapping( + active_mamba_indices, self.total_request_count - self.paused_request_count + ) + def reset(self) -> None: """Reset entire context. @@ -1018,15 +1142,13 @@ def reset(self) -> None: # Reset available block count. self.reset_attention_state() + self.reset_mamba_state() self.block_allocator.reset() self.request_to_kv_block_ids.fill_(-1) # Reset chunked prefill state self.chunked_prefill_request_id = -1 - # Reset chunked prefill state - self.chunked_prefill_request_id = -1 - def current_input_and_position_ids( self, *, num_warmup_tokens: Optional[int] = None ) -> Tuple[Tensor, Tensor]: @@ -1198,6 +1320,18 @@ def add_request(self, req: DynamicInferenceRequest, chunk_length: Optional[int] self.token_to_local_position_within_kv_block[ self.active_token_count : self.active_token_count + chunk_length ] = (token_offset_range % self.block_size_tokens) + + if self.is_hybrid_model and not is_chunked_prefill: + # Allocate a slot for Mamba states + mamba_idx = self.mamba_metadata.allocate_slot() + if mamba_idx is None: + raise ContextOverflowError(req.request_id, "No Mamba slots available") + + # Initialize the allocated Mamba state + self.mamba_conv_states[:, mamba_idx] = 0.0 + self.mamba_ssm_states[:, mamba_idx] = 0.0 + self.mamba_metadata.request_to_mamba_state_idx[self.total_request_count] = mamba_idx + self.active_token_count += chunk_length self.total_request_count += 0 if req.finished_chunk_token_count > 0 else 1 @@ -1216,6 +1350,11 @@ def _move_book_keeping_tensors(self, src_idxs, dst_idxs, next_tokens): self.request_last_kv_block_id[dst_idxs] = self.request_last_kv_block_id[src_idxs] self.request_last_kv_block_offset[dst_idxs] = self.request_last_kv_block_offset[src_idxs] + if self.is_hybrid_model: + self.mamba_metadata.request_to_mamba_state_idx[dst_idxs] = ( + self.mamba_metadata.request_to_mamba_state_idx[src_idxs] + ) + def _swap_book_keeping_tensors(self, src_idxs, dst_idxs, next_tokens): """ Swaps all the relevent booking tensors with src idxs to dst idxs @@ -1230,6 +1369,9 @@ def _swap_book_keeping_tensors(self, src_idxs, dst_idxs, next_tokens): tensor_swap(self.request_last_kv_block_id, src_idxs, dst_idxs) tensor_swap(self.request_last_kv_block_offset, src_idxs, dst_idxs) + if self.is_hybrid_model: + tensor_swap(self.mamba_metadata.request_to_mamba_state_idx, src_idxs, dst_idxs) + # TODO: see if we can compile this function def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> Tensor: """Update context state after calling engine.step(). @@ -1301,10 +1443,17 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T non_zero_values_in_kv_memory = kv_blocks_assigned[kv_blocks_assigned != -1] self.block_allocator.release_memory_blocks(non_zero_values_in_kv_memory) + if self.is_hybrid_model: + self.mamba_metadata.free_slots(finished_idxs) + # Reset request/token counts. self.request_to_kv_block_ids.fill_(-1) self.total_request_count = 0 self.active_token_count = 0 + + # Reset Mamba state. + self.reset_mamba_state() + return # 3. Concatenate the paused tokens to the active tokens if present. @@ -1332,6 +1481,10 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T # and updates it instead of the original tensor. self.request_to_kv_block_ids[finished_idxs] = -1 + if self.is_hybrid_model: + # Get the Mamba state indices for finished requests and free them + self.mamba_metadata.free_slots(finished_idxs) + if active_request_count > 0: finished_idxs_on_left = ( torch.nonzero(active_requests_mask[:active_request_count] == 0, as_tuple=True)[ @@ -1351,8 +1504,10 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T next_tokens=next_tokens, ) - # Reset block ids for recently moved requests. + # Reset chunk ids for recently moved requests. self.request_to_kv_block_ids[active_idxs_on_right] = -1 + if self.is_hybrid_model: + self.mamba_metadata.request_to_mamba_state_idx[active_idxs_on_right] = -1 # 5. We identify requests that require a new block and add them to the paused requests (i.e move them left) :- # a) Put requests that have filled their current block and require a new one in a pause state temporarily @@ -1450,6 +1605,7 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T # 7. We make changes to the request book keeping tesnsors and setup the tokens for next iteration self.total_request_count = active_request_count + self.paused_request_count + # All these active requests are in decode phase, so they need only 1 token per request self.active_token_count = active_request_count # Always the first section of token input ids are only used. diff --git a/megatron/core/inference/contexts/fused_kv_append_kernel.py b/megatron/core/inference/contexts/fused_kv_append_kernel.py index 2078878c8f4..db1eed456e1 100644 --- a/megatron/core/inference/contexts/fused_kv_append_kernel.py +++ b/megatron/core/inference/contexts/fused_kv_append_kernel.py @@ -119,8 +119,8 @@ def triton_append_key_value_cache( _, num_heads, h_dim = key.shape - key_cache = memory_buffer[0, layer_number - 1] - value_cache = memory_buffer[1, layer_number - 1] + key_cache = memory_buffer[0, layer_number] + value_cache = memory_buffer[1, layer_number] key_to_cache = key[:n_tokens] value_to_cache = value[:n_tokens] diff --git a/megatron/core/inference/engines/dynamic_engine.py b/megatron/core/inference/engines/dynamic_engine.py index bcde4f9894d..2c43a7e2611 100644 --- a/megatron/core/inference/engines/dynamic_engine.py +++ b/megatron/core/inference/engines/dynamic_engine.py @@ -702,7 +702,7 @@ def schedule_chunked_prefill(self): # is_continuing_chunked_prefill is True if we are scheduling next # chunk of a existing chunked prefill request - is_continuing_chunked_prefill = self.context.chunked_prefill_request_id > 0 + is_continuing_chunked_prefill = self.context.chunked_prefill_request_id >= 0 # Use remaining prompt tokens for scheduling decisions remaining_len = len(req.remaining_prompt_tokens) @@ -939,7 +939,7 @@ def generate( result = self.step_modern() finished_requests_list.extend(result["finished_requests"]) - # Ensure requests are returned in the same order they were passed in. + # Ensure requests are returned in the same order they were passed in finished_requests_list.sort(key=lambda x: x.request_id) return finished_requests_list diff --git a/megatron/core/models/gpt/gpt_model.py b/megatron/core/models/gpt/gpt_model.py index dbc5a88fc81..25546d36629 100644 --- a/megatron/core/models/gpt/gpt_model.py +++ b/megatron/core/models/gpt/gpt_model.py @@ -588,8 +588,6 @@ def _postprocess( # Perform the sequence parallel gather here instead of after the output layer # because we need to slice the last token logits from the full view of the # packed logits across all requests. - # TODO(ksanthanam): Make the equivalent change in the `MambaModel` code after - # merging in !3722. hidden_states = gather_from_sequence_parallel_region( hidden_states, group=self.pg_collection.tp ) @@ -597,7 +595,7 @@ def _postprocess( sequence_parallel_override = True # Reshape [B, 1, H] to [1, B, H] → extract each sample’s true last‐token hidden - # state ([B, H]) → unsqueeze back to [1, B, H] + # state ([B, H]) → unsqueeze back to [B, 1, H] # (so that the output layer, which expects S×B×H, receives only the final token) hidden_states = inference_context.last_token_logits( hidden_states.squeeze(1).unsqueeze(0) diff --git a/megatron/core/models/mamba/mamba_model.py b/megatron/core/models/mamba/mamba_model.py index fb3df5e23f2..378cf7e47d6 100644 --- a/megatron/core/models/mamba/mamba_model.py +++ b/megatron/core/models/mamba/mamba_model.py @@ -12,6 +12,7 @@ from megatron.core.models.common.language_module.language_module import LanguageModule from megatron.core.process_groups_config import ProcessGroupCollection from megatron.core.quantization.utils import get_quant_config_or_none +from megatron.core.tensor_parallel import gather_from_sequence_parallel_region from megatron.core.transformer import TransformerConfig from megatron.core.transformer.enums import ModelType from megatron.core.transformer.spec_utils import ModuleSpec, build_module @@ -244,13 +245,41 @@ def forward( if self.share_embeddings_and_output_weights: output_weight = self.shared_embedding_or_output_weight() + sequence_parallel_override = False if in_inference_mode and inference_context.materialize_only_last_token_logits: - hidden_states = hidden_states[-1, :, :].unsqueeze(0) + if inference_context.is_static_batching(): + hidden_states = hidden_states[-1:, :, :] + else: + if self.output_layer.sequence_parallel: + # Perform the sequence parallel gather here instead of after the output layer + # because we need to slice the last token logits from the full view of the + # packed logits across all requests. + hidden_states = gather_from_sequence_parallel_region( + hidden_states, group=self.pg_collection.tp + ) + self.output_layer.sequence_parallel = False + sequence_parallel_override = True + + # Reshape [B, 1, H] to [1, B, H] → extract each sample’s true last‐token hidden + # state ([B, H]) → unsqueeze back to [B, 1, H] + # (so that the output layer, which expects S×B×H, receives only the final token) + hidden_states = inference_context.last_token_logits( + hidden_states.squeeze(1).unsqueeze(0) + ).unsqueeze(1) logits, _ = self.output_layer( hidden_states, weight=output_weight, runtime_gather_output=runtime_gather_output ) + # Restore sequence parallel execution to the output layer if necessary. + if sequence_parallel_override: + assert ( + in_inference_mode + and inference_context.is_dynamic_batching() + and inference_context.materialize_only_last_token_logits + ) + self.output_layer.sequence_parallel = True + if labels is None: # [s b h] => [b s h] return logits.transpose(0, 1).contiguous() diff --git a/megatron/core/ssm/mamba_block.py b/megatron/core/ssm/mamba_block.py index 01b9f4eac66..7d8ca74c8f2 100644 --- a/megatron/core/ssm/mamba_block.py +++ b/megatron/core/ssm/mamba_block.py @@ -9,7 +9,7 @@ from contextlib import nullcontext from dataclasses import dataclass from functools import partial -from typing import Optional, Union +from typing import Optional, Tuple, Union import torch from torch import Tensor, nn @@ -147,7 +147,7 @@ def __init__( self.hybrid_mlp_ratio = hybrid_mlp_ratio self.hybrid_override_pattern = hybrid_override_pattern - layer_type_list = allocate_layers( + self.layer_type_list = allocate_layers( self.config.num_layers, self.hybrid_attention_ratio, self.hybrid_mlp_ratio, @@ -156,12 +156,12 @@ def __init__( pp_layer_offset = 0 if self.pp_group.size() > 1: - pp_layer_offset, layer_type_list = self._select_layers_for_pipeline_parallel( - layer_type_list + pp_layer_offset, self.layer_type_list = self._select_layers_for_pipeline_parallel( + self.layer_type_list ) self.layers = nn.ModuleList() - for i, layer_type in enumerate(layer_type_list): + for i, layer_type in enumerate(self.layer_type_list): fp8_init_context = get_fp8_context(self.config, i + pp_layer_offset, is_init=True) with fp8_init_context: if layer_type == LayerSymbols.MAMBA: @@ -224,22 +224,6 @@ def _select_layers_for_pipeline_parallel(self, layer_type_list): return offset, selected_list - def allocate_inference_cache(self, batch_size, max_seqlen, dtype=None): - """ - Allocate inference cache for each layer. - - Args: - batch_size (int): The batch size to use for inference. - max_seqlen (int): The maximum sequence length to use - for inference. - dtype (optional): The data type to use for allocation. - Defaults to the data type of the model. - """ - return { - i: layer.allocate_inference_cache(batch_size, max_seqlen, dtype=dtype) - for i, layer in enumerate(self.layers) - } - def set_input_tensor(self, input_tensor: Tensor): """Set input tensor to be used instead of forward()'s input. @@ -250,6 +234,16 @@ def set_input_tensor(self, input_tensor: Tensor): forward_step_func""" self.input_tensor = input_tensor + def mamba_state_shapes_per_request(self) -> Optional[Tuple[Tuple[int], Tuple[int]]]: + """ + Returns the Mamba conv and ssm states shapes per input sequence + if this block contains Mamba layers (this may not be the case with PP > 1). + """ + for layer_type, layer in zip(self.layer_type_list, self.layers): + if layer_type == LayerSymbols.MAMBA: + return layer.mamba_state_shapes_per_request() + return None + def forward( self, hidden_states: Union[Tensor, WrappedTensor], @@ -287,10 +281,7 @@ def forward( if isinstance(hidden_states, WrappedTensor): hidden_states = hidden_states.unwrap() - if inference_context: - assert ( - inference_context.is_static_batching() - ), "Mamba currently does not support dynamic inference batching." + if inference_context and inference_context.is_static_batching(): # NOTE(bnorick): match BaseInferenceContext attributes for # mamba_ssm.utils.generation.BaseInferenceContext, # this hack supports eval diff --git a/megatron/core/ssm/mamba_hybrid_layer_allocation.py b/megatron/core/ssm/mamba_hybrid_layer_allocation.py index 26972b5454b..7407bfe899f 100644 --- a/megatron/core/ssm/mamba_hybrid_layer_allocation.py +++ b/megatron/core/ssm/mamba_hybrid_layer_allocation.py @@ -1,20 +1,30 @@ # Copyright (c) 2024, NVIDIA CORPORATION. All rights reserved. import logging +from typing import Dict, List, Tuple if __name__ != "__main__": from megatron.core.utils import log_single_rank else: from typing import Any + import torch + def log_single_rank(logger: logging.Logger, *args: Any, rank: int = 0, **kwargs: Any): - print(*args[1:], **kwargs) + """Logs a message to the given rank.""" + if torch.distributed.is_initialized(): + if torch.distributed.get_rank() == rank: + logger.log(*args, **kwargs) + else: + logger.log(*args, **kwargs) logger = logging.getLogger(__name__) class Symbols: + """Symbols for different layer types.""" + MAMBA = "M" ATTENTION = "*" MLP = "-" @@ -87,6 +97,7 @@ def allocate_layers( target_mlp_ratio: float, override_pattern: str = None, ) -> list: + """Allocates layers according to the requested distribution of layer types.""" assert total_layers_count > 0 assert target_attention_ratio >= 0.0 and target_attention_ratio <= 1.0 assert target_mlp_ratio >= 0.0 and target_mlp_ratio <= 1.0 @@ -156,6 +167,22 @@ def allocate_layers( return layer_type_list +def get_layer_maps_from_layer_type_list( + layer_type_list: List[str], +) -> Tuple[Dict[int, int], Dict[int, int], Dict[int, int]]: + """ + Returns maps from global layer index to the corresponding layer index + for each layer type in [Attention, Mamba, MLP] given a layer type list. + """ + layer_types = [Symbols.ATTENTION, Symbols.MAMBA, Symbols.MLP] + layer_maps = {layer_type: {} for layer_type in layer_types} + for global_layer_idx, layer_type in enumerate(layer_type_list): + layer_map = layer_maps[layer_type] + local_layer_idx = len(layer_map) + layer_map[global_layer_idx] = local_layer_idx + return [layer_maps[layer_type] for layer_type in layer_types] + + if __name__ == "__main__": test_cases = [ # (10, 0.2, 0.0), @@ -187,5 +214,5 @@ def allocate_layers( (9, 0.0, 0.0, "MMMMMMMMM"), ] for t in test_cases: - print("") + logging.info("") allocate_layers(*t) diff --git a/megatron/core/ssm/mamba_layer.py b/megatron/core/ssm/mamba_layer.py index d83d518331c..69d5ef21c81 100644 --- a/megatron/core/ssm/mamba_layer.py +++ b/megatron/core/ssm/mamba_layer.py @@ -6,7 +6,7 @@ # LICENSE file in the root directory of this source tree. from dataclasses import dataclass, field -from typing import Dict, Optional, Union +from typing import Dict, Optional, Tuple, Union import torch from torch import Tensor @@ -82,6 +82,10 @@ def __init__( self.mamba_bda = build_module(submodules.mamba_bda) self.bias_dropout_add_exec_handler = torch.enable_grad + def mamba_state_shapes_per_request(self) -> Tuple[Tuple[int], Tuple[int]]: + """Returns the Mamba conv and ssm states shapes per request.""" + return self.mixer.mamba_state_shapes_per_request() + def forward( self, hidden_states: Tensor, @@ -127,10 +131,6 @@ def forward( return hidden_states - def allocate_inference_cache(self, batch_size, max_seqlen, dtype=None): - """Allocate the inference cache.""" - return self.mixer.allocate_inference_cache(batch_size, max_seqlen, dtype=dtype) - def sharded_state_dict( self, prefix: str = '', sharded_offsets: tuple = (), metadata: Optional[dict] = None ) -> ShardedStateDict: diff --git a/megatron/core/ssm/mamba_mixer.py b/megatron/core/ssm/mamba_mixer.py index 2caa36fb1e9..895792ff05e 100644 --- a/megatron/core/ssm/mamba_mixer.py +++ b/megatron/core/ssm/mamba_mixer.py @@ -27,7 +27,12 @@ make_sharded_tensors_for_checkpoint, sharded_state_dict_default, ) -from megatron.core.utils import deprecate_inference_params, log_single_rank +from megatron.core.utils import ( + check_mamba_sequence_packing_support, + deprecate_inference_params, + log_single_rank, + maybe_cat, +) from .mamba_context_parallel import MambaContextParallel @@ -38,6 +43,7 @@ try: from causal_conv1d import causal_conv1d_fn, causal_conv1d_update + from causal_conv1d.causal_conv1d_varlen import causal_conv1d_varlen_states except ImportError: causal_conv1d_fn = None causal_conv1d_update = None @@ -63,7 +69,6 @@ except ImportError: HAVE_EINOPS = False - logger = logging.getLogger(__name__) @@ -392,11 +397,11 @@ def forward( inference_context = deprecate_inference_params(inference_context, inference_params) - _, batch, dim = hidden_states.shape + in_inference_mode = inference_context is not None and not self.training + _, batch, dim = hidden_states.shape conv_state, ssm_state = None, None - in_inference_mode = inference_context is not None and not self.training if in_inference_mode: if inference_context.is_dynamic_batching(): return self.dynamic_inference(hidden_states, inference_context) @@ -424,27 +429,151 @@ def forward( return out, out_bias - def dynamic_inference( - self, hidden_states, inference_context: DynamicInferenceContext - ) -> Tuple[torch.Tensor, torch.Tensor]: - """Runs inference computation for dynamic batching.""" - raise NotImplementedError(f"Dynamic inference is not supported.") + def dynamic_inference(self, hidden_states: torch.Tensor, context: DynamicInferenceContext): + """ + Executes dynamic inference by separating decode and prefill requests and + running them independently. Also runs the chunked prefill request independently + if it exists. + """ + sequence_packing_available, reason_for_no_sequence_packing = ( + check_mamba_sequence_packing_support() + ) + assert sequence_packing_available, reason_for_no_sequence_packing + + conv_state, ssm_state = context.mamba_states_cache(self.layer_number) + + # Fast path: decode-only + if context.is_decode_only(): + batch_indices = context.mamba_metadata.request_to_mamba_state_idx_cudagraph_only[ + : context.padded_active_token_count + ] + out, out_bias = self.decode( + hidden_states, conv_state, ssm_state, batch_indices=batch_indices + ) + return out, out_bias + + # Compute input projection before splitting into prefill and decode + # to ensure sequence parallel all-gather. + zxBCdt, _ = self.in_proj(hidden_states) + + # Compute split between decode and prefill. + seq_idx, cu_seqlens, return_varlen_states = self._get_varlen_generation_state(context) + active_query_lengths = context.request_query_lengths[ + context.paused_request_count : context.total_request_count + ] + batch_indices = context.mamba_metadata.request_to_mamba_state_idx + + # First request with query len > 1 is prefill-start. + first_prefill_token_idx = torch.nonzero(active_query_lengths > 1)[0].int() + + # Process decode requests if there are any. + if first_prefill_token_idx > 0: + zxBCdt_decode = zxBCdt[:first_prefill_token_idx] + batch_indices_decode = batch_indices[:first_prefill_token_idx] + y_decode = self.ssm_decode( + zxBCdt_decode.transpose(0, 1), conv_state, ssm_state, batch_indices_decode + ).transpose(0, 1) + else: + y_decode = None + + active_token_count = context.active_token_count + active_request_count = context.get_active_request_count() + padded_active_token_count = context.padded_active_token_count + + # Process the chunked prefill request if it exists. + if context.chunked_prefill_request_id != -1: + chunked_prefill_request_token_count = active_query_lengths[-1] + zxBCdt_chunked_prefill = zxBCdt[ + active_token_count - chunked_prefill_request_token_count : active_token_count + ] + batch_index_chunked_prefill = batch_indices[context.chunked_prefill_request_id] + + y_prefill_chunked = self.ssm_prefill( + zxBCdt_chunked_prefill, + conv_state=conv_state[batch_index_chunked_prefill].unsqueeze(0), + ssm_state=ssm_state[batch_index_chunked_prefill].unsqueeze(0), + is_chunked_prefill=True, + ) - def decode(self, hidden_states, conv_state, ssm_state) -> Tuple[torch.Tensor, torch.Tensor]: + # Remove the chunked prefill request from the request / token counts so + # the subsequent prefill computation ignores the chunked prefill request. + active_token_count -= chunked_prefill_request_token_count + active_request_count -= 1 + else: + y_prefill_chunked = None + + # Process non-chunked prefill requests if there are any. + if (remaining_prefill_tokens := active_token_count - first_prefill_token_idx) > 0: + zxBCdt_prefill = zxBCdt[first_prefill_token_idx:active_token_count] + cu_seqlens_prefill = F.pad( + cu_seqlens[first_prefill_token_idx + 1 : active_request_count + 1] + - first_prefill_token_idx, + (1, 0), + ) + seq_idx_prefill = ( + seq_idx[:, first_prefill_token_idx:active_token_count] - first_prefill_token_idx + ) + batch_indices_prefill = batch_indices[first_prefill_token_idx:active_request_count] + + y_prefill = self.ssm_prefill( + zxBCdt_prefill, + conv_state=conv_state, + ssm_state=ssm_state, + seq_idx=seq_idx_prefill, + cu_seqlens=cu_seqlens_prefill, + return_varlen_states=return_varlen_states, + batch_indices=batch_indices_prefill, + ) + else: + y_prefill = None + + # Assemble the final output by concatenating the decode output, + # non-chunked prefill output, and chunked prefill output together. + y_prefill = maybe_cat(y_prefill, y_prefill_chunked, required=True) + y = maybe_cat(y_decode, y_prefill, required=True) + + # Add padding tokens back if necessary. Note that we use the context active token count + # in case we modified the local count for chunked prefill above. + if (num_padding_tokens := padded_active_token_count - context.active_token_count) > 0: + y = torch.cat((y, y.new_zeros(num_padding_tokens, *y.shape[1:])), dim=0) + + # The output projection will perform the sequence parallel reduce-scatter if necessary. + out, out_bias = self.out_proj(y) + + return out, out_bias + + def decode( + self, hidden_states, conv_state, ssm_state, batch_indices: Optional[torch.Tensor] = None + ) -> Tuple[torch.Tensor, torch.Tensor]: """Performs inference step for decoding.""" # assert self.ngroups_local_tp == 1, "Only support ngroups=1 for inference for now" - dtype = hidden_states.dtype - assert hidden_states.shape[0] == 1, "Only support decoding with 1 token at a time for now" + is_dynamic_batching = batch_indices is not None - # b d_model --> b p(2d) + if not is_dynamic_batching: + assert ( + hidden_states.shape[0] == 1 + ), "Only support decoding with 1 token at a time for now" + + # (1, b, d_model) -> (1, b, proj_dim) zxBCdt, _ = self.in_proj(hidden_states) + # Make batch size leading dimension since that is 1 + if is_dynamic_batching: + zxBCdt = zxBCdt.transpose(0, 1) + assert self.cp.cp_size == 1, "Context parallel not supported for Mamba inferenece decode" - y = self.ssm_decode(zxBCdt, conv_state=conv_state, ssm_state=ssm_state) + y = self.ssm_decode( + zxBCdt, conv_state=conv_state, ssm_state=ssm_state, batch_indices=batch_indices + ) + + # Restore sequence length as first dimension + if is_dynamic_batching: + y = y.transpose(0, 1) - # l b pd --> l b d + # y has shape (1, b, d_inner), which is what out_proj expects out, out_bias = self.out_proj(y) + return out, out_bias def ssm_training(self, zxBCdt: torch.Tensor) -> torch.Tensor: @@ -497,8 +626,34 @@ def ssm_prefill( zxBCdt: torch.Tensor, conv_state: Optional[torch.Tensor], ssm_state: Optional[torch.Tensor], + seq_idx: Optional[torch.Tensor] = None, + cu_seqlens: Optional[torch.Tensor] = None, + return_varlen_states: bool = False, + batch_indices: Optional[torch.Tensor] = None, + is_chunked_prefill: bool = False, ) -> torch.Tensor: - """Performs SSM computation for inference prefill step.""" + """ + Performs SSM computation for inference prefill step. + + Args: + zxBCdt: The input tensor of shape (l, b, d), which is a concatenation of + z, x, B, C, and dt projections. + conv_state: The convolution state tensor for inference. + ssm_state: The selective scan state tensor for inference. + seq_idx: A map from token index to request index for variable-length sequences. + cu_seqlens: Cumulative sequence lengths for variable-length sequences. + return_varlen_states: Whether to return variable-length states from the SSM kernel. + batch_indices: A map from batch id to position in the Mamba state tensors for + dynamic inference. + is_chunked_prefill: Whether the request is a chunked prefill request. + + Returns: + The output tensor of shape (l, b, d). + """ + is_dynamic_batching = seq_idx is not None + assert not ( + is_dynamic_batching and is_chunked_prefill + ), "Cannot use chunked prefill with dynamic batching" # transpose: l b pd --> b l pd zxBCdt = rearrange(zxBCdt, "l b d -> b l d").contiguous() @@ -516,29 +671,53 @@ def ssm_prefill( dim=-1, ) - # transpose: b l pd --> b pd l - xBC = rearrange(xBC, "b l d -> b d l").contiguous() - # Compute short convolution - if conv_state is not None: - # If we just take x[:, :, -self.d_conv :], it will error if seqlen < self.d_conv - # Instead F.pad will pad with zeros if seqlen < self.d_conv, and truncate otherwise. - conv_state.copy_(F.pad(xBC, (self.d_conv - xBC.shape[-1], 0))) # Update state (B D W) + if conv_state is not None and is_dynamic_batching: + # xBC should have shape (b l d) for causal_conv1d_varlen_states + assert batch_indices is not None + conv_state[batch_indices] = causal_conv1d_varlen_states( + xBC.squeeze(0), cu_seqlens, state_len=conv_state.shape[-1] + ) + + # Maintain channels-last memory layout to use seq_idx for causal_conv1d_fn + # See https://github.com/Dao-AILab/causal-conv1d/blob/69e6dadc28b169a4c49cb86b586f64ee90242c70/csrc/causal_conv1d.cpp#L174 # pylint: disable=line-too-long + xBC = xBC.transpose(1, 2) + elif is_chunked_prefill: + # Maintain channels-last memory layout to use initial_states for causal_conv1d_fn + # See https://github.com/Dao-AILab/causal-conv1d/blob/69e6dadc28b169a4c49cb86b586f64ee90242c70/csrc/causal_conv1d.cpp#L200 # pylint: disable=line-too-long + xBC = xBC.transpose(1, 2) + else: + # transpose: b l pd --> b pd l + xBC = rearrange(xBC, "b l d -> b d l").contiguous() + if conv_state is not None: + # If we just take x[:, :, -self.d_conv :], it will error if seqlen < self.d_conv + # Instead F.pad will pad with zeros if seqlen < self.d_conv, and truncate otherwise. + conv_state.copy_( + F.pad(xBC, (self.d_conv - xBC.shape[-1], 0)) + ) # Update state (B D W) seqlen = xBC.size(2) if causal_conv1d_fn is None: xBC = self.act(self.cp.conv1d(xBC)[..., :seqlen]) else: assert self.activation in ["silu", "swish"] + if is_chunked_prefill: + initial_conv_state = ( + conv_state[:, :, 1:].permute(0, 2, 1).contiguous().transpose(1, 2) + ) + else: + initial_conv_state = None xBC = causal_conv1d_fn( x=xBC, weight=rearrange(self.cp.get_conv1d_weight(), "d 1 w -> d w"), bias=self.cp.get_conv1d_bias(), activation=self.activation, + seq_idx=seq_idx, + initial_states=initial_conv_state, ) # transpose b pd l --> b l pd - xBC = rearrange(xBC, "b d l -> b l d").contiguous() + xBC = rearrange(xBC, "b d l -> b l d").contiguous() x, B, C = torch.split( xBC, @@ -565,6 +744,14 @@ def ssm_prefill( self.cp.cp_size == 1 or self.rmsnorm ), "Context parallel not supported for use_mem_eff_path==False and rmsnorm==False" + if is_chunked_prefill: + initial_ssm_state = ssm_state + else: + initial_ssm_state = None + + # Note that both `seq_idx` and `cu_seqlens` must be passed in + # for variable length generation. + # See https://github.com/state-spaces/mamba/blob/e0761ece1db07e0949dd88b4f4cd440420a19fd9/tests/test_generation.py#L97 # pylint: disable=line-too-long y = mamba_chunk_scan_combined( x, dt, @@ -581,11 +768,25 @@ def ssm_prefill( dt_bias=self.cp.get_dt_bias().float(), dt_softplus=True, return_final_states=ssm_state is not None, + seq_idx=seq_idx, + cu_seqlens=cu_seqlens, + return_varlen_states=return_varlen_states, + initial_states=initial_ssm_state, ) if ssm_state is not None: - y, last_state = y - ssm_state.copy_(last_state) + if return_varlen_states: + assert batch_indices is not None + + y, _, varlen_states = y + + # This has to be varlen_states, NOT last_state + # See reference implementation: + # https://github.com/state-spaces/mamba/blob/e0761ece1db07e0949dd88b4f4cd440420a19fd9/mamba_ssm/modules/mamba2.py#L267 # pylint: disable=line-too-long + ssm_state[batch_indices] = varlen_states + else: + y, last_state = y + ssm_state.copy_(last_state) y = rearrange(y, "b l h p -> l b (h p)").contiguous() y = self.cp.post_conv_ssm(y) @@ -598,14 +799,31 @@ def ssm_prefill( return y def ssm_decode( - self, zxBCdt: torch.Tensor, conv_state: torch.Tensor, ssm_state: torch.Tensor + self, + zxBCdt: torch.Tensor, + conv_state: torch.Tensor, + ssm_state: torch.Tensor, + batch_indices: Optional[torch.Tensor] = None, ) -> torch.Tensor: - """Performs SSM computation for inference decode step.""" - + """ + Performs SSM computation for inference decode step. + + Args: + zxBCdt: The input tensor of shape (l, b, d), which is a concatenation of + z, x, B, C, and dt projections. For decoding, l must be 1. + conv_state: The convolution state tensor for inference. + ssm_state: The selective scan state tensor for inference. + batch_indices: A map from batch id to position in the Mamba state tensors for + dynamic inference. + + Returns: + The output tensor of shape (l, b, d). + """ + seq_len, batch_size, _ = zxBCdt.shape dtype = zxBCdt.dtype - assert zxBCdt.shape[0] == 1, "Only support decoding with 1 token at a time for now" + assert seq_len == 1, "Only support decoding with 1 token at a time for now" - # l b d --> b d + # Remove sequence dimension zxBCdt = zxBCdt.squeeze(0) z, xBC, dt = torch.split( @@ -627,7 +845,7 @@ def ssm_decode( ) # (B D) if self.conv1d.bias is not None: xBC = xBC + self.conv1d.bias - xBC = self.act(xBC).to(dtype=dtype) + xBC = self.act(xBC).to(dtype=xBC.dtype) else: xBC = causal_conv1d_update( xBC, @@ -635,6 +853,7 @@ def ssm_decode( rearrange(self.conv1d.weight, "d 1 w -> d w"), self.conv1d.bias, self.activation, + conv_state_indices=batch_indices, ) x, B, C = torch.split( @@ -715,35 +934,61 @@ def ssm_decode( z=z if not self.rmsnorm else None, dt_bias=dt_bias, dt_softplus=True, + state_batch_indices=batch_indices, ) y = rearrange(y, "b h p -> b (h p)") if self.rmsnorm: y = self.norm(y, z) - # b (h p) -> l b (h p) + # Restore sequence dimension return y.unsqueeze(0) - def allocate_inference_cache(self, batch_size, max_seqlen, dtype=None): - """ - allocate inference cache + def _get_varlen_generation_state( + self, inference_context: Optional[BaseInferenceContext] = None + ) -> Tuple[torch.Tensor, torch.Tensor, bool]: + """Constructs the variable length generation state for non-decode dynamic inference. + + The returned state includes the following: + `seq_idx` (Tensor): A map from token idx to request idx. + `cu_seqlens` (Tensor): The cumulative sequence lengths. + `return_varlen_states` (bool): Whether to return a varlen states tensor for + `mamba_chunk_scan_combined`. + + Returns empty state for training, static inference, or decode-only dynamic inference. + + Args: + inference_context (InferenceContext): The inference context. + + Returns: + A tuple of (`seq_idx`, `cu_seqlens`, `return_varlen_states`) """ - device = self.out_proj.weight.device - conv_dtype = self.conv1d.weight.dtype if dtype is None else dtype - conv_state = torch.zeros( - batch_size, self.conv1d.weight.shape[0], self.d_conv, device=device, dtype=conv_dtype - ) - ssm_dtype = self.in_proj.weight.dtype if dtype is None else dtype - # ssm_dtype = torch.float32 - ssm_state = torch.zeros( - batch_size, - self.nheads_local_tp, - self.headdim, - self.d_state, - device=device, - dtype=ssm_dtype, + + if ( + inference_context is None + or not inference_context.is_dynamic_batching() + or inference_context.is_decode_only() + ): + return None, None, False + + active_token_count = inference_context.active_token_count + seq_idx = ( + inference_context.token_to_request_idx[:active_token_count] + .clone() + .to(torch.int32) + .unsqueeze(0) ) - return conv_state, ssm_state + + # Get the list of cumulative sequence lengths for active requests. + cu_seqlens, _ = inference_context.cu_query_lengths() + + return seq_idx, cu_seqlens, True + + def mamba_state_shapes_per_request(self) -> Tuple[Tuple[int], Tuple[int]]: + """Returns the Mamba conv and ssm states shapes per request.""" + conv_states_shape = (self.conv1d.weight.shape[0], self.d_conv) + ssm_states_shape = (self.nheads_local_tp, self.headdim, self.d_state) + return (conv_states_shape, ssm_states_shape) def _get_states_from_cache(self, inference_context, batch_size, *, inference_params=None): """Initializes or retrieves the SSM state tensors from the cache. @@ -756,23 +1001,23 @@ def _get_states_from_cache(self, inference_context, batch_size, *, inference_par inference_context = deprecate_inference_params(inference_context, inference_params) assert inference_context is not None + assert inference_context.is_static_batching() assert self.layer_number is not None + if ( self.layer_number not in inference_context.key_value_memory_dict or batch_size != self.cached_batch_size ): + conv_state_shape, ssm_state_shape = self.mamba_state_shapes_per_request() conv_state = torch.zeros( batch_size, - self.conv1d.weight.shape[0], - self.d_conv, + *conv_state_shape, device=self.conv1d.weight.device, dtype=self.conv1d.weight.dtype, ) ssm_state = torch.zeros( batch_size, - self.nheads_local_tp, - self.headdim, - self.d_state, + *ssm_state_shape, device=self.in_proj.weight.device, dtype=self.in_proj.weight.dtype, ) @@ -780,7 +1025,6 @@ def _get_states_from_cache(self, inference_context, batch_size, *, inference_par self.cached_batch_size = batch_size else: conv_state, ssm_state = inference_context.key_value_memory_dict[self.layer_number] - # TODO: Remove reference to `inference_context.sequence_len_offset` for dynamic batching if inference_context.sequence_len_offset == 0: conv_state.zero_() ssm_state.zero_() diff --git a/megatron/core/utils.py b/megatron/core/utils.py index abfaf7f6320..93b2e593d84 100644 --- a/megatron/core/utils.py +++ b/megatron/core/utils.py @@ -65,6 +65,8 @@ _torch_version = PkgVersion("0.0.0") if HAVE_PACKAGING else "0.0.0" _te_version = None _fa_version = None +_mamba_ssm_version = None +_causal_conv1d_version = None @contextmanager @@ -388,6 +390,79 @@ def is_fa_min_version(version, check_equality=True): return get_fa_version() > PkgVersion(version) +def get_mamba_version(): + """Get mamba version from __version__; if not available use pip's. Use caching.""" + if not HAVE_PACKAGING: + raise ImportError( + "packaging is not installed. Please install it with `pip install packaging`." + ) + + def get_mamba_version_str(): + import mamba_ssm + + if hasattr(mamba_ssm, "__version__"): + return str(mamba_ssm.__version__) + else: + return version("mamba_ssm") + + global _mamba_ssm_version + if _mamba_ssm_version is None: + _mamba_ssm_version = PkgVersion(get_mamba_version_str()) + return _mamba_ssm_version + + +def is_mamba_min_version(version, check_equality=True): + """Check if minimum version of `mamba_ssm` is installed.""" + if not HAVE_PACKAGING: + raise ImportError( + "packaging is not installed. Please install it with `pip install packaging`." + ) + if check_equality: + return get_mamba_version() >= PkgVersion(version) + return get_mamba_version() > PkgVersion(version) + + +def get_causal_conv1d_version(): + """Get causal_conv1d version from __version__; if not available use pip's. Use caching.""" + if not HAVE_PACKAGING: + raise ImportError( + "packaging is not installed. Please install it with `pip install packaging`." + ) + + def get_causal_conv1d_version_str(): + import causal_conv1d + + if hasattr(causal_conv1d, "__version__"): + return str(causal_conv1d.__version__) + else: + return version("causal_conv1d") + + global _causal_conv1d_version + if _causal_conv1d_version is None: + _causal_conv1d_version = PkgVersion(get_causal_conv1d_version_str()) + return _causal_conv1d_version + + +def is_causal_conv1d_min_version(version, check_equality=True): + """Check if minimum version of `causal_conv1d` is installed.""" + if not HAVE_PACKAGING: + raise ImportError( + "packaging is not installed. Please install it with `pip install packaging`." + ) + if check_equality: + return get_causal_conv1d_version() >= PkgVersion(version) + return get_causal_conv1d_version() > PkgVersion(version) + + +def check_mamba_sequence_packing_support() -> Tuple[bool, Optional[str]]: + """Checks whether `causal_conv1d` and `mamba_ssm` support sequence packing.""" + if not is_causal_conv1d_min_version("1.5.3.post1"): + return False, "causal_conv1d >= 1.5.3.post1 is required" + elif not is_mamba_min_version("2.2.6.post3"): + return False, "mamba_ssm >= 2.2.6.post3 is required" + return True, None + + def ensure_divisibility(numerator, denominator): """Ensure that numerator is divisible by the denominator.""" assert numerator % denominator == 0, "{} is not divisible by {}".format(numerator, denominator) @@ -2001,6 +2076,16 @@ def unwrap_model(model, module_instances=None): return unwrapped_model +def maybe_cat(a, b, dim=0, *, required=False): + """Concatenates `a` and `b` along `dim` if `a` and `b` exist.""" + xs = [t for t in (a, b) if t is not None] + if not xs: + if required: + raise ValueError("both tensors are None") + return None + return xs[0] if len(xs) == 1 else torch.cat(xs, dim=dim) + + def get_asyncio_loop(loop: asyncio.AbstractEventLoop | None = None) -> asyncio.AbstractEventLoop: """Creates an asyncio loop if necessary and then returns the current asyncio loop.""" if loop is None: diff --git a/megatron/training/tokenizer/sft_tokenizer.py b/megatron/training/tokenizer/sft_tokenizer.py index 4a941fc180b..f525352e892 100644 --- a/megatron/training/tokenizer/sft_tokenizer.py +++ b/megatron/training/tokenizer/sft_tokenizer.py @@ -170,6 +170,11 @@ def pad(self): """Pad token ID.""" return self._prompt_config.pad_token_id + @property + def bos(self): + """Beginning of sequence token ID.""" + return self._tokenizer.bos_token_id + @property def eod(self): """End of sentence token ID.""" diff --git a/tests/unit_tests/inference/contexts/test_dynamic_context.py b/tests/unit_tests/inference/contexts/test_dynamic_context.py index 1cd9d66ece1..0674cdfcabd 100644 --- a/tests/unit_tests/inference/contexts/test_dynamic_context.py +++ b/tests/unit_tests/inference/contexts/test_dynamic_context.py @@ -12,6 +12,7 @@ ) from megatron.core.inference.inference_request import DynamicInferenceRequest from megatron.core.inference.sampling_params import SamplingParams +from megatron.core.ssm.mamba_hybrid_layer_allocation import Symbols from megatron.core.tensor_parallel.random import model_parallel_cuda_manual_seed from tests.unit_tests.test_utilities import Utils @@ -42,12 +43,19 @@ def _get_dynamic_context( max_sequence_length, buffer_size_gb, block_size_tokens, - buffer_guarenteed_fraction, + buffer_guaranteed_fraction, buffer_overflow_factor, max_requests_override, max_tokens_override, + is_hybrid_model=False, + layer_type_list=None, + rounder=64, ): - set_rounder(64) + set_rounder(rounder) + + if is_hybrid_model and layer_type_list is None: + layer_type_list = [Symbols.MAMBA, Symbols.MLP, Symbols.ATTENTION, Symbols.MLP] + dynamic_context = DynamicInferenceContext( params_dtype=params_dtype, num_layers=num_layers, @@ -55,23 +63,27 @@ def _get_dynamic_context( num_attention_heads=num_attention_heads, max_sequence_length=max_sequence_length, num_cuda_graphs=None, + use_cuda_graphs_for_non_decode_steps=not is_hybrid_model, buffer_size_gb=buffer_size_gb, - buffer_guaranteed_fraction=buffer_guarenteed_fraction, + buffer_guaranteed_fraction=buffer_guaranteed_fraction, block_size_tokens=block_size_tokens, buffer_overflow_factor=buffer_overflow_factor, max_requests_override=max_requests_override, max_tokens_override=max_tokens_override, + layer_type_list=layer_type_list, + mamba_conv_states_shape=(544, 4), + mamba_ssm_states_shape=(8, 64, 16), use_flashinfer_fused_rope=None, # default to using flash-infer if available # this is for compatibility with the LTS environment ) return dynamic_context def teardown_method(self, method): - set_rounder(64) Utils.destroy_model_parallel() @pytest.mark.internal - def test_initialize_dynamic_context(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_initialize_dynamic_context(self, is_hybrid_model: bool): self._setup_model_parallel_group(1, 1) dynamic_context = self._get_dynamic_context( @@ -81,18 +93,30 @@ def test_initialize_dynamic_context(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) - assert dynamic_context.gtd_block_count == 48 - assert dynamic_context.gtd_request_count == 12 - assert dynamic_context.block_allocator.block_count_total == 491 - assert dynamic_context.max_requests == 128 - assert dynamic_context.max_tokens == 62848 + if not is_hybrid_model: + assert dynamic_context.gtd_block_count == 48 + assert dynamic_context.gtd_request_count == 12 + assert dynamic_context.block_allocator.block_count_total == 491 + assert dynamic_context.max_requests == 128 + assert dynamic_context.max_tokens == 62848 + assert dynamic_context.num_mamba_layers == 0 + assert dynamic_context.mamba_metadata is None + else: + assert dynamic_context.gtd_block_count == 112 + assert dynamic_context.gtd_request_count == 28 + assert dynamic_context.block_allocator.block_count_total == 1156 + assert dynamic_context.max_requests == 320 + assert dynamic_context.max_tokens == 154176 + assert dynamic_context.num_mamba_layers == 1 + assert dynamic_context.mamba_metadata is not None # Check initializations to -1 assert torch.all(dynamic_context.request_ids == -1) @@ -100,32 +124,38 @@ def test_initialize_dynamic_context(self): @pytest.mark.internal def test_is_static_batching(self): self._setup_model_parallel_group(1, 1) - dynamic_context = DynamicInferenceContext( + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=2, kv_channels=64, num_attention_heads=8, max_sequence_length=512, - num_cuda_graphs=None, buffer_size_gb=1.0, buffer_guaranteed_fraction=0.1, block_size_tokens=128, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, ) assert not dynamic_context.is_static_batching() @pytest.mark.internal - def test_is_memory_available(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_is_memory_available(self, is_hybrid_model): self._setup_model_parallel_group(1, 1) - dynamic_context = DynamicInferenceContext( + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=2, kv_channels=64, num_attention_heads=8, max_sequence_length=512, - num_cuda_graphs=None, buffer_size_gb=1.0, buffer_guaranteed_fraction=0.1, block_size_tokens=128, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) dynamic_context.block_allocator.block_count_avail = 10 assert dynamic_context.block_allocator.is_memory_available(10) @@ -141,19 +171,24 @@ def test_is_memory_available(self): assert not dynamic_context.block_allocator.is_memory_available(6, safe=True) @pytest.mark.internal - def test_request_overflow(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_request_overflow(self, is_hybrid_model: bool): self._setup_model_parallel_group(1, 1) - set_rounder(1) - dynamic_context = DynamicInferenceContext( + + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=2, kv_channels=64, num_attention_heads=8, max_sequence_length=128, - num_cuda_graphs=None, buffer_size_gb=0.01, buffer_guaranteed_fraction=0.1, block_size_tokens=32, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, + rounder=1, + is_hybrid_model=is_hybrid_model, ) with pytest.raises(RequestOverflowError): for i in range(dynamic_context.max_requests + 1): @@ -168,22 +203,24 @@ def test_request_overflow(self): ) # Adding more than allowed requests @pytest.mark.internal - def test_token_overflow_error(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_token_overflow_error(self, is_hybrid_model: bool): self._setup_model_parallel_group(1, 1) - set_rounder(1) - dynamic_context = DynamicInferenceContext( + + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=2, kv_channels=64, num_attention_heads=8, max_sequence_length=512, - num_cuda_graphs=None, buffer_size_gb=0.1, buffer_guaranteed_fraction=0.1, block_size_tokens=128, buffer_overflow_factor=1.0, max_requests_override=2, max_tokens_override=20, # Setting a very low token limit + rounder=1, + is_hybrid_model=is_hybrid_model, ) with pytest.raises(TokenOverflowError): @@ -198,18 +235,23 @@ def test_token_overflow_error(self): ) # Exceeding max token count @pytest.mark.internal - def test_reset(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_reset(self, is_hybrid_model: bool): self._setup_model_parallel_group(1, 1) - dynamic_context = DynamicInferenceContext( + + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=2, kv_channels=64, num_attention_heads=8, max_sequence_length=128, - num_cuda_graphs=None, buffer_size_gb=1.0, buffer_guaranteed_fraction=0.1, block_size_tokens=128, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) # Initialize all variables @@ -234,6 +276,9 @@ def test_reset(self): dynamic_context.block_allocator.block_count_avail = 5 dynamic_context.memory_buffer.fill_(1) dynamic_context.request_to_kv_block_ids.fill_(1) + if is_hybrid_model: + dynamic_context.mamba_conv_states.fill_(1) + dynamic_context.mamba_ssm_states.fill_(1) # Call reset dynamic_context.reset() @@ -262,9 +307,14 @@ def test_reset(self): == dynamic_context.block_allocator.block_count_total - 1 ) assert torch.all(dynamic_context.request_to_kv_block_ids == -1) + if is_hybrid_model: + assert torch.all(dynamic_context.mamba_metadata.request_to_mamba_state_idx == -1) + assert torch.all(dynamic_context.mamba_conv_states == 0) + assert torch.all(dynamic_context.mamba_ssm_states == 0) @pytest.mark.internal - def test_allocate_and_release_memory_blocks(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_allocate_and_release_memory_blocks(self, is_hybrid_model): self._setup_model_parallel_group(1, 1) dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, @@ -273,23 +323,38 @@ def test_allocate_and_release_memory_blocks(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) - assert dynamic_context.block_allocator.allocate_memory_blocks( - 4 - ).cpu().detach().numpy().tolist() == [486, 487, 488, 489] - assert dynamic_context.block_allocator.block_count_avail == 486 + if is_hybrid_model: + expected_memory_blocks = [1151, 1152, 1153, 1154] + else: + expected_memory_blocks = [486, 487, 488, 489] + expected_block_count_avail = expected_memory_blocks[0] + + assert ( + dynamic_context.block_allocator.allocate_memory_blocks(4) + .cpu() + .detach() + .numpy() + .tolist() + == expected_memory_blocks + ) + assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail dynamic_context.block_allocator.release_memory_blocks( - torch.tensor([488, 489], device='cuda') + torch.tensor(expected_memory_blocks[-2:], device='cuda') ) - assert dynamic_context.block_allocator.block_count_avail == 488 - assert dynamic_context.block_allocator.allocate_memory_blocks(1).item() == 489 - assert dynamic_context.block_allocator.block_count_avail == 487 + assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail + 2 + assert ( + dynamic_context.block_allocator.allocate_memory_blocks(1).item() + == expected_memory_blocks[-1] + ) + assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail + 1 # Should return None since we allocate more blocks than what we have. assert ( dynamic_context.block_allocator.allocate_memory_blocks( @@ -299,8 +364,10 @@ def test_allocate_and_release_memory_blocks(self): ) @pytest.mark.internal - def test_add_request(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_add_request(self, is_hybrid_model: bool): self._setup_model_parallel_group(1, 1) + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=4, @@ -308,11 +375,12 @@ def test_add_request(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) assert dynamic_context.block_size_tokens == 128 context_length = 144 @@ -331,14 +399,10 @@ def test_add_request(self): assert torch.all(dynamic_context.request_ids[1:] == -1) assert dynamic_context.request_query_lengths[0] == context_length assert dynamic_context.request_kv_length_offsets[0] == 0 - assert dynamic_context.request_to_kv_block_ids[0].cpu().detach().numpy().tolist() == [ - 488, - 489, - -1, - -1, - ] assert dynamic_context.request_kv_block_counts[0] == 2 - assert dynamic_context.request_last_kv_block_id[0] == 489 + assert dynamic_context.request_last_kv_block_id[0].item() == ( + 1154 if is_hybrid_model else 489 + ) assert dynamic_context.request_last_kv_block_offset[0].item() == 15 assert torch.all( dynamic_context.token_to_pos_ids[0:context_length] @@ -352,17 +416,22 @@ def test_add_request(self): dynamic_context.token_to_position_in_request[0:context_length] == torch.arange(0, context_length, dtype=torch.long, device='cuda') ) + + # Verify token_to_block_idx and token_to_local_position_within_kv_block based on assigned blocks + first_block_id = dynamic_context.request_to_kv_block_ids[0, 0] + second_block_id = dynamic_context.request_to_kv_block_ids[0, 1] + assert torch.all( dynamic_context.token_to_block_idx[0:context_length][ 0 : dynamic_context.block_size_tokens ] - == 488 + == first_block_id ) assert torch.all( dynamic_context.token_to_block_idx[0:context_length][ dynamic_context.block_size_tokens : context_length ] - == 489 + == second_block_id ) assert torch.all( dynamic_context.token_to_local_position_within_kv_block[0:context_length] @@ -371,8 +440,10 @@ def test_add_request(self): ) @pytest.mark.internal - def test_update_request(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_update_request(self, is_hybrid_model: bool): self._setup_model_parallel_group(1, 1) + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=4, @@ -380,11 +451,12 @@ def test_update_request(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) # This case should just reset and return since all requests are finished @@ -394,10 +466,19 @@ def test_update_request(self): dynamic_context.request_kv_block_counts[0:3] = 1 new_block_ids = dynamic_context.block_allocator.allocate_memory_blocks(3, safe=True) dynamic_context.request_to_kv_block_ids[0:3, 0] = new_block_ids + + if is_hybrid_model: + # Also initialize Mamba states for the dummy requests + dynamic_context.mamba_conv_states[:, 0:3, :, :].fill_(1.0) + dynamic_context.mamba_ssm_states[:, 0:3, :, :, :].fill_(1.0) + dynamic_context.update_requests( active_requests_mask=active_requests_mask, new_tokens=torch.tensor([0, 1, 2]) ) assert dynamic_context.total_request_count == 0 + if is_hybrid_model: + assert torch.all(dynamic_context.mamba_conv_states == 0) + assert torch.all(dynamic_context.mamba_ssm_states == 0) # This case would cover all cases # 1. Already there will be 2 paused requests @@ -406,9 +487,9 @@ def test_update_request(self): # 4. Some of these requests will be resumed. # Setup is as follows : # Request ids 0, 1 are paused - # Request ids 2 , 4, 9 are active requests + # Request ids 2, 4, 9 are active requests # Request ids 3 7 8 have completed - # Request ids 5 and 6 will require on more block later on coz they finished their current block + # Request ids 5 and 6 will require on more block later on because they finished their current block dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, @@ -417,11 +498,12 @@ def test_update_request(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) active_requests_mask = torch.Tensor([1, 0, 1, 1, 1, 0, 0, 1]).cuda().int() @@ -472,6 +554,14 @@ def test_update_request(self): dynamic_context.request_last_kv_block_offset[0:2] = dynamic_context.block_size_tokens - 1 dynamic_context.request_last_kv_block_offset[5:7] = dynamic_context.block_size_tokens - 1 + if is_hybrid_model: + # Dummy fill for states to be non-zero before update + for i in range(total_request_count): + dynamic_context.mamba_metadata.request_to_mamba_state_idx[i] = i + dynamic_context.mamba_metadata.mamba_state_free_slot_count -= total_request_count + dynamic_context.mamba_conv_states[:, 0:total_request_count, :, :] = 1.0 + dynamic_context.mamba_ssm_states[:, 0:total_request_count, :, :, :] = 1.0 + dynamic_context.update_requests( active_requests_mask=active_requests_mask, new_tokens=next_tokens ) @@ -522,28 +612,49 @@ def test_update_request(self): # The first 4 requests will require an extra block. # Since 3 requests have finished, the last 3 rows should be all -1. - assert torch.all( - dynamic_context.request_to_kv_block_ids[0:10].cpu() - == torch.tensor( - [ - [479, 482, -1, -1], - [480, 479, -1, -1], - [484, 486, -1, -1], - [485, 487, -1, -1], - [483, -1, -1, -1], - [481, -1, -1, -1], - [488, -1, -1, -1], - [-1, -1, -1, -1], - [-1, -1, -1, -1], - [-1, -1, -1, -1], - ] + if is_hybrid_model: + assert torch.all( + dynamic_context.request_to_kv_block_ids[0:10].cpu() + == torch.tensor( + [ + [1144, 1147, -1, -1], + [1145, 1144, -1, -1], + [1149, 1151, -1, -1], + [1150, 1152, -1, -1], + [1148, -1, -1, -1], + [1146, -1, -1, -1], + [1153, -1, -1, -1], + [-1, -1, -1, -1], + [-1, -1, -1, -1], + [-1, -1, -1, -1], + ] + ) + ) + else: + assert torch.all( + dynamic_context.request_to_kv_block_ids[0:10].cpu() + == torch.tensor( + [ + [479, 482, -1, -1], + [480, 479, -1, -1], + [484, 486, -1, -1], + [485, 487, -1, -1], + [483, -1, -1, -1], + [481, -1, -1, -1], + [488, -1, -1, -1], + [-1, -1, -1, -1], + [-1, -1, -1, -1], + [-1, -1, -1, -1], + ] + ) ) - ) @pytest.mark.internal - def test_release_memory_blocks_for_finished_requests(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_release_memory_blocks_for_finished_requests(self, is_hybrid_model): """Test that memory blocks are correctly released for finished requests.""" self._setup_model_parallel_group(1, 1) + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=4, @@ -551,11 +662,12 @@ def test_release_memory_blocks_for_finished_requests(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) # Set up the initial state with 5 requests @@ -572,6 +684,13 @@ def test_release_memory_blocks_for_finished_requests(self): dynamic_context.request_to_kv_block_ids[i, 0] = initial_blocks[i] dynamic_context.request_query_lengths[i] = 1 dynamic_context.request_ids[i] = i + if is_hybrid_model: + dynamic_context.mamba_conv_states[:, i, :, :].fill_( + float(i + 1) + ) # Fill with distinct values + dynamic_context.mamba_ssm_states[:, i, :, :, :].fill_(float(i + 1)) + dynamic_context.mamba_metadata.request_to_mamba_state_idx[i] = i + dynamic_context.mamba_metadata.mamba_state_free_slot_count -= 1 # Create an active_requests_mask where requests 0, 2, and 4 are finished (0), # and requests 1 and 3 are still active (1) @@ -591,10 +710,26 @@ def test_release_memory_blocks_for_finished_requests(self): # Verify that 3 blocks were released by checking the available blocks assert dynamic_context.block_allocator.block_count_avail == initial_available_blocks + 3 + if is_hybrid_model: + # Request at position 3 now moves into finished request position 0 + # Request at position 1 remains active + mamba_idx = { + i: dynamic_context.mamba_metadata.request_to_mamba_state_idx[i] for i in range(5) + } + assert torch.all(dynamic_context.mamba_conv_states[:, mamba_idx[0], :, :] == 4.0) + assert torch.all(dynamic_context.mamba_ssm_states[:, mamba_idx[0], :, :, :] == 4.0) + assert torch.all(dynamic_context.mamba_conv_states[:, mamba_idx[1], :, :] == 2.0) + assert torch.all(dynamic_context.mamba_ssm_states[:, mamba_idx[1], :, :, :] == 2.0) + assert mamba_idx[2] == -1 + assert mamba_idx[3] == -1 + assert mamba_idx[4] == -1 + @pytest.mark.internal - def test_finished_requests_with_multiple_blocks(self): + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_finished_requests_with_multiple_blocks(self, is_hybrid_model): """Test that all memory blocks are correctly released for finished requests that use multiple blocks.""" self._setup_model_parallel_group(1, 1) + dynamic_context = self._get_dynamic_context( params_dtype=torch.float32, num_layers=4, @@ -602,11 +737,12 @@ def test_finished_requests_with_multiple_blocks(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, ) # Set up the initial state with 3 requests, where some use multiple blocks @@ -638,6 +774,9 @@ def test_finished_requests_with_multiple_blocks(self): for i in range(3): dynamic_context.request_query_lengths[i] = 1 dynamic_context.request_ids[i] = i + if is_hybrid_model: + dynamic_context.mamba_conv_states[:, i, :, :].fill_(float(i + 1)) + dynamic_context.mamba_ssm_states[:, i, :, :, :].fill_(float(i + 1)) # Create an active_requests_mask where all requests are finished active_requests_mask = torch.tensor([0, 0, 0], device=torch.cuda.current_device()) @@ -655,6 +794,92 @@ def test_finished_requests_with_multiple_blocks(self): # Verify that all 6 blocks were released by checking the available blocks assert dynamic_context.block_allocator.block_count_avail == initial_available_blocks + 6 + if is_hybrid_model: + # All mamba states should be zeroed out + assert torch.all(dynamic_context.mamba_conv_states == 0) + assert torch.all(dynamic_context.mamba_ssm_states == 0) + + @pytest.mark.internal + @pytest.mark.parametrize("is_hybrid_model", [False, True]) + def test_mamba_states_cache(self, is_hybrid_model: bool): + self._setup_model_parallel_group(1, 1) + + if not is_hybrid_model: + # If not hybrid, mamba_states_cache should fail + dynamic_context = self._get_dynamic_context( + params_dtype=torch.float32, + num_layers=4, + kv_channels=8, + num_attention_heads=2, + max_sequence_length=512, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, + block_size_tokens=128, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, + is_hybrid_model=False, + ) + with pytest.raises(AssertionError) as error: + conv_state, ssm_state = dynamic_context.mamba_states_cache(layer_number=1) + return + + dynamic_context = self._get_dynamic_context( + params_dtype=torch.float32, + num_layers=4, + kv_channels=8, + num_attention_heads=2, + max_sequence_length=512, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, + block_size_tokens=128, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, + is_hybrid_model=is_hybrid_model, + layer_type_list=[Symbols.MAMBA, Symbols.ATTENTION, Symbols.MAMBA, Symbols.ATTENTION], + ) + + # Add a request to populate states + context_length = 10 + dynamic_context.add_request( + DynamicInferenceRequest( + request_id=0, + prompt_tokens=torch.arange(0, context_length, dtype=torch.long, device='cuda'), + sampling_params=SamplingParams( + num_tokens_to_generate=dynamic_context.max_tokens - 10 + ), + ) + ) + dynamic_context.initialize_attention_state() + + # Manually set some dummy values in mamba_conv_states and mamba_ssm_states + # Mamba layers are at global indices 0 and 2 (mapped to local 0 and 1 via layer_map) + # `layer_map` will map global layer index to the corresponding Mamba/Attention index. + # For layer_type_list ["MAMBA", "ATTENTION", "MAMBA", "ATTENTION"], + # global layer 1 (index 0) is MAMBA -> local mamba layer 0 + # global layer 3 (index 2) is MAMBA -> local mamba layer 1 + + # Test for the first Mamba layer (global layer 1, local mamba layer 0) + global_layer_1_mamba_local_idx = 0 + dynamic_context.mamba_conv_states[global_layer_1_mamba_local_idx] = 10.0 + dynamic_context.mamba_ssm_states[global_layer_1_mamba_local_idx] = 20.0 + + # Test for the second Mamba layer (global layer 3, local mamba layer 1) + global_layer_3_mamba_local_idx = 1 + dynamic_context.mamba_conv_states[global_layer_3_mamba_local_idx] = 30.0 + dynamic_context.mamba_ssm_states[global_layer_3_mamba_local_idx] = 40.0 + + # Retrieve states using mamba_states_cache for global layer 1 + conv_state_layer1, ssm_state_layer1 = dynamic_context.mamba_states_cache(layer_number=1) + assert torch.all(conv_state_layer1 == 10.0) + assert torch.all(ssm_state_layer1 == 20.0) + + # Retrieve states using mamba_states_cache for global layer 3 + conv_state_layer3, ssm_state_layer3 = dynamic_context.mamba_states_cache(layer_number=3) + assert torch.all(conv_state_layer3 == 30.0) + assert torch.all(ssm_state_layer3 == 40.0) + @pytest.mark.internal def test_calculate_and_store_log_probs(self): self._setup_model_parallel_group(1, 1) @@ -665,7 +890,7 @@ def test_calculate_and_store_log_probs(self): num_attention_heads=2, max_sequence_length=512, buffer_size_gb=0.03, - buffer_guarenteed_fraction=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, max_requests_override=None, max_tokens_override=None, diff --git a/tests/unit_tests/inference/engines/test_dynamic_engine.py b/tests/unit_tests/inference/engines/test_dynamic_engine.py index 4ce8a5b11db..3ec7f80499b 100644 --- a/tests/unit_tests/inference/engines/test_dynamic_engine.py +++ b/tests/unit_tests/inference/engines/test_dynamic_engine.py @@ -4,7 +4,7 @@ import random import types from dataclasses import dataclass -from typing import Dict, List, Optional +from typing import Dict, List, Optional, Tuple import pytest import torch @@ -37,13 +37,29 @@ get_gpt_layer_with_transformer_engine_spec, ) from megatron.core.models.gpt.gpt_model import GPTModel +from megatron.core.models.mamba.mamba_layer_specs import mamba_stack_spec +from megatron.core.models.mamba.mamba_model import MambaModel from megatron.core.tensor_parallel.random import model_parallel_cuda_manual_seed from megatron.core.transformer.cuda_graphs import CudaGraphManager, _CudagraphGlobalRecord from megatron.core.transformer.transformer_config import TransformerConfig -from megatron.core.utils import is_fa_min_version +from megatron.core.utils import ( + check_mamba_sequence_packing_support, + get_attr_wrapped_model, + is_fa_min_version, + is_te_min_version, +) from tests.unit_tests.test_utilities import Utils +def skip_if_mamba_sequence_packing_not_available(model_provider: str): + if model_provider == "mamba": + sequence_packing_available, reason_for_no_sequence_packing = ( + check_mamba_sequence_packing_support() + ) + if not sequence_packing_available: + pytest.skip(reason_for_no_sequence_packing) + + def set_rounder(value): """Utility function to set the DynamicInferenceContext rounder.""" DynamicInferenceContext.ROUNDER = value # For backwards compatibility @@ -81,6 +97,9 @@ class DynamicEngineTestConfig: use_fixed_output_lengths: bool = False num_cuda_graphs: int = None + use_cuda_graphs_for_non_decode_steps: bool = True + fp8: bool = False + model_provider: str = "gpt" return_log_probs: bool = False materialize_only_last_token_logits: bool = True skip_prompt_log_probs_for_dynamic_inference: bool = False @@ -197,6 +216,9 @@ def _build_inference_context( test_config: DynamicEngineTestConfig, transformer_config: TransformerConfig, requests: List[DynamicInferenceRequest], + layer_type_list: Optional[List[str]], + mamba_conv_states_shape: Optional[Tuple[int]] = None, + mamba_ssm_states_shape: Optional[Tuple[int]] = None, ): """The inference context manages the KV cache and other inference state.""" @@ -208,6 +230,7 @@ def _build_inference_context( num_attention_heads=transformer_config.num_query_groups, max_sequence_length=test_config.max_sequence_length, num_cuda_graphs=test_config.num_cuda_graphs, + use_cuda_graphs_for_non_decode_steps=not test_config.model_provider == "mamba", buffer_size_gb=test_config.context_buffer_size_gb, buffer_guaranteed_fraction=test_config.context_buffer_guaranteed_fraction, block_size_tokens=test_config.context_block_size_tokens, @@ -215,6 +238,9 @@ def _build_inference_context( max_requests_override=test_config.context_max_requests_override, max_tokens_override=test_config.context_max_tokens_override, tensor_model_parallel_size=transformer_config.tensor_model_parallel_size, + layer_type_list=layer_type_list, + mamba_conv_states_shape=mamba_conv_states_shape, + mamba_ssm_states_shape=mamba_ssm_states_shape, materialize_only_last_token_logits=test_config.materialize_only_last_token_logits, use_flashinfer_fused_rope=None, # default to using flash-infer if available # this is for compatibility with the LTS environment @@ -223,6 +249,7 @@ def _build_inference_context( return context @classmethod + @torch.inference_mode() def _build_test_env(cls, test_config): Utils.initialize_model_parallel( tensor_model_parallel_size=test_config.tensor_model_parallel_size, @@ -241,72 +268,142 @@ def _build_test_env(cls, test_config): force_reset_rng=True, ) - # Transformer config. - transformer_config = TransformerConfig( - params_dtype=torch.bfloat16, - num_layers=4, - hidden_size=128 if test_config.fp8 else 32, - num_attention_heads=4, - use_cpu_initialization=True, - cuda_graph_impl=( - "local" - if test_config.num_cuda_graphs is not None and test_config.force_build_cuda_graphs - else "none" - ), - inference_rng_tracker=True, - tensor_model_parallel_size=test_config.tensor_model_parallel_size, - pipeline_model_parallel_size=test_config.pipeline_model_parallel_size, - expert_model_parallel_size=test_config.expert_model_parallel_size, - num_moe_experts=( - None - if test_config.expert_model_parallel_size == 1 - else test_config.expert_model_parallel_size - ), - sequence_parallel=test_config.sequence_parallel, - pipeline_dtype=torch.bfloat16, - add_bias_linear=test_config.expert_model_parallel_size == 1, - inference_sampling_seed=test_config.random_seed, - cuda_graph_scope=test_config.cuda_graph_scope, - ) - if test_config.fp8: - transformer_config.fp8 = "hybrid" - transformer_config.fp8_recipe = "tensorwise" - layer_spec = get_gpt_layer_with_transformer_engine_spec() - else: - layer_spec = get_gpt_layer_local_spec() - # Requests. requests = cls._build_requests(test_config) - # GPT model. - model = GPTModel( - config=transformer_config, - transformer_layer_spec=layer_spec, - vocab_size=test_config.vocab_size, - max_sequence_length=test_config.max_sequence_length, - parallel_output=True, - pre_process=parallel_state.is_pipeline_first_stage(), - post_process=parallel_state.is_pipeline_last_stage(), - ).cuda() + if test_config.model_provider == "gpt": + # Transformer config. + transformer_config = TransformerConfig( + params_dtype=torch.bfloat16, + num_layers=4, + hidden_size=128 if test_config.fp8 else 32, + num_attention_heads=4, + use_cpu_initialization=True, + cuda_graph_impl=( + "local" + if test_config.num_cuda_graphs is not None + and test_config.force_build_cuda_graphs + else "none" + ), + inference_rng_tracker=True, + tensor_model_parallel_size=test_config.tensor_model_parallel_size, + pipeline_model_parallel_size=test_config.pipeline_model_parallel_size, + expert_model_parallel_size=test_config.expert_model_parallel_size, + num_moe_experts=( + None + if test_config.expert_model_parallel_size == 1 + else test_config.expert_model_parallel_size + ), + sequence_parallel=test_config.sequence_parallel, + pipeline_dtype=torch.bfloat16, + add_bias_linear=test_config.expert_model_parallel_size == 1, + fp8="hybrid" if test_config.fp8 else None, + fp8_recipe="tensorwise" if test_config.fp8 else None, + inference_sampling_seed=test_config.random_seed, + cuda_graph_scope=test_config.cuda_graph_scope, + ) + if test_config.fp8: + layer_spec = get_gpt_layer_with_transformer_engine_spec() + else: + layer_spec = get_gpt_layer_local_spec() + + # GPT model. + model = GPTModel( + config=transformer_config, + transformer_layer_spec=layer_spec, + vocab_size=test_config.vocab_size, + max_sequence_length=test_config.max_sequence_length, + parallel_output=True, + pre_process=parallel_state.is_pipeline_first_stage(), + post_process=parallel_state.is_pipeline_last_stage(), + ).cuda() + elif test_config.model_provider == "mamba": + # Transformer config. + transformer_config = TransformerConfig( + params_dtype=torch.bfloat16, + num_layers=3, # 1 Mamba layer, 1 attention layer, 1 MLP layer + hidden_size=256, # The Mamba layer places several constraints on this + mamba_num_heads=16, + num_attention_heads=16, + use_cpu_initialization=True, + cuda_graph_impl=( + "local" + if test_config.num_cuda_graphs is not None + and test_config.force_build_cuda_graphs + else "none" + ), + inference_rng_tracker=True, + tensor_model_parallel_size=test_config.tensor_model_parallel_size, + pipeline_model_parallel_size=test_config.pipeline_model_parallel_size, + expert_model_parallel_size=test_config.expert_model_parallel_size, + num_moe_experts=( + None + if test_config.expert_model_parallel_size == 1 + else test_config.expert_model_parallel_size + ), + sequence_parallel=test_config.sequence_parallel, + pipeline_dtype=torch.bfloat16, + add_bias_linear=test_config.expert_model_parallel_size == 1, + fp8="hybrid" if test_config.fp8 else None, + fp8_recipe="tensorwise" if test_config.fp8 else None, + cuda_graph_scope=test_config.cuda_graph_scope, + ) + + # Mamba model. + model = MambaModel( + config=transformer_config, + mamba_stack_spec=mamba_stack_spec, + vocab_size=test_config.vocab_size, + max_sequence_length=test_config.max_sequence_length, + parallel_output=True, + hybrid_attention_ratio=0.3, + hybrid_mlp_ratio=0.3, + pre_process=parallel_state.is_pipeline_first_stage(), + post_process=parallel_state.is_pipeline_last_stage(), + ).cuda() + else: + raise ValueError(f"Invalid model provider {test_config.model_provider}") for param in model.parameters(): param.data = param.data.to(transformer_config.params_dtype) model.eval() + # Layer type list for hybrid models + decoder = get_attr_wrapped_model(model, "decoder") + layer_type_list = getattr(decoder, "layer_type_list", None) + if test_config.model_provider == "mamba": + mamba_states_shapes = decoder.mamba_state_shapes_per_request() + if mamba_states_shapes is not None: + (mamba_conv_states_shape, mamba_ssm_states_shape) = mamba_states_shapes + else: + # A `MambaBlock` can only not have a `MambaLayer` if using pipeline parallelism + # and a particular pipeline stage was not assigned a `MambaLayer`. + assert test_config.pipeline_model_parallel_size > 1 + mamba_conv_states_shape = None + mamba_ssm_states_shape = None + else: + mamba_conv_states_shape = None + mamba_ssm_states_shape = None + # Inference config. inference_config = InferenceWrapperConfig( hidden_size=transformer_config.hidden_size, inference_batch_times_seqlen_threshold=400, fp32_residual_connection=False, params_dtype=transformer_config.params_dtype, + fp8=transformer_config.fp8, padded_vocab_size=test_config.vocab_size, - fp8="hybrid" if test_config.fp8 else None, ) # Inference context. inference_context = cls._build_inference_context( - test_config=test_config, transformer_config=transformer_config, requests=requests + test_config=test_config, + transformer_config=transformer_config, + requests=requests, + layer_type_list=layer_type_list, + mamba_conv_states_shape=mamba_conv_states_shape, + mamba_ssm_states_shape=mamba_ssm_states_shape, ) # Inference model wrapper. @@ -348,6 +445,7 @@ def mock_detokenize_prompt(tokens): return env @classmethod + @torch.inference_mode() def _run_step(cls, env): set_rounder(4) # Step inference engine (i.e., generate one token per request). @@ -359,8 +457,8 @@ def _run_step(cls, env): finished_requests = result["finished_requests"] @classmethod + @torch.inference_mode() def _run_test(cls, **test_config_kwargs): - # Test environment. test_config = DynamicEngineTestConfig(**test_config_kwargs) env = cls._build_test_env(test_config) @@ -415,13 +513,16 @@ def teardown_method(self, method): @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) @pytest.mark.parametrize("num_cuda_graphs", [None, 1, 4]) @pytest.mark.parametrize("cuda_graph_scope", ["full", "full_iteration"]) - def test_simple(self, num_cuda_graphs, cuda_graph_scope) -> None: + def test_simple(self, model_provider, num_cuda_graphs, cuda_graph_scope) -> None: """Simple test that runs without errors, and validates output.""" + skip_if_mamba_sequence_packing_not_available(model_provider) # Run test. env = self._run_test( + model_provider=model_provider, num_cuda_graphs=num_cuda_graphs, context_max_requests_override=32, cuda_graph_scope=cuda_graph_scope, @@ -432,8 +533,8 @@ def test_simple(self, num_cuda_graphs, cuda_graph_scope) -> None: assert env.engine.context.max_requests == 32 assert env.engine.context.max_tokens == 160 - # Validate generated tokens. - expected_generated_tokens_list = [ + # Validate output tokens. + gpt_expected_generated_tokens = [ [69, 85, 55, 74], [29, 54, 85, 89], [33, 30, 64, 59], @@ -444,7 +545,26 @@ def test_simple(self, num_cuda_graphs, cuda_graph_scope) -> None: [], # this request is failed due to max sequence length overflow ] + mamba_expected_generated_tokens = [ + [74, 72, 83, 59], + [25, 54, 1, 70], + [28, 14, 15, 89], + [87, 27, 30, 52], + [44, 13, 82, 70], + [28, 74, 64, 16], + [8, 4, 83, 5], + [], + ] + + if model_provider == "gpt": + expected_generated_tokens_list = gpt_expected_generated_tokens + elif model_provider == "mamba": + expected_generated_tokens_list = mamba_expected_generated_tokens + else: + raise ValueError(f"Invalid model_provider {model_provider}") + assert len(env.requests) == len(expected_generated_tokens_list) + for request, expected_generated_tokens in zip(env.requests, expected_generated_tokens_list): assert request.generated_tokens == expected_generated_tokens, ( f"request {request.request_id}, " @@ -456,30 +576,41 @@ def test_simple(self, num_cuda_graphs, cuda_graph_scope) -> None: @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) - def test_overflow_factor(self) -> None: + def test_overflow_factor(self, model_provider: str = "gpt") -> None: """Test overflow factor arg.""" + skip_if_mamba_sequence_packing_not_available(model_provider) + # Run test. env = self._run_test( context_buffer_overflow_factor=0.1, context_max_requests_override=None, context_max_tokens_override=None, + model_provider=model_provider, ) # Validate max_requests, max_tokens. - assert env.engine.context.max_requests == 420 - assert env.engine.context.max_tokens == 420 + if model_provider == "gpt": + assert env.engine.context.max_requests == 420 + assert env.engine.context.max_tokens == 420 + elif model_provider == "mamba": + assert env.engine.context.max_requests == 16 + assert env.engine.context.max_tokens == 16 @pytest.mark.internal @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) - def test_request_overflow(self) -> None: + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + def test_request_overflow(self, model_provider: str) -> None: """Test request overflow.""" - self._run_test(context_max_requests_override=4) + skip_if_mamba_sequence_packing_not_available(model_provider) + + self._run_test(context_max_requests_override=4, model_provider=model_provider) @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) + @torch.inference_mode() def test_token_overflow_transient(self) -> None: """Test token overflow.""" test_config = DynamicEngineTestConfig( @@ -515,13 +646,17 @@ def test_token_overflow_nontransient(self) -> None: @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) - def test_block_overflow(self) -> None: + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + def test_block_overflow(self, model_provider: str) -> None: """Test block overflow.""" - env = self._build_test_env(DynamicEngineTestConfig()) + skip_if_mamba_sequence_packing_not_available(model_provider) + env = self._build_test_env(DynamicEngineTestConfig(model_provider=model_provider)) context = env.engine.context block_size_bytes = context.block_size_bytes buffer_size_gb = (block_size_bytes + 1) / 1024**3 - test_config = DynamicEngineTestConfig(context_buffer_size_gb=buffer_size_gb) + test_config = DynamicEngineTestConfig( + context_buffer_size_gb=buffer_size_gb, model_provider=model_provider + ) env = self._build_test_env(test_config) env.engine._add_request(env.requests[0]) assert list(env.engine.waiting_request_ids) == [0] @@ -530,17 +665,21 @@ def test_block_overflow(self) -> None: @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) - def test_multi_add(self) -> None: + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + def test_multi_add(self, model_provider: str) -> None: """Test adding multiple requests simultaneously.""" - self._run_test(num_gap_steps=0) + skip_if_mamba_sequence_packing_not_available(model_provider) + self._run_test(num_gap_steps=0, model_provider=model_provider) @pytest.mark.internal @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) - def test_fixed_output_lengths(self) -> None: + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + def test_fixed_output_lengths(self, model_provider: str) -> None: """Test generating a fixed number of output tokens.""" - self._run_test(use_fixed_output_lengths=True) + skip_if_mamba_sequence_packing_not_available(model_provider) + self._run_test(use_fixed_output_lengths=True, model_provider=model_provider) @pytest.mark.internal @pytest.mark.skipif( @@ -597,6 +736,7 @@ def test_cuda_graph_token_counts(self) -> None: (32, 32), ], ) + @torch.inference_mode() def test_cuda_graph_warmup( self, warmup_engine_mode: WarmupEngineMode, @@ -683,11 +823,18 @@ def test_cuda_graph_warmup( @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) - def test_generate_function(self) -> None: + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + @torch.inference_mode() + def test_generate_function(self, model_provider: str) -> None: """Test the generate function that processes multiple prompts at once.""" + skip_if_mamba_sequence_packing_not_available(model_provider) + # Set up test environment test_config = DynamicEngineTestConfig( - num_requests=4, max_prompt_length=8, num_tokens_to_generate=4 + num_requests=4, + max_prompt_length=8, + num_tokens_to_generate=4, + model_provider=model_provider, ) env = self._build_test_env(test_config) @@ -733,36 +880,55 @@ async def test_run_engine(self): Test asynchronously adding and waiting for requests while the engine is running continuously. """ - # Test environment. - test_config = DynamicEngineTestConfig(use_fixed_output_lengths=True) - env = self._build_test_env(test_config) + # Have to wrap inference mode in-line because async functions are not supported + with torch.inference_mode(): + # Test environment. + test_config = DynamicEngineTestConfig(num_requests=8, use_fixed_output_lengths=True) + env = self._build_test_env(test_config) + + engine_task = asyncio.create_task(env.engine.run_engine(verbose=False)) + + request_completion_futures: Dict[int, asyncio.Future[DynamicInferenceRequest]] = {} + + # Add requests to engine. + for request in tqdm(env.requests, "add requests"): + request_completion_futures[request.request_id] = env.engine._add_request(request) + + # Wait for all requests to complete. + await asyncio.gather(*request_completion_futures.values()) + + # Verify that all request outputs were set. + for request_id, fut in request_completion_futures.items(): + num_tokens_to_generate = env.requests[ + request_id + ].sampling_params.num_tokens_to_generate + result = fut.result() + assert result.generated_length == num_tokens_to_generate, ( + f"Request {request_id} expected to generate {num_tokens_to_generate} " + f"tokens but generated {result.generated_length}" + ) - engine_task = asyncio.create_task(env.engine.run_engine(verbose=False)) + engine_task.cancel() - request_completion_futures: Dict[int, asyncio.Future[DynamicInferenceRequest]] = {} + @pytest.mark.internal + @pytest.mark.skipif( + not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" + ) + @pytest.mark.skipif(not is_te_min_version("2.2.0"), reason="TE 2.2.0 is required") + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + def test_fp8_inference(self, model_provider: str): + skip_if_mamba_sequence_packing_not_available(model_provider) - # Add requests to engine. - for request in tqdm(env.requests, "add requests"): - request_completion_futures[request.request_id] = env.engine._add_request(request) - - # Wait for all requests to complete. - await asyncio.gather(*request_completion_futures.values()) - - # Verify that all request outputs were set. - for request_id, fut in request_completion_futures.items(): - num_tokens_to_generate = env.requests[request_id].sampling_params.num_tokens_to_generate - result = fut.result() - assert result.generated_length == num_tokens_to_generate, ( - f"Request {request_id} expected to generate {num_tokens_to_generate} " - f"tokens but generated {result.generated_length}" - ) + fp8_available, reason_for_no_fp8 = check_fp8_support() + if not fp8_available: + pytest.skip(reason_for_no_fp8) - engine_task.cancel() + self._run_test(model_provider=model_provider, fp8=True) - @pytest.mark.internal @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) + @torch.inference_mode() def test_return_log_probs(self): """Verify that returning log probs does not raise any error.""" # Returning log probs requires materializing the full prompt logits or @@ -785,9 +951,19 @@ def test_return_log_probs(self): @pytest.mark.parametrize("ep_size", [1, 2]) @pytest.mark.parametrize("pp_size", [1, 2]) @pytest.mark.parametrize("tp_size", [1, 2]) + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + @torch.inference_mode() def test_parallel_inference( - self, tp_size, pp_size, ep_size, sequence_parallel, materialize_only_last_token_logits + self, + model_provider, + tp_size, + pp_size, + ep_size, + sequence_parallel, + materialize_only_last_token_logits, ): + skip_if_mamba_sequence_packing_not_available(model_provider) + if tp_size == 1 and pp_size == 1 and ep_size == 1: pytest.skip(reason="Test requires tp_size > 1 or pp_size > 1 or ep_size > 1") elif not torch.distributed.is_initialized(): @@ -800,7 +976,16 @@ def test_parallel_inference( pytest.skip(reason="Sequence parallelism requires tp_size > 1") elif tp_size > 1 and ep_size > 1 and not sequence_parallel: pytest.skip(reason="Sequence parallelism must be used with tp_size > 1 and ep_size > 1") + elif pp_size > 1 and model_provider == "mamba": + pytest.skip( + reason=( + "Running hybrid models with pp_size > 1 and no attention on some " + "pipeline stages is not supported yet." + ) + ) + env = self._run_test( + model_provider=model_provider, tensor_model_parallel_size=tp_size, pipeline_model_parallel_size=pp_size, expert_model_parallel_size=ep_size, @@ -881,6 +1066,32 @@ def test_events(self): assert result_event_types == expected_event_types + @pytest.mark.internal + @pytest.mark.skipif( + not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" + ) + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + @torch.inference_mode() + def test_chunked_prefill(self, model_provider: str): + """Verify that chunked prefill output is equivalent to regular prefill.""" + skip_if_mamba_sequence_packing_not_available(model_provider) + + prompt_length = 1200 + num_tokens_to_generate = 16 + max_sequence_length = prompt_length + num_tokens_to_generate + + # Configure context to force chunking (chunked prefill is enabled by default) + env = self._run_test( + num_requests=1, + min_prompt_length=prompt_length, + max_prompt_length=prompt_length, + num_tokens_to_generate=num_tokens_to_generate, + materialize_only_last_token_logits=False, + model_provider=model_provider, + context_block_size_tokens=256, + context_max_tokens_override=300, + ) + if __name__ == "__main__": test = TestDynamicInferenceEngine() diff --git a/tools/run_inference_performance_test.py b/tools/run_inference_performance_test.py index 2f2adabc0ab..01e5ab58898 100644 --- a/tools/run_inference_performance_test.py +++ b/tools/run_inference_performance_test.py @@ -1,83 +1,59 @@ # Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -import os -from megatron.core.inference.model_inference_wrappers.inference_wrapper_config import ( - InferenceWrapperConfig, -) import argparse +import os import random -import torch import sys import time -import tqdm -import warnings -from model_provider import model_provider + +import torch + from gpt_builders import gpt_builder from mamba_builders import mamba_builder -from megatron.core.inference.engines.abstract_engine import AbstractEngine +from megatron.core.inference.contexts import DynamicInferenceContext from megatron.core.inference.engines import DynamicInferenceEngine, StaticInferenceEngine +from megatron.core.inference.engines.abstract_engine import AbstractEngine from megatron.core.inference.inference_request import InferenceRequest -from megatron.core.inference.contexts import DynamicInferenceContext -from megatron.core.inference.sampling_params import SamplingParams from megatron.core.inference.model_inference_wrappers.gpt.gpt_inference_wrapper import ( GPTInferenceWrapper, ) +from megatron.core.inference.model_inference_wrappers.inference_wrapper_config import ( + InferenceWrapperConfig, +) +from megatron.core.inference.sampling_params import SamplingParams from megatron.core.inference.text_generation_controllers.text_generation_controller import ( TextGenerationController, ) +from megatron.core.ssm.mamba_hybrid_layer_allocation import Symbols from megatron.core.transformer.module import MegatronModule +from megatron.core.utils import get_attr_wrapped_model +from model_provider import model_provider sys.path.append( os.path.abspath(os.path.join(os.path.dirname(__file__), os.path.pardir, os.path.pardir)) ) -from megatron.training import get_args -from megatron.training import get_tokenizer -from megatron.training.checkpointing import load_checkpoint -from megatron.core import mpu -from megatron.training.initialize import initialize_megatron -from megatron.training import get_model, get_tokenizer import asyncio from functools import partial -from typing import AsyncIterator, List, Union +from typing import List, Union + +from examples.inference.gpt.utils import add_common_inference_args +from megatron.core import mpu +from megatron.training import get_args, get_model, get_tokenizer +from megatron.training.checkpointing import load_checkpoint +from megatron.training.initialize import initialize_megatron REQUEST_ID = 0 -def add_text_generate_args(parser): - """Text generation arguments.""" - group = parser.add_argument_group(title='text generation') +def add_inference_benchmarking_args(parser): + """Inference benchmarking arguments.""" + parser = add_common_inference_args(parser) + + group = parser.add_argument_group(title='inference_benchmarking') - group.add_argument("--temperature", type=float, default=1.0, help='Sampling temperature.') - group.add_argument("--top_k", type=int, default=1, help='Top k sampling.') - group.add_argument("--top_p", type=float, default=0.0, help='Top p sampling.') - group.add_argument( - "--return-log-probs", - action='store_true', - default=False, - help='Return the log probabilities of the final output tokens', - ) - group.add_argument("--top-n-logprobs", type=int, default=0, help="Top-N logprobs") - group.add_argument( - "--num-tokens-to-generate", - type=int, - default=30, - help='Number of tokens to generate for each prompt', - ) - group.add_argument( - "--prompts", - metavar='N', - type=str, - default=None, - nargs='+', - help='Input prompts with each prompt within quotes and seperated by space', - ) - group.add_argument( - "--num-input-tokens", type=int, default=None, help='Number of input tokens per prompt' - ) - group.add_argument("--stream", action="store_true", default=False, help="Stream output tokens") group.add_argument( - "--model-provider", choices=["mamba", "gpt"], default="gpt", help="Model provider" + "--num-input-tokens", type=int, default=128, help="Number of input tokens per request" ) group.add_argument( "--engine-type", choices=["static", "dynamic"], default="static", help="Engine type" @@ -85,14 +61,13 @@ def add_text_generate_args(parser): group.add_argument( "--benchmark-profile", action="store_true", default=False, help="If set, profile" ) + group.add_argument('--stream', action="store_true", default=False, help="If set, stream tokens") return parser def get_inference_engine(args: argparse.Namespace, model: MegatronModule) -> AbstractEngine: """Utility to get the relevant backend for running inference - This function will automatically chose the TRTLLMBackend when possible, and if not revert to Mcore backend if the user does not specify any backends. TRT LLM Backend is not implmented yet. - Args: args (Namespace): The user arguments parsed from command line model (MegatronModule): The megatron model . @@ -111,9 +86,18 @@ def get_inference_engine(args: argparse.Namespace, model: MegatronModule) -> Abs inference_max_requests=args.inference_max_batch_size, inference_max_seq_length=args.inference_max_seq_length, nccl_all_reduce_for_prefill=args.nccl_all_reduce_for_prefill, - moe_pad_experts_for_cuda_graph_inference = args.moe_pad_experts_for_cuda_graph_inference + moe_pad_experts_for_cuda_graph_inference=args.moe_pad_experts_for_cuda_graph_inference, ) + # Layer type list for hybrid models + decoder = get_attr_wrapped_model(model, "decoder") + layer_type_list = getattr(decoder, "layer_type_list", None) + if layer_type_list is not None and Symbols.MAMBA in layer_type_list: + (mamba_conv_states_shape, mamba_ssm_states_shape) = decoder.mamba_state_shapes_per_request() + else: + mamba_conv_states_shape = None + mamba_ssm_states_shape = None + if args.engine_type == "static": inference_wrapped_model = GPTInferenceWrapper(model, inference_wrapper_config) inference_wrapped_model.model_is_pipeline_parallel = not ( @@ -132,12 +116,28 @@ def get_inference_engine(args: argparse.Namespace, model: MegatronModule) -> Abs args.num_query_groups if args.group_query_attention else args.num_attention_heads ), max_sequence_length=args.inference_max_seq_length, + num_cuda_graphs=( + args.inference_dynamic_batching_num_cuda_graphs + if args.cuda_graph_impl == "local" + else None + ), buffer_size_gb=args.inference_dynamic_batching_buffer_size_gb, buffer_guaranteed_fraction=args.inference_dynamic_batching_buffer_guaranteed_fraction, buffer_overflow_factor=args.inference_dynamic_batching_buffer_overflow_factor, max_requests_override=args.inference_dynamic_batching_max_requests_override, max_tokens_override=args.inference_dynamic_batching_max_tokens_override, block_size_tokens=args.inference_dynamic_batching_block_size, + tensor_model_parallel_size=args.tensor_model_parallel_size, + materialize_only_last_token_logits=not args.return_log_probs, + layer_type_list=layer_type_list, + mamba_conv_states_shape=mamba_conv_states_shape, + mamba_ssm_states_shape=mamba_ssm_states_shape, + cache_mla_latent=args.multi_latent_attention and args.cache_mla_latents, + kv_lora_rank=args.kv_lora_rank if args.multi_latent_attention else None, + qk_pos_emb_head_dim=args.qk_pos_emb_head_dim, + use_cuda_graphs_for_non_decode_steps=not args.decode_only_cuda_graphs, + use_flashinfer_fused_rope=args.use_flashinfer_fused_rope, + unified_memory_level=args.inference_dynamic_batching_unified_memory_level, ) inference_wrapped_model = GPTInferenceWrapper( model, inference_wrapper_config, inference_context=context @@ -269,7 +269,7 @@ def main(): # Note: The default args passed here can be overwritten by using appropriate params (check arguments.py file) # Micro batch size is not needed to be set by user. (It is calculated based on inference-batch-times-seqlen-threshold argument) initialize_megatron( - extra_args_provider=add_text_generate_args, + extra_args_provider=add_inference_benchmarking_args, args_defaults={ 'no_load_rng': True, 'no_load_optim': True, @@ -285,6 +285,8 @@ def main(): model_builder = gpt_builder elif args.model_provider == "mamba": model_builder = mamba_builder + else: + raise ValueError(f"Invalid model provider {args.model_provider}") model = get_model(partial(model_provider, model_builder), wrap_with_ddp=False) tokenizer = get_tokenizer() @@ -338,10 +340,7 @@ def main(): print(f"Running warmup for CUDA graphs...") warmup_sampling_params = SamplingParams(num_tokens_to_generate=10) warmup_sampling_params.add_attributes({"no_early_termination": True}) - if args.engine_type == "static": - inference_engine.generate(prompts=["warmup"], sampling_params=warmup_sampling_params) - elif args.engine_type == "dynamic": - generate_dynamic(args, requests, inference_engine) + inference_engine.generate(prompts=["warmup"], sampling_params=warmup_sampling_params) if args.benchmark_profile: torch.cuda.cudart().cudaProfilerStart() From 82e846d4751e6828871b703c88ccdb50391b0142 Mon Sep 17 00:00:00 2001 From: Teodor-Dumitru Ene <34819528+tdene@users.noreply.github.com> Date: Mon, 10 Nov 2025 05:10:01 -0600 Subject: [PATCH 10/27] Async task and event loop safety in Megatron Core (#2025) Co-authored-by: Robert Kirby --- .../gpt_dynamic_inference_with_coordinator.py | 4 ++ megatron/core/inference/async_stream.py | 10 +++- .../data_parallel_inference_coordinator.py | 7 +++ .../core/inference/engines/dynamic_engine.py | 36 +++++++---- .../core/inference/engines/static_engine.py | 10 +--- megatron/core/inference/inference_client.py | 4 +- .../text_generation_controller.py | 6 +- megatron/core/inference/utils.py | 28 +++++++++ megatron/core/utils.py | 59 ++++++++++++++++++- megatron/rl/__init__.py | 41 ------------- megatron/rl/agent/api.py | 6 +- 11 files changed, 144 insertions(+), 67 deletions(-) diff --git a/examples/inference/gpt/gpt_dynamic_inference_with_coordinator.py b/examples/inference/gpt/gpt_dynamic_inference_with_coordinator.py index 7b5de5c21f2..9e2b6bfa983 100644 --- a/examples/inference/gpt/gpt_dynamic_inference_with_coordinator.py +++ b/examples/inference/gpt/gpt_dynamic_inference_with_coordinator.py @@ -20,6 +20,10 @@ from megatron.training.arguments import parse_args from megatron.core import parallel_state +import logging + +logging.basicConfig(level=logging.INFO, force=True) + async def main( engine: DynamicInferenceEngine, requests: List[Request], diff --git a/megatron/core/inference/async_stream.py b/megatron/core/inference/async_stream.py index 1bf8775e368..6c3242a13db 100644 --- a/megatron/core/inference/async_stream.py +++ b/megatron/core/inference/async_stream.py @@ -9,6 +9,7 @@ from typing import Any, AsyncGenerator, Callable, Optional, Type, Union from megatron.core.inference.inference_request import InferenceRequest +from megatron.core.utils import get_asyncio_loop STOP_ITERATION = Exception() @@ -20,12 +21,17 @@ class AsyncStream: Adopted from https://github.com/vllm-project/vllm/blob/eb881ed006ca458b052905e33f0d16dbb428063a/vllm/v1/engine/async_stream.py # pylint: disable=line-too-long """ - def __init__(self, request_id: int, cancel: Callable[[str], None]) -> None: + def __init__( + self, + request_id: int, + cancel: Callable[[str], None], + loop: Optional[asyncio.AbstractEventLoop] = None, + ) -> None: self._request_id = request_id self._cancel = cancel self._queue: asyncio.Queue = asyncio.Queue() self._finished = False - self._loop = asyncio.get_running_loop() + self._loop = get_asyncio_loop(loop) def put(self, item: Union[InferenceRequest, Exception]) -> None: """Adds a new value to the stream""" diff --git a/megatron/core/inference/data_parallel_inference_coordinator.py b/megatron/core/inference/data_parallel_inference_coordinator.py index ea0560183d8..0045d5947a1 100644 --- a/megatron/core/inference/data_parallel_inference_coordinator.py +++ b/megatron/core/inference/data_parallel_inference_coordinator.py @@ -1,6 +1,8 @@ # Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +import faulthandler import logging +import signal from collections import deque from itertools import cycle from multiprocessing import Event @@ -23,6 +25,11 @@ except: HAVE_MSGPACK = False +# Register faulthandler to emit stack traces upon process kill. +faulthandler.enable() +faulthandler.register(signal.SIGTERM, all_threads=False, chain=True) +faulthandler.register(signal.SIGINT, all_threads=False, chain=True) + class DataParallelInferenceCoordinator: """ diff --git a/megatron/core/inference/engines/dynamic_engine.py b/megatron/core/inference/engines/dynamic_engine.py index 2c43a7e2611..4bff4f85fa8 100644 --- a/megatron/core/inference/engines/dynamic_engine.py +++ b/megatron/core/inference/engines/dynamic_engine.py @@ -33,8 +33,8 @@ from megatron.core.inference.text_generation_controllers.text_generation_controller import ( TextGenerationController, ) -from megatron.core.inference.utils import Counter -from megatron.core.utils import get_asyncio_loop +from megatron.core.inference.utils import Counter, await_process_event +from megatron.core.utils import get_asyncio_loop, trace_async_exceptions try: from tqdm import tqdm @@ -293,7 +293,11 @@ def create_cuda_graphs(self, reset_context: bool = True): self.capture_stats = capture_stats async def start_listening_to_data_parallel_coordinator( - self, inference_coordinator_port: int, launch_inference_coordinator: bool = True + self, + inference_coordinator_port: int, + launch_inference_coordinator: bool = True, + *, + loop: Optional[asyncio.AbstractEventLoop] = None, ): """Initializes ZMQ communication to connect the engine with an inference coordinator. @@ -407,12 +411,14 @@ async def start_listening_to_data_parallel_coordinator( torch.distributed.barrier(parallel_state.get_tensor_model_parallel_group()) if launch_inference_coordinator and torch.distributed.get_rank() == 0: - coordinator_ready_event.wait() + await await_process_event(coordinator_ready_event, self.inference_coordinator_process) logging.info("Inference co-ordinator is ready to receive requests!") # Finally run the engine infinite loop - self.engine_loop_task = asyncio.create_task(self.run_engine_with_coordinator()) + loop = get_asyncio_loop(loop) + self.engine_loop_task = loop.create_task(self.run_engine_with_coordinator(loop=loop)) + @trace_async_exceptions async def _notify_cond_for_new_request(self): """Helper function to notify condition variable when a new request is added.""" async with self._cond: @@ -466,7 +472,7 @@ def _add_request( self.waiting_request_ids.append(request_id) # Create a new asyncio Future to notify the user when the request has completed. - self.request_completion_futures[request_id] = asyncio.Future() + self.request_completion_futures[request_id] = self._loop.create_future() return self.request_completion_futures[request_id] def add_request( @@ -641,7 +647,7 @@ def schedule_non_chunked_prefill(self): if request_can_be_added and request_tokens_can_be_added and kv_cache_available: self.context.add_request(req) self._loop.call_soon_threadsafe( - asyncio.create_task, self._notify_cond_for_new_request() + self._loop.create_task, self._notify_cond_for_new_request() ) req.remaining_prompt_tokens = req.remaining_prompt_tokens.new_empty(0) req.add_event_add() @@ -720,7 +726,7 @@ def schedule_chunked_prefill(self): self.context.chunked_prefill_request_id = -1 self.context.add_request(req) self._loop.call_soon_threadsafe( - asyncio.create_task, self._notify_cond_for_new_request() + self._loop.create_task, self._notify_cond_for_new_request() ) req.remaining_prompt_tokens = req.remaining_prompt_tokens.new_empty(0) req.add_event_add() @@ -732,7 +738,7 @@ def schedule_chunked_prefill(self): chunk_length = self.context.max_tokens - self.context.active_token_count self.context.add_request(req, chunk_length=chunk_length) self._loop.call_soon_threadsafe( - asyncio.create_task, self._notify_cond_for_new_request() + self._loop.create_task, self._notify_cond_for_new_request() ) self.context.chunked_prefill_request_id = req.request_id req.remaining_prompt_tokens = req.remaining_prompt_tokens[chunk_length:] @@ -1039,8 +1045,12 @@ def stop(self): self.zmq_context.term() parallel_state.destroy_model_parallel() - async def run_engine(self, *, verbose: Optional[bool] = False): + @trace_async_exceptions + async def run_engine( + self, *, loop: Optional[asyncio.AbstractEventLoop] = None, verbose: Optional[bool] = False + ): """Continually steps the engine asynchronously.""" + self._loop = get_asyncio_loop(loop) try: while True: # Wait until there are active requests before proceeding. @@ -1054,8 +1064,12 @@ async def run_engine(self, *, verbose: Optional[bool] = False): except asyncio.CancelledError: pass - async def run_engine_with_coordinator(self, *, verbose: Optional[bool] = False): + @trace_async_exceptions + async def run_engine_with_coordinator( + self, *, loop: Optional[asyncio.AbstractEventLoop] = None, verbose: Optional[bool] = False + ): """Continually steps the engine asynchronously.""" + self._loop = get_asyncio_loop(loop) try: while True: self.schedule_requests() diff --git a/megatron/core/inference/engines/static_engine.py b/megatron/core/inference/engines/static_engine.py index d084528b8f2..dc86eb775f9 100644 --- a/megatron/core/inference/engines/static_engine.py +++ b/megatron/core/inference/engines/static_engine.py @@ -17,6 +17,7 @@ from megatron.core.inference.text_generation_controllers.text_generation_controller import ( TextGenerationController, ) +from megatron.core.utils import get_asyncio_loop try: from tqdm import tqdm @@ -217,11 +218,6 @@ def generate_using_dynamic_engine( generated tokens, texts and log probs if required """ assert hasattr(self, 'dynamic_engine'), "Dynamic engine not initialized" - try: - loop = asyncio.get_running_loop() - except RuntimeError: # 'RuntimeError: There is no current event loop...' - loop = asyncio.new_event_loop() - asyncio.set_event_loop(loop) if common_inference_params: sampling_params = common_inference_params @@ -385,8 +381,8 @@ def _wrapped_run_engine(self, cuda_device): torch.cuda.set_device(cuda_device) self.run_engine() - async def run_engine_async(self): + async def run_engine_async(self, loop: Optional[asyncio.AbstractEventLoop] = None): """Runs the engine asynchronously using asyncio""" - loop = asyncio.get_running_loop() + loop = get_asyncio_loop(loop) await loop.run_in_executor(None, self._wrapped_run_engine, torch.cuda.current_device()) diff --git a/megatron/core/inference/inference_client.py b/megatron/core/inference/inference_client.py index 59b9144a207..53daac091b0 100644 --- a/megatron/core/inference/inference_client.py +++ b/megatron/core/inference/inference_client.py @@ -8,6 +8,7 @@ from megatron.core.inference.inference_request import DynamicInferenceRequest from megatron.core.inference.sampling_params import SamplingParams +from megatron.core.utils import get_asyncio_loop, trace_async_exceptions from .headers import Headers @@ -103,10 +104,11 @@ def add_request( payload_serialized = msgpack.packb(payload, use_bin_type=True) self.socket.send(payload_serialized) assert request_id not in self.completion_futures - self.completion_futures[request_id] = asyncio.get_event_loop().create_future() + self.completion_futures[request_id] = get_asyncio_loop().create_future() self.request_submission_times[request_id] = time.perf_counter() return self.completion_futures[request_id] + @trace_async_exceptions async def _listen_for_completed_requests(self): """ Listens for completed inference requests from the coordinator. diff --git a/megatron/core/inference/text_generation_controllers/text_generation_controller.py b/megatron/core/inference/text_generation_controllers/text_generation_controller.py index c2717767fed..65b133aa018 100644 --- a/megatron/core/inference/text_generation_controllers/text_generation_controller.py +++ b/megatron/core/inference/text_generation_controllers/text_generation_controller.py @@ -762,10 +762,12 @@ async def async_generate_output_tokens_dynamic_batch( @torch.inference_mode() def generate_output_tokens_dynamic_batch( - self, active_sampling_map: List[Tuple[SamplingParams, List[int]]] + self, + active_sampling_map: List[Tuple[SamplingParams, List[int]]], + loop: Optional[asyncio.AbstractEventLoop] = None, ) -> Optional[Dict]: """Synchronous wrapper for `self.async_generate_output_tokens_dynamic_batch.""" - loop = get_asyncio_loop() + loop = get_asyncio_loop(loop) return loop.run_until_complete( self.async_generate_output_tokens_dynamic_batch(active_sampling_map) ) diff --git a/megatron/core/inference/utils.py b/megatron/core/inference/utils.py index 985042f31e3..d58f3c3a652 100644 --- a/megatron/core/inference/utils.py +++ b/megatron/core/inference/utils.py @@ -1,5 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. All rights reserved. +import asyncio +import multiprocessing + import torch from megatron.core.transformer.moe.moe_layer import MoELayer @@ -133,3 +136,28 @@ def tensor_swap(x, src_idxs, dst_idxs): Swap x[src_idxs] and x[dst_idxs] """ x[dst_idxs], x[src_idxs] = x[src_idxs], x[dst_idxs] + + +async def await_process_event( + event: multiprocessing.Event, process: multiprocessing.Process, timeout: float = 1.0 +) -> None: + """Repeatedly wait for a multiprocessing event to be set, aborting upon process failure. + + Note that the timeout in this function is only for checking process liveness. + Its value should be set to a relatively high number. The only problem a high timeout + introduces is that an error is raised slighly later. + The timeout does not have any effect on the event-waiting, only on process failure detection. + + Args: + event: The multiprocessing event to wait on. + process: The process to monitor for failure. + timeout: The timeout for each wait iteration in seconds. + """ + while True: + signal = await asyncio.to_thread(event.wait, timeout) + if signal: + return + if not process.is_alive(): + raise RuntimeError( + f"Process {process.name} (pid {process.pid}) has exited unexpectedly." + ) diff --git a/megatron/core/utils.py b/megatron/core/utils.py index 93b2e593d84..f8954feede8 100644 --- a/megatron/core/utils.py +++ b/megatron/core/utils.py @@ -17,14 +17,16 @@ import time import traceback import warnings +from collections import defaultdict from contextlib import contextmanager, nullcontext from dataclasses import dataclass from datetime import datetime from functools import lru_cache, reduce, wraps from importlib.metadata import version from types import TracebackType -from typing import Any, Callable, Dict, List, Optional, Tuple, Type, Union +from typing import Any, Callable, Coroutine, Dict, List, Optional, Tuple, Type, Union +import numpy import torch from megatron.core import config @@ -2095,3 +2097,58 @@ def get_asyncio_loop(loop: asyncio.AbstractEventLoop | None = None) -> asyncio.A loop = asyncio.new_event_loop() asyncio.set_event_loop(loop) return loop + + +_ASYNC_TASK_STATS = defaultdict(lambda: [0, 0.0]) # cnt, total_time + + +def trace_async_exceptions( + func: Optional[Callable[..., Coroutine]], *, verbose: bool = False +) -> Callable[..., Coroutine]: + """Decorator to be applied to every coroutine that runs in a separate task. + + This is needed because asyncio tasks do not propagate exceptions. + Coroutines running inside separate tasks will fail silently if not decorated. + + Passing in `verbose=True` will print additional lifetime logging information about the task. + Such functionality is relied on by some users, and can be enabled as shown below: + ``` + @trace_async_exceptions(verbose=True) + async def my_coroutine(...): + ... + ``` + """ + + def _decorate(fn): + if not asyncio.iscoroutinefunction(fn): + raise TypeError("trace_async_exceptions can only be used with async functions") + + @functools.wraps(fn) + async def wrapper(*args, **kwargs): + if verbose: + start = time.perf_counter() + try: + return await fn(*args, **kwargs) + except Exception as e: + logger.error(f"Exception in async function {fn.__name__}: {e}") + traceback.print_exc() + sys.exit(1) + finally: + if verbose: + elapsed = (time.perf_counter() - start) * 1000.0 + name = fn.__qualname__ + cnt, tot = _ASYNC_TASK_STATS[name] + _ASYNC_TASK_STATS[name] = [cnt + 1, tot + elapsed] + avg = _ASYNC_TASK_STATS[name][1] / _ASYNC_TASK_STATS[name][0] + + log10 = numpy.log10(max(cnt, 1)) + if numpy.isclose(log10, round(log10)): + logger.info( + f"{name} completed in {elapsed:.3f} ms, " + f"lifetime avg: {avg:.3f} ms, " + f"lifetime cnt: {cnt + 1}" + ) + + return wrapper + + return _decorate if func is None else _decorate(func) diff --git a/megatron/rl/__init__.py b/megatron/rl/__init__.py index 035da465519..d3ae2fefd16 100644 --- a/megatron/rl/__init__.py +++ b/megatron/rl/__init__.py @@ -12,7 +12,6 @@ from pydantic import BaseModel, ConfigDict, Field from typing_extensions import Self, Type - def import_class(class_path: str) -> Type: """Import a class from a string path. @@ -76,43 +75,3 @@ class Request(BaseModel): """Generation Request.""" generation_args: GenericGenerationArgs = GenericGenerationArgs() - - -from collections import defaultdict - -_STATS = defaultdict(lambda: [0, 0.0]) # cnt, total_time - - -def trace_async_exceptions(fn: Callable[..., Coroutine]) -> Callable[..., Coroutine]: - """Decorator to be applied to every coroutine that runs in a separate task. - - This is needed because asyncio tasks do not propagate exceptions. - Coroutines running inside separate tasks will fail silently if not decorated. - """ - if not asyncio.iscoroutinefunction(fn): - raise TypeError("trace_async_exceptions can only be used with async functions") - - @functools.wraps(fn) - async def wrapper(*args, **kwargs): - start = time.perf_counter() - try: - return await fn(*args, **kwargs) - except Exception as e: - print(f"Exception in async function {fn.__name__}: {e}") - traceback.print_exc() - sys.exit(1) - finally: - elapsed = (time.perf_counter() - start) * 1000.0 - name = fn.__qualname__ - cnt, tot = _STATS[name] - _STATS[name] = [cnt + 1, tot + elapsed] - avg = _STATS[name][1] / _STATS[name][0] - import numpy as np - - log10 = np.log10(max(cnt, 1)) - if np.isclose(log10, round(log10)): - print( - f"{name} completed in {elapsed:.3f} ms, lifetime avg: {avg:.3f} ms, lifetime cnt: {cnt + 1}" - ) - - return wrapper diff --git a/megatron/rl/agent/api.py b/megatron/rl/agent/api.py index 3e16f74599f..fce7c3073ee 100644 --- a/megatron/rl/agent/api.py +++ b/megatron/rl/agent/api.py @@ -8,7 +8,7 @@ import numpy as np from pydantic import BaseModel -from ..__init__ import Request, TypeLookupable, trace_async_exceptions +from ..__init__ import Request, TypeLookupable from ..inference import ( ChatInferenceInterface, ChatInferenceRequest, @@ -18,6 +18,8 @@ ReturnsRaw, ) +from megatron.core.utils import trace_async_exceptions + class AgentBaseModel(BaseModel, extra='allow'): pass @@ -192,7 +194,7 @@ async def get_grouped_rollouts(self, request: GroupedRolloutRequest): ) submitted_groups = 0 - @trace_async_exceptions + @trace_async_exceptions(verbose=True) async def group_task(): nonlocal submitted_groups while request.num_groups == -1 or submitted_groups < request.num_groups: From c193bf543d6089cdcc952535567f42d747777e3b Mon Sep 17 00:00:00 2001 From: Teodor-Dumitru Ene <34819528+tdene@users.noreply.github.com> Date: Mon, 10 Nov 2025 07:34:50 -0600 Subject: [PATCH 11/27] Rename skip_prompt_log_probs (#2181) --- megatron/core/inference/sampling_params.py | 1 + .../text_generation_controller.py | 5 +---- megatron/rl/inference/megatron.py | 2 +- .../inference/engines/test_dynamic_engine.py | 10 +++------- 4 files changed, 6 insertions(+), 12 deletions(-) diff --git a/megatron/core/inference/sampling_params.py b/megatron/core/inference/sampling_params.py index a64e2e56775..e215b3f134b 100644 --- a/megatron/core/inference/sampling_params.py +++ b/megatron/core/inference/sampling_params.py @@ -21,6 +21,7 @@ class SamplingParams: top_k: int = 0 top_p: float = 0.0 return_log_probs: bool = False + skip_prompt_log_probs: bool = False return_segments: bool = False # Whether to return individually detokenized tokens num_tokens_to_generate: int = 30 num_tokens_total: Optional[int] = None # Cannot set both this and num_tokens_to_generate diff --git a/megatron/core/inference/text_generation_controllers/text_generation_controller.py b/megatron/core/inference/text_generation_controllers/text_generation_controller.py index 65b133aa018..002e72bf0b4 100644 --- a/megatron/core/inference/text_generation_controllers/text_generation_controller.py +++ b/megatron/core/inference/text_generation_controllers/text_generation_controller.py @@ -626,11 +626,8 @@ def _dynamic_step_calculate_log_probs( return_log_probs = False for sampling_params, mask in active_sampling_map: if sampling_params.return_log_probs: - skip_prompt_log_probs_for_dynamic_inference = getattr( - sampling_params, "skip_prompt_log_probs_for_dynamic_inference", False - ) assert ( - skip_prompt_log_probs_for_dynamic_inference + sampling_params.skip_prompt_log_probs or materialize_only_last_token_logits is False ), "Materialize only last token logits must be false for returning log probs" return_log_probs = True diff --git a/megatron/rl/inference/megatron.py b/megatron/rl/inference/megatron.py index 5cb91d6c952..58613b364a6 100644 --- a/megatron/rl/inference/megatron.py +++ b/megatron/rl/inference/megatron.py @@ -183,7 +183,7 @@ async def base_generate(self, request: InferenceRequest): top_p=request.generation_args.top_p or 0.0, termination_id=self._coordinator.engine.controller.tokenizer.eod, return_log_probs=True, - skip_prompt_log_probs_for_dynamic_inference=True, + skip_prompt_log_probs=True, add_BOS=tokenizer.bos is not None, ) request_ids = [ diff --git a/tests/unit_tests/inference/engines/test_dynamic_engine.py b/tests/unit_tests/inference/engines/test_dynamic_engine.py index 3ec7f80499b..f3c05257552 100644 --- a/tests/unit_tests/inference/engines/test_dynamic_engine.py +++ b/tests/unit_tests/inference/engines/test_dynamic_engine.py @@ -102,7 +102,7 @@ class DynamicEngineTestConfig: model_provider: str = "gpt" return_log_probs: bool = False materialize_only_last_token_logits: bool = True - skip_prompt_log_probs_for_dynamic_inference: bool = False + skip_prompt_log_probs: bool = False cuda_graph_scope: str = "full_iteration" force_build_cuda_graphs: bool = False # If False, do not build cuda graphs in the tests, even if @@ -183,6 +183,7 @@ def _build_requests(cls, test_config: DynamicEngineTestConfig) -> List[DynamicIn -1 if test_config.use_fixed_output_lengths else test_config.vocab_size - 1 ), return_log_probs=test_config.return_log_probs, + skip_prompt_log_probs=test_config.skip_prompt_log_probs, ) if not hasattr(sampling_params, "num_tokens_total"): # Remove this if statement branch in megatron-core 0.16 @@ -190,11 +191,6 @@ def _build_requests(cls, test_config: DynamicEngineTestConfig) -> List[DynamicIn else: sampling_params.num_tokens_total = num_tokens_total - config_entry = test_config.skip_prompt_log_probs_for_dynamic_inference - sampling_params.add_attributes( - {"skip_prompt_log_probs_for_dynamic_inference": config_entry} - ) - # Request. prompt_tokens = torch.randint( 0, @@ -939,7 +935,7 @@ def test_return_log_probs(self): env = self._run_test( return_log_probs=True, materialize_only_last_token_logits=True, - skip_prompt_log_probs_for_dynamic_inference=True, + skip_prompt_log_probs=True, ) @pytest.mark.internal From d6979d6cceb0007eec7c8960738f4dc0276bb540 Mon Sep 17 00:00:00 2001 From: Lawrence McAfee <85179052+lmcafee-nvidia@users.noreply.github.com> Date: Mon, 10 Nov 2025 09:17:26 -0500 Subject: [PATCH 12/27] Dynamic inference context | UVM only. (#1983) Co-authored-by: Robert Kirby Co-authored-by: Mcore Bot Co-authored-by: Teodor-Dumitru Ene --- .../inference/gpt/gpt_dynamic_inference.py | 24 +- .../gpt/gpt_dynamic_inference_12b.sh | 8 +- .../gpt/gpt_dynamic_inference_357m.sh | 8 +- examples/inference/gpt/utils.py | 40 ++- .../contexts/dynamic_block_allocator.py | 86 +++-- .../inference/contexts/dynamic_context.py | 302 ++++++++---------- .../core/inference/engines/dynamic_engine.py | 18 +- .../core/inference/engines/static_engine.py | 2 +- megatron/training/arguments.py | 36 +-- .../contexts/test_dynamic_context.py | 238 ++++++-------- .../inference/engines/test_dynamic_engine.py | 125 ++------ .../inference/test_wandb_logging.py | 30 +- .../test_simple_text_generation_controller.py | 3 +- 13 files changed, 382 insertions(+), 538 deletions(-) diff --git a/examples/inference/gpt/gpt_dynamic_inference.py b/examples/inference/gpt/gpt_dynamic_inference.py index 251aa100cba..fc2d17c1ebd 100644 --- a/examples/inference/gpt/gpt_dynamic_inference.py +++ b/examples/inference/gpt/gpt_dynamic_inference.py @@ -132,6 +132,7 @@ def get_inference_context( """The inference context manages the KV cache and other inference state.""" args = get_args() + # Max sequence length. if calculate_max_sequence_length_from_requests: max_gen_length = sampling_params.num_tokens_to_generate @@ -159,11 +160,8 @@ def get_inference_context( else None ), block_size_tokens=args.inference_dynamic_batching_block_size, - buffer_size_gb=args.inference_dynamic_batching_buffer_size_gb, - buffer_guaranteed_fraction=args.inference_dynamic_batching_buffer_guaranteed_fraction, - buffer_overflow_factor=args.inference_dynamic_batching_buffer_overflow_factor, - max_requests_override=args.inference_dynamic_batching_max_requests_override, - max_tokens_override=args.inference_dynamic_batching_max_tokens_override, + active_buffer_size_gb=args.inference_dynamic_batching_active_buffer_size_gb, + max_tokens=args.inference_dynamic_batching_max_tokens, tensor_model_parallel_size=args.tensor_model_parallel_size, materialize_only_last_token_logits=not args.return_log_probs, layer_type_list=layer_type_list, @@ -546,14 +544,14 @@ def escape_str(s): if engine.capture_stats else "--" ) - print( - f"{setup_prefix} … " - f"capture {capture_str} … " - f"mem {peak_alloc_gb:.1f}/{peak_resvd_gb:.1f} GB … " - f"total time: {total_time:.3f}s … " - f"steps: {engine.step_count:d} … " - f"throughput: {throughput:.3f} tok/s" - ) + print(" … ".join(( + f"{setup_prefix}", + f"throughput: {throughput:.3f} tok/s", + f"total time: {total_time:.3f}s", + f"mem {peak_alloc_gb:.1f}/{peak_resvd_gb:.1f} GB", + f"steps: {engine.step_count:d}", + f"capture {capture_str}", + ))) print("~~~") # Stop Nsight profiler. diff --git a/examples/inference/gpt/gpt_dynamic_inference_12b.sh b/examples/inference/gpt/gpt_dynamic_inference_12b.sh index a16fe5176d5..341bd1a8ac0 100644 --- a/examples/inference/gpt/gpt_dynamic_inference_12b.sh +++ b/examples/inference/gpt/gpt_dynamic_inference_12b.sh @@ -23,9 +23,7 @@ export CUDA_DEVICE_MAX_CONNECTIONS=1 : ${INCOMING_REQUESTS_PER_SEC=100.} # Dynamic context. -: ${BUFFER_SIZE_GB=50.} -: ${BUFFER_OVERFLOW_FACTOR=1.} -: ${BUFFER_GUARANTEED_FRACTION=0.05} +: ${ACTIVE_BUFFER_SIZE_GB=50.} # Cuda graphs. : ${CUDA_GRAPH_IMPL=local} @@ -78,9 +76,7 @@ ARGS=" \ --inference-rng-tracker \ \ --inference-dynamic-batching \ - --inference-dynamic-batching-buffer-size-gb ${BUFFER_SIZE_GB} \ - --inference-dynamic-batching-buffer-overflow-factor ${BUFFER_OVERFLOW_FACTOR} \ - --inference-dynamic-batching-buffer-guaranteed-fraction ${BUFFER_GUARANTEED_FRACTION} \ + --inference-dynamic-batching-active-buffer-size-gb ${ACTIVE_BUFFER_SIZE_GB} \ \ ${EXTRA_ARGS} \ " diff --git a/examples/inference/gpt/gpt_dynamic_inference_357m.sh b/examples/inference/gpt/gpt_dynamic_inference_357m.sh index c095371714f..c0e24e1a77c 100644 --- a/examples/inference/gpt/gpt_dynamic_inference_357m.sh +++ b/examples/inference/gpt/gpt_dynamic_inference_357m.sh @@ -24,9 +24,7 @@ export CUDA_DEVICE_MAX_CONNECTIONS=1 : ${INCOMING_REQUESTS_PER_SEC=100.} # Dynamic context. -: ${BUFFER_SIZE_GB=50.} -: ${BUFFER_OVERFLOW_FACTOR=1.} -: ${BUFFER_GUARANTEED_FRACTION=0.05} +: ${ACTIVE_BUFFER_SIZE_GB=50.} # Cuda graphs. : ${CUDA_GRAPH_IMPL=local} @@ -64,9 +62,7 @@ ARGS=" \ --inference-rng-tracker \ \ --inference-dynamic-batching \ - --inference-dynamic-batching-buffer-size-gb ${BUFFER_SIZE_GB} \ - --inference-dynamic-batching-buffer-overflow-factor ${BUFFER_OVERFLOW_FACTOR} \ - --inference-dynamic-batching-buffer-guaranteed-fraction ${BUFFER_GUARANTEED_FRACTION} \ + --inference-dynamic-batching-active-buffer-size-gb ${ACTIVE_BUFFER_SIZE_GB} \ \ ${EXTRA_ARGS} \ " diff --git a/examples/inference/gpt/utils.py b/examples/inference/gpt/utils.py index 0ea1f5a3df0..e80c9b546e1 100644 --- a/examples/inference/gpt/utils.py +++ b/examples/inference/gpt/utils.py @@ -11,6 +11,7 @@ from megatron.core.inference.inference_request import DynamicInferenceRequest from megatron.core.inference.contexts import DynamicInferenceContext +from megatron.core.inference.contexts.dynamic_context import get_mem_size_str from megatron.core.transformer.module import MegatronModule from megatron.core.inference.sampling_params import SamplingParams @@ -65,7 +66,7 @@ def add_common_inference_args(parser: ArgumentParser) -> ArgumentParser: help="Add a deterministic number of requests per step. This arg is " "prioritized over `--incoming-requests-per-sec` below (which is non-" "deterministic). Note that the number of requests added per step is " - "additionally limited by the inference context's `max_requests`, " + "additionally limited by the inference context's `max_active_requests`, " "`max_tokens`, and KV buffer size.", ) group.add_argument( @@ -262,10 +263,27 @@ def get_synthetic_requests( int(args.incoming_requests_per_sec * args.incoming_requests_duration), ) + # Build prompts with expected lengths. + assert ( + len(args.num_tokens_to_prompt) == 2 + and + args.num_tokens_to_prompt[1] >= args.num_tokens_to_prompt[0] + ) + max_prompt_length = args.num_tokens_to_prompt[1] + max_prompt_text = "hi " * max_prompt_length + max_prompt_tokens = tokenizer.tokenize(max_prompt_text) + prompt_lengths = [ + random.randint(*args.num_tokens_to_prompt) + for _ in time_offsets + ] + prompt_tokens_list = [ max_prompt_tokens[:l] for l in prompt_lengths ] + prompt_texts = [ tokenizer.detokenize(tt) for tt in prompt_tokens_list ] + # Init requests. + assert len(prompt_texts) == len(time_offsets) requests = [ - Request("hi " * random.randint(*args.num_tokens_to_prompt), t, tokenizer, sampling_params) - for t in time_offsets + Request(t, o, tokenizer, sampling_params=sampling_params) + for t, o in zip(prompt_texts, time_offsets) ] return requests @@ -342,7 +360,7 @@ def build_dynamic_engine_setup_prefix( Args: args (Namespace): Command-line arguments for this run. - context (DynamicInferenceContext): Stores limits such as `max_requests`, + context (DynamicInferenceContext): Stores limits such as `max_active_requests`, `max_tokens`, and `gtd_request_count`. requests (List[DynamicInferenceRequest]): List of inference requests. @@ -379,17 +397,10 @@ def build_dynamic_engine_setup_prefix( ) # Buffer limits config - flw = args.inference_dynamic_batching_buffer_overflow_factor - flw_str = "no overflow" if flw is None else f"{flw:.1f}" buffer_limits_str = ( - f"bf {args.inference_dynamic_batching_buffer_size_gb:.0f}, {flw_str} " - f"[r {context.max_requests}, t {context.max_tokens}]" - ) - - # Guaranteed request config - guaranteed_fraction_str = ( - f"gtd {args.inference_dynamic_batching_buffer_guaranteed_fraction:.2f} " - f"[r {context.gtd_request_count}]" + f"bf: {get_mem_size_str(args.inference_dynamic_batching_active_buffer_size_gb*1024**3)}, " + f"{context.block_allocator.active_count} chunks " + f"[r {context.max_active_requests}, t {context.max_tokens}]" ) parts = [ @@ -399,7 +410,6 @@ def build_dynamic_engine_setup_prefix( uvm_str, request_str, buffer_limits_str, - guaranteed_fraction_str, ] return " | ".join(parts) diff --git a/megatron/core/inference/contexts/dynamic_block_allocator.py b/megatron/core/inference/contexts/dynamic_block_allocator.py index 4baa3f5212c..8b4cc70cfb8 100644 --- a/megatron/core/inference/contexts/dynamic_block_allocator.py +++ b/megatron/core/inference/contexts/dynamic_block_allocator.py @@ -13,60 +13,86 @@ class BlockAllocator: - Initializing a pool of block IDs - Allocating blocks from the pool - Releasing blocks back to the pool - - Managing the guaranteed block count for active requests Args: - block_count_total (int): Total number of blocks available in the buffer. - gtd_block_count (int): Number of blocks reserved for guaranteed requests. + context (DynamicInferenceContext): Dynamic inference context. + active_count (int): Total number of active blocks available in the buffer. + The full buffer size is 2*active_count, to accommodate an equal-size + space for paused requests that live on the CPU. """ - def __init__(self, block_count_total: int, gtd_block_count: int): - self.block_count_total = block_count_total - self.gtd_block_count = gtd_block_count + def __init__(self, context: "DynamicInferenceContext", active_count: int): - # Reserve last block ID as dummy block for decode-only inference steps - self.block_count_avail = self.block_count_total - 1 - self.dummy_block_idx = self.block_count_total - 1 + self.context = context + + active_count -= 1 # -1 for dummy_block_idx (see below) + active_count = max(1, active_count) # need at least one block + self.total_count = 2 * active_count + 1 # +1 for dummy_block_idx + self.total_avail = self.total_count - 1 # -1 for dummy_block_idx + self.active_count = active_count + self.paused_count = self.total_count - self.active_count - 1 # -1 for dummy_block_idx + self.dummy_block_idx = self.total_count - 1 # Initialize block pool as a "stack" data structure self.block_bag = torch.arange( - self.block_count_total, dtype=torch.int32, device=torch.cuda.current_device() + self.total_count, dtype=torch.int32, device=torch.cuda.current_device() ) - def is_memory_available(self, num_blocks: int, safe: bool = False) -> bool: - """Check if memory blocks are available. + def __str__(self): + return ( + f"total avail {self.total_avail} / {self.total_count - 1}" + f"; active {self.active_count}" + ) - Use 'safe' to avoid all requests being deadlocked. A fraction of the KV cache - memory buffer is reserved to guarantee that a minimum number of active - requests can run on any given step. + def get_active_used(self): + """Compute number of active blocks used.""" + return ( + self.context.request_kv_block_counts[ + self.context.paused_request_count : self.context.total_request_count + ] + .sum() + .item() + ) + + def get_paused_used(self): + """Compute number of paused blocks used.""" + return ( + self.context.request_kv_block_counts[: self.context.paused_request_count].sum().item() + ) + + def get_active_avail(self): + """Compute number of active blocks available.""" + return self.active_count - self.get_active_used() + + def get_paused_avail(self): + """Compute number of paused blocks available.""" + return self.paused_count - self.get_paused_used() + + def is_memory_available(self, num_blocks: int) -> bool: + """Check if memory blocks are available. Args: num_blocks (int): Number of blocks to check. - safe (bool): Include extra space for guaranteeing ability to run - requests to completion. Return: (bool) Is memory available? """ - if safe: - return self.block_count_avail >= num_blocks + self.gtd_block_count - else: - return self.block_count_avail >= num_blocks + return self.get_active_avail() >= num_blocks - def allocate_memory_blocks(self, num_blocks: int = 1, safe: bool = False) -> Optional[Tensor]: + def allocate_memory_blocks(self, num_blocks: int) -> Optional[Tensor]: """Allocate memory blocks if available, else return None. Args: num_blocks (int): Number of blocks to allocate. - safe (bool): Include extra space for guaranteeing ability to run - requests to completion. Return: (Optional[Tensor]) Allocated block IDs. """ - if self.is_memory_available(num_blocks, safe): - self.block_count_avail -= num_blocks - return self.block_bag[self.block_count_avail : (self.block_count_avail + num_blocks)] + if self.is_memory_available(num_blocks): + self.total_avail -= num_blocks + block_ids = self.block_bag[self.total_avail : (self.total_avail + num_blocks)] + assert num_blocks == block_ids.numel() + return block_ids else: return None @@ -80,8 +106,8 @@ def release_memory_blocks(self, blocks: Tensor) -> None: None """ num_blocks = blocks.size(dim=0) - self.block_bag[self.block_count_avail : (self.block_count_avail + num_blocks)] = blocks - self.block_count_avail += num_blocks + self.block_bag[self.total_avail : (self.total_avail + num_blocks)] = blocks + self.total_avail += num_blocks def reset(self) -> None: """Reset the allocator to initial state. @@ -89,4 +115,4 @@ def reset(self) -> None: This resets the available block count to the entire memory pool (except for the dummy block). """ - self.block_count_avail = self.block_count_total - 1 + self.total_avail = self.total_count - 1 diff --git a/megatron/core/inference/contexts/dynamic_context.py b/megatron/core/inference/contexts/dynamic_context.py index 000b58200f8..22a4b1b1423 100644 --- a/megatron/core/inference/contexts/dynamic_context.py +++ b/megatron/core/inference/contexts/dynamic_context.py @@ -1,5 +1,6 @@ # Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +import logging import math import warnings from contextlib import nullcontext @@ -113,7 +114,7 @@ class BlockOverflowError(ContextOverflowError): class ActiveRequestCountOverflowError(ContextOverflowError): '''Used when `initialize_attention_state()` is called with - `num_warmup_requests > max_requests.''' + `num_warmup_requests > max_active_requests.''' def __init__(self, max_request_count, active_request_count): assert active_request_count > max_request_count @@ -175,6 +176,15 @@ class WarmupEngineMode(Enum): NON_DECODE = "non_decode" +def get_mem_size_str(n_bytes: int) -> str: + """Convert number of bytes to human-readable string.""" + for exp, suffix in ((4, "TB"), (3, "GB"), (2, "MB"), (3, "KB"), (0, "bytes")): + nquery = int(1024**exp) + if round(n_bytes / nquery) >= 1: + return "%.3g %s" % (n_bytes / nquery, suffix) + raise Exception(f"something went wrong, n_bytes={n_bytes}.") + + # pylint: disable=line-too-long class DynamicInferenceContext(BaseInferenceContext): """Inference context that is passed to the main model in order @@ -185,9 +195,9 @@ class DynamicInferenceContext(BaseInferenceContext): arbitrary sequence length may be added, paused, or removed from the context at any step. The only constraint is the maximum number of requests or tokens that the context is defined to support. For the block-level KV cache, a memory - buffer is allocated up front (size `buffer_size_gb`), that is divided into - blocks and dynamically assigned to requests. At any given step, any unassigned - blocks equate to unused space. + buffer is allocated up front (size `2 * active_buffer_size_gb`), that is + divided into blocks and dynamically assigned to requests. At any given step, + any unassigned blocks equate to unused space. Additionally, a fraction of the memory buffer (`gtd_request_fraction`, i.e., the 'guaranteed' request fraction) is reserved for guaranteeing that a @@ -212,26 +222,19 @@ class DynamicInferenceContext(BaseInferenceContext): num_attention_heads (int): Number of attention heads. max_sequence_length (int): Max possible sequence length (prompt + output) that will occur. - buffer_size_gb (float): Total buffer size (GB), shared by main and - fallback contexts. + active_buffer_size_gb (float): Buffer size reserved for active requests + that live on the GPU. The total buffer size (stored in unified memory) + is 2x this value, with the the other half of the buffer reserved for + paused requests that live on the CPU. + max_tokens (int): Max number of tokens to use for forward passes. This is + primarily limited by prefill activation memory usage. (Defaults to + 16384). block_size_tokens (int): Size of KV cache block size. - buffer_guaranteed_fraction (float): Fraction of the memory buffer that is - reserved to guarantee that one or more active requests are able to - run to completion. Without reserving this memory, paused requests are - able to fill the memory buffer and block execution of any requests. - buffer_overflow_factor (Optional[float]): Scaling factor over the buffer - size for auto computing `max_requests` and `max_tokens`. This scaling - factor is used for fitting more requests and tokens in the memory - buffer than it can safely hold, which in turn increases throughput. - max_requests_override (Optional[int]): If set, overrides value computed - from `buffer_overflow_factor`. - max_tokens_override (Optional[int]): If set, overrides value computed - from `buffer_overflow_factor`. tensor_model_parallel_size (Optional[int]): Tensor model parallel size. num_cuda_graphs (Optional[int]): Maximum number of cuda graphs to capture, - where the cuda graph batch sizes range from 1 to `max_requests` (as - computed below). Due to rounding, the actual number of cuda graphs may - not equal this argument. + where the cuda graph batch sizes range from 1 to `max_active_requests` + (as computed below). Due to rounding, the actual number of cuda graphs + may not equal this argument. materialize_only_last_token_logits (Optional[bool]): Whether to only materialize logits for the last token. This should be set to False if returning log probs. @@ -254,6 +257,10 @@ class DynamicInferenceContext(BaseInferenceContext): metrics_writer (Optional['WandbModule']): Wandb module for writing metrics. """ + DEFAULT_MAX_TOKENS = 16384 + TOKEN_ROUNDER = 64 + REQUEST_ROUNDER = 4 + def __init__( self, *, @@ -262,12 +269,9 @@ def __init__( kv_channels: int, num_attention_heads: int, max_sequence_length: int, - buffer_size_gb: float, - buffer_guaranteed_fraction: float, + active_buffer_size_gb: float, + max_tokens: int = DEFAULT_MAX_TOKENS, block_size_tokens: int = 256, - buffer_overflow_factor: Optional[float] = None, - max_requests_override: Optional[int] = None, - max_tokens_override: Optional[int] = None, tensor_model_parallel_size: Optional[int] = None, cache_mla_latent: bool = False, kv_lora_rank: Optional[int] = None, @@ -279,7 +283,7 @@ def __init__( mamba_ssm_states_shape: Optional[Tuple[int]] = None, use_cuda_graphs_for_non_decode_steps: bool = True, use_flashinfer_fused_rope: bool = False, - unified_memory_level: Optional[int] = 0, + unified_memory_level: Optional[int] = 1, metrics_writer: Optional['WandbModule'] = None, ): super().__init__(materialize_only_last_token_logits=materialize_only_last_token_logits) @@ -356,11 +360,6 @@ def __init__( ) assert self.block_size_bytes > 0 - # Adjust buffer to be a multiple of block size. - buffer_size_bytes = int(buffer_size_gb * 1024**3) - buffer_size_bytes_rem = buffer_size_bytes % self.block_size_bytes - buffer_size_bytes = buffer_size_bytes - buffer_size_bytes_rem - mamba_states_memory_per_request = 0 if self.is_hybrid_model: mamba_states_memory_per_request += math.prod(mamba_conv_states_shape) @@ -368,40 +367,25 @@ def __init__( mamba_states_memory_per_request *= self.num_mamba_layers mamba_states_memory_per_request *= dtype_size_bytes - # Compute max_requets, max_tokens from buffer size, overflow factor, and Mamba state size. - def bytes_to_max_requests_and_tokens(n_bytes): - bytes_per_token = self.block_size_bytes / self.block_size_tokens - cost_per_request_bytes = ( - mamba_states_memory_per_request + max_sequence_length * bytes_per_token - ) - # TODO(ksanthanam): Leave room for an extra request in the event of padding - # for non-decode CUDA graphs - n_requests = n_bytes / cost_per_request_bytes - n_tokens = n_requests * max_sequence_length - n_requests = self.round_up_requests(int(n_requests), tp_size=tp_size) - n_tokens = self.round_up_tokens(int(n_tokens), tp_size=tp_size) - return n_requests, n_tokens - - self.max_requests, self.max_tokens = bytes_to_max_requests_and_tokens(buffer_size_bytes) - if buffer_overflow_factor is not None: - self.max_requests = self.round_up_requests( - int(self.max_requests * buffer_overflow_factor), tp_size=tp_size - ) - self.max_tokens = self.round_up_tokens( - int(self.max_tokens * buffer_overflow_factor / 50.0), tp_size=tp_size - ) - - if max_requests_override is not None: - self.max_requests = ( - max_requests_override - if max_requests_override < self.REQUEST_ROUNDER - else self.round_up_requests(max_requests_override, tp_size=tp_size) - ) - - if max_tokens_override is not None: - self.max_tokens = self.round_up_tokens(max_tokens_override, tp_size=tp_size) - - self.max_requests = min(self.max_requests, self.max_tokens) # e.g., decode only. + # Initialize block allocator. + active_buffer_size_bytes = int(active_buffer_size_gb * 1024**3) + active_block_count_total = active_buffer_size_bytes // ( + self.block_size_bytes + mamba_states_memory_per_request + ) + self.block_allocator = BlockAllocator(context=self, active_count=active_block_count_total) + del active_block_count_total # use self.block_allocator.active_count + active_buffer_size_bytes = self.block_allocator.active_count * self.block_size_bytes + + # Set max_total_requests, max_active_requests, max_tokens. + self.max_total_requests = self.block_allocator.total_count - 1 # -1 for dummy block + self.max_active_requests = self.block_allocator.active_count + self.max_tokens = max_tokens or self.DEFAULT_MAX_TOKENS + + assert self.max_tokens >= self.max_active_requests, ( + f"max_tokens ({self.max_tokens}) must be >= " + f"max_active_requests ({self.max_active_requests}), " + "to have consistency between cuda graph sizes and the block table size." + ) # Initialize context state. self.params_dtype = params_dtype @@ -429,7 +413,7 @@ def bytes_to_max_requests_and_tokens(n_bytes): # Per-request state. self.request_ids = torch.full( - (self.max_requests,), -1, dtype=torch.int32, device=torch.cuda.current_device() + (self.max_total_requests,), -1, dtype=torch.int32, device=torch.cuda.current_device() ) # request_query_lengths is the input prompt tokens length during prefill phase (1st step) and then 1 for the decode phase (i.e During generation) self.request_query_lengths = torch.empty_like(self.request_ids) @@ -455,24 +439,15 @@ def bytes_to_max_requests_and_tokens(n_bytes): self.token_to_position_in_request = torch.empty_like(self.token_to_input_ids) self.token_to_local_position_within_kv_block = torch.empty_like(self.token_to_input_ids) - # Calculate the total number of chunks available in the buffer - total_mamba_states_memory = mamba_states_memory_per_request * self.max_requests - block_count_total = ( - max(0, buffer_size_bytes - total_mamba_states_memory) // self.block_size_bytes - ) - # Memory buffer. - ctx_manager = ( - torch.cuda.use_mem_pool(self.unified_memory_mempool) - if self.unified_memory_level > 0 - else nullcontext() - ) - with ctx_manager: + def allocate_memory_buffer(): + """Allocate the memory buffer. This function is called below within + `with ctx_manager:`.""" if cache_mla_latent: self.memory_buffer = torch.full( ( self.num_attention_layers, - block_count_total, + self.block_allocator.total_count, self.block_size_tokens, kv_reduced_dim, ), @@ -485,7 +460,7 @@ def bytes_to_max_requests_and_tokens(n_bytes): ( 2, # key and value self.num_attention_layers, - block_count_total, + self.block_allocator.total_count, self.block_size_tokens, num_attention_heads_per_partition, hidden_size_per_attention_head, @@ -498,7 +473,7 @@ def bytes_to_max_requests_and_tokens(n_bytes): # Block ids. self.max_kv_block_count = math.ceil(self.max_sequence_length / self.block_size_tokens) self.request_to_kv_block_ids = torch.full( - (self.max_requests, self.max_kv_block_count), + (self.max_total_requests, self.max_kv_block_count), -1, dtype=torch.int, device=torch.cuda.current_device(), @@ -509,11 +484,11 @@ def bytes_to_max_requests_and_tokens(n_bytes): if num_cuda_graphs is not None: # Ensure valid num_cuda_graphs. - num_cuda_graphs = min(max(num_cuda_graphs, 1), self.max_requests) + num_cuda_graphs = min(max(num_cuda_graphs, 1), self.max_active_requests) # Cuda graph step size. cuda_graph_rounder = 8 - self.cuda_graph_step_size = self.max_requests / num_cuda_graphs + self.cuda_graph_step_size = self.max_active_requests / num_cuda_graphs self.cuda_graph_step_size = ( math.ceil(self.cuda_graph_step_size / cuda_graph_rounder) * cuda_graph_rounder ) @@ -522,13 +497,17 @@ def bytes_to_max_requests_and_tokens(n_bytes): # Cuda graph token counts. if num_cuda_graphs == 1: - self.cuda_graph_token_counts = [self.max_requests] + self.cuda_graph_token_counts = [self.max_active_requests] else: self.cuda_graph_token_counts = list( - range(self.cuda_graph_step_size, self.max_requests, self.cuda_graph_step_size) + range( + self.cuda_graph_step_size, + self.max_active_requests, + self.cuda_graph_step_size, + ) ) - if self.cuda_graph_token_counts[-1] != self.max_requests: - self.cuda_graph_token_counts.append(self.max_requests) + if self.cuda_graph_token_counts[-1] != self.max_active_requests: + self.cuda_graph_token_counts.append(self.max_active_requests) self.cuda_graph_token_counts.reverse() # Set used for validating active cuda graph token count. @@ -550,66 +529,51 @@ def bytes_to_max_requests_and_tokens(n_bytes): self.active_attn_metadata = None self.graph_attn_metadata["mha_metadata"] = GraphedMHAMetadata( - block_count_total=block_count_total, + block_count_total=self.block_allocator.total_count, max_kv_block_count=self.max_kv_block_count, - max_requests=self.max_requests, + max_requests=self.max_total_requests, block_size_tokens=self.block_size_tokens, max_seqlen=self.max_sequence_length, ) self.non_graph_attn_metadata["mha_metadata"] = NonGraphedMHAMetadata( - block_count_total=block_count_total, + block_count_total=self.block_allocator.total_count, max_kv_block_count=self.max_kv_block_count, - max_requests=self.max_requests, + max_requests=self.max_total_requests, block_size_tokens=self.block_size_tokens, max_seqlen=self.max_sequence_length, ) - # Guaranteed active requests. - # * See details in the class docstring above. `gtd_request_fraction` is - # the fraction of blocks in the memory buffer that are reserved for - # guaranteeing that some number of active requests can always proceed - # with their generations. The number of blocks defined by - # `buffer_guaranteed_fraction * block_count_total` is converted to a - # number of requests that this reserved space can safely handle - # (`gtd_request_count`). - # * Note: computing the size of this guaranteed space from blocks rather - # than bytes is safer due to the non-linear impacts of a large - # `block_size_tokens` or `max_kv_block_count`. When computing from - # blocks, this space will always be less than `block_count_total`. When - # computing from bytes, this space can unexpectedly be much larger than - # `block_count_total`, resulting in stalled generations. - gtd_block_count = int(buffer_guaranteed_fraction * block_count_total) - gtd_block_count = min(gtd_block_count, block_count_total) - self.gtd_request_count = max(1, gtd_block_count // self.max_kv_block_count) - self.gtd_block_count = self.gtd_request_count * self.max_kv_block_count - - # Initialize allocator for KV memory blocks - self.block_allocator = BlockAllocator( - block_count_total=block_count_total, gtd_block_count=self.gtd_block_count - ) - # Optional state tensors for hybrid models - if self.is_hybrid_model: - self.mamba_metadata = MambaMetadata(max_requests=self.max_requests) - - with ctx_manager: + def allocate_mamba_states(): + """Allocate Mamba states. This function is called below within + `with ctx_manager:`.""" + if self.is_hybrid_model: + self.mamba_metadata = MambaMetadata(max_requests=self.max_total_requests) self.mamba_conv_states = torch.zeros( - (self.num_mamba_layers, self.max_requests) + mamba_conv_states_shape, + (self.num_mamba_layers, self.max_total_requests) + mamba_conv_states_shape, dtype=self.params_dtype, device=torch.cuda.current_device(), ) self.mamba_ssm_states = torch.zeros( - (self.num_mamba_layers, self.max_requests) + mamba_ssm_states_shape, + (self.num_mamba_layers, self.max_total_requests) + mamba_ssm_states_shape, dtype=self.params_dtype, device=torch.cuda.current_device(), ) - else: - self.mamba_metadata = None + else: + self.mamba_metadata = None - # Store the dummy block idx reference for convenience - self.dummy_block_idx = self.block_allocator.dummy_block_idx + # Allocate `ctx_manager`-managed buffers. (For currently unknown reasons, + # `ctx_manager` can only be used once.) + ctx_manager = ( + torch.cuda.use_mem_pool(self.unified_memory_mempool) + if self.unified_memory_level > 0 + else nullcontext() + ) + with ctx_manager: + allocate_memory_buffer() + allocate_mamba_states() # Deal with chunked prefill self.chunked_prefill_request_id = -1 @@ -618,14 +582,18 @@ def bytes_to_max_requests_and_tokens(n_bytes): self.reset_attention_state() self.reset_mamba_state() + # FlashInfer. if use_flashinfer_fused_rope is True: assert HAVE_FLASHINFER, "flashinfer is not installed" elif use_flashinfer_fused_rope is None: use_flashinfer_fused_rope = HAVE_FLASHINFER self.use_flashinfer_fused_rope = use_flashinfer_fused_rope - TOKEN_ROUNDER = 64 - REQUEST_ROUNDER = 4 + # Print info. + logging.info( + "DynamicInferenceContext: allocated context with active buffer size %s (%d blocks)." + % (get_mem_size_str(active_buffer_size_bytes), self.block_allocator.active_count) + ) @classmethod def round_up_tokens(cls, value, tp_size=None): @@ -654,7 +622,7 @@ def from_config( inference_config: InferenceWrapperConfig, model, max_batch_size: int, - buffer_size_gb: float = 40, + active_buffer_size_gb: float = 40, num_cuda_graphs: int = None, ): """ @@ -662,7 +630,6 @@ def from_config( """ # TODO: Add other necessary configs from inference_config - buffer_guaranteed_fraction = 0.1 model_config = model.config max_sequence_length = ( inference_config.inference_max_seq_length or model_config.max_sequence_length @@ -674,10 +641,8 @@ def from_config( kv_channels=model_config.kv_channels, num_attention_heads=model_config.num_query_groups, max_sequence_length=inference_config.inference_max_seq_length, - buffer_size_gb=buffer_size_gb, - buffer_guaranteed_fraction=buffer_guaranteed_fraction, + active_buffer_size_gb=active_buffer_size_gb, materialize_only_last_token_logits=False, - max_requests_override=max_batch_size, num_cuda_graphs=num_cuda_graphs, use_flashinfer_fused_rope=None, ) @@ -988,7 +953,7 @@ def initialize_attention_state( Args: num_warmup_tokens (Optional[int]): Number of tokens to use for warming up cuda graphs. Must be less than or equal to - `max_requests`. + `max_active_requests`. warmup_engine_mode (WarmupEngineMode): Denote whether to setup for a decode or a non-decode cuda-graph warmup. num_warmup_requests (Optional[int]): [DEPRECATED] Use num_warmup_tokens instead. @@ -1008,8 +973,8 @@ def initialize_attention_state( # warmup both decode and non-decode engine steps if num_warmup_tokens is not None: - if num_warmup_tokens > self.max_requests: - raise ActiveRequestCountOverflowError(self.max_requests, num_warmup_tokens) + if num_warmup_tokens > self.max_active_requests: + raise ActiveRequestCountOverflowError(self.max_active_requests, num_warmup_tokens) if warmup_engine_mode == WarmupEngineMode.NON_DECODE: assert self.non_decode_cuda_graphs, "Set non-decode cuda graphs to True" @@ -1028,7 +993,9 @@ def initialize_attention_state( math.ceil(active_token_count / self.cuda_graph_step_size) * self.cuda_graph_step_size ) - self.padded_active_token_count = min(self.padded_active_token_count, self.max_requests) + self.padded_active_token_count = min( + self.padded_active_token_count, self.max_active_requests + ) assert ( self.padded_active_token_count in self.cuda_graph_token_counts_set ), f"padded_active_token_count: {self.padded_active_token_count} not in cuda_graph_token_counts_set: {self.cuda_graph_token_counts_set}" @@ -1038,7 +1005,7 @@ def initialize_attention_state( if self.is_decode_only(): # For decode-only, the padded active token count cannot exceed max-requests. self.padded_active_token_count = min( - self.padded_active_token_count, self.max_requests + self.padded_active_token_count, self.max_active_requests ) # How are we calculating the padded active request count? @@ -1056,7 +1023,7 @@ def initialize_attention_state( # Update token position indexes. self.token_to_block_idx[self.active_token_count : self.padded_active_token_count] = ( - self.dummy_block_idx + self.block_allocator.dummy_block_idx ) self.token_to_local_position_within_kv_block[ self.active_token_count : self.padded_active_token_count @@ -1198,20 +1165,20 @@ def last_token_logits(self, logits: Tensor) -> Tensor: return last_token_logits - def check_availability( - self, req: DynamicInferenceRequest, safe: bool = False - ) -> (bool, bool, bool): + def check_availability(self, req: DynamicInferenceRequest) -> (bool, bool, bool): """ Check if the request can be added to the context. """ - request_can_be_added = self.total_request_count < self.max_requests + request_can_be_added = ( + self.total_request_count - self.paused_request_count < self.max_active_requests + ) request_tokens_can_be_added = ( self.active_token_count + req.remaining_prompt_length <= self.max_tokens ) blocks = math.ceil( (req.remaining_prompt_length + req.finished_chunk_token_count) / self.block_size_tokens ) - math.ceil(req.finished_chunk_token_count / self.block_size_tokens) - kv_cache_available = self.block_allocator.is_memory_available(blocks, safe=safe) + kv_cache_available = self.block_allocator.is_memory_available(blocks) return request_can_be_added, request_tokens_can_be_added, kv_cache_available def add_request(self, req: DynamicInferenceRequest, chunk_length: Optional[int] = None) -> None: @@ -1251,9 +1218,7 @@ def add_request(self, req: DynamicInferenceRequest, chunk_length: Optional[int] num_blocks_needed = overall_required_blocks - already_allocated_blocks if num_blocks_needed > 0: - new_block_ids = self.block_allocator.allocate_memory_blocks( - num_blocks_needed, safe=not is_chunked_prefill - ) + new_block_ids = self.block_allocator.allocate_memory_blocks(num_blocks_needed) if new_block_ids is None or len(new_block_ids) != num_blocks_needed: raise BlockOverflowError(req.request_id) @@ -1271,7 +1236,7 @@ def add_request(self, req: DynamicInferenceRequest, chunk_length: Optional[int] else: current_id = self.total_request_count - if current_id >= self.max_requests: + if current_id >= self.max_active_requests: raise RequestOverflowError(req.request_id) if self.active_token_count + chunk_length > self.max_tokens: @@ -1389,7 +1354,7 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T between these request groups. - 0:paused_request_count -> paused requests - paused_request_count:total_request_count -> active requests - - total_request_count:max_requests -> completed requests are moved here. + - total_request_count:max_active_requests -> completed requests are moved here. The reason for maintaining contiguous tensors rather than multiple smaller (e.g., per-group or per-request) tensors is for both 1) speed (avoid unnecessary tensor allocations), and 2) compatibility with the @@ -1432,6 +1397,9 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T # Reset attention state. self.reset_attention_state() + # Update total_request_count. + self.total_request_count = active_request_count + self.paused_request_count + # 2. If no paused requests are present and no active requests we release memory and reset. if active_request_count + self.paused_request_count == 0: if finished_request_count > 0: @@ -1531,6 +1499,11 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T (active_requests_requiring_new_block == 1).sum().item() ) + if active_requests_requiring_new_block_count > 0: + newly_paused_request_ids = self.request_ids[ + torch.nonzero(active_requests_requiring_new_block) + self.paused_request_count + ] + # Swap unfinished active requests on the left side with paused requests on the right side # NOTE : We add paused request count because we concatenate # paused tokens to the left at the beginning of update requests @@ -1563,7 +1536,6 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T self._move_book_keeping_tensors( src_idxs=src_idxs, dst_idxs=dst_idxs, next_tokens=next_tokens ) - newly_paused_request_ids = self.request_ids[dst_idxs] self.paused_request_count += active_requests_requiring_new_block_count active_request_count -= active_requests_requiring_new_block_count @@ -1572,15 +1544,16 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T # We determine how many requests we can resume and resume them # Assign released blocks to paused requests. # todo: @shanmugamr, un-pause requests using FIFO, rather than LIFO. - num_non_gtd_blocks = max(0, self.block_allocator.block_count_avail - self.gtd_block_count) - if num_non_gtd_blocks: - # if we have non-gtd blocks, use them. Do not dip into the gtd-block pool - resume_request_count = min(num_non_gtd_blocks, self.paused_request_count) - else: - # only dip into the gtd-block pool if we have run out of non-gtd-blocks and the active - # request count has fallen below a certain threshold. + resume_request_count = 0 + if self.paused_request_count > 0: + active_block_count_avail = self.block_allocator.get_active_avail() + paused_block_counts = self.request_kv_block_counts[: self.paused_request_count] + paused_block_counts = paused_block_counts.flip(dims=[0]) + paused_block_counts += 1 # +1 for newly added block + paused_block_counts_cumsum = paused_block_counts.cumsum(dim=0) resume_request_count = min( - max(self.gtd_request_count - active_request_count, 0), self.paused_request_count + torch.nonzero(paused_block_counts_cumsum <= active_block_count_avail).numel(), + self.block_allocator.total_avail, ) self.paused_request_count -= resume_request_count @@ -1640,6 +1613,7 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T == 0 ), "The request_last_kv_block_offset should be 0 for the requests that just got resumed this step. " + assert resume_request_count <= self.block_allocator.total_avail block_ids = self.block_allocator.allocate_memory_blocks(resume_request_count) row_idx = torch.arange( self.paused_request_count, @@ -1761,11 +1735,11 @@ def get_kvcache_utilization_stats(self) -> dict: } """ # Total usable blocks exclude the reserved dummy block. - total_blocks = max(self.block_allocator.block_count_total - 1, 1) - block_count_avail = int(self.block_allocator.block_count_avail) + total_blocks = max(self.block_allocator.total_count - 1, 1) + block_count_avail = int(self.block_allocator.total_avail) # Overall allocated blocks in the buffer right now. - allocated_blocks = (self.block_allocator.block_count_total - 1) - block_count_avail + allocated_blocks = (self.block_allocator.total_count - 1) - block_count_avail allocated_blocks = int(max(0, allocated_blocks)) # Active unique blocks referenced by current active requests only. @@ -1787,7 +1761,6 @@ def get_kvcache_utilization_stats(self) -> dict: active_utilization = float(active_unique_blocks) / float(total_blocks) # Diagnostic helpers - num_non_gtd_blocks = max(0, block_count_avail - int(self.gtd_block_count)) total_request_count = int(self.total_request_count) return { 'total_blocks': int(total_blocks), @@ -1797,10 +1770,9 @@ def get_kvcache_utilization_stats(self) -> dict: 'active_utilization': active_utilization, 'active_request_count': int(self.get_active_request_count()), 'paused_request_count': int(self.paused_request_count), - 'gtd_block_count': int(self.gtd_block_count), 'block_count_avail': int(block_count_avail), - 'num_non_gtd_blocks': int(num_non_gtd_blocks), 'active_token_count': int(self.active_token_count), 'total_request_count': int(total_request_count), - 'max_requests': int(self.max_requests), + 'max_total_requests': int(self.max_total_requests), + 'max_active_requests': int(self.max_active_requests), } diff --git a/megatron/core/inference/engines/dynamic_engine.py b/megatron/core/inference/engines/dynamic_engine.py index 4bff4f85fa8..d18f2d2233a 100644 --- a/megatron/core/inference/engines/dynamic_engine.py +++ b/megatron/core/inference/engines/dynamic_engine.py @@ -642,7 +642,7 @@ def schedule_non_chunked_prefill(self): while self.waiting_request_ids: req = self.requests[self.waiting_request_ids[0]] request_can_be_added, request_tokens_can_be_added, kv_cache_available = ( - self.context.check_availability(req, safe=True) + self.context.check_availability(req) ) if request_can_be_added and request_tokens_can_be_added and kv_cache_available: self.context.add_request(req) @@ -716,9 +716,7 @@ def schedule_chunked_prefill(self): self.context.active_token_count + remaining_len <= self.context.max_tokens ) token_partially_can_be_added = self.context.active_token_count < self.context.max_tokens - request_can_be_added, _, kv_cache_available = self.context.check_availability( - req, safe=not is_continuing_chunked_prefill - ) + request_can_be_added, _, kv_cache_available = self.context.check_availability(req) request_can_be_added = is_continuing_chunked_prefill or request_can_be_added if request_can_be_added and kv_cache_available: @@ -865,7 +863,8 @@ async def async_step( step_type = "decode" if is_decode_only else "non-decode" output_str = ( "* step %d | %s ... time: %.3f%s ... " - "reqs: %d [ gtd %d, active %d, paused %d, finished %d ] ... " + "reqs: a %d/%d, p %d/%d, w %d, f %d ... " + "blocks: a %d/%d, p %d/%d ... " "mem: tensors %d, alloc %.1f gb, res %.1f gb." % ( self.step_count, @@ -883,11 +882,16 @@ async def async_step( ), ) ), - prev_total_request_count, - context.gtd_request_count, prev_total_request_count - prev_paused_request_count, + context.block_allocator.active_count, prev_paused_request_count, + context.block_allocator.paused_count, + len(self.waiting_request_ids), self.finished_request_count, + context.block_allocator.get_active_used(), + context.block_allocator.active_count, + context.block_allocator.get_paused_used(), + context.block_allocator.paused_count, mem["allocation.all.current"], mem["allocated_bytes.all.current"] / (1024**3), mem["reserved_bytes.all.current"] / (1024**3), diff --git a/megatron/core/inference/engines/static_engine.py b/megatron/core/inference/engines/static_engine.py index dc86eb775f9..d9f9e9e051d 100644 --- a/megatron/core/inference/engines/static_engine.py +++ b/megatron/core/inference/engines/static_engine.py @@ -99,7 +99,7 @@ def __init__( inference_config=inference_wrapper_config, model=text_generation_controller.inference_wrapped_model.model, max_batch_size=max_batch_size, - buffer_size_gb=buffer_size_gb, + active_buffer_size_gb=buffer_size_gb, num_cuda_graphs=1, ) self.controller.inference_wrapped_model.inference_context = dynamic_context diff --git a/megatron/training/arguments.py b/megatron/training/arguments.py index 0b14140529a..cb2691c9d49 100644 --- a/megatron/training/arguments.py +++ b/megatron/training/arguments.py @@ -1136,9 +1136,8 @@ def validate_args(args, defaults={}): ), "Pipeline-parallel microbatched inference is incompatible with CUDA graphs" if args.inference_dynamic_batching: - assert args.inference_dynamic_batching_buffer_size_gb is not None + assert args.inference_dynamic_batching_active_buffer_size_gb is not None assert args.inference_dynamic_batching_block_size % 256 == 0, "block size should be a multiple of 256" - assert args.inference_dynamic_batching_buffer_guaranteed_fraction is not None # MoE upcycling check if args.moe_use_upcycling: @@ -1435,36 +1434,19 @@ def _add_inference_args(parser): group.add_argument('--inference-dynamic-batching', action='store_true', default=False, help='Enable dynamic batching mode.') - group.add_argument('--inference-dynamic-batching-buffer-size-gb', + group.add_argument('--inference-dynamic-batching-active-buffer-size-gb', type=float, default=40., - help='Total buffer size (GB) allocated for the block-level KV ' - 'memory.') + help='Buffer size (GB) allocated for the active (on-GPU) ' + 'portion of the chunked KV memory. The total buffer size ' + 'is 2x this value, which includes the same-size on-CPU ' + 'paused buffer.') group.add_argument('--inference-dynamic-batching-block-size', type=int, default=256, help='KV cache block size. ' 'It should be a multiple of 256') - group.add_argument('--inference-dynamic-batching-buffer-guaranteed-fraction', - type=float, default=0.2, - help='Space is reserved within the inference context ' - 'memory buffer to guarantee that a minimum number of ' - 'active requests will always be able to run to ' - 'completion. This is to avoid the context being deadlocked ' - 'by paused requests.') - group.add_argument('--inference-dynamic-batching-buffer-overflow-factor', - type=float, default=None, - help='Scaling factor over the memory buffer size for auto ' - 'computing `max_requests` and `max_tokens`. This scaling ' - 'factor is used for fitting more requests and tokens in ' - 'the memory buffer than it can safely hold, which in turn ' - 'increases throughput.') - group.add_argument('--inference-dynamic-batching-max-requests-override', + group.add_argument('--inference-dynamic-batching-max-tokens', type=int, default=None, - help='If set, this overrides the max requests as computed ' - 'from `--inference-dynamic-batching-buffer-overflow-factor`.') - group.add_argument('--inference-dynamic-batching-max-tokens-override', - type=int, default=None, - help='If set, this overrides the max tokens as computed ' - 'from `--inference-dynamic-batching-buffer-overflow-factor`.') + help='Override the inference context\'s default `max_tokens`.') group.add_argument('--inference-dynamic-batching-num-cuda-graphs', type=int, default=16, help='Maximum number of cuda graphs to capture, where the ' @@ -1481,7 +1463,7 @@ def _add_inference_args(parser): action='store_true', default=False, help='Only use cuda graphs for decode-only steps, not prefill and mixed steps.') group.add_argument('--inference-dynamic-batching-unified-memory-level', - type=int, default=0, choices=[0, 1], + type=int, default=1, choices=[0, 1], help='Set unified memory usage within the dynamic ' 'inference context. The levels are: 0) no unified memory, ' '1) allocate `memory_buffer` in unified memory. ' diff --git a/tests/unit_tests/inference/contexts/test_dynamic_context.py b/tests/unit_tests/inference/contexts/test_dynamic_context.py index 0674cdfcabd..00c0e2a9dab 100644 --- a/tests/unit_tests/inference/contexts/test_dynamic_context.py +++ b/tests/unit_tests/inference/contexts/test_dynamic_context.py @@ -41,12 +41,9 @@ def _get_dynamic_context( kv_channels, num_attention_heads, max_sequence_length, - buffer_size_gb, + active_buffer_size_gb, block_size_tokens, - buffer_guaranteed_fraction, - buffer_overflow_factor, - max_requests_override, - max_tokens_override, + max_tokens, is_hybrid_model=False, layer_type_list=None, rounder=64, @@ -64,12 +61,9 @@ def _get_dynamic_context( max_sequence_length=max_sequence_length, num_cuda_graphs=None, use_cuda_graphs_for_non_decode_steps=not is_hybrid_model, - buffer_size_gb=buffer_size_gb, - buffer_guaranteed_fraction=buffer_guaranteed_fraction, + active_buffer_size_gb=active_buffer_size_gb, block_size_tokens=block_size_tokens, - buffer_overflow_factor=buffer_overflow_factor, - max_requests_override=max_requests_override, - max_tokens_override=max_tokens_override, + max_tokens=max_tokens, layer_type_list=layer_type_list, mamba_conv_states_shape=(544, 4), mamba_ssm_states_shape=(8, 64, 16), @@ -92,29 +86,26 @@ def test_initialize_dynamic_context(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) if not is_hybrid_model: - assert dynamic_context.gtd_block_count == 48 - assert dynamic_context.gtd_request_count == 12 - assert dynamic_context.block_allocator.block_count_total == 491 - assert dynamic_context.max_requests == 128 - assert dynamic_context.max_tokens == 62848 + assert dynamic_context.block_allocator.total_count == 981 + assert dynamic_context.block_allocator.active_count == 490 + assert dynamic_context.max_total_requests == 980 + assert dynamic_context.max_active_requests == 490 + assert dynamic_context.max_tokens == 16384 assert dynamic_context.num_mamba_layers == 0 assert dynamic_context.mamba_metadata is None else: - assert dynamic_context.gtd_block_count == 112 - assert dynamic_context.gtd_request_count == 28 - assert dynamic_context.block_allocator.block_count_total == 1156 - assert dynamic_context.max_requests == 320 - assert dynamic_context.max_tokens == 154176 + assert dynamic_context.block_allocator.total_count == 1111 + assert dynamic_context.block_allocator.active_count == 555 + assert dynamic_context.max_total_requests == 1110 + assert dynamic_context.max_active_requests == 555 + assert dynamic_context.max_tokens == 16384 assert dynamic_context.num_mamba_layers == 1 assert dynamic_context.mamba_metadata is not None @@ -130,12 +121,9 @@ def test_is_static_batching(self): kv_channels=64, num_attention_heads=8, max_sequence_length=512, - buffer_size_gb=1.0, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=1.0, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, ) assert not dynamic_context.is_static_batching() @@ -149,27 +137,19 @@ def test_is_memory_available(self, is_hybrid_model): kv_channels=64, num_attention_heads=8, max_sequence_length=512, - buffer_size_gb=1.0, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=1.0, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) - dynamic_context.block_allocator.block_count_avail = 10 + dynamic_context.block_allocator.active_count = 10 assert dynamic_context.block_allocator.is_memory_available(10) assert not dynamic_context.block_allocator.is_memory_available(11) assert dynamic_context.block_allocator.is_memory_available(1) - dynamic_context.block_allocator.block_count_avail = 0 + dynamic_context.block_allocator.active_count = 0 assert not dynamic_context.block_allocator.is_memory_available(1) - dynamic_context.block_allocator.block_count_avail = 10 - dynamic_context.gtd_block_count = 5 - assert dynamic_context.block_allocator.is_memory_available(6) - assert not dynamic_context.block_allocator.is_memory_available(6, safe=True) - @pytest.mark.internal @pytest.mark.parametrize("is_hybrid_model", [False, True]) def test_request_overflow(self, is_hybrid_model: bool): @@ -181,17 +161,15 @@ def test_request_overflow(self, is_hybrid_model: bool): kv_channels=64, num_attention_heads=8, max_sequence_length=128, - buffer_size_gb=0.01, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.01, block_size_tokens=32, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, rounder=1, is_hybrid_model=is_hybrid_model, ) + dynamic_context.max_active_requests //= 2 with pytest.raises(RequestOverflowError): - for i in range(dynamic_context.max_requests + 1): + for i in range(dynamic_context.max_active_requests + 1): dynamic_context.add_request( DynamicInferenceRequest( request_id=i, @@ -213,12 +191,9 @@ def test_token_overflow_error(self, is_hybrid_model: bool): kv_channels=64, num_attention_heads=8, max_sequence_length=512, - buffer_size_gb=0.1, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.1, block_size_tokens=128, - buffer_overflow_factor=1.0, - max_requests_override=2, - max_tokens_override=20, # Setting a very low token limit + max_tokens=200, # setting low, but >= context.max_active_requests. rounder=1, is_hybrid_model=is_hybrid_model, ) @@ -227,7 +202,7 @@ def test_token_overflow_error(self, is_hybrid_model: bool): dynamic_context.add_request( DynamicInferenceRequest( request_id=1, - prompt_tokens=torch.arange(0, 25, device='cuda'), + prompt_tokens=torch.arange(0, 225, device='cuda'), sampling_params=SamplingParams( num_tokens_to_generate=dynamic_context.max_tokens - 25 ), @@ -245,12 +220,9 @@ def test_reset(self, is_hybrid_model: bool): kv_channels=64, num_attention_heads=8, max_sequence_length=128, - buffer_size_gb=1.0, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=1.0, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) @@ -273,7 +245,6 @@ def test_reset(self, is_hybrid_model: bool): dynamic_context.token_to_position_in_request.fill_(1) dynamic_context.token_to_block_idx.fill_(1) dynamic_context.token_to_local_position_within_kv_block.fill_(1) - dynamic_context.block_allocator.block_count_avail = 5 dynamic_context.memory_buffer.fill_(1) dynamic_context.request_to_kv_block_ids.fill_(1) if is_hybrid_model: @@ -303,8 +274,8 @@ def test_reset(self, is_hybrid_model: bool): assert torch.all(dynamic_context.token_to_block_idx == -1) assert torch.all(dynamic_context.token_to_local_position_within_kv_block == 0) assert ( - dynamic_context.block_allocator.block_count_avail - == dynamic_context.block_allocator.block_count_total - 1 + dynamic_context.block_allocator.active_count + == dynamic_context.block_allocator.total_count // 2 ) assert torch.all(dynamic_context.request_to_kv_block_ids == -1) if is_hybrid_model: @@ -322,19 +293,16 @@ def test_allocate_and_release_memory_blocks(self, is_hybrid_model): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) if is_hybrid_model: - expected_memory_blocks = [1151, 1152, 1153, 1154] + expected_memory_blocks = [1106, 1107, 1108, 1109] else: - expected_memory_blocks = [486, 487, 488, 489] + expected_memory_blocks = [976, 977, 978, 979] expected_block_count_avail = expected_memory_blocks[0] assert ( @@ -345,20 +313,20 @@ def test_allocate_and_release_memory_blocks(self, is_hybrid_model): .tolist() == expected_memory_blocks ) - assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail + assert dynamic_context.block_allocator.total_avail == expected_block_count_avail dynamic_context.block_allocator.release_memory_blocks( torch.tensor(expected_memory_blocks[-2:], device='cuda') ) - assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail + 2 + assert dynamic_context.block_allocator.total_avail == expected_block_count_avail + 2 assert ( dynamic_context.block_allocator.allocate_memory_blocks(1).item() == expected_memory_blocks[-1] ) - assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail + 1 + assert dynamic_context.block_allocator.total_avail == expected_block_count_avail + 1 # Should return None since we allocate more blocks than what we have. assert ( dynamic_context.block_allocator.allocate_memory_blocks( - dynamic_context.block_allocator.block_count_avail + 100 + dynamic_context.block_allocator.total_avail + 100 ) == None ) @@ -374,12 +342,9 @@ def test_add_request(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) assert dynamic_context.block_size_tokens == 128 @@ -401,7 +366,7 @@ def test_add_request(self, is_hybrid_model: bool): assert dynamic_context.request_kv_length_offsets[0] == 0 assert dynamic_context.request_kv_block_counts[0] == 2 assert dynamic_context.request_last_kv_block_id[0].item() == ( - 1154 if is_hybrid_model else 489 + 1109 if is_hybrid_model else 979 ) assert dynamic_context.request_last_kv_block_offset[0].item() == 15 assert torch.all( @@ -450,12 +415,9 @@ def test_update_request(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) @@ -464,7 +426,7 @@ def test_update_request(self, is_hybrid_model: bool): dynamic_context.paused_request_count = 0 dynamic_context.total_request_count = 3 dynamic_context.request_kv_block_counts[0:3] = 1 - new_block_ids = dynamic_context.block_allocator.allocate_memory_blocks(3, safe=True) + new_block_ids = dynamic_context.block_allocator.allocate_memory_blocks(3) dynamic_context.request_to_kv_block_ids[0:3, 0] = new_block_ids if is_hybrid_model: @@ -497,12 +459,9 @@ def test_update_request(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) @@ -520,18 +479,16 @@ def test_update_request(self, is_hybrid_model: bool): ) total_request_count = 10 - dynamic_context.block_allocator.block_count_avail -= 11 # We align 11 blocks to the 10 requests we have. 3rd request alone we setup like it requires 2 blocks + dynamic_context.block_allocator.total_avail -= 11 # We align 11 blocks to the 10 requests we have. 3rd request alone we setup like it requires 2 blocks dynamic_context.total_request_count = total_request_count dynamic_context.request_to_kv_block_ids[0:total_request_count, 0] = torch.arange( - dynamic_context.block_allocator.block_count_avail, - dynamic_context.block_allocator.block_count_avail + 10, + dynamic_context.block_allocator.total_avail, + dynamic_context.block_allocator.total_avail + 10, ) dynamic_context.request_to_kv_block_ids[3][ 1 - ] = ( - dynamic_context.block_allocator.block_count_avail - ) # Assign one extra block to request 3. + ] = dynamic_context.block_allocator.total_avail # Assign one extra block to request 3. dynamic_context.request_kv_length_offsets[0:total_request_count] = 10 # For 0, 1, 5, 6, the total number of tokens in last block is block size -1, so that they will all need extra blocks dynamic_context.request_kv_length_offsets[0:2] = dynamic_context.block_size_tokens - 1 @@ -617,13 +574,13 @@ def test_update_request(self, is_hybrid_model: bool): dynamic_context.request_to_kv_block_ids[0:10].cpu() == torch.tensor( [ - [1144, 1147, -1, -1], - [1145, 1144, -1, -1], - [1149, 1151, -1, -1], - [1150, 1152, -1, -1], - [1148, -1, -1, -1], - [1146, -1, -1, -1], - [1153, -1, -1, -1], + [1099, 1102, -1, -1], + [1100, 1099, -1, -1], + [1104, 1106, -1, -1], + [1105, 1107, -1, -1], + [1103, -1, -1, -1], + [1101, -1, -1, -1], + [1108, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], @@ -635,13 +592,13 @@ def test_update_request(self, is_hybrid_model: bool): dynamic_context.request_to_kv_block_ids[0:10].cpu() == torch.tensor( [ - [479, 482, -1, -1], - [480, 479, -1, -1], - [484, 486, -1, -1], - [485, 487, -1, -1], - [483, -1, -1, -1], - [481, -1, -1, -1], - [488, -1, -1, -1], + [969, 972, -1, -1], + [970, 969, -1, -1], + [974, 976, -1, -1], + [975, 977, -1, -1], + [973, -1, -1, -1], + [971, -1, -1, -1], + [978, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], @@ -661,23 +618,20 @@ def test_release_memory_blocks_for_finished_requests(self, is_hybrid_model): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) # Set up the initial state with 5 requests # Allocate 5 blocks for 5 requests - initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(5, safe=True) + initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(5) dynamic_context.total_request_count = 5 dynamic_context.paused_request_count = 0 # Record the available blocks before releasing memory - initial_available_blocks = dynamic_context.block_allocator.block_count_avail + initial_available_blocks = dynamic_context.block_allocator.total_avail # Assign blocks to the requests (one block per request) for i in range(5): @@ -708,7 +662,7 @@ def test_release_memory_blocks_for_finished_requests(self, is_hybrid_model): assert dynamic_context.active_token_count == 2 # Verify that 3 blocks were released by checking the available blocks - assert dynamic_context.block_allocator.block_count_avail == initial_available_blocks + 3 + assert dynamic_context.block_allocator.total_avail == initial_available_blocks + 3 if is_hybrid_model: # Request at position 3 now moves into finished request position 0 @@ -736,23 +690,20 @@ def test_finished_requests_with_multiple_blocks(self, is_hybrid_model): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, ) # Set up the initial state with 3 requests, where some use multiple blocks # Allocate 6 blocks in total for the requests - initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(6, safe=True) + initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(6) dynamic_context.total_request_count = 3 dynamic_context.paused_request_count = 0 # Record the available blocks before releasing memory - initial_available_blocks = dynamic_context.block_allocator.block_count_avail + initial_available_blocks = dynamic_context.block_allocator.total_avail # Assign blocks to the requests: # - Request 0: 1 block @@ -792,7 +743,7 @@ def test_finished_requests_with_multiple_blocks(self, is_hybrid_model): assert dynamic_context.active_token_count == 0 # Verify that all 6 blocks were released by checking the available blocks - assert dynamic_context.block_allocator.block_count_avail == initial_available_blocks + 6 + assert dynamic_context.block_allocator.total_avail == initial_available_blocks + 6 if is_hybrid_model: # All mamba states should be zeroed out @@ -812,12 +763,9 @@ def test_mamba_states_cache(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=False, ) with pytest.raises(AssertionError) as error: @@ -830,12 +778,9 @@ def test_mamba_states_cache(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, is_hybrid_model=is_hybrid_model, layer_type_list=[Symbols.MAMBA, Symbols.ATTENTION, Symbols.MAMBA, Symbols.ATTENTION], ) @@ -889,12 +834,9 @@ def test_calculate_and_store_log_probs(self): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.03, block_size_tokens=128, - max_requests_override=None, - max_tokens_override=None, - buffer_overflow_factor=None, + max_tokens=None, ) # Add a few requests to the context @@ -1119,8 +1061,8 @@ def test_unified_memory(self): gpu_size_gb = ( torch.cuda.get_device_properties(torch.cuda.current_device()).total_memory / 1024**3 ) - buffer_size_gb = 20 - num_contexts = math.ceil(gpu_size_gb / buffer_size_gb) + 1 + active_buffer_size_gb = 20 + num_contexts = math.ceil(gpu_size_gb / active_buffer_size_gb) + 1 # Allocate enough contexts to fill GPU memory. def init_contexts(*, unified_memory_level): @@ -1129,13 +1071,11 @@ def init_contexts(*, unified_memory_level): contexts.append( DynamicInferenceContext( params_dtype=torch.float32, - num_layers=4, - kv_channels=8, - num_attention_heads=2, + num_layers=64, + kv_channels=16, + num_attention_heads=4, max_sequence_length=512, - buffer_size_gb=buffer_size_gb, - buffer_overflow_factor=1, - buffer_guaranteed_fraction=0, + active_buffer_size_gb=active_buffer_size_gb, unified_memory_level=unified_memory_level, ) ) diff --git a/tests/unit_tests/inference/engines/test_dynamic_engine.py b/tests/unit_tests/inference/engines/test_dynamic_engine.py index f3c05257552..457f1121f24 100644 --- a/tests/unit_tests/inference/engines/test_dynamic_engine.py +++ b/tests/unit_tests/inference/engines/test_dynamic_engine.py @@ -84,12 +84,9 @@ class DynamicEngineTestConfig: num_gap_steps: int = 2 - context_buffer_size_gb: float = 0.1 # enough room for all tokens. + context_active_buffer_size_gb: float = 0.1 # enough room for all tokens. context_block_size_tokens: int = 256 - context_buffer_guaranteed_fraction: float = 0.01 - context_buffer_overflow_factor: Optional[float] = None - context_max_requests_override: Optional[int] = None - context_max_tokens_override: Optional[int] = None + context_max_tokens: Optional[int] = None tensor_model_parallel_size: int = 1 pipeline_model_parallel_size: int = 1 expert_model_parallel_size: int = 1 @@ -125,17 +122,6 @@ def __post_init__(self): assert self.num_tokens_total is not None self.max_sequence_length = self.num_tokens_total - # Update overrides if not using overflow factor. - if self.context_buffer_overflow_factor is None: - - # Enough room for all requests. - if self.context_max_requests_override is None: - self.context_max_requests_override = self.num_requests - - # Enough room for all tokens. - if self.context_max_tokens_override is None: - self.context_max_tokens_override = self.num_requests * self.max_sequence_length - @dataclass class DynamicEngineTestEnv: @@ -227,12 +213,9 @@ def _build_inference_context( max_sequence_length=test_config.max_sequence_length, num_cuda_graphs=test_config.num_cuda_graphs, use_cuda_graphs_for_non_decode_steps=not test_config.model_provider == "mamba", - buffer_size_gb=test_config.context_buffer_size_gb, - buffer_guaranteed_fraction=test_config.context_buffer_guaranteed_fraction, + active_buffer_size_gb=test_config.context_active_buffer_size_gb, block_size_tokens=test_config.context_block_size_tokens, - buffer_overflow_factor=test_config.context_buffer_overflow_factor, - max_requests_override=test_config.context_max_requests_override, - max_tokens_override=test_config.context_max_tokens_override, + max_tokens=test_config.context_max_tokens, tensor_model_parallel_size=transformer_config.tensor_model_parallel_size, layer_type_list=layer_type_list, mamba_conv_states_shape=mamba_conv_states_shape, @@ -520,14 +503,12 @@ def test_simple(self, model_provider, num_cuda_graphs, cuda_graph_scope) -> None env = self._run_test( model_provider=model_provider, num_cuda_graphs=num_cuda_graphs, - context_max_requests_override=32, cuda_graph_scope=cuda_graph_scope, force_build_cuda_graphs=True, ) # Validate max_requests, max_tokens. - assert env.engine.context.max_requests == 32 - assert env.engine.context.max_tokens == 160 + assert env.engine.context.max_tokens == DynamicInferenceContext.DEFAULT_MAX_TOKENS # Validate output tokens. gpt_expected_generated_tokens = [ @@ -568,41 +549,6 @@ def test_simple(self, model_provider, num_cuda_graphs, cuda_graph_scope) -> None f"expected ({expected_generated_tokens})." ) - @pytest.mark.internal - @pytest.mark.skipif( - not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" - ) - def test_overflow_factor(self, model_provider: str = "gpt") -> None: - """Test overflow factor arg.""" - skip_if_mamba_sequence_packing_not_available(model_provider) - - # Run test. - env = self._run_test( - context_buffer_overflow_factor=0.1, - context_max_requests_override=None, - context_max_tokens_override=None, - model_provider=model_provider, - ) - - # Validate max_requests, max_tokens. - if model_provider == "gpt": - assert env.engine.context.max_requests == 420 - assert env.engine.context.max_tokens == 420 - elif model_provider == "mamba": - assert env.engine.context.max_requests == 16 - assert env.engine.context.max_tokens == 16 - - @pytest.mark.internal - @pytest.mark.skipif( - not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" - ) - @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) - def test_request_overflow(self, model_provider: str) -> None: - """Test request overflow.""" - skip_if_mamba_sequence_packing_not_available(model_provider) - - self._run_test(context_max_requests_override=4, model_provider=model_provider) - @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) @@ -610,7 +556,7 @@ def test_request_overflow(self, model_provider: str) -> None: def test_token_overflow_transient(self) -> None: """Test token overflow.""" test_config = DynamicEngineTestConfig( - num_requests=2, min_prompt_length=8, max_prompt_length=8, context_max_tokens_override=12 + num_requests=2, min_prompt_length=512, max_prompt_length=512, context_max_tokens=900 ) env = self._build_test_env(test_config) env.engine._add_request(env.requests[0]) @@ -629,7 +575,7 @@ def test_token_overflow_transient(self) -> None: ) def test_token_overflow_nontransient(self) -> None: """Test token overflow (non-transient).""" - test_config = DynamicEngineTestConfig(context_max_tokens_override=8) + test_config = DynamicEngineTestConfig(context_max_tokens=8) env = self._build_test_env(test_config) try: env.engine._add_request(env.requests[0]) @@ -649,9 +595,9 @@ def test_block_overflow(self, model_provider: str) -> None: env = self._build_test_env(DynamicEngineTestConfig(model_provider=model_provider)) context = env.engine.context block_size_bytes = context.block_size_bytes - buffer_size_gb = (block_size_bytes + 1) / 1024**3 + active_buffer_size_gb = (block_size_bytes + 1) / 1024**3 test_config = DynamicEngineTestConfig( - context_buffer_size_gb=buffer_size_gb, model_provider=model_provider + context_active_buffer_size_gb=active_buffer_size_gb, model_provider=model_provider ) env = self._build_test_env(test_config) env.engine._add_request(env.requests[0]) @@ -686,19 +632,21 @@ def test_cuda_graph_token_counts(self) -> None: # Test num_cuda_graphs. for num_cuda_graphs, expected_cuda_graph_token_counts in [ - (0, [64]), - (1, [64]), - (2, [64, 32]), - (4, [64, 48, 32, 16]), - (8, [64, 56, 48, 40, 32, 24, 16, 8]), - (16, [64, 56, 48, 40, 32, 24, 16, 8]), - (64, [64, 56, 48, 40, 32, 24, 16, 8]), - (1024, [64, 56, 48, 40, 32, 24, 16, 8]), + (0, [80]), + (1, [80]), + (2, [80, 40]), + (4, [80, 72, 48, 24]), + (8, [80, 64, 48, 32, 16]), + (16, [80, 72, 64, 56, 48, 40, 32, 24, 16, 8]), + (64, [80, 72, 64, 56, 48, 40, 32, 24, 16, 8]), + (1024, [80, 72, 64, 56, 48, 40, 32, 24, 16, 8]), ]: # Build cuda graphs (inside dynamic engine). env = self._build_test_env( - DynamicEngineTestConfig(num_requests=64, num_cuda_graphs=num_cuda_graphs) + DynamicEngineTestConfig( + context_active_buffer_size_gb=0.01, num_cuda_graphs=num_cuda_graphs + ) ) actual_cuda_graph_token_counts = env.engine.context.cuda_graph_token_counts assert ( @@ -745,7 +693,9 @@ def test_cuda_graph_warmup( # Initialize context. env = self._build_test_env( - DynamicEngineTestConfig(num_requests=32, num_cuda_graphs=8, num_tokens_to_generate=1) + DynamicEngineTestConfig( + context_active_buffer_size_gb=0.0041, num_cuda_graphs=8, num_tokens_to_generate=1 + ) ) context = env.engine.context @@ -1034,9 +984,8 @@ def test_events(self): num_requests=16, max_prompt_length=10, num_tokens_to_generate=32, - context_buffer_size_gb=0.001, # 0.001, # 8 blocks - context_max_requests_override=8, - context_max_tokens_override=8, + context_active_buffer_size_gb=0.001, # 0.001, # 8 blocks + context_max_tokens=8, num_gap_steps=1, ) @@ -1085,27 +1034,5 @@ def test_chunked_prefill(self, model_provider: str): materialize_only_last_token_logits=False, model_provider=model_provider, context_block_size_tokens=256, - context_max_tokens_override=300, + context_max_tokens=1000, ) - - -if __name__ == "__main__": - test = TestDynamicInferenceEngine() - test.test_simple(4) - test.test_overflow_factor() - test.test_request_overflow() - test.test_token_overflow_transient() - # test.test_token_overflow_nontransient() # uncomment in megatron-core 0.16 - test.test_block_overflow() - test.test_multi_add() - test.test_fixed_output_lengths() - test.test_cuda_graph_request_counts() - test.test_cuda_graph_warmup(WarmupEngineMode.DECODE, 1, 8) - test.test_generate_function() - asyncio.run(test.test_run_engine()) - test.test_return_log_probs() - test.test_parallel_inference() - # test.test_events() # uncomment in megatron-core 0.16 - test.teardown_method(None) - print("~~~") - print("success.") diff --git a/tests/unit_tests/inference/test_wandb_logging.py b/tests/unit_tests/inference/test_wandb_logging.py index 1512e805f9c..d7a45783e00 100644 --- a/tests/unit_tests/inference/test_wandb_logging.py +++ b/tests/unit_tests/inference/test_wandb_logging.py @@ -48,9 +48,8 @@ def _get_dynamic_context( kv_channels=8, num_attention_heads=2, max_sequence_length=512, - buffer_size_gb=0.03, + active_buffer_size_gb=0.03, block_size_tokens=128, - buffer_guaranteed_fraction=0.1, metrics_writer=None, ): """Helper to create a DynamicInferenceContext.""" @@ -61,8 +60,7 @@ def _get_dynamic_context( num_attention_heads=num_attention_heads, max_sequence_length=max_sequence_length, num_cuda_graphs=None, - buffer_size_gb=buffer_size_gb, - buffer_guaranteed_fraction=buffer_guaranteed_fraction, + active_buffer_size_gb=active_buffer_size_gb, block_size_tokens=block_size_tokens, metrics_writer=metrics_writer, ) @@ -83,12 +81,11 @@ def test_get_kvcache_utilization_stats_with_requests(self): assert 'active_utilization' in stats assert 'active_request_count' in stats assert 'paused_request_count' in stats - assert 'gtd_block_count' in stats assert 'block_count_avail' in stats - assert 'num_non_gtd_blocks' in stats assert 'active_token_count' in stats assert 'total_request_count' in stats - assert 'max_requests' in stats + assert 'max_total_requests' in stats + assert 'max_active_requests' in stats # Verify values for empty context assert stats['allocated_blocks'] == 0 @@ -134,12 +131,11 @@ def test_get_kvcache_utilization_stats_with_requests(self): assert stats_after['total_blocks'] == stats['total_blocks'] assert stats_after['total_blocks'] > 0 - # Verify that gtd_block_count remains constant - assert stats_after['gtd_block_count'] == stats['gtd_block_count'] - # Verify that max_requests remains constant - assert stats_after['max_requests'] == stats['max_requests'] - assert stats_after['max_requests'] > 0 + assert stats_after['max_total_requests'] == stats['max_total_requests'] + assert stats_after['max_total_requests'] > 0 + assert stats_after['max_active_requests'] == stats['max_active_requests'] + assert stats_after['max_active_requests'] > 0 # Verify block availability decreased after allocation assert stats_after['block_count_avail'] < stats['block_count_avail'] @@ -147,7 +143,7 @@ def test_get_kvcache_utilization_stats_with_requests(self): # Verify relationship: allocated_blocks + block_count_avail + 1 (dummy) = total assert ( stats_after['allocated_blocks'] + stats_after['block_count_avail'] + 1 - == dynamic_context.block_allocator.block_count_total + == dynamic_context.block_allocator.total_count ) # Verify utilization bounds [0, 1] @@ -180,12 +176,11 @@ def test_kvcache_utilization_stats_types(self): 'active_unique_blocks', 'active_request_count', 'paused_request_count', - 'gtd_block_count', 'block_count_avail', - 'num_non_gtd_blocks', 'active_token_count', 'total_request_count', - 'max_requests', + 'max_total_requests', + 'max_active_requests', ] for field in int_fields: @@ -239,8 +234,7 @@ def test_paused_requests_in_stats(self): num_attention_heads=8, max_sequence_length=128, num_cuda_graphs=None, - buffer_size_gb=0.01, # Small buffer to force pausing - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.01, # Small buffer to force pausing block_size_tokens=32, ) diff --git a/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py b/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py index 10ffe2fdd40..5fbdef762eb 100644 --- a/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py +++ b/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py @@ -116,8 +116,7 @@ def setup_model( kv_channels=transformer_config.kv_channels, num_attention_heads=transformer_config.num_attention_heads, max_sequence_length=2048, - buffer_size_gb=1, - buffer_guaranteed_fraction=0.1, + active_buffer_size_gb=0.2, materialize_only_last_token_logits=False, use_flashinfer_fused_rope=None, # default to using flash-infer if available # this is for compatibility with the LTS environment From a59223d4bdc5a2e49b03be7e49fc7ae31c90d2b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Mon, 10 Nov 2025 16:38:19 +0000 Subject: [PATCH 13/27] Update copy-pr-bot.yaml [skip ci] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- .github/copy-pr-bot.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/copy-pr-bot.yaml b/.github/copy-pr-bot.yaml index b9e97b18946..7013df60dc2 100644 --- a/.github/copy-pr-bot.yaml +++ b/.github/copy-pr-bot.yaml @@ -1,4 +1,4 @@ enabled: true auto_sync_draft: false auto_sync_ready: true -trustees_override: ["AAnoosheh", "ArEsKay3", "Autumn1998", "BestJuly", "BoxiangW", "ChenhanYu", "FDecaYed", "HaochenYuan", "ISEEKYAN", "JRD971000", "QiZhangNV", "ShriyaRishab", "Victarry", "Wohox", "ZhiyuLi-Nvidia", "aklife97", "ananthsub", "asolergi-nv", "buptzyb", "chtruong814", "cspades", "cuichenx", "deepakn94", "dimapihtar", "duncanriach", "erhoo82", "ericharper", "fanshiqing", "gautham-kollu", "hxbai", "jaredcasper", "jkamalu", "jon-barker", "kanz-nv", "kevalmorabia97", "ko3n1g", "kunlunl", "kvareddy", "layalir", "lhb8125", "lmcafee-nvidia", "maanug-nv", "mathemakitten", "matthieule", "mkhona-nvidia", "pablo-garay", "pthombre", "rogerwaleffe", "sanandaraj5597", "santhnm2", "sbak5", "shanmugamr1992", "sidsingh-nvidia", "skyw", "tdene", "theothermike", "thomasdhc", "trintamaki", "tylerpoon", "wdykas", "xiaoyao0115", "yanring", "yaox12", "yaoyu-33", "yashaswikarnati", "yobibyte", "youngeunkwon0405", "yuzhongw-nvidia", "zhongbozhu"] +trustees_override: ["AAnoosheh", "ArEsKay3", "Autumn1998", "BestJuly", "BoxiangW", "ChenhanYu", "FDecaYed", "HaochenYuan", "ISEEKYAN", "JRD971000", "QiZhangNV", "ShriyaRishab", "Victarry", "Wohox", "ZhiyuLi-Nvidia", "aklife97", "ananthsub", "asolergi-nv", "buptzyb", "chtruong814", "cspades", "cuichenx", "deepakn94", "dimapihtar", "duncanriach", "erhoo82", "ericharper", "fanshiqing", "gautham-kollu", "hxbai", "jaredcasper", "jiemingz", "jkamalu", "jon-barker", "kanz-nv", "kevalmorabia97", "ko3n1g", "kunlunl", "kvareddy", "layalir", "lhb8125", "lmcafee-nvidia", "maanug-nv", "mathemakitten", "matthieule", "mehraakash", "mkhona-nvidia", "pablo-garay", "parthmannan", "pthombre", "rogerwaleffe", "sanandaraj5597", "santhnm2", "sbak5", "shanmugamr1992", "shifangx", "shjwudp", "sidsingh-nvidia", "skyw", "tdene", "theothermike", "thomasdhc", "trintamaki", "tylerpoon", "wdykas", "xiaoyao0115", "xuwchen", "yanring", "yaox12", "yaoyu-33", "yashaswikarnati", "yobibyte", "youngeunkwon0405", "yuzhongw-nvidia", "zhongbozhu"] From 70551861c5b5501951982f3c2b82d832db52ece7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Mon, 10 Nov 2025 16:49:41 +0000 Subject: [PATCH 14/27] Revert "Dynamic inference context | UVM only. (#1983)" This reverts commit d6979d6cceb0007eec7c8960738f4dc0276bb540. --- .../inference/gpt/gpt_dynamic_inference.py | 24 +- .../gpt/gpt_dynamic_inference_12b.sh | 8 +- .../gpt/gpt_dynamic_inference_357m.sh | 8 +- examples/inference/gpt/utils.py | 40 +-- .../contexts/dynamic_block_allocator.py | 86 ++--- .../inference/contexts/dynamic_context.py | 302 ++++++++++-------- .../core/inference/engines/dynamic_engine.py | 18 +- .../core/inference/engines/static_engine.py | 2 +- megatron/training/arguments.py | 36 ++- .../contexts/test_dynamic_context.py | 238 ++++++++------ .../inference/engines/test_dynamic_engine.py | 125 ++++++-- .../inference/test_wandb_logging.py | 30 +- .../test_simple_text_generation_controller.py | 3 +- 13 files changed, 538 insertions(+), 382 deletions(-) diff --git a/examples/inference/gpt/gpt_dynamic_inference.py b/examples/inference/gpt/gpt_dynamic_inference.py index fc2d17c1ebd..251aa100cba 100644 --- a/examples/inference/gpt/gpt_dynamic_inference.py +++ b/examples/inference/gpt/gpt_dynamic_inference.py @@ -132,7 +132,6 @@ def get_inference_context( """The inference context manages the KV cache and other inference state.""" args = get_args() - # Max sequence length. if calculate_max_sequence_length_from_requests: max_gen_length = sampling_params.num_tokens_to_generate @@ -160,8 +159,11 @@ def get_inference_context( else None ), block_size_tokens=args.inference_dynamic_batching_block_size, - active_buffer_size_gb=args.inference_dynamic_batching_active_buffer_size_gb, - max_tokens=args.inference_dynamic_batching_max_tokens, + buffer_size_gb=args.inference_dynamic_batching_buffer_size_gb, + buffer_guaranteed_fraction=args.inference_dynamic_batching_buffer_guaranteed_fraction, + buffer_overflow_factor=args.inference_dynamic_batching_buffer_overflow_factor, + max_requests_override=args.inference_dynamic_batching_max_requests_override, + max_tokens_override=args.inference_dynamic_batching_max_tokens_override, tensor_model_parallel_size=args.tensor_model_parallel_size, materialize_only_last_token_logits=not args.return_log_probs, layer_type_list=layer_type_list, @@ -544,14 +546,14 @@ def escape_str(s): if engine.capture_stats else "--" ) - print(" … ".join(( - f"{setup_prefix}", - f"throughput: {throughput:.3f} tok/s", - f"total time: {total_time:.3f}s", - f"mem {peak_alloc_gb:.1f}/{peak_resvd_gb:.1f} GB", - f"steps: {engine.step_count:d}", - f"capture {capture_str}", - ))) + print( + f"{setup_prefix} … " + f"capture {capture_str} … " + f"mem {peak_alloc_gb:.1f}/{peak_resvd_gb:.1f} GB … " + f"total time: {total_time:.3f}s … " + f"steps: {engine.step_count:d} … " + f"throughput: {throughput:.3f} tok/s" + ) print("~~~") # Stop Nsight profiler. diff --git a/examples/inference/gpt/gpt_dynamic_inference_12b.sh b/examples/inference/gpt/gpt_dynamic_inference_12b.sh index 341bd1a8ac0..a16fe5176d5 100644 --- a/examples/inference/gpt/gpt_dynamic_inference_12b.sh +++ b/examples/inference/gpt/gpt_dynamic_inference_12b.sh @@ -23,7 +23,9 @@ export CUDA_DEVICE_MAX_CONNECTIONS=1 : ${INCOMING_REQUESTS_PER_SEC=100.} # Dynamic context. -: ${ACTIVE_BUFFER_SIZE_GB=50.} +: ${BUFFER_SIZE_GB=50.} +: ${BUFFER_OVERFLOW_FACTOR=1.} +: ${BUFFER_GUARANTEED_FRACTION=0.05} # Cuda graphs. : ${CUDA_GRAPH_IMPL=local} @@ -76,7 +78,9 @@ ARGS=" \ --inference-rng-tracker \ \ --inference-dynamic-batching \ - --inference-dynamic-batching-active-buffer-size-gb ${ACTIVE_BUFFER_SIZE_GB} \ + --inference-dynamic-batching-buffer-size-gb ${BUFFER_SIZE_GB} \ + --inference-dynamic-batching-buffer-overflow-factor ${BUFFER_OVERFLOW_FACTOR} \ + --inference-dynamic-batching-buffer-guaranteed-fraction ${BUFFER_GUARANTEED_FRACTION} \ \ ${EXTRA_ARGS} \ " diff --git a/examples/inference/gpt/gpt_dynamic_inference_357m.sh b/examples/inference/gpt/gpt_dynamic_inference_357m.sh index c0e24e1a77c..c095371714f 100644 --- a/examples/inference/gpt/gpt_dynamic_inference_357m.sh +++ b/examples/inference/gpt/gpt_dynamic_inference_357m.sh @@ -24,7 +24,9 @@ export CUDA_DEVICE_MAX_CONNECTIONS=1 : ${INCOMING_REQUESTS_PER_SEC=100.} # Dynamic context. -: ${ACTIVE_BUFFER_SIZE_GB=50.} +: ${BUFFER_SIZE_GB=50.} +: ${BUFFER_OVERFLOW_FACTOR=1.} +: ${BUFFER_GUARANTEED_FRACTION=0.05} # Cuda graphs. : ${CUDA_GRAPH_IMPL=local} @@ -62,7 +64,9 @@ ARGS=" \ --inference-rng-tracker \ \ --inference-dynamic-batching \ - --inference-dynamic-batching-active-buffer-size-gb ${ACTIVE_BUFFER_SIZE_GB} \ + --inference-dynamic-batching-buffer-size-gb ${BUFFER_SIZE_GB} \ + --inference-dynamic-batching-buffer-overflow-factor ${BUFFER_OVERFLOW_FACTOR} \ + --inference-dynamic-batching-buffer-guaranteed-fraction ${BUFFER_GUARANTEED_FRACTION} \ \ ${EXTRA_ARGS} \ " diff --git a/examples/inference/gpt/utils.py b/examples/inference/gpt/utils.py index e80c9b546e1..0ea1f5a3df0 100644 --- a/examples/inference/gpt/utils.py +++ b/examples/inference/gpt/utils.py @@ -11,7 +11,6 @@ from megatron.core.inference.inference_request import DynamicInferenceRequest from megatron.core.inference.contexts import DynamicInferenceContext -from megatron.core.inference.contexts.dynamic_context import get_mem_size_str from megatron.core.transformer.module import MegatronModule from megatron.core.inference.sampling_params import SamplingParams @@ -66,7 +65,7 @@ def add_common_inference_args(parser: ArgumentParser) -> ArgumentParser: help="Add a deterministic number of requests per step. This arg is " "prioritized over `--incoming-requests-per-sec` below (which is non-" "deterministic). Note that the number of requests added per step is " - "additionally limited by the inference context's `max_active_requests`, " + "additionally limited by the inference context's `max_requests`, " "`max_tokens`, and KV buffer size.", ) group.add_argument( @@ -263,27 +262,10 @@ def get_synthetic_requests( int(args.incoming_requests_per_sec * args.incoming_requests_duration), ) - # Build prompts with expected lengths. - assert ( - len(args.num_tokens_to_prompt) == 2 - and - args.num_tokens_to_prompt[1] >= args.num_tokens_to_prompt[0] - ) - max_prompt_length = args.num_tokens_to_prompt[1] - max_prompt_text = "hi " * max_prompt_length - max_prompt_tokens = tokenizer.tokenize(max_prompt_text) - prompt_lengths = [ - random.randint(*args.num_tokens_to_prompt) - for _ in time_offsets - ] - prompt_tokens_list = [ max_prompt_tokens[:l] for l in prompt_lengths ] - prompt_texts = [ tokenizer.detokenize(tt) for tt in prompt_tokens_list ] - # Init requests. - assert len(prompt_texts) == len(time_offsets) requests = [ - Request(t, o, tokenizer, sampling_params=sampling_params) - for t, o in zip(prompt_texts, time_offsets) + Request("hi " * random.randint(*args.num_tokens_to_prompt), t, tokenizer, sampling_params) + for t in time_offsets ] return requests @@ -360,7 +342,7 @@ def build_dynamic_engine_setup_prefix( Args: args (Namespace): Command-line arguments for this run. - context (DynamicInferenceContext): Stores limits such as `max_active_requests`, + context (DynamicInferenceContext): Stores limits such as `max_requests`, `max_tokens`, and `gtd_request_count`. requests (List[DynamicInferenceRequest]): List of inference requests. @@ -397,10 +379,17 @@ def build_dynamic_engine_setup_prefix( ) # Buffer limits config + flw = args.inference_dynamic_batching_buffer_overflow_factor + flw_str = "no overflow" if flw is None else f"{flw:.1f}" buffer_limits_str = ( - f"bf: {get_mem_size_str(args.inference_dynamic_batching_active_buffer_size_gb*1024**3)}, " - f"{context.block_allocator.active_count} chunks " - f"[r {context.max_active_requests}, t {context.max_tokens}]" + f"bf {args.inference_dynamic_batching_buffer_size_gb:.0f}, {flw_str} " + f"[r {context.max_requests}, t {context.max_tokens}]" + ) + + # Guaranteed request config + guaranteed_fraction_str = ( + f"gtd {args.inference_dynamic_batching_buffer_guaranteed_fraction:.2f} " + f"[r {context.gtd_request_count}]" ) parts = [ @@ -410,6 +399,7 @@ def build_dynamic_engine_setup_prefix( uvm_str, request_str, buffer_limits_str, + guaranteed_fraction_str, ] return " | ".join(parts) diff --git a/megatron/core/inference/contexts/dynamic_block_allocator.py b/megatron/core/inference/contexts/dynamic_block_allocator.py index 8b4cc70cfb8..4baa3f5212c 100644 --- a/megatron/core/inference/contexts/dynamic_block_allocator.py +++ b/megatron/core/inference/contexts/dynamic_block_allocator.py @@ -13,86 +13,60 @@ class BlockAllocator: - Initializing a pool of block IDs - Allocating blocks from the pool - Releasing blocks back to the pool + - Managing the guaranteed block count for active requests Args: - context (DynamicInferenceContext): Dynamic inference context. - active_count (int): Total number of active blocks available in the buffer. - The full buffer size is 2*active_count, to accommodate an equal-size - space for paused requests that live on the CPU. + block_count_total (int): Total number of blocks available in the buffer. + gtd_block_count (int): Number of blocks reserved for guaranteed requests. """ - def __init__(self, context: "DynamicInferenceContext", active_count: int): + def __init__(self, block_count_total: int, gtd_block_count: int): + self.block_count_total = block_count_total + self.gtd_block_count = gtd_block_count - self.context = context - - active_count -= 1 # -1 for dummy_block_idx (see below) - active_count = max(1, active_count) # need at least one block - self.total_count = 2 * active_count + 1 # +1 for dummy_block_idx - self.total_avail = self.total_count - 1 # -1 for dummy_block_idx - self.active_count = active_count - self.paused_count = self.total_count - self.active_count - 1 # -1 for dummy_block_idx - self.dummy_block_idx = self.total_count - 1 + # Reserve last block ID as dummy block for decode-only inference steps + self.block_count_avail = self.block_count_total - 1 + self.dummy_block_idx = self.block_count_total - 1 # Initialize block pool as a "stack" data structure self.block_bag = torch.arange( - self.total_count, dtype=torch.int32, device=torch.cuda.current_device() - ) - - def __str__(self): - return ( - f"total avail {self.total_avail} / {self.total_count - 1}" - f"; active {self.active_count}" + self.block_count_total, dtype=torch.int32, device=torch.cuda.current_device() ) - def get_active_used(self): - """Compute number of active blocks used.""" - return ( - self.context.request_kv_block_counts[ - self.context.paused_request_count : self.context.total_request_count - ] - .sum() - .item() - ) - - def get_paused_used(self): - """Compute number of paused blocks used.""" - return ( - self.context.request_kv_block_counts[: self.context.paused_request_count].sum().item() - ) - - def get_active_avail(self): - """Compute number of active blocks available.""" - return self.active_count - self.get_active_used() - - def get_paused_avail(self): - """Compute number of paused blocks available.""" - return self.paused_count - self.get_paused_used() - - def is_memory_available(self, num_blocks: int) -> bool: + def is_memory_available(self, num_blocks: int, safe: bool = False) -> bool: """Check if memory blocks are available. + Use 'safe' to avoid all requests being deadlocked. A fraction of the KV cache + memory buffer is reserved to guarantee that a minimum number of active + requests can run on any given step. + Args: num_blocks (int): Number of blocks to check. + safe (bool): Include extra space for guaranteeing ability to run + requests to completion. Return: (bool) Is memory available? """ - return self.get_active_avail() >= num_blocks + if safe: + return self.block_count_avail >= num_blocks + self.gtd_block_count + else: + return self.block_count_avail >= num_blocks - def allocate_memory_blocks(self, num_blocks: int) -> Optional[Tensor]: + def allocate_memory_blocks(self, num_blocks: int = 1, safe: bool = False) -> Optional[Tensor]: """Allocate memory blocks if available, else return None. Args: num_blocks (int): Number of blocks to allocate. + safe (bool): Include extra space for guaranteeing ability to run + requests to completion. Return: (Optional[Tensor]) Allocated block IDs. """ - if self.is_memory_available(num_blocks): - self.total_avail -= num_blocks - block_ids = self.block_bag[self.total_avail : (self.total_avail + num_blocks)] - assert num_blocks == block_ids.numel() - return block_ids + if self.is_memory_available(num_blocks, safe): + self.block_count_avail -= num_blocks + return self.block_bag[self.block_count_avail : (self.block_count_avail + num_blocks)] else: return None @@ -106,8 +80,8 @@ def release_memory_blocks(self, blocks: Tensor) -> None: None """ num_blocks = blocks.size(dim=0) - self.block_bag[self.total_avail : (self.total_avail + num_blocks)] = blocks - self.total_avail += num_blocks + self.block_bag[self.block_count_avail : (self.block_count_avail + num_blocks)] = blocks + self.block_count_avail += num_blocks def reset(self) -> None: """Reset the allocator to initial state. @@ -115,4 +89,4 @@ def reset(self) -> None: This resets the available block count to the entire memory pool (except for the dummy block). """ - self.total_avail = self.total_count - 1 + self.block_count_avail = self.block_count_total - 1 diff --git a/megatron/core/inference/contexts/dynamic_context.py b/megatron/core/inference/contexts/dynamic_context.py index 22a4b1b1423..000b58200f8 100644 --- a/megatron/core/inference/contexts/dynamic_context.py +++ b/megatron/core/inference/contexts/dynamic_context.py @@ -1,6 +1,5 @@ # Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. -import logging import math import warnings from contextlib import nullcontext @@ -114,7 +113,7 @@ class BlockOverflowError(ContextOverflowError): class ActiveRequestCountOverflowError(ContextOverflowError): '''Used when `initialize_attention_state()` is called with - `num_warmup_requests > max_active_requests.''' + `num_warmup_requests > max_requests.''' def __init__(self, max_request_count, active_request_count): assert active_request_count > max_request_count @@ -176,15 +175,6 @@ class WarmupEngineMode(Enum): NON_DECODE = "non_decode" -def get_mem_size_str(n_bytes: int) -> str: - """Convert number of bytes to human-readable string.""" - for exp, suffix in ((4, "TB"), (3, "GB"), (2, "MB"), (3, "KB"), (0, "bytes")): - nquery = int(1024**exp) - if round(n_bytes / nquery) >= 1: - return "%.3g %s" % (n_bytes / nquery, suffix) - raise Exception(f"something went wrong, n_bytes={n_bytes}.") - - # pylint: disable=line-too-long class DynamicInferenceContext(BaseInferenceContext): """Inference context that is passed to the main model in order @@ -195,9 +185,9 @@ class DynamicInferenceContext(BaseInferenceContext): arbitrary sequence length may be added, paused, or removed from the context at any step. The only constraint is the maximum number of requests or tokens that the context is defined to support. For the block-level KV cache, a memory - buffer is allocated up front (size `2 * active_buffer_size_gb`), that is - divided into blocks and dynamically assigned to requests. At any given step, - any unassigned blocks equate to unused space. + buffer is allocated up front (size `buffer_size_gb`), that is divided into + blocks and dynamically assigned to requests. At any given step, any unassigned + blocks equate to unused space. Additionally, a fraction of the memory buffer (`gtd_request_fraction`, i.e., the 'guaranteed' request fraction) is reserved for guaranteeing that a @@ -222,19 +212,26 @@ class DynamicInferenceContext(BaseInferenceContext): num_attention_heads (int): Number of attention heads. max_sequence_length (int): Max possible sequence length (prompt + output) that will occur. - active_buffer_size_gb (float): Buffer size reserved for active requests - that live on the GPU. The total buffer size (stored in unified memory) - is 2x this value, with the the other half of the buffer reserved for - paused requests that live on the CPU. - max_tokens (int): Max number of tokens to use for forward passes. This is - primarily limited by prefill activation memory usage. (Defaults to - 16384). + buffer_size_gb (float): Total buffer size (GB), shared by main and + fallback contexts. block_size_tokens (int): Size of KV cache block size. + buffer_guaranteed_fraction (float): Fraction of the memory buffer that is + reserved to guarantee that one or more active requests are able to + run to completion. Without reserving this memory, paused requests are + able to fill the memory buffer and block execution of any requests. + buffer_overflow_factor (Optional[float]): Scaling factor over the buffer + size for auto computing `max_requests` and `max_tokens`. This scaling + factor is used for fitting more requests and tokens in the memory + buffer than it can safely hold, which in turn increases throughput. + max_requests_override (Optional[int]): If set, overrides value computed + from `buffer_overflow_factor`. + max_tokens_override (Optional[int]): If set, overrides value computed + from `buffer_overflow_factor`. tensor_model_parallel_size (Optional[int]): Tensor model parallel size. num_cuda_graphs (Optional[int]): Maximum number of cuda graphs to capture, - where the cuda graph batch sizes range from 1 to `max_active_requests` - (as computed below). Due to rounding, the actual number of cuda graphs - may not equal this argument. + where the cuda graph batch sizes range from 1 to `max_requests` (as + computed below). Due to rounding, the actual number of cuda graphs may + not equal this argument. materialize_only_last_token_logits (Optional[bool]): Whether to only materialize logits for the last token. This should be set to False if returning log probs. @@ -257,10 +254,6 @@ class DynamicInferenceContext(BaseInferenceContext): metrics_writer (Optional['WandbModule']): Wandb module for writing metrics. """ - DEFAULT_MAX_TOKENS = 16384 - TOKEN_ROUNDER = 64 - REQUEST_ROUNDER = 4 - def __init__( self, *, @@ -269,9 +262,12 @@ def __init__( kv_channels: int, num_attention_heads: int, max_sequence_length: int, - active_buffer_size_gb: float, - max_tokens: int = DEFAULT_MAX_TOKENS, + buffer_size_gb: float, + buffer_guaranteed_fraction: float, block_size_tokens: int = 256, + buffer_overflow_factor: Optional[float] = None, + max_requests_override: Optional[int] = None, + max_tokens_override: Optional[int] = None, tensor_model_parallel_size: Optional[int] = None, cache_mla_latent: bool = False, kv_lora_rank: Optional[int] = None, @@ -283,7 +279,7 @@ def __init__( mamba_ssm_states_shape: Optional[Tuple[int]] = None, use_cuda_graphs_for_non_decode_steps: bool = True, use_flashinfer_fused_rope: bool = False, - unified_memory_level: Optional[int] = 1, + unified_memory_level: Optional[int] = 0, metrics_writer: Optional['WandbModule'] = None, ): super().__init__(materialize_only_last_token_logits=materialize_only_last_token_logits) @@ -360,6 +356,11 @@ def __init__( ) assert self.block_size_bytes > 0 + # Adjust buffer to be a multiple of block size. + buffer_size_bytes = int(buffer_size_gb * 1024**3) + buffer_size_bytes_rem = buffer_size_bytes % self.block_size_bytes + buffer_size_bytes = buffer_size_bytes - buffer_size_bytes_rem + mamba_states_memory_per_request = 0 if self.is_hybrid_model: mamba_states_memory_per_request += math.prod(mamba_conv_states_shape) @@ -367,25 +368,40 @@ def __init__( mamba_states_memory_per_request *= self.num_mamba_layers mamba_states_memory_per_request *= dtype_size_bytes - # Initialize block allocator. - active_buffer_size_bytes = int(active_buffer_size_gb * 1024**3) - active_block_count_total = active_buffer_size_bytes // ( - self.block_size_bytes + mamba_states_memory_per_request - ) - self.block_allocator = BlockAllocator(context=self, active_count=active_block_count_total) - del active_block_count_total # use self.block_allocator.active_count - active_buffer_size_bytes = self.block_allocator.active_count * self.block_size_bytes - - # Set max_total_requests, max_active_requests, max_tokens. - self.max_total_requests = self.block_allocator.total_count - 1 # -1 for dummy block - self.max_active_requests = self.block_allocator.active_count - self.max_tokens = max_tokens or self.DEFAULT_MAX_TOKENS - - assert self.max_tokens >= self.max_active_requests, ( - f"max_tokens ({self.max_tokens}) must be >= " - f"max_active_requests ({self.max_active_requests}), " - "to have consistency between cuda graph sizes and the block table size." - ) + # Compute max_requets, max_tokens from buffer size, overflow factor, and Mamba state size. + def bytes_to_max_requests_and_tokens(n_bytes): + bytes_per_token = self.block_size_bytes / self.block_size_tokens + cost_per_request_bytes = ( + mamba_states_memory_per_request + max_sequence_length * bytes_per_token + ) + # TODO(ksanthanam): Leave room for an extra request in the event of padding + # for non-decode CUDA graphs + n_requests = n_bytes / cost_per_request_bytes + n_tokens = n_requests * max_sequence_length + n_requests = self.round_up_requests(int(n_requests), tp_size=tp_size) + n_tokens = self.round_up_tokens(int(n_tokens), tp_size=tp_size) + return n_requests, n_tokens + + self.max_requests, self.max_tokens = bytes_to_max_requests_and_tokens(buffer_size_bytes) + if buffer_overflow_factor is not None: + self.max_requests = self.round_up_requests( + int(self.max_requests * buffer_overflow_factor), tp_size=tp_size + ) + self.max_tokens = self.round_up_tokens( + int(self.max_tokens * buffer_overflow_factor / 50.0), tp_size=tp_size + ) + + if max_requests_override is not None: + self.max_requests = ( + max_requests_override + if max_requests_override < self.REQUEST_ROUNDER + else self.round_up_requests(max_requests_override, tp_size=tp_size) + ) + + if max_tokens_override is not None: + self.max_tokens = self.round_up_tokens(max_tokens_override, tp_size=tp_size) + + self.max_requests = min(self.max_requests, self.max_tokens) # e.g., decode only. # Initialize context state. self.params_dtype = params_dtype @@ -413,7 +429,7 @@ def __init__( # Per-request state. self.request_ids = torch.full( - (self.max_total_requests,), -1, dtype=torch.int32, device=torch.cuda.current_device() + (self.max_requests,), -1, dtype=torch.int32, device=torch.cuda.current_device() ) # request_query_lengths is the input prompt tokens length during prefill phase (1st step) and then 1 for the decode phase (i.e During generation) self.request_query_lengths = torch.empty_like(self.request_ids) @@ -439,15 +455,24 @@ def __init__( self.token_to_position_in_request = torch.empty_like(self.token_to_input_ids) self.token_to_local_position_within_kv_block = torch.empty_like(self.token_to_input_ids) + # Calculate the total number of chunks available in the buffer + total_mamba_states_memory = mamba_states_memory_per_request * self.max_requests + block_count_total = ( + max(0, buffer_size_bytes - total_mamba_states_memory) // self.block_size_bytes + ) + # Memory buffer. - def allocate_memory_buffer(): - """Allocate the memory buffer. This function is called below within - `with ctx_manager:`.""" + ctx_manager = ( + torch.cuda.use_mem_pool(self.unified_memory_mempool) + if self.unified_memory_level > 0 + else nullcontext() + ) + with ctx_manager: if cache_mla_latent: self.memory_buffer = torch.full( ( self.num_attention_layers, - self.block_allocator.total_count, + block_count_total, self.block_size_tokens, kv_reduced_dim, ), @@ -460,7 +485,7 @@ def allocate_memory_buffer(): ( 2, # key and value self.num_attention_layers, - self.block_allocator.total_count, + block_count_total, self.block_size_tokens, num_attention_heads_per_partition, hidden_size_per_attention_head, @@ -473,7 +498,7 @@ def allocate_memory_buffer(): # Block ids. self.max_kv_block_count = math.ceil(self.max_sequence_length / self.block_size_tokens) self.request_to_kv_block_ids = torch.full( - (self.max_total_requests, self.max_kv_block_count), + (self.max_requests, self.max_kv_block_count), -1, dtype=torch.int, device=torch.cuda.current_device(), @@ -484,11 +509,11 @@ def allocate_memory_buffer(): if num_cuda_graphs is not None: # Ensure valid num_cuda_graphs. - num_cuda_graphs = min(max(num_cuda_graphs, 1), self.max_active_requests) + num_cuda_graphs = min(max(num_cuda_graphs, 1), self.max_requests) # Cuda graph step size. cuda_graph_rounder = 8 - self.cuda_graph_step_size = self.max_active_requests / num_cuda_graphs + self.cuda_graph_step_size = self.max_requests / num_cuda_graphs self.cuda_graph_step_size = ( math.ceil(self.cuda_graph_step_size / cuda_graph_rounder) * cuda_graph_rounder ) @@ -497,17 +522,13 @@ def allocate_memory_buffer(): # Cuda graph token counts. if num_cuda_graphs == 1: - self.cuda_graph_token_counts = [self.max_active_requests] + self.cuda_graph_token_counts = [self.max_requests] else: self.cuda_graph_token_counts = list( - range( - self.cuda_graph_step_size, - self.max_active_requests, - self.cuda_graph_step_size, - ) + range(self.cuda_graph_step_size, self.max_requests, self.cuda_graph_step_size) ) - if self.cuda_graph_token_counts[-1] != self.max_active_requests: - self.cuda_graph_token_counts.append(self.max_active_requests) + if self.cuda_graph_token_counts[-1] != self.max_requests: + self.cuda_graph_token_counts.append(self.max_requests) self.cuda_graph_token_counts.reverse() # Set used for validating active cuda graph token count. @@ -529,51 +550,66 @@ def allocate_memory_buffer(): self.active_attn_metadata = None self.graph_attn_metadata["mha_metadata"] = GraphedMHAMetadata( - block_count_total=self.block_allocator.total_count, + block_count_total=block_count_total, max_kv_block_count=self.max_kv_block_count, - max_requests=self.max_total_requests, + max_requests=self.max_requests, block_size_tokens=self.block_size_tokens, max_seqlen=self.max_sequence_length, ) self.non_graph_attn_metadata["mha_metadata"] = NonGraphedMHAMetadata( - block_count_total=self.block_allocator.total_count, + block_count_total=block_count_total, max_kv_block_count=self.max_kv_block_count, - max_requests=self.max_total_requests, + max_requests=self.max_requests, block_size_tokens=self.block_size_tokens, max_seqlen=self.max_sequence_length, ) + # Guaranteed active requests. + # * See details in the class docstring above. `gtd_request_fraction` is + # the fraction of blocks in the memory buffer that are reserved for + # guaranteeing that some number of active requests can always proceed + # with their generations. The number of blocks defined by + # `buffer_guaranteed_fraction * block_count_total` is converted to a + # number of requests that this reserved space can safely handle + # (`gtd_request_count`). + # * Note: computing the size of this guaranteed space from blocks rather + # than bytes is safer due to the non-linear impacts of a large + # `block_size_tokens` or `max_kv_block_count`. When computing from + # blocks, this space will always be less than `block_count_total`. When + # computing from bytes, this space can unexpectedly be much larger than + # `block_count_total`, resulting in stalled generations. + gtd_block_count = int(buffer_guaranteed_fraction * block_count_total) + gtd_block_count = min(gtd_block_count, block_count_total) + self.gtd_request_count = max(1, gtd_block_count // self.max_kv_block_count) + self.gtd_block_count = self.gtd_request_count * self.max_kv_block_count + + # Initialize allocator for KV memory blocks + self.block_allocator = BlockAllocator( + block_count_total=block_count_total, gtd_block_count=self.gtd_block_count + ) + # Optional state tensors for hybrid models - def allocate_mamba_states(): - """Allocate Mamba states. This function is called below within - `with ctx_manager:`.""" - if self.is_hybrid_model: - self.mamba_metadata = MambaMetadata(max_requests=self.max_total_requests) + if self.is_hybrid_model: + self.mamba_metadata = MambaMetadata(max_requests=self.max_requests) + + with ctx_manager: self.mamba_conv_states = torch.zeros( - (self.num_mamba_layers, self.max_total_requests) + mamba_conv_states_shape, + (self.num_mamba_layers, self.max_requests) + mamba_conv_states_shape, dtype=self.params_dtype, device=torch.cuda.current_device(), ) self.mamba_ssm_states = torch.zeros( - (self.num_mamba_layers, self.max_total_requests) + mamba_ssm_states_shape, + (self.num_mamba_layers, self.max_requests) + mamba_ssm_states_shape, dtype=self.params_dtype, device=torch.cuda.current_device(), ) - else: - self.mamba_metadata = None + else: + self.mamba_metadata = None - # Allocate `ctx_manager`-managed buffers. (For currently unknown reasons, - # `ctx_manager` can only be used once.) - ctx_manager = ( - torch.cuda.use_mem_pool(self.unified_memory_mempool) - if self.unified_memory_level > 0 - else nullcontext() - ) - with ctx_manager: - allocate_memory_buffer() - allocate_mamba_states() + # Store the dummy block idx reference for convenience + self.dummy_block_idx = self.block_allocator.dummy_block_idx # Deal with chunked prefill self.chunked_prefill_request_id = -1 @@ -582,18 +618,14 @@ def allocate_mamba_states(): self.reset_attention_state() self.reset_mamba_state() - # FlashInfer. if use_flashinfer_fused_rope is True: assert HAVE_FLASHINFER, "flashinfer is not installed" elif use_flashinfer_fused_rope is None: use_flashinfer_fused_rope = HAVE_FLASHINFER self.use_flashinfer_fused_rope = use_flashinfer_fused_rope - # Print info. - logging.info( - "DynamicInferenceContext: allocated context with active buffer size %s (%d blocks)." - % (get_mem_size_str(active_buffer_size_bytes), self.block_allocator.active_count) - ) + TOKEN_ROUNDER = 64 + REQUEST_ROUNDER = 4 @classmethod def round_up_tokens(cls, value, tp_size=None): @@ -622,7 +654,7 @@ def from_config( inference_config: InferenceWrapperConfig, model, max_batch_size: int, - active_buffer_size_gb: float = 40, + buffer_size_gb: float = 40, num_cuda_graphs: int = None, ): """ @@ -630,6 +662,7 @@ def from_config( """ # TODO: Add other necessary configs from inference_config + buffer_guaranteed_fraction = 0.1 model_config = model.config max_sequence_length = ( inference_config.inference_max_seq_length or model_config.max_sequence_length @@ -641,8 +674,10 @@ def from_config( kv_channels=model_config.kv_channels, num_attention_heads=model_config.num_query_groups, max_sequence_length=inference_config.inference_max_seq_length, - active_buffer_size_gb=active_buffer_size_gb, + buffer_size_gb=buffer_size_gb, + buffer_guaranteed_fraction=buffer_guaranteed_fraction, materialize_only_last_token_logits=False, + max_requests_override=max_batch_size, num_cuda_graphs=num_cuda_graphs, use_flashinfer_fused_rope=None, ) @@ -953,7 +988,7 @@ def initialize_attention_state( Args: num_warmup_tokens (Optional[int]): Number of tokens to use for warming up cuda graphs. Must be less than or equal to - `max_active_requests`. + `max_requests`. warmup_engine_mode (WarmupEngineMode): Denote whether to setup for a decode or a non-decode cuda-graph warmup. num_warmup_requests (Optional[int]): [DEPRECATED] Use num_warmup_tokens instead. @@ -973,8 +1008,8 @@ def initialize_attention_state( # warmup both decode and non-decode engine steps if num_warmup_tokens is not None: - if num_warmup_tokens > self.max_active_requests: - raise ActiveRequestCountOverflowError(self.max_active_requests, num_warmup_tokens) + if num_warmup_tokens > self.max_requests: + raise ActiveRequestCountOverflowError(self.max_requests, num_warmup_tokens) if warmup_engine_mode == WarmupEngineMode.NON_DECODE: assert self.non_decode_cuda_graphs, "Set non-decode cuda graphs to True" @@ -993,9 +1028,7 @@ def initialize_attention_state( math.ceil(active_token_count / self.cuda_graph_step_size) * self.cuda_graph_step_size ) - self.padded_active_token_count = min( - self.padded_active_token_count, self.max_active_requests - ) + self.padded_active_token_count = min(self.padded_active_token_count, self.max_requests) assert ( self.padded_active_token_count in self.cuda_graph_token_counts_set ), f"padded_active_token_count: {self.padded_active_token_count} not in cuda_graph_token_counts_set: {self.cuda_graph_token_counts_set}" @@ -1005,7 +1038,7 @@ def initialize_attention_state( if self.is_decode_only(): # For decode-only, the padded active token count cannot exceed max-requests. self.padded_active_token_count = min( - self.padded_active_token_count, self.max_active_requests + self.padded_active_token_count, self.max_requests ) # How are we calculating the padded active request count? @@ -1023,7 +1056,7 @@ def initialize_attention_state( # Update token position indexes. self.token_to_block_idx[self.active_token_count : self.padded_active_token_count] = ( - self.block_allocator.dummy_block_idx + self.dummy_block_idx ) self.token_to_local_position_within_kv_block[ self.active_token_count : self.padded_active_token_count @@ -1165,20 +1198,20 @@ def last_token_logits(self, logits: Tensor) -> Tensor: return last_token_logits - def check_availability(self, req: DynamicInferenceRequest) -> (bool, bool, bool): + def check_availability( + self, req: DynamicInferenceRequest, safe: bool = False + ) -> (bool, bool, bool): """ Check if the request can be added to the context. """ - request_can_be_added = ( - self.total_request_count - self.paused_request_count < self.max_active_requests - ) + request_can_be_added = self.total_request_count < self.max_requests request_tokens_can_be_added = ( self.active_token_count + req.remaining_prompt_length <= self.max_tokens ) blocks = math.ceil( (req.remaining_prompt_length + req.finished_chunk_token_count) / self.block_size_tokens ) - math.ceil(req.finished_chunk_token_count / self.block_size_tokens) - kv_cache_available = self.block_allocator.is_memory_available(blocks) + kv_cache_available = self.block_allocator.is_memory_available(blocks, safe=safe) return request_can_be_added, request_tokens_can_be_added, kv_cache_available def add_request(self, req: DynamicInferenceRequest, chunk_length: Optional[int] = None) -> None: @@ -1218,7 +1251,9 @@ def add_request(self, req: DynamicInferenceRequest, chunk_length: Optional[int] num_blocks_needed = overall_required_blocks - already_allocated_blocks if num_blocks_needed > 0: - new_block_ids = self.block_allocator.allocate_memory_blocks(num_blocks_needed) + new_block_ids = self.block_allocator.allocate_memory_blocks( + num_blocks_needed, safe=not is_chunked_prefill + ) if new_block_ids is None or len(new_block_ids) != num_blocks_needed: raise BlockOverflowError(req.request_id) @@ -1236,7 +1271,7 @@ def add_request(self, req: DynamicInferenceRequest, chunk_length: Optional[int] else: current_id = self.total_request_count - if current_id >= self.max_active_requests: + if current_id >= self.max_requests: raise RequestOverflowError(req.request_id) if self.active_token_count + chunk_length > self.max_tokens: @@ -1354,7 +1389,7 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T between these request groups. - 0:paused_request_count -> paused requests - paused_request_count:total_request_count -> active requests - - total_request_count:max_active_requests -> completed requests are moved here. + - total_request_count:max_requests -> completed requests are moved here. The reason for maintaining contiguous tensors rather than multiple smaller (e.g., per-group or per-request) tensors is for both 1) speed (avoid unnecessary tensor allocations), and 2) compatibility with the @@ -1397,9 +1432,6 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T # Reset attention state. self.reset_attention_state() - # Update total_request_count. - self.total_request_count = active_request_count + self.paused_request_count - # 2. If no paused requests are present and no active requests we release memory and reset. if active_request_count + self.paused_request_count == 0: if finished_request_count > 0: @@ -1499,11 +1531,6 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T (active_requests_requiring_new_block == 1).sum().item() ) - if active_requests_requiring_new_block_count > 0: - newly_paused_request_ids = self.request_ids[ - torch.nonzero(active_requests_requiring_new_block) + self.paused_request_count - ] - # Swap unfinished active requests on the left side with paused requests on the right side # NOTE : We add paused request count because we concatenate # paused tokens to the left at the beginning of update requests @@ -1536,6 +1563,7 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T self._move_book_keeping_tensors( src_idxs=src_idxs, dst_idxs=dst_idxs, next_tokens=next_tokens ) + newly_paused_request_ids = self.request_ids[dst_idxs] self.paused_request_count += active_requests_requiring_new_block_count active_request_count -= active_requests_requiring_new_block_count @@ -1544,16 +1572,15 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T # We determine how many requests we can resume and resume them # Assign released blocks to paused requests. # todo: @shanmugamr, un-pause requests using FIFO, rather than LIFO. - resume_request_count = 0 - if self.paused_request_count > 0: - active_block_count_avail = self.block_allocator.get_active_avail() - paused_block_counts = self.request_kv_block_counts[: self.paused_request_count] - paused_block_counts = paused_block_counts.flip(dims=[0]) - paused_block_counts += 1 # +1 for newly added block - paused_block_counts_cumsum = paused_block_counts.cumsum(dim=0) + num_non_gtd_blocks = max(0, self.block_allocator.block_count_avail - self.gtd_block_count) + if num_non_gtd_blocks: + # if we have non-gtd blocks, use them. Do not dip into the gtd-block pool + resume_request_count = min(num_non_gtd_blocks, self.paused_request_count) + else: + # only dip into the gtd-block pool if we have run out of non-gtd-blocks and the active + # request count has fallen below a certain threshold. resume_request_count = min( - torch.nonzero(paused_block_counts_cumsum <= active_block_count_avail).numel(), - self.block_allocator.total_avail, + max(self.gtd_request_count - active_request_count, 0), self.paused_request_count ) self.paused_request_count -= resume_request_count @@ -1613,7 +1640,6 @@ def update_requests(self, active_requests_mask: Tensor, new_tokens: Tensor) -> T == 0 ), "The request_last_kv_block_offset should be 0 for the requests that just got resumed this step. " - assert resume_request_count <= self.block_allocator.total_avail block_ids = self.block_allocator.allocate_memory_blocks(resume_request_count) row_idx = torch.arange( self.paused_request_count, @@ -1735,11 +1761,11 @@ def get_kvcache_utilization_stats(self) -> dict: } """ # Total usable blocks exclude the reserved dummy block. - total_blocks = max(self.block_allocator.total_count - 1, 1) - block_count_avail = int(self.block_allocator.total_avail) + total_blocks = max(self.block_allocator.block_count_total - 1, 1) + block_count_avail = int(self.block_allocator.block_count_avail) # Overall allocated blocks in the buffer right now. - allocated_blocks = (self.block_allocator.total_count - 1) - block_count_avail + allocated_blocks = (self.block_allocator.block_count_total - 1) - block_count_avail allocated_blocks = int(max(0, allocated_blocks)) # Active unique blocks referenced by current active requests only. @@ -1761,6 +1787,7 @@ def get_kvcache_utilization_stats(self) -> dict: active_utilization = float(active_unique_blocks) / float(total_blocks) # Diagnostic helpers + num_non_gtd_blocks = max(0, block_count_avail - int(self.gtd_block_count)) total_request_count = int(self.total_request_count) return { 'total_blocks': int(total_blocks), @@ -1770,9 +1797,10 @@ def get_kvcache_utilization_stats(self) -> dict: 'active_utilization': active_utilization, 'active_request_count': int(self.get_active_request_count()), 'paused_request_count': int(self.paused_request_count), + 'gtd_block_count': int(self.gtd_block_count), 'block_count_avail': int(block_count_avail), + 'num_non_gtd_blocks': int(num_non_gtd_blocks), 'active_token_count': int(self.active_token_count), 'total_request_count': int(total_request_count), - 'max_total_requests': int(self.max_total_requests), - 'max_active_requests': int(self.max_active_requests), + 'max_requests': int(self.max_requests), } diff --git a/megatron/core/inference/engines/dynamic_engine.py b/megatron/core/inference/engines/dynamic_engine.py index d18f2d2233a..4bff4f85fa8 100644 --- a/megatron/core/inference/engines/dynamic_engine.py +++ b/megatron/core/inference/engines/dynamic_engine.py @@ -642,7 +642,7 @@ def schedule_non_chunked_prefill(self): while self.waiting_request_ids: req = self.requests[self.waiting_request_ids[0]] request_can_be_added, request_tokens_can_be_added, kv_cache_available = ( - self.context.check_availability(req) + self.context.check_availability(req, safe=True) ) if request_can_be_added and request_tokens_can_be_added and kv_cache_available: self.context.add_request(req) @@ -716,7 +716,9 @@ def schedule_chunked_prefill(self): self.context.active_token_count + remaining_len <= self.context.max_tokens ) token_partially_can_be_added = self.context.active_token_count < self.context.max_tokens - request_can_be_added, _, kv_cache_available = self.context.check_availability(req) + request_can_be_added, _, kv_cache_available = self.context.check_availability( + req, safe=not is_continuing_chunked_prefill + ) request_can_be_added = is_continuing_chunked_prefill or request_can_be_added if request_can_be_added and kv_cache_available: @@ -863,8 +865,7 @@ async def async_step( step_type = "decode" if is_decode_only else "non-decode" output_str = ( "* step %d | %s ... time: %.3f%s ... " - "reqs: a %d/%d, p %d/%d, w %d, f %d ... " - "blocks: a %d/%d, p %d/%d ... " + "reqs: %d [ gtd %d, active %d, paused %d, finished %d ] ... " "mem: tensors %d, alloc %.1f gb, res %.1f gb." % ( self.step_count, @@ -882,16 +883,11 @@ async def async_step( ), ) ), + prev_total_request_count, + context.gtd_request_count, prev_total_request_count - prev_paused_request_count, - context.block_allocator.active_count, prev_paused_request_count, - context.block_allocator.paused_count, - len(self.waiting_request_ids), self.finished_request_count, - context.block_allocator.get_active_used(), - context.block_allocator.active_count, - context.block_allocator.get_paused_used(), - context.block_allocator.paused_count, mem["allocation.all.current"], mem["allocated_bytes.all.current"] / (1024**3), mem["reserved_bytes.all.current"] / (1024**3), diff --git a/megatron/core/inference/engines/static_engine.py b/megatron/core/inference/engines/static_engine.py index d9f9e9e051d..dc86eb775f9 100644 --- a/megatron/core/inference/engines/static_engine.py +++ b/megatron/core/inference/engines/static_engine.py @@ -99,7 +99,7 @@ def __init__( inference_config=inference_wrapper_config, model=text_generation_controller.inference_wrapped_model.model, max_batch_size=max_batch_size, - active_buffer_size_gb=buffer_size_gb, + buffer_size_gb=buffer_size_gb, num_cuda_graphs=1, ) self.controller.inference_wrapped_model.inference_context = dynamic_context diff --git a/megatron/training/arguments.py b/megatron/training/arguments.py index cb2691c9d49..0b14140529a 100644 --- a/megatron/training/arguments.py +++ b/megatron/training/arguments.py @@ -1136,8 +1136,9 @@ def validate_args(args, defaults={}): ), "Pipeline-parallel microbatched inference is incompatible with CUDA graphs" if args.inference_dynamic_batching: - assert args.inference_dynamic_batching_active_buffer_size_gb is not None + assert args.inference_dynamic_batching_buffer_size_gb is not None assert args.inference_dynamic_batching_block_size % 256 == 0, "block size should be a multiple of 256" + assert args.inference_dynamic_batching_buffer_guaranteed_fraction is not None # MoE upcycling check if args.moe_use_upcycling: @@ -1434,19 +1435,36 @@ def _add_inference_args(parser): group.add_argument('--inference-dynamic-batching', action='store_true', default=False, help='Enable dynamic batching mode.') - group.add_argument('--inference-dynamic-batching-active-buffer-size-gb', + group.add_argument('--inference-dynamic-batching-buffer-size-gb', type=float, default=40., - help='Buffer size (GB) allocated for the active (on-GPU) ' - 'portion of the chunked KV memory. The total buffer size ' - 'is 2x this value, which includes the same-size on-CPU ' - 'paused buffer.') + help='Total buffer size (GB) allocated for the block-level KV ' + 'memory.') group.add_argument('--inference-dynamic-batching-block-size', type=int, default=256, help='KV cache block size. ' 'It should be a multiple of 256') - group.add_argument('--inference-dynamic-batching-max-tokens', + group.add_argument('--inference-dynamic-batching-buffer-guaranteed-fraction', + type=float, default=0.2, + help='Space is reserved within the inference context ' + 'memory buffer to guarantee that a minimum number of ' + 'active requests will always be able to run to ' + 'completion. This is to avoid the context being deadlocked ' + 'by paused requests.') + group.add_argument('--inference-dynamic-batching-buffer-overflow-factor', + type=float, default=None, + help='Scaling factor over the memory buffer size for auto ' + 'computing `max_requests` and `max_tokens`. This scaling ' + 'factor is used for fitting more requests and tokens in ' + 'the memory buffer than it can safely hold, which in turn ' + 'increases throughput.') + group.add_argument('--inference-dynamic-batching-max-requests-override', type=int, default=None, - help='Override the inference context\'s default `max_tokens`.') + help='If set, this overrides the max requests as computed ' + 'from `--inference-dynamic-batching-buffer-overflow-factor`.') + group.add_argument('--inference-dynamic-batching-max-tokens-override', + type=int, default=None, + help='If set, this overrides the max tokens as computed ' + 'from `--inference-dynamic-batching-buffer-overflow-factor`.') group.add_argument('--inference-dynamic-batching-num-cuda-graphs', type=int, default=16, help='Maximum number of cuda graphs to capture, where the ' @@ -1463,7 +1481,7 @@ def _add_inference_args(parser): action='store_true', default=False, help='Only use cuda graphs for decode-only steps, not prefill and mixed steps.') group.add_argument('--inference-dynamic-batching-unified-memory-level', - type=int, default=1, choices=[0, 1], + type=int, default=0, choices=[0, 1], help='Set unified memory usage within the dynamic ' 'inference context. The levels are: 0) no unified memory, ' '1) allocate `memory_buffer` in unified memory. ' diff --git a/tests/unit_tests/inference/contexts/test_dynamic_context.py b/tests/unit_tests/inference/contexts/test_dynamic_context.py index 00c0e2a9dab..0674cdfcabd 100644 --- a/tests/unit_tests/inference/contexts/test_dynamic_context.py +++ b/tests/unit_tests/inference/contexts/test_dynamic_context.py @@ -41,9 +41,12 @@ def _get_dynamic_context( kv_channels, num_attention_heads, max_sequence_length, - active_buffer_size_gb, + buffer_size_gb, block_size_tokens, - max_tokens, + buffer_guaranteed_fraction, + buffer_overflow_factor, + max_requests_override, + max_tokens_override, is_hybrid_model=False, layer_type_list=None, rounder=64, @@ -61,9 +64,12 @@ def _get_dynamic_context( max_sequence_length=max_sequence_length, num_cuda_graphs=None, use_cuda_graphs_for_non_decode_steps=not is_hybrid_model, - active_buffer_size_gb=active_buffer_size_gb, + buffer_size_gb=buffer_size_gb, + buffer_guaranteed_fraction=buffer_guaranteed_fraction, block_size_tokens=block_size_tokens, - max_tokens=max_tokens, + buffer_overflow_factor=buffer_overflow_factor, + max_requests_override=max_requests_override, + max_tokens_override=max_tokens_override, layer_type_list=layer_type_list, mamba_conv_states_shape=(544, 4), mamba_ssm_states_shape=(8, 64, 16), @@ -86,26 +92,29 @@ def test_initialize_dynamic_context(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) if not is_hybrid_model: - assert dynamic_context.block_allocator.total_count == 981 - assert dynamic_context.block_allocator.active_count == 490 - assert dynamic_context.max_total_requests == 980 - assert dynamic_context.max_active_requests == 490 - assert dynamic_context.max_tokens == 16384 + assert dynamic_context.gtd_block_count == 48 + assert dynamic_context.gtd_request_count == 12 + assert dynamic_context.block_allocator.block_count_total == 491 + assert dynamic_context.max_requests == 128 + assert dynamic_context.max_tokens == 62848 assert dynamic_context.num_mamba_layers == 0 assert dynamic_context.mamba_metadata is None else: - assert dynamic_context.block_allocator.total_count == 1111 - assert dynamic_context.block_allocator.active_count == 555 - assert dynamic_context.max_total_requests == 1110 - assert dynamic_context.max_active_requests == 555 - assert dynamic_context.max_tokens == 16384 + assert dynamic_context.gtd_block_count == 112 + assert dynamic_context.gtd_request_count == 28 + assert dynamic_context.block_allocator.block_count_total == 1156 + assert dynamic_context.max_requests == 320 + assert dynamic_context.max_tokens == 154176 assert dynamic_context.num_mamba_layers == 1 assert dynamic_context.mamba_metadata is not None @@ -121,9 +130,12 @@ def test_is_static_batching(self): kv_channels=64, num_attention_heads=8, max_sequence_length=512, - active_buffer_size_gb=1.0, + buffer_size_gb=1.0, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, ) assert not dynamic_context.is_static_batching() @@ -137,19 +149,27 @@ def test_is_memory_available(self, is_hybrid_model): kv_channels=64, num_attention_heads=8, max_sequence_length=512, - active_buffer_size_gb=1.0, + buffer_size_gb=1.0, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) - dynamic_context.block_allocator.active_count = 10 + dynamic_context.block_allocator.block_count_avail = 10 assert dynamic_context.block_allocator.is_memory_available(10) assert not dynamic_context.block_allocator.is_memory_available(11) assert dynamic_context.block_allocator.is_memory_available(1) - dynamic_context.block_allocator.active_count = 0 + dynamic_context.block_allocator.block_count_avail = 0 assert not dynamic_context.block_allocator.is_memory_available(1) + dynamic_context.block_allocator.block_count_avail = 10 + dynamic_context.gtd_block_count = 5 + assert dynamic_context.block_allocator.is_memory_available(6) + assert not dynamic_context.block_allocator.is_memory_available(6, safe=True) + @pytest.mark.internal @pytest.mark.parametrize("is_hybrid_model", [False, True]) def test_request_overflow(self, is_hybrid_model: bool): @@ -161,15 +181,17 @@ def test_request_overflow(self, is_hybrid_model: bool): kv_channels=64, num_attention_heads=8, max_sequence_length=128, - active_buffer_size_gb=0.01, + buffer_size_gb=0.01, + buffer_guaranteed_fraction=0.1, block_size_tokens=32, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, rounder=1, is_hybrid_model=is_hybrid_model, ) - dynamic_context.max_active_requests //= 2 with pytest.raises(RequestOverflowError): - for i in range(dynamic_context.max_active_requests + 1): + for i in range(dynamic_context.max_requests + 1): dynamic_context.add_request( DynamicInferenceRequest( request_id=i, @@ -191,9 +213,12 @@ def test_token_overflow_error(self, is_hybrid_model: bool): kv_channels=64, num_attention_heads=8, max_sequence_length=512, - active_buffer_size_gb=0.1, + buffer_size_gb=0.1, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=200, # setting low, but >= context.max_active_requests. + buffer_overflow_factor=1.0, + max_requests_override=2, + max_tokens_override=20, # Setting a very low token limit rounder=1, is_hybrid_model=is_hybrid_model, ) @@ -202,7 +227,7 @@ def test_token_overflow_error(self, is_hybrid_model: bool): dynamic_context.add_request( DynamicInferenceRequest( request_id=1, - prompt_tokens=torch.arange(0, 225, device='cuda'), + prompt_tokens=torch.arange(0, 25, device='cuda'), sampling_params=SamplingParams( num_tokens_to_generate=dynamic_context.max_tokens - 25 ), @@ -220,9 +245,12 @@ def test_reset(self, is_hybrid_model: bool): kv_channels=64, num_attention_heads=8, max_sequence_length=128, - active_buffer_size_gb=1.0, + buffer_size_gb=1.0, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) @@ -245,6 +273,7 @@ def test_reset(self, is_hybrid_model: bool): dynamic_context.token_to_position_in_request.fill_(1) dynamic_context.token_to_block_idx.fill_(1) dynamic_context.token_to_local_position_within_kv_block.fill_(1) + dynamic_context.block_allocator.block_count_avail = 5 dynamic_context.memory_buffer.fill_(1) dynamic_context.request_to_kv_block_ids.fill_(1) if is_hybrid_model: @@ -274,8 +303,8 @@ def test_reset(self, is_hybrid_model: bool): assert torch.all(dynamic_context.token_to_block_idx == -1) assert torch.all(dynamic_context.token_to_local_position_within_kv_block == 0) assert ( - dynamic_context.block_allocator.active_count - == dynamic_context.block_allocator.total_count // 2 + dynamic_context.block_allocator.block_count_avail + == dynamic_context.block_allocator.block_count_total - 1 ) assert torch.all(dynamic_context.request_to_kv_block_ids == -1) if is_hybrid_model: @@ -293,16 +322,19 @@ def test_allocate_and_release_memory_blocks(self, is_hybrid_model): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) if is_hybrid_model: - expected_memory_blocks = [1106, 1107, 1108, 1109] + expected_memory_blocks = [1151, 1152, 1153, 1154] else: - expected_memory_blocks = [976, 977, 978, 979] + expected_memory_blocks = [486, 487, 488, 489] expected_block_count_avail = expected_memory_blocks[0] assert ( @@ -313,20 +345,20 @@ def test_allocate_and_release_memory_blocks(self, is_hybrid_model): .tolist() == expected_memory_blocks ) - assert dynamic_context.block_allocator.total_avail == expected_block_count_avail + assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail dynamic_context.block_allocator.release_memory_blocks( torch.tensor(expected_memory_blocks[-2:], device='cuda') ) - assert dynamic_context.block_allocator.total_avail == expected_block_count_avail + 2 + assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail + 2 assert ( dynamic_context.block_allocator.allocate_memory_blocks(1).item() == expected_memory_blocks[-1] ) - assert dynamic_context.block_allocator.total_avail == expected_block_count_avail + 1 + assert dynamic_context.block_allocator.block_count_avail == expected_block_count_avail + 1 # Should return None since we allocate more blocks than what we have. assert ( dynamic_context.block_allocator.allocate_memory_blocks( - dynamic_context.block_allocator.total_avail + 100 + dynamic_context.block_allocator.block_count_avail + 100 ) == None ) @@ -342,9 +374,12 @@ def test_add_request(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) assert dynamic_context.block_size_tokens == 128 @@ -366,7 +401,7 @@ def test_add_request(self, is_hybrid_model: bool): assert dynamic_context.request_kv_length_offsets[0] == 0 assert dynamic_context.request_kv_block_counts[0] == 2 assert dynamic_context.request_last_kv_block_id[0].item() == ( - 1109 if is_hybrid_model else 979 + 1154 if is_hybrid_model else 489 ) assert dynamic_context.request_last_kv_block_offset[0].item() == 15 assert torch.all( @@ -415,9 +450,12 @@ def test_update_request(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) @@ -426,7 +464,7 @@ def test_update_request(self, is_hybrid_model: bool): dynamic_context.paused_request_count = 0 dynamic_context.total_request_count = 3 dynamic_context.request_kv_block_counts[0:3] = 1 - new_block_ids = dynamic_context.block_allocator.allocate_memory_blocks(3) + new_block_ids = dynamic_context.block_allocator.allocate_memory_blocks(3, safe=True) dynamic_context.request_to_kv_block_ids[0:3, 0] = new_block_ids if is_hybrid_model: @@ -459,9 +497,12 @@ def test_update_request(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) @@ -479,16 +520,18 @@ def test_update_request(self, is_hybrid_model: bool): ) total_request_count = 10 - dynamic_context.block_allocator.total_avail -= 11 # We align 11 blocks to the 10 requests we have. 3rd request alone we setup like it requires 2 blocks + dynamic_context.block_allocator.block_count_avail -= 11 # We align 11 blocks to the 10 requests we have. 3rd request alone we setup like it requires 2 blocks dynamic_context.total_request_count = total_request_count dynamic_context.request_to_kv_block_ids[0:total_request_count, 0] = torch.arange( - dynamic_context.block_allocator.total_avail, - dynamic_context.block_allocator.total_avail + 10, + dynamic_context.block_allocator.block_count_avail, + dynamic_context.block_allocator.block_count_avail + 10, ) dynamic_context.request_to_kv_block_ids[3][ 1 - ] = dynamic_context.block_allocator.total_avail # Assign one extra block to request 3. + ] = ( + dynamic_context.block_allocator.block_count_avail + ) # Assign one extra block to request 3. dynamic_context.request_kv_length_offsets[0:total_request_count] = 10 # For 0, 1, 5, 6, the total number of tokens in last block is block size -1, so that they will all need extra blocks dynamic_context.request_kv_length_offsets[0:2] = dynamic_context.block_size_tokens - 1 @@ -574,13 +617,13 @@ def test_update_request(self, is_hybrid_model: bool): dynamic_context.request_to_kv_block_ids[0:10].cpu() == torch.tensor( [ - [1099, 1102, -1, -1], - [1100, 1099, -1, -1], - [1104, 1106, -1, -1], - [1105, 1107, -1, -1], - [1103, -1, -1, -1], - [1101, -1, -1, -1], - [1108, -1, -1, -1], + [1144, 1147, -1, -1], + [1145, 1144, -1, -1], + [1149, 1151, -1, -1], + [1150, 1152, -1, -1], + [1148, -1, -1, -1], + [1146, -1, -1, -1], + [1153, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], @@ -592,13 +635,13 @@ def test_update_request(self, is_hybrid_model: bool): dynamic_context.request_to_kv_block_ids[0:10].cpu() == torch.tensor( [ - [969, 972, -1, -1], - [970, 969, -1, -1], - [974, 976, -1, -1], - [975, 977, -1, -1], - [973, -1, -1, -1], - [971, -1, -1, -1], - [978, -1, -1, -1], + [479, 482, -1, -1], + [480, 479, -1, -1], + [484, 486, -1, -1], + [485, 487, -1, -1], + [483, -1, -1, -1], + [481, -1, -1, -1], + [488, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], [-1, -1, -1, -1], @@ -618,20 +661,23 @@ def test_release_memory_blocks_for_finished_requests(self, is_hybrid_model): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) # Set up the initial state with 5 requests # Allocate 5 blocks for 5 requests - initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(5) + initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(5, safe=True) dynamic_context.total_request_count = 5 dynamic_context.paused_request_count = 0 # Record the available blocks before releasing memory - initial_available_blocks = dynamic_context.block_allocator.total_avail + initial_available_blocks = dynamic_context.block_allocator.block_count_avail # Assign blocks to the requests (one block per request) for i in range(5): @@ -662,7 +708,7 @@ def test_release_memory_blocks_for_finished_requests(self, is_hybrid_model): assert dynamic_context.active_token_count == 2 # Verify that 3 blocks were released by checking the available blocks - assert dynamic_context.block_allocator.total_avail == initial_available_blocks + 3 + assert dynamic_context.block_allocator.block_count_avail == initial_available_blocks + 3 if is_hybrid_model: # Request at position 3 now moves into finished request position 0 @@ -690,20 +736,23 @@ def test_finished_requests_with_multiple_blocks(self, is_hybrid_model): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, ) # Set up the initial state with 3 requests, where some use multiple blocks # Allocate 6 blocks in total for the requests - initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(6) + initial_blocks = dynamic_context.block_allocator.allocate_memory_blocks(6, safe=True) dynamic_context.total_request_count = 3 dynamic_context.paused_request_count = 0 # Record the available blocks before releasing memory - initial_available_blocks = dynamic_context.block_allocator.total_avail + initial_available_blocks = dynamic_context.block_allocator.block_count_avail # Assign blocks to the requests: # - Request 0: 1 block @@ -743,7 +792,7 @@ def test_finished_requests_with_multiple_blocks(self, is_hybrid_model): assert dynamic_context.active_token_count == 0 # Verify that all 6 blocks were released by checking the available blocks - assert dynamic_context.block_allocator.total_avail == initial_available_blocks + 6 + assert dynamic_context.block_allocator.block_count_avail == initial_available_blocks + 6 if is_hybrid_model: # All mamba states should be zeroed out @@ -763,9 +812,12 @@ def test_mamba_states_cache(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=False, ) with pytest.raises(AssertionError) as error: @@ -778,9 +830,12 @@ def test_mamba_states_cache(self, is_hybrid_model: bool): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, is_hybrid_model=is_hybrid_model, layer_type_list=[Symbols.MAMBA, Symbols.ATTENTION, Symbols.MAMBA, Symbols.ATTENTION], ) @@ -834,9 +889,12 @@ def test_calculate_and_store_log_probs(self): kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, + buffer_guaranteed_fraction=0.1, block_size_tokens=128, - max_tokens=None, + max_requests_override=None, + max_tokens_override=None, + buffer_overflow_factor=None, ) # Add a few requests to the context @@ -1061,8 +1119,8 @@ def test_unified_memory(self): gpu_size_gb = ( torch.cuda.get_device_properties(torch.cuda.current_device()).total_memory / 1024**3 ) - active_buffer_size_gb = 20 - num_contexts = math.ceil(gpu_size_gb / active_buffer_size_gb) + 1 + buffer_size_gb = 20 + num_contexts = math.ceil(gpu_size_gb / buffer_size_gb) + 1 # Allocate enough contexts to fill GPU memory. def init_contexts(*, unified_memory_level): @@ -1071,11 +1129,13 @@ def init_contexts(*, unified_memory_level): contexts.append( DynamicInferenceContext( params_dtype=torch.float32, - num_layers=64, - kv_channels=16, - num_attention_heads=4, + num_layers=4, + kv_channels=8, + num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=active_buffer_size_gb, + buffer_size_gb=buffer_size_gb, + buffer_overflow_factor=1, + buffer_guaranteed_fraction=0, unified_memory_level=unified_memory_level, ) ) diff --git a/tests/unit_tests/inference/engines/test_dynamic_engine.py b/tests/unit_tests/inference/engines/test_dynamic_engine.py index 457f1121f24..f3c05257552 100644 --- a/tests/unit_tests/inference/engines/test_dynamic_engine.py +++ b/tests/unit_tests/inference/engines/test_dynamic_engine.py @@ -84,9 +84,12 @@ class DynamicEngineTestConfig: num_gap_steps: int = 2 - context_active_buffer_size_gb: float = 0.1 # enough room for all tokens. + context_buffer_size_gb: float = 0.1 # enough room for all tokens. context_block_size_tokens: int = 256 - context_max_tokens: Optional[int] = None + context_buffer_guaranteed_fraction: float = 0.01 + context_buffer_overflow_factor: Optional[float] = None + context_max_requests_override: Optional[int] = None + context_max_tokens_override: Optional[int] = None tensor_model_parallel_size: int = 1 pipeline_model_parallel_size: int = 1 expert_model_parallel_size: int = 1 @@ -122,6 +125,17 @@ def __post_init__(self): assert self.num_tokens_total is not None self.max_sequence_length = self.num_tokens_total + # Update overrides if not using overflow factor. + if self.context_buffer_overflow_factor is None: + + # Enough room for all requests. + if self.context_max_requests_override is None: + self.context_max_requests_override = self.num_requests + + # Enough room for all tokens. + if self.context_max_tokens_override is None: + self.context_max_tokens_override = self.num_requests * self.max_sequence_length + @dataclass class DynamicEngineTestEnv: @@ -213,9 +227,12 @@ def _build_inference_context( max_sequence_length=test_config.max_sequence_length, num_cuda_graphs=test_config.num_cuda_graphs, use_cuda_graphs_for_non_decode_steps=not test_config.model_provider == "mamba", - active_buffer_size_gb=test_config.context_active_buffer_size_gb, + buffer_size_gb=test_config.context_buffer_size_gb, + buffer_guaranteed_fraction=test_config.context_buffer_guaranteed_fraction, block_size_tokens=test_config.context_block_size_tokens, - max_tokens=test_config.context_max_tokens, + buffer_overflow_factor=test_config.context_buffer_overflow_factor, + max_requests_override=test_config.context_max_requests_override, + max_tokens_override=test_config.context_max_tokens_override, tensor_model_parallel_size=transformer_config.tensor_model_parallel_size, layer_type_list=layer_type_list, mamba_conv_states_shape=mamba_conv_states_shape, @@ -503,12 +520,14 @@ def test_simple(self, model_provider, num_cuda_graphs, cuda_graph_scope) -> None env = self._run_test( model_provider=model_provider, num_cuda_graphs=num_cuda_graphs, + context_max_requests_override=32, cuda_graph_scope=cuda_graph_scope, force_build_cuda_graphs=True, ) # Validate max_requests, max_tokens. - assert env.engine.context.max_tokens == DynamicInferenceContext.DEFAULT_MAX_TOKENS + assert env.engine.context.max_requests == 32 + assert env.engine.context.max_tokens == 160 # Validate output tokens. gpt_expected_generated_tokens = [ @@ -549,6 +568,41 @@ def test_simple(self, model_provider, num_cuda_graphs, cuda_graph_scope) -> None f"expected ({expected_generated_tokens})." ) + @pytest.mark.internal + @pytest.mark.skipif( + not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" + ) + def test_overflow_factor(self, model_provider: str = "gpt") -> None: + """Test overflow factor arg.""" + skip_if_mamba_sequence_packing_not_available(model_provider) + + # Run test. + env = self._run_test( + context_buffer_overflow_factor=0.1, + context_max_requests_override=None, + context_max_tokens_override=None, + model_provider=model_provider, + ) + + # Validate max_requests, max_tokens. + if model_provider == "gpt": + assert env.engine.context.max_requests == 420 + assert env.engine.context.max_tokens == 420 + elif model_provider == "mamba": + assert env.engine.context.max_requests == 16 + assert env.engine.context.max_tokens == 16 + + @pytest.mark.internal + @pytest.mark.skipif( + not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" + ) + @pytest.mark.parametrize("model_provider", ["gpt", "mamba"]) + def test_request_overflow(self, model_provider: str) -> None: + """Test request overflow.""" + skip_if_mamba_sequence_packing_not_available(model_provider) + + self._run_test(context_max_requests_override=4, model_provider=model_provider) + @pytest.mark.skipif( not is_fa_min_version("2.7.3"), reason="need latest flash attn for dynamic batching" ) @@ -556,7 +610,7 @@ def test_simple(self, model_provider, num_cuda_graphs, cuda_graph_scope) -> None def test_token_overflow_transient(self) -> None: """Test token overflow.""" test_config = DynamicEngineTestConfig( - num_requests=2, min_prompt_length=512, max_prompt_length=512, context_max_tokens=900 + num_requests=2, min_prompt_length=8, max_prompt_length=8, context_max_tokens_override=12 ) env = self._build_test_env(test_config) env.engine._add_request(env.requests[0]) @@ -575,7 +629,7 @@ def test_token_overflow_transient(self) -> None: ) def test_token_overflow_nontransient(self) -> None: """Test token overflow (non-transient).""" - test_config = DynamicEngineTestConfig(context_max_tokens=8) + test_config = DynamicEngineTestConfig(context_max_tokens_override=8) env = self._build_test_env(test_config) try: env.engine._add_request(env.requests[0]) @@ -595,9 +649,9 @@ def test_block_overflow(self, model_provider: str) -> None: env = self._build_test_env(DynamicEngineTestConfig(model_provider=model_provider)) context = env.engine.context block_size_bytes = context.block_size_bytes - active_buffer_size_gb = (block_size_bytes + 1) / 1024**3 + buffer_size_gb = (block_size_bytes + 1) / 1024**3 test_config = DynamicEngineTestConfig( - context_active_buffer_size_gb=active_buffer_size_gb, model_provider=model_provider + context_buffer_size_gb=buffer_size_gb, model_provider=model_provider ) env = self._build_test_env(test_config) env.engine._add_request(env.requests[0]) @@ -632,21 +686,19 @@ def test_cuda_graph_token_counts(self) -> None: # Test num_cuda_graphs. for num_cuda_graphs, expected_cuda_graph_token_counts in [ - (0, [80]), - (1, [80]), - (2, [80, 40]), - (4, [80, 72, 48, 24]), - (8, [80, 64, 48, 32, 16]), - (16, [80, 72, 64, 56, 48, 40, 32, 24, 16, 8]), - (64, [80, 72, 64, 56, 48, 40, 32, 24, 16, 8]), - (1024, [80, 72, 64, 56, 48, 40, 32, 24, 16, 8]), + (0, [64]), + (1, [64]), + (2, [64, 32]), + (4, [64, 48, 32, 16]), + (8, [64, 56, 48, 40, 32, 24, 16, 8]), + (16, [64, 56, 48, 40, 32, 24, 16, 8]), + (64, [64, 56, 48, 40, 32, 24, 16, 8]), + (1024, [64, 56, 48, 40, 32, 24, 16, 8]), ]: # Build cuda graphs (inside dynamic engine). env = self._build_test_env( - DynamicEngineTestConfig( - context_active_buffer_size_gb=0.01, num_cuda_graphs=num_cuda_graphs - ) + DynamicEngineTestConfig(num_requests=64, num_cuda_graphs=num_cuda_graphs) ) actual_cuda_graph_token_counts = env.engine.context.cuda_graph_token_counts assert ( @@ -693,9 +745,7 @@ def test_cuda_graph_warmup( # Initialize context. env = self._build_test_env( - DynamicEngineTestConfig( - context_active_buffer_size_gb=0.0041, num_cuda_graphs=8, num_tokens_to_generate=1 - ) + DynamicEngineTestConfig(num_requests=32, num_cuda_graphs=8, num_tokens_to_generate=1) ) context = env.engine.context @@ -984,8 +1034,9 @@ def test_events(self): num_requests=16, max_prompt_length=10, num_tokens_to_generate=32, - context_active_buffer_size_gb=0.001, # 0.001, # 8 blocks - context_max_tokens=8, + context_buffer_size_gb=0.001, # 0.001, # 8 blocks + context_max_requests_override=8, + context_max_tokens_override=8, num_gap_steps=1, ) @@ -1034,5 +1085,27 @@ def test_chunked_prefill(self, model_provider: str): materialize_only_last_token_logits=False, model_provider=model_provider, context_block_size_tokens=256, - context_max_tokens=1000, + context_max_tokens_override=300, ) + + +if __name__ == "__main__": + test = TestDynamicInferenceEngine() + test.test_simple(4) + test.test_overflow_factor() + test.test_request_overflow() + test.test_token_overflow_transient() + # test.test_token_overflow_nontransient() # uncomment in megatron-core 0.16 + test.test_block_overflow() + test.test_multi_add() + test.test_fixed_output_lengths() + test.test_cuda_graph_request_counts() + test.test_cuda_graph_warmup(WarmupEngineMode.DECODE, 1, 8) + test.test_generate_function() + asyncio.run(test.test_run_engine()) + test.test_return_log_probs() + test.test_parallel_inference() + # test.test_events() # uncomment in megatron-core 0.16 + test.teardown_method(None) + print("~~~") + print("success.") diff --git a/tests/unit_tests/inference/test_wandb_logging.py b/tests/unit_tests/inference/test_wandb_logging.py index d7a45783e00..1512e805f9c 100644 --- a/tests/unit_tests/inference/test_wandb_logging.py +++ b/tests/unit_tests/inference/test_wandb_logging.py @@ -48,8 +48,9 @@ def _get_dynamic_context( kv_channels=8, num_attention_heads=2, max_sequence_length=512, - active_buffer_size_gb=0.03, + buffer_size_gb=0.03, block_size_tokens=128, + buffer_guaranteed_fraction=0.1, metrics_writer=None, ): """Helper to create a DynamicInferenceContext.""" @@ -60,7 +61,8 @@ def _get_dynamic_context( num_attention_heads=num_attention_heads, max_sequence_length=max_sequence_length, num_cuda_graphs=None, - active_buffer_size_gb=active_buffer_size_gb, + buffer_size_gb=buffer_size_gb, + buffer_guaranteed_fraction=buffer_guaranteed_fraction, block_size_tokens=block_size_tokens, metrics_writer=metrics_writer, ) @@ -81,11 +83,12 @@ def test_get_kvcache_utilization_stats_with_requests(self): assert 'active_utilization' in stats assert 'active_request_count' in stats assert 'paused_request_count' in stats + assert 'gtd_block_count' in stats assert 'block_count_avail' in stats + assert 'num_non_gtd_blocks' in stats assert 'active_token_count' in stats assert 'total_request_count' in stats - assert 'max_total_requests' in stats - assert 'max_active_requests' in stats + assert 'max_requests' in stats # Verify values for empty context assert stats['allocated_blocks'] == 0 @@ -131,11 +134,12 @@ def test_get_kvcache_utilization_stats_with_requests(self): assert stats_after['total_blocks'] == stats['total_blocks'] assert stats_after['total_blocks'] > 0 + # Verify that gtd_block_count remains constant + assert stats_after['gtd_block_count'] == stats['gtd_block_count'] + # Verify that max_requests remains constant - assert stats_after['max_total_requests'] == stats['max_total_requests'] - assert stats_after['max_total_requests'] > 0 - assert stats_after['max_active_requests'] == stats['max_active_requests'] - assert stats_after['max_active_requests'] > 0 + assert stats_after['max_requests'] == stats['max_requests'] + assert stats_after['max_requests'] > 0 # Verify block availability decreased after allocation assert stats_after['block_count_avail'] < stats['block_count_avail'] @@ -143,7 +147,7 @@ def test_get_kvcache_utilization_stats_with_requests(self): # Verify relationship: allocated_blocks + block_count_avail + 1 (dummy) = total assert ( stats_after['allocated_blocks'] + stats_after['block_count_avail'] + 1 - == dynamic_context.block_allocator.total_count + == dynamic_context.block_allocator.block_count_total ) # Verify utilization bounds [0, 1] @@ -176,11 +180,12 @@ def test_kvcache_utilization_stats_types(self): 'active_unique_blocks', 'active_request_count', 'paused_request_count', + 'gtd_block_count', 'block_count_avail', + 'num_non_gtd_blocks', 'active_token_count', 'total_request_count', - 'max_total_requests', - 'max_active_requests', + 'max_requests', ] for field in int_fields: @@ -234,7 +239,8 @@ def test_paused_requests_in_stats(self): num_attention_heads=8, max_sequence_length=128, num_cuda_graphs=None, - active_buffer_size_gb=0.01, # Small buffer to force pausing + buffer_size_gb=0.01, # Small buffer to force pausing + buffer_guaranteed_fraction=0.1, block_size_tokens=32, ) diff --git a/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py b/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py index 5fbdef762eb..10ffe2fdd40 100644 --- a/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py +++ b/tests/unit_tests/inference/text_generation_controllers/test_simple_text_generation_controller.py @@ -116,7 +116,8 @@ def setup_model( kv_channels=transformer_config.kv_channels, num_attention_heads=transformer_config.num_attention_heads, max_sequence_length=2048, - active_buffer_size_gb=0.2, + buffer_size_gb=1, + buffer_guaranteed_fraction=0.1, materialize_only_last_token_logits=False, use_flashinfer_fused_rope=None, # default to using flash-infer if available # this is for compatibility with the LTS environment From 75f7d50f432ac8136fc2138c29a0c87c21a96101 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Mon, 10 Nov 2025 18:03:50 +0100 Subject: [PATCH 15/27] ci: Run `auto-update-copy-pr-bot` only on forks (#2191) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- .github/workflows/auto-update-copy-pr-bot.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/auto-update-copy-pr-bot.yml b/.github/workflows/auto-update-copy-pr-bot.yml index 25b3a3d2a30..969c46e3fdd 100644 --- a/.github/workflows/auto-update-copy-pr-bot.yml +++ b/.github/workflows/auto-update-copy-pr-bot.yml @@ -9,6 +9,7 @@ jobs: auto-update-copy-pr-bot: runs-on: ubuntu-latest environment: nemo-ci + if: github.repository == 'NVIDIA/Megatron-LM' steps: - name: Checkout code uses: actions/checkout@v3 From 2fef6bbc16fcd6d94c6616a72390b6ec184063c2 Mon Sep 17 00:00:00 2001 From: helen ngo Date: Mon, 10 Nov 2025 12:33:13 -0800 Subject: [PATCH 16/27] Inference throughput tests: refactor goldens to be in list format (#2072) --- .../test_inference_regular_pipeline.py | 11 +++++++---- .../golden_values_dev_dgx_h100.json | 2 +- .../golden_values_dev_dgx_h100.json | 2 +- .../golden_values_dev_dgx_h100.json | 2 +- .../golden_values_dev_dgx_h100.json | 2 +- .../golden_values_dev_dgx_h100.json | 2 +- .../golden_values_dev_dgx_h100.json | 2 +- 7 files changed, 13 insertions(+), 10 deletions(-) diff --git a/tests/functional_tests/python_test_utils/test_inference_regular_pipeline.py b/tests/functional_tests/python_test_utils/test_inference_regular_pipeline.py index b9c70046a4d..ae57db10e55 100644 --- a/tests/functional_tests/python_test_utils/test_inference_regular_pipeline.py +++ b/tests/functional_tests/python_test_utils/test_inference_regular_pipeline.py @@ -1,3 +1,5 @@ +# Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. + import json import logging import math @@ -38,16 +40,17 @@ def test_inference_pipeline(golden_values_path: str, test_values_path: str) -> N # First warmup iteration is excluded from throughput statistics. throughput_sampled = median(output_current["throughput"][1:]) + throughput_golden = median(output_groundtruth["throughput"][1:]) # 10% is empirically observed to be within hardware variance. assert ( - throughput_sampled >= 0.9 * output_groundtruth["throughput"] - ), f"Throughput is slower than expected! Expected to be within 10% of ~{output_groundtruth['throughput']} tok/s but benchmarked {output_current['throughput']} tok/s" + throughput_sampled >= 0.9 * throughput_golden + ), f"Throughput is slower than expected! Expected to be within 10% of ~{throughput_golden} tok/s but benchmarked {output_current['throughput']} tok/s" # If throughput is significantly improved (> 20%), update golden values accordingly. assert ( - throughput_sampled < output_groundtruth["throughput"] * 1.2 - ), f"Throughput has been improved from expected ~{output_groundtruth['throughput']} tok/s to {output_current['throughput']} tok/s. Please update golden values in the functional tests." + throughput_sampled < throughput_golden * 1.2 + ), f"Throughput has been improved from expected ~{throughput_golden} tok/s to {output_current['throughput']} tok/s. Please update golden values in the functional tests." output_groundtruth.pop('throughput') diff --git a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_fp8_logitsmatch/golden_values_dev_dgx_h100.json b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_fp8_logitsmatch/golden_values_dev_dgx_h100.json index 024ac59e078..12a9b70df83 100644 --- a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_fp8_logitsmatch/golden_values_dev_dgx_h100.json +++ b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_fp8_logitsmatch/golden_values_dev_dgx_h100.json @@ -174,5 +174,5 @@ -0.7878209352493286 ] }, - "throughput": 104.98559493782837 + "throughput": [104.98559493782837, 104.98559493782837] } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_logitsmatch_decode_graphs_only/golden_values_dev_dgx_h100.json b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_logitsmatch_decode_graphs_only/golden_values_dev_dgx_h100.json index 18a5978a127..8e07dfee229 100644 --- a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_logitsmatch_decode_graphs_only/golden_values_dev_dgx_h100.json +++ b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_cuda_graphs_logitsmatch_decode_graphs_only/golden_values_dev_dgx_h100.json @@ -174,5 +174,5 @@ -0.7878209352493286 ] }, - "throughput": 79.88988160240554 + "throughput": [79.88988160240554, 79.88988160240554] } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json index 3ba402cbcae..dd8b08e446f 100644 --- a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json +++ b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp1_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json @@ -2695,5 +2695,5 @@ -0.00032085992279462516 ] }, - "throughput": 107.66332959870442 + "throughput": [107.66332959870442, 107.66332959870442] } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp8_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp8_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json index fe938d51e4f..6ef98105cbd 100644 --- a/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp8_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json +++ b/tests/functional_tests/test_cases/gpt/gpt_dynamic_inference_tp8_pp1_583m_logitsmatch/golden_values_dev_dgx_h100.json @@ -157,5 +157,5 @@ -0.0585334412753582 ] }, - "throughput": 13.93210545115292 + "throughput": [13.93210545115292, 13.93210545115292] } \ No newline at end of file diff --git a/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_cuda_graphs_pad_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json b/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_cuda_graphs_pad_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json index 51d434d10cf..1a9705f8181 100644 --- a/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_cuda_graphs_pad_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json +++ b/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_cuda_graphs_pad_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json @@ -174,5 +174,5 @@ -0.5394397377967834 ] }, - "throughput": 25.35687538450034 + "throughput": [25.35687538450034, 25.35687538450034] } diff --git a/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json b/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json index 711eeddfb25..7370d3c6bb0 100644 --- a/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json +++ b/tests/functional_tests/test_cases/moe/gpt_dynamic_inference_tp4_pp1_ep4_16B_logitsmatch/golden_values_dev_dgx_h100.json @@ -157,5 +157,5 @@ -0.5394397377967834 ] }, - "throughput": 6.543502517233578 + "throughput": [6.543502517233578, 6.543502517233578] } \ No newline at end of file From 1f6cde85d23ff0c307a47bbdd8bfd778b95a161f Mon Sep 17 00:00:00 2001 From: Evgeny Tsykunov Date: Tue, 11 Nov 2025 10:28:39 +0100 Subject: [PATCH 17/27] Enable TE custom quantization recipe (#2005) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Evgeny Signed-off-by: root Co-authored-by: oliver könig Co-authored-by: root --- megatron/core/enums.py | 6 ++- megatron/core/fp4_utils.py | 5 +- megatron/core/fp8_utils.py | 54 ++++++++++++++++++- .../core/transformer/transformer_config.py | 30 +++++++++-- megatron/training/arguments.py | 12 ++++- 5 files changed, 97 insertions(+), 10 deletions(-) diff --git a/megatron/core/enums.py b/megatron/core/enums.py index c9a715519f9..fcca219badd 100644 --- a/megatron/core/enums.py +++ b/megatron/core/enums.py @@ -20,15 +20,17 @@ def encoder_and_decoder(self): class Fp8Recipe(str, enum.Enum): - """FP8 recipe names: delayed, tensorwise, mxfp8, blockwise.""" + """FP8 recipe names: delayed, tensorwise, mxfp8, blockwise, custom.""" delayed = "delayed" tensorwise = "tensorwise" mxfp8 = "mxfp8" blockwise = "blockwise" + custom = "custom" class Fp4Recipe(str, enum.Enum): - """FP4 recipe names: nvfp4.""" + """FP4 recipe names: nvfp4, custom.""" nvfp4 = "nvfp4" + custom = "custom" diff --git a/megatron/core/fp4_utils.py b/megatron/core/fp4_utils.py index eae4bf91de6..9aebf31c5da 100644 --- a/megatron/core/fp4_utils.py +++ b/megatron/core/fp4_utils.py @@ -7,6 +7,7 @@ import torch from megatron.core.enums import Fp4Recipe +from megatron.core.fp8_utils import _get_custom_recipe from megatron.core.transformer.transformer_config import TransformerConfig from megatron.core.utils import is_te_min_version @@ -70,9 +71,11 @@ def get_fp4_recipe(config: TransformerConfig): Transformer Engine. Please make sure you are using TE version >= 2.7.0.dev0.""" ) + elif config.fp4_recipe == Fp4Recipe.custom: + fp4_recipe = _get_custom_recipe(config.fp4_quantizer_factory) else: raise ValueError( - "NVFP4BlockScaling is the only supported FP4 recipe. " + "NVFP4BlockScaling and custom are the only supported FP4 recipes. " "Please make sure you are using a compatible TE version >= 2.7.0.dev0." ) else: diff --git a/megatron/core/fp8_utils.py b/megatron/core/fp8_utils.py index 1c1159f6f7b..9a697981738 100644 --- a/megatron/core/fp8_utils.py +++ b/megatron/core/fp8_utils.py @@ -2,14 +2,15 @@ """Utility functions related to FP8 that are used throughout Megatron core""" +import importlib import weakref from contextlib import nullcontext from functools import wraps -from typing import List, Optional +from typing import List, Optional, Union import torch -from megatron.core.enums import Fp8Recipe +from megatron.core.enums import Fp4Recipe, Fp8Recipe from megatron.core.tensor_parallel import ( ColumnParallelLinear, RowParallelLinear, @@ -110,6 +111,53 @@ def dequantize_fp8_tensor(fp8_tensor: torch.Tensor) -> torch.Tensor: return fp8_tensor.from_float8() +def _resolve_callable_from_python_import_path(dotted_path: str): + """Resolve a Python import path like 'pkg.mod.func' to a callable. + + Raises ValueError with clear message on failure. + """ + if not isinstance(dotted_path, str) or not dotted_path: + raise ValueError( + "fp8_quantizer_factory must be a non-empty string with format 'pkg.mod.func'." + ) + + parts = dotted_path.rsplit(".", 1) + if len(parts) == 1: + raise ValueError(f"Invalid fp8_quantizer_factory '{dotted_path}'. Expected 'pkg.mod.func'.") + module_path, attr = parts[0], parts[1] + + try: + mod = importlib.import_module(module_path) + except Exception as exc: + raise ValueError( + f"Failed to import module '{module_path}' for fp8_quantizer_factory: {exc}" + ) from exc + + fn = getattr(mod, attr, None) + if fn is None: + raise ValueError( + f"Attribute '{attr}' not found in module '{module_path}' for fp8_quantizer_factory." + ) + if not callable(fn): + raise ValueError( + f"Resolved attribute '{module_path}.{attr}' is not callable for fp8_quantizer_factory." + ) + return fn + + +def _get_custom_recipe(quantizer_factory_python_path: str) -> Union[Fp8Recipe, Fp4Recipe]: + quantizer_factory = _resolve_callable_from_python_import_path(quantizer_factory_python_path) + try: + custom_recipe = transformer_engine.common.recipe.CustomRecipe(qfactory=quantizer_factory) + except AttributeError: + raise ValueError( + """CustomRecipe recipe is not available in this version of + Transformer Engine. Please make sure you are using TE version + >= 2.9.0.dev0.""" + ) + return custom_recipe + + def get_fp8_align_size(fp8_recipe: Fp8Recipe) -> int: """Get the alignment size required for fp8 GEMM.""" if fp8_recipe == Fp8Recipe.mxfp8: @@ -493,6 +541,8 @@ def get_fp8_recipe(config: TransformerConfig): fp8_recipe = transformer_engine.common.recipe.MXFP8BlockScaling( fp8_format=fp8_format ) + elif config.fp8_recipe == Fp8Recipe.custom: + fp8_recipe = _get_custom_recipe(config.fp8_quantizer_factory) else: raise ValueError( "Float8CurrentScaling, MXFP8BlockScaling, Float8BlockwiseScaling and " diff --git a/megatron/core/transformer/transformer_config.py b/megatron/core/transformer/transformer_config.py index 147c5b23b3d..68bdfbcf021 100644 --- a/megatron/core/transformer/transformer_config.py +++ b/megatron/core/transformer/transformer_config.py @@ -7,7 +7,7 @@ import torch import torch.nn.functional as F -from megatron.core.enums import Fp8Recipe +from megatron.core.enums import Fp4Recipe, Fp8Recipe from megatron.core.quantization.quant_config import RecipeConfig from megatron.core.transformer.enums import AttnBackend from megatron.core.transformer.pipeline_parallel_layer_layout import PipelineParallelLayerLayout @@ -347,10 +347,10 @@ class TransformerConfig(ModelParallelConfig): activation and weight tensors and e5m2 for all FP8 output activation gradient tensors.""" fp8_recipe: Optional[str] = "delayed" - """If set, enables the use of FP8 precision through Transformer Engine. There are 3 predefined + """If set, enables the use of FP8 precision through Transformer Engine. There are 5 predefined choices (1) 'tensorwise' uses per tensor current scaling recipe, (2) 'delayed' uses delayed scaling recipe, 3) 'mxfp8' for Blackwell architecture only, - 4) 'blockwise' for blockwise scaling recipe.""" + 4) 'blockwise' for blockwise scaling recipe, 5) 'custom' for custom quantization recipe.""" fp8_param: bool = False """If set, keep the parameters in fp8 precision to save memory. This option must be used @@ -359,6 +359,10 @@ class TransformerConfig(ModelParallelConfig): primarily the weights of GEMMs. The specific parameters that will be converted to fp8 are determined by TE.""" + fp8_quantizer_factory: Optional[str] = None + """Python import path to a callable quantizer factory, e.g., package.module.quantizer_factory. + Required when fp8_recipe is custom.""" + fp8_margin: int = 0 """Margin for the scaling factor computation.""" @@ -420,6 +424,10 @@ class TransformerConfig(ModelParallelConfig): together with fp4 mode (i.e., TransformerConfig.fp4 is not None). Note that not all parameters will be converted to fp4; for example, biases will remain unchanged.""" + fp4_quantizer_factory: Optional[str] = None + """Python import path to a callable quantizer factory, e.g., package.module.quantizer_factory. + Required when fp4_recipe is custom.""" + #################### # MoE related #################### @@ -792,6 +800,14 @@ def __post_init__(self): f"({max_bf16_layers_per_pipeline_stage})." ) + if self.fp8_recipe == Fp8Recipe.custom: + if not self.fp8_quantizer_factory: + raise ValueError( + "fp8_quantizer_factory must be provided when fp8_recipe is 'custom'. " + "Specify a Python import path (e.g., package.module.quantizer_factory) " + "via --fp8-quantizer-factory." + ) + if self.fp8_param and not self.fp8: raise ValueError("fp8_param must be used together with fp8 mode.") @@ -802,6 +818,14 @@ def __post_init__(self): if self.fp4 and self.fp8: raise ValueError("fp4 and fp8 cannot be used simultaneously. Please choose one.") + if self.fp4 and self.fp4_recipe == Fp4Recipe.custom: + if not self.fp4_quantizer_factory: + raise ValueError( + "fp4_quantizer_factory must be provided when fp4_recipe is 'custom'. " + "Specify a Python import path (e.g., package.module.quantizer_factory) " + "via --fp4-quantizer-factory." + ) + if self.apply_query_key_layer_scaling: self.attention_softmax_in_fp32 = True diff --git a/megatron/training/arguments.py b/megatron/training/arguments.py index 0b14140529a..3eb23763625 100644 --- a/megatron/training/arguments.py +++ b/megatron/training/arguments.py @@ -1319,9 +1319,13 @@ def _add_transformer_engine_args(parser): dest='fp8') # per tensor current scaling recipe selection group.add_argument('--fp8-recipe', default='delayed', - choices=['tensorwise', 'delayed', 'mxfp8', 'blockwise'], + choices=['tensorwise', 'delayed', 'mxfp8', 'blockwise', 'custom'], help='Which fp8 recipe to use for FP8 tensors in the forward and backward pass', dest='fp8_recipe') + group.add_argument('--fp8-quantizer-factory', default=None, + help='Python import path to a callable quantizer factory, ' + 'e.g., package.module.quantizer_factory.', + dest='fp8_quantizer_factory') # delayed scaling only configs group.add_argument('--fp8-margin', type=int, default=0, help='Scaling margin for fp8', @@ -1358,9 +1362,13 @@ def _add_transformer_engine_args(parser): help='Which nvfp4 format scheme to use for FP4 tensors in the forward and backward pass', dest='fp4') group.add_argument('--fp4-recipe', default='nvfp4', - choices=['nvfp4'], + choices=['nvfp4', 'custom'], help='Which fp4 recipe to use for FP4 tensors in the forward and backward pass', dest='fp4_recipe') + group.add_argument('--fp4-quantizer-factory', default=None, + help='Python import path to a callable quantizer factory, ' + 'e.g., package.module.quantizer_factory.', + dest='fp4_quantizer_factory') group.add_argument('--fp4-param-gather', action='store_true', help='Keep the compute param in fp4 (do not use any other intermediate ' 'dtype) and perform the param all-gather in fp4.', From ca683954ec293809c264e234cab31260e1dd64d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Wed, 12 Nov 2025 09:04:31 +0000 Subject: [PATCH 18/27] remove workflow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- .github/workflows/multi-approval-bot.yml | 75 ------------------------ 1 file changed, 75 deletions(-) delete mode 100644 .github/workflows/multi-approval-bot.yml diff --git a/.github/workflows/multi-approval-bot.yml b/.github/workflows/multi-approval-bot.yml deleted file mode 100644 index e8507605aa7..00000000000 --- a/.github/workflows/multi-approval-bot.yml +++ /dev/null @@ -1,75 +0,0 @@ -name: "Codeowners Approval Workflow" - -on: - push: - branches: - - "pull-request/[0-9]+" - merge_group: - types: [checks_requested] - -jobs: - pre-flight: - uses: NVIDIA-NeMo/FW-CI-templates/.github/workflows/_cicd_preflight.yml@v0.65.5 - if: github.repository == 'NVIDIA/Megatron-LM' - - codeowners-approval: - needs: [pre-flight] - runs-on: ubuntu-latest - environment: nemo-ci - if: | - !(needs.pre-flight.outputs.docs_only == 'true' - || needs.pre-flight.outputs.is_merge_group == 'true' - || needs.pre-flight.outputs.is_deployment_workflow == 'true') - steps: - - name: Get PR info - id: get-pr-info - if: startsWith(github.ref, 'refs/heads/pull-request/') - uses: nv-gha-runners/get-pr-info@main - - - name: Checkout action - uses: actions/checkout@v3 - with: - repository: noamelf/codeowner-multi-approval-action - ref: v0.1 - path: codeowner-multi-approval-action - - - name: Check Codeowners Approval - uses: ./codeowner-multi-approval-action - with: - pr-number: ${{ fromJSON(steps.get-pr-info.outputs.pr-info || '{}').number }} - repo-name: ${{ github.repository }} - github-token: ${{ secrets.PAT }} - - multi-approval-bot-summary: - needs: [pre-flight, codeowners-approval] - if: | - ( - needs.pre-flight.outputs.docs_only == 'true' - || needs.pre-flight.outputs.is_merge_group == 'true' - || needs.pre-flight.outputs.is_deployment_workflow == 'true' - || always() - ) - && github.repository == 'NVIDIA/Megatron-LM' - && !cancelled() - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Result - env: - GH_TOKEN: ${{ github.token }} - GITHUB_RUN_ID: ${{ github.run_id }} - SKIPPING_IS_ALLOWED: ${{ needs.pre-flight.outputs.docs_only == 'true' || needs.pre-flight.outputs.is_deployment_workflow == 'true' || needs.pre-flight.outputs.is_merge_group == 'true' || needs.pre-flight.outputs.is_ci_workload == 'true' }} - run: | - FAILED_JOBS=$(gh run view $GITHUB_RUN_ID --json jobs --jq '[.jobs[] | select(.status == "completed" and .conclusion != "success")] | length') || echo 0 - - if [ "${FAILED_JOBS:-0}" -eq 0 ] || [ "$SKIPPING_IS_ALLOWED" == "true" ]; then - echo "✅ All previous jobs completed successfully" - exit 0 - else - echo "❌ Found $FAILED_JOBS failed job(s)" - # Show which jobs failed - gh run view $GITHUB_RUN_ID --json jobs --jq '.jobs[] | select(.status == "completed" and .conclusion != "success") | .name' - exit 1 - fi From b55a54404147ce4236c115f5c4d2e488b27ba024 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 08:34:47 +0000 Subject: [PATCH 19/27] bump deps MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- uv.lock | 482 ++++++++++++++++++++++++++++++-------------------------- 1 file changed, 260 insertions(+), 222 deletions(-) diff --git a/uv.lock b/uv.lock index 458e5c463e0..c3dc9b95bb4 100644 --- a/uv.lock +++ b/uv.lock @@ -48,7 +48,7 @@ wheels = [ [[package]] name = "aiobotocore" -version = "2.25.1" +version = "2.25.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "aiohttp" }, @@ -59,9 +59,9 @@ dependencies = [ { name = "python-dateutil" }, { name = "wrapt" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/62/94/2e4ec48cf1abb89971cb2612d86f979a6240520f0a659b53a43116d344dc/aiobotocore-2.25.1.tar.gz", hash = "sha256:ea9be739bfd7ece8864f072ec99bb9ed5c7e78ebb2b0b15f29781fbe02daedbc", size = 120560, upload-time = "2025-10-28T22:33:21.787Z" } +sdist = { url = "https://files.pythonhosted.org/packages/52/48/cf3c88c5e3fecdeed824f97a8a98a9fc0d7ef33e603f8f22c2fd32b9ef09/aiobotocore-2.25.2.tar.gz", hash = "sha256:ae0a512b34127097910b7af60752956254099ae54402a84c2021830768f92cda", size = 120585, upload-time = "2025-11-11T18:51:28.056Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/95/2a/d275ec4ce5cd0096665043995a7d76f5d0524853c76a3d04656de49f8808/aiobotocore-2.25.1-py3-none-any.whl", hash = "sha256:eb6daebe3cbef5b39a0bb2a97cffbe9c7cb46b2fcc399ad141f369f3c2134b1f", size = 86039, upload-time = "2025-10-28T22:33:19.949Z" }, + { url = "https://files.pythonhosted.org/packages/8e/ad/a2f3964aa37da5a4c94c1e5f3934d6ac1333f991f675fcf08a618397a413/aiobotocore-2.25.2-py3-none-any.whl", hash = "sha256:0cec45c6ba7627dd5e5460337291c86ac38c3b512ec4054ce76407d0f7f2a48f", size = 86048, upload-time = "2025-11-11T18:51:26.139Z" }, ] [[package]] @@ -265,37 +265,37 @@ wheels = [ [[package]] name = "apache-tvm-ffi" -version = "0.1.1" +version = "0.1.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/d8/e8/7db1ca6db40877d190a8538cc378f740aae247c6fe063815898607c2d2ca/apache_tvm_ffi-0.1.1.tar.gz", hash = "sha256:728ce3f4ae02b89a7147b718f7f670afac3c6d1f96df38d488757274643709fc", size = 1259223, upload-time = "2025-11-04T02:43:38.154Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/8a/ad/550aff4c9652ee8297f90a04c3ab4143ece1d373101010d85b5c9a9a2e7d/apache_tvm_ffi-0.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:af0de7bb9581ac9e090276cba37c4e7ffaeed601a2b2b546bf0e2daed3810cec", size = 1723658, upload-time = "2025-11-04T02:42:37.628Z" }, - { url = "https://files.pythonhosted.org/packages/48/5a/01e65f4a6c2b146f7c40f6d8d663d76b60c3be324159f8fb8223ea505738/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:eb7d6828652803cb8c0e13d1f06d01fc6bfb8e79e77e3de7e6fd4b5fae5ee9d2", size = 1882437, upload-time = "2025-11-04T02:42:39.647Z" }, - { url = "https://files.pythonhosted.org/packages/6b/bd/b52b71d03637d7a82388c2e90d48dddec2c46121be1333c9851d6a135824/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1fe072b55a7949720a792a9d455c0659aa097825e709a16a4667d720137b8b5c", size = 1954949, upload-time = "2025-11-04T02:42:41.119Z" }, - { url = "https://files.pythonhosted.org/packages/ac/ef/ff85926928694785f2399a4c5b793bcfecf8c3cf806dedf9202b7db73b8b/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b25178b265903dabd9a35bd767db26928be3b7869f681fe1d6e1aed93d7c0799", size = 1837395, upload-time = "2025-11-04T02:42:42.954Z" }, - { url = "https://files.pythonhosted.org/packages/de/69/f048bda5e5445a89200737062a202cb39097d3b1902e886654de9cd6b624/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d5552af3c625750361d1b7d646d499a28caf94858967e74c9cce6ed7d4629b28", size = 1947740, upload-time = "2025-11-04T02:42:44.49Z" }, - { url = "https://files.pythonhosted.org/packages/dc/df/295f71613502edeb39a39b30c8bbb9ec8fcc06bd95b3043dd99b55fa98a8/apache_tvm_ffi-0.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:c102ba5899ce106c8068a3f21155c106790b5b0141fba52a52ed6e9aeb286aff", size = 1710966, upload-time = "2025-11-04T02:42:46.037Z" }, - { url = "https://files.pythonhosted.org/packages/8f/a9/544767d7058f825c0ceb5bc25760ad3a821b2efcc6a3dbe2e3988a3aee86/apache_tvm_ffi-0.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7cbf31c472920cdc5b3f75f2d2720b8a6b37ddbdb11d573fa94524815ea5a144", size = 1725662, upload-time = "2025-11-04T02:42:47.528Z" }, - { url = "https://files.pythonhosted.org/packages/54/c3/fe1a9f8968d5ce2d3b674e397c2bf01961e32a72b723817478c67c9780e3/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d7602bc37019387a4705677b6e742059c7e1973a899b6918af235febcb3d3b47", size = 1884278, upload-time = "2025-11-04T02:42:48.998Z" }, - { url = "https://files.pythonhosted.org/packages/24/b9/80cbba18b2d7d9013031d8c13671986912275b9ca6aaea70a1dd9b361c39/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7941f82a2ae4549f55c07d82d37c5765628d70f29dace98628393fcea525e870", size = 1957018, upload-time = "2025-11-04T02:42:50.538Z" }, - { url = "https://files.pythonhosted.org/packages/b4/0c/d27beb98d6841a3929468648433ed2c53e4da953fadb73c754b9372b2356/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2e0d6d8e0888ee3a3defd2cbe1eff7a65c05900b4e8fa0e18c890048fc6a44a6", size = 1839279, upload-time = "2025-11-04T02:42:52.438Z" }, - { url = "https://files.pythonhosted.org/packages/0f/10/d7cf7779c65047ad2ca652234a174c2908d936cb69bc4f5156e17382fa91/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:549c2150e1c2d7ca7912cad173f62a192aec90cd981c024bd246161283ea5d78", size = 1950476, upload-time = "2025-11-04T02:42:54.159Z" }, - { url = "https://files.pythonhosted.org/packages/53/71/bb5ee4bca52a37a8f9580ab1f1de1be5366808a194981c324a756dabbe15/apache_tvm_ffi-0.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:3fbcfe526b458bc8edeafdc769388782d3bb4321c46a987e50bcece93ae78af8", size = 1711278, upload-time = "2025-11-04T02:42:55.56Z" }, - { url = "https://files.pythonhosted.org/packages/d1/1e/f8d16dbe2303d1e7348037b4207d6c1093c554573484c97c8f3cde61a060/apache_tvm_ffi-0.1.1-cp312-abi3-macosx_11_0_arm64.whl", hash = "sha256:f2c0164a5c6286f9c333ddedeb448b855cbc1225688d0a4c9aeab006ddfa1180", size = 1701072, upload-time = "2025-11-04T02:42:57.28Z" }, - { url = "https://files.pythonhosted.org/packages/3d/47/f7a55e9b5b741f901ed9101a3ef46fd250f2c1519a6479e055432ff4f308/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:33cc35738e0c44f2a67e550457b6b7dc7de9109ca64422a9e7063b1ba43c336e", size = 1854467, upload-time = "2025-11-04T02:43:00.158Z" }, - { url = "https://files.pythonhosted.org/packages/f2/db/f3adbe1e2d092fbb18908971a25ceb5496669ec65d01a28b7dd57f471ae0/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e9db6484259120b1bdc600f736084ee3d574775b1f4a3e8fef110323e3a9d2b6", size = 1930968, upload-time = "2025-11-04T02:43:01.96Z" }, - { url = "https://files.pythonhosted.org/packages/3b/da/7f678675ccc8af1c7d313322f3875e2c829f1faaa58c0d982431beeb3b3e/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c7bd812058ce9046cb69fd7b3e18538d1d0eefa1719822a1441b00bb841f7af4", size = 1811173, upload-time = "2025-11-04T02:43:03.404Z" }, - { url = "https://files.pythonhosted.org/packages/e1/11/c8b3b7d69ceebd219dcb06f5e4a3997edea3bc2e0bbdd8f57ae65bba4f2f/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:807def3039fb336a228c120ca8c32eb794bdfd2d7aff218c8611f287ad913736", size = 1922690, upload-time = "2025-11-04T02:43:04.846Z" }, - { url = "https://files.pythonhosted.org/packages/fd/0b/f816735d761049e53eb388264238655f58fcb42a31e0d1848a4fb6a6556b/apache_tvm_ffi-0.1.1-cp312-abi3-win_amd64.whl", hash = "sha256:624b4430ca3949f85fffd9ef498ebaf1155ff0ac659fc764eec6c6fd66ec7986", size = 1690969, upload-time = "2025-11-04T02:43:06.581Z" }, - { url = "https://files.pythonhosted.org/packages/12/aa/df81df8f8b39d3c41fbac41b1e6661d192d9987a3ef317fabcefecf727a6/apache_tvm_ffi-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c93d9de81c1ba9560fcc696cf84d777f88016eb53f05ee2d6288ddcb95a5e72f", size = 1732582, upload-time = "2025-11-04T02:43:08.042Z" }, - { url = "https://files.pythonhosted.org/packages/a8/55/861090532e4accd855e119f0e67e0e482b42abb866c9505edd8956148ebc/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f9e0227179a0ce83384132b34757fd05f492270f1c031eae615870a5641b5039", size = 1870196, upload-time = "2025-11-04T02:43:09.911Z" }, - { url = "https://files.pythonhosted.org/packages/2a/c6/470493934559e371ad699e1764649176efc5e022267c6dd0a565217177ad/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:78e75e193d675b9639e6fd0c33c60c3a4259d4c9f848f60baa6a3194df7e1fea", size = 1941999, upload-time = "2025-11-04T02:43:11.467Z" }, - { url = "https://files.pythonhosted.org/packages/85/b8/84eba0d266c9b10beae59a6863ef5c68044e20a6f12d46a42116e80db774/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:49792622720421525a18e378d848411731d32fcb05a00b6e54b84d05ff46cc22", size = 1823965, upload-time = "2025-11-04T02:43:12.941Z" }, - { url = "https://files.pythonhosted.org/packages/64/73/ca73a43260a1374b1f34d0e6fcf6f8af16f66867a89dfd562b26184af1bd/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:039293086d44e7f601bf8231e369198afe7ad38986330969ddb1a5fc7622976b", size = 1933779, upload-time = "2025-11-04T02:43:14.543Z" }, - { url = "https://files.pythonhosted.org/packages/5b/91/687c3b9ff3313addeebc1188ac50b299a82944ef1784b91890fc6f250ebd/apache_tvm_ffi-0.1.1-cp314-cp314t-win_amd64.whl", hash = "sha256:3f6cbd214bee2e52719d5264f05a2685c955ae7b096980f0361d917a5a9f47a6", size = 1751905, upload-time = "2025-11-04T02:43:16.286Z" }, +sdist = { url = "https://files.pythonhosted.org/packages/78/85/37f89a12961152026e2bca28e7781c3a216835bd6f9ef8f7e9b6b596ae26/apache_tvm_ffi-0.1.2.tar.gz", hash = "sha256:91f6e4e38572f7ce78c6df810cc16bdd1283fd925010b0e503697934d58bb7e7", size = 1266004, upload-time = "2025-11-11T15:29:37.04Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ac/da/9a3784a6f713bfcb23ccdfd772fcddd52575beab06d52c95a2f01abf2f7b/apache_tvm_ffi-0.1.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5c5dd8edbb7c70c2531055aa11d305b4c648d3c603b40be94108ee54c57bfff5", size = 1727564, upload-time = "2025-11-11T15:28:35.837Z" }, + { url = "https://files.pythonhosted.org/packages/7f/bf/7759592c0fdaa0560b7190295f1d7f760c35f777255535d3a9387abd41bd/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:85654383246a92eb93e11413a71bc5f43aeb07b4fcd34e264e0a19e5bb6c74fa", size = 1882846, upload-time = "2025-11-11T15:28:38.097Z" }, + { url = "https://files.pythonhosted.org/packages/2d/90/7621f35b71537322519257ad989d55c24eddac64228ff08446418b8dd950/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1727ccd716bc660a97b436c8b79581c0e5f9e49509c72d998a5c8546319e1d0f", size = 1955889, upload-time = "2025-11-11T15:28:40.047Z" }, + { url = "https://files.pythonhosted.org/packages/e7/c7/34489858c2ea8040ce1a186c07d0b205932d8fd6a453edcf33e592c2f7dd/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4fa95de8aca32b195c18cb69e1e4fddb093eec601b1753877d0d92be31f3385d", size = 1836839, upload-time = "2025-11-11T15:28:41.616Z" }, + { url = "https://files.pythonhosted.org/packages/d8/d0/03f5022f4444b9dabd719f9aacb32a9fdf773e09ddc46c046c16b3786ed7/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c81e317fe4941902b4ea81e7c8cdb379babc516f4531ebece802c4bef2b5ceaf", size = 1947466, upload-time = "2025-11-11T15:28:43.094Z" }, + { url = "https://files.pythonhosted.org/packages/2a/0e/1ab046ebb387833562e7a3f62fc007eb5b0709ceb4f9ac5a8cca854ce185/apache_tvm_ffi-0.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:93fb39b8f42126f884e173ec763dbe80e490162d8e403bcf7c09a89105e9cca0", size = 1712582, upload-time = "2025-11-11T15:28:44.684Z" }, + { url = "https://files.pythonhosted.org/packages/5b/50/d7d6ec1aa0ca8ff33aa24d43540570371c00adb3644a704fa04b77ba8027/apache_tvm_ffi-0.1.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6b8ae1aaa5eb713440950a91191753495cff63aedf9952edec42ba87523ead6e", size = 1727049, upload-time = "2025-11-11T15:28:46.316Z" }, + { url = "https://files.pythonhosted.org/packages/c4/3e/4aed56991cc9442f6873c344885a38879aaa2adff006038d2083674c507c/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:161cb2843753aa7428e20542fa7e90b494a86dca1317173a3846cee7cca66cb0", size = 1882729, upload-time = "2025-11-11T15:28:47.846Z" }, + { url = "https://files.pythonhosted.org/packages/fc/12/65539ca9f49bdc8a0a87ddddeb4a95176d3bfcc94c7604a62d9646d86c47/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:42fb0fb16a4956b7029beb3e1575dfbdd75a76685f8c99e57f1ab1c743b32446", size = 1955858, upload-time = "2025-11-11T15:28:49.887Z" }, + { url = "https://files.pythonhosted.org/packages/8e/08/b64ebc2a31c6502b1763a44e81369de7ea6235417b21e4f4acf0d4223f7c/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8c80b8defe86c805d679a75a3593a5d09bcf1bde4638dcca41dff7d2503df030", size = 1837206, upload-time = "2025-11-11T15:28:51.764Z" }, + { url = "https://files.pythonhosted.org/packages/1f/cb/775ff54f965801e1314afe1c39292b14e118402c66470f1baa7e50e638a7/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ea8adc68e21d2eb46e8f89ee0c1be1e76f0450de9836bce63c6387b4e8b506f3", size = 1947597, upload-time = "2025-11-11T15:28:53.288Z" }, + { url = "https://files.pythonhosted.org/packages/50/0b/d52787822a06afc52707bb03cbdd3d5f4859f653bf7888d00492d66a9fbc/apache_tvm_ffi-0.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:dbcb788d94fde7bac932f73ae283d0f5a791f5ce8bc93d8f250b50b9724c92f7", size = 1712343, upload-time = "2025-11-11T15:28:54.856Z" }, + { url = "https://files.pythonhosted.org/packages/f3/db/b450e65e5a7d231f42a0a54c19bf45f870176d85d631df0b0636704bdc14/apache_tvm_ffi-0.1.2-cp312-abi3-macosx_11_0_arm64.whl", hash = "sha256:fa1b18c3f15089154729ffd6e9f18dc5e1737542b8f770770bdacba75c11d824", size = 1703946, upload-time = "2025-11-11T15:28:56.341Z" }, + { url = "https://files.pythonhosted.org/packages/0a/60/c199b53def4de5c412fd2d9ffce70dea974f2fdedeadcf67463e82562597/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fc9c12f26514a714e1ffbe3d3d82f8459a705600b2bd91621468dd4c16fadb4b", size = 1855387, upload-time = "2025-11-11T15:28:57.861Z" }, + { url = "https://files.pythonhosted.org/packages/ca/69/99ce93a028bdd08d35f760d8528773d9fbd79cd55a405f8600779b9deca7/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1637a3069573a3dd47921f2d2c81b1a60ce0d9a3cb0d18534a336e0e0fbfc831", size = 1932336, upload-time = "2025-11-11T15:28:59.323Z" }, + { url = "https://files.pythonhosted.org/packages/03/d7/dffbd0d454ce02e51712e35f16a5f28c5a4ca0c8cba35bcef98e8b974dec/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e0b5853895659759453aeb24fbc933cc6865f2f713f18216ab76360c9dd06f19", size = 1809796, upload-time = "2025-11-11T15:29:00.803Z" }, + { url = "https://files.pythonhosted.org/packages/79/83/5b2567261d9de3d3df32a137fc43bf83f82d95094889b9813c86d11224a9/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bbe79e942923ee6cd1576c153a728d40cd590e4fb83f7b55c595c6d1bb50173c", size = 1921824, upload-time = "2025-11-11T15:29:02.585Z" }, + { url = "https://files.pythonhosted.org/packages/88/67/22325ae6eaca866cf745bd796a1c460b6a940b5c57e1868ccead097a8602/apache_tvm_ffi-0.1.2-cp312-abi3-win_amd64.whl", hash = "sha256:78d7c0f724d36ef4c9e9d84b750fa8f8d0ca72e2fc21f7f79368ad2cdfcfea74", size = 1692931, upload-time = "2025-11-11T15:29:04.343Z" }, + { url = "https://files.pythonhosted.org/packages/44/4b/bd940660a7daf256ab0bd0f3084918c4292899d9cb9549ec80d661fa06e5/apache_tvm_ffi-0.1.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c6578482ec5a682379007e75bda2ed86b40c473c0e1616b8d92078f226b7f10f", size = 1734016, upload-time = "2025-11-11T15:29:06.485Z" }, + { url = "https://files.pythonhosted.org/packages/6a/30/54806d8cacb27d3acef9176df57003006f324629270880900d57daa89e04/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6de5455b5b9e457dd0f293cbae281d07ad10064cab62b1b47c1f29084e377295", size = 1869479, upload-time = "2025-11-11T15:29:08.466Z" }, + { url = "https://files.pythonhosted.org/packages/49/98/119a55517abd0fdbe445e2461b3397f0876027ba2a978644010491a111c6/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:43365f39dcc4cf33bcca0a51600add2caf4cc99da02d36c981fdb4da37293c5e", size = 1940519, upload-time = "2025-11-11T15:29:10.484Z" }, + { url = "https://files.pythonhosted.org/packages/a6/a5/962bde8b751c6f33cea8d2ff014df66583b39ff900a9cd9add55f133f388/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d090c0515c852ef4bc1a4497d99286a41bbcaab0dc02d14d4c8930ff6e717fd7", size = 1822032, upload-time = "2025-11-11T15:29:12.112Z" }, + { url = "https://files.pythonhosted.org/packages/d3/27/bcb603e6426a965592bc62281b055a3cdc468cae8be3c9d16b196d0c92a6/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cdc3a7bf0f142b433dc7b10d920b6583e21af310f7ca5641f14b7988676745e9", size = 1931627, upload-time = "2025-11-11T15:29:13.95Z" }, + { url = "https://files.pythonhosted.org/packages/e6/48/3efd1d2cb48c5d3c824e0b2b704b8b489561ecd138cd398b1449ed5f4074/apache_tvm_ffi-0.1.2-cp314-cp314t-win_amd64.whl", hash = "sha256:0872bb060ab90d6760296cf0720b2eed88245c17d7890592fea6ef0617b299d2", size = 1752549, upload-time = "2025-11-11T15:29:15.758Z" }, ] [[package]] @@ -618,16 +618,16 @@ wheels = [ [[package]] name = "botocore" -version = "1.40.61" +version = "1.40.70" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "jmespath" }, { name = "python-dateutil" }, { name = "urllib3" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/28/a3/81d3a47c2dbfd76f185d3b894f2ad01a75096c006a2dd91f237dca182188/botocore-1.40.61.tar.gz", hash = "sha256:a2487ad69b090f9cccd64cf07c7021cd80ee9c0655ad974f87045b02f3ef52cd", size = 14393956, upload-time = "2025-10-28T19:26:46.108Z" } +sdist = { url = "https://files.pythonhosted.org/packages/35/c1/8c4c199ae1663feee579a15861e34f10b29da11ae6ea0ad7b6a847ef3823/botocore-1.40.70.tar.gz", hash = "sha256:61b1f2cecd54d1b28a081116fa113b97bf4e17da57c62ae2c2751fe4c528af1f", size = 14444592, upload-time = "2025-11-10T20:29:04.046Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/38/c5/f6ce561004db45f0b847c2cd9b19c67c6bf348a82018a48cb718be6b58b0/botocore-1.40.61-py3-none-any.whl", hash = "sha256:17ebae412692fd4824f99cde0f08d50126dc97954008e5ba2b522eb049238aa7", size = 14055973, upload-time = "2025-10-28T19:26:42.15Z" }, + { url = "https://files.pythonhosted.org/packages/55/d2/507fd0ee4dd574d2bdbdeac5df83f39d2cae1ffe97d4622cca6f6bab39f1/botocore-1.40.70-py3-none-any.whl", hash = "sha256:4a394ad25f5d9f1ef0bed610365744523eeb5c22de6862ab25d8c93f9f6d295c", size = 14106829, upload-time = "2025-11-10T20:29:01.101Z" }, ] [[package]] @@ -670,11 +670,11 @@ sdist = { url = "https://files.pythonhosted.org/packages/64/cb/104778c728dc3d5ea [[package]] name = "certifi" -version = "2025.10.5" +version = "2025.11.12" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/4c/5b/b6ce21586237c77ce67d01dc5507039d444b630dd76611bbca2d8e5dcd91/certifi-2025.10.5.tar.gz", hash = "sha256:47c09d31ccf2acf0be3f701ea53595ee7e0b8fa08801c6624be771df09ae7b43", size = 164519, upload-time = "2025-10-05T04:12:15.808Z" } +sdist = { url = "https://files.pythonhosted.org/packages/a2/8c/58f469717fa48465e4a50c014a0400602d3c437d7c0c468e17ada824da3a/certifi-2025.11.12.tar.gz", hash = "sha256:d8ab5478f2ecd78af242878415affce761ca6bc54a22a27e026d7c25357c3316", size = 160538, upload-time = "2025-11-12T02:54:51.517Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/e4/37/af0d2ef3967ac0d6113837b44a4f0bfe1328c2b9763bd5b1744520e5cfed/certifi-2025.10.5-py3-none-any.whl", hash = "sha256:0f212c2744a9bb6de0c56639a6f68afe01ecd92d91f14ae897c4fe7bbeeef0de", size = 163286, upload-time = "2025-10-05T04:12:14.03Z" }, + { url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl", hash = "sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b", size = 159438, upload-time = "2025-11-12T02:54:49.735Z" }, ] [[package]] @@ -1082,40 +1082,40 @@ wheels = [ [[package]] name = "cython" -version = "3.2.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/52/82/01f0b63287cb922e5ba96c5147c30f1e51f541ce91bd178025bb3518b1ba/cython-3.2.0.tar.gz", hash = "sha256:41fdce8237baee2d961c292ed0386903dfe126f131e450a62de0fd7a5280d4b2", size = 3267264, upload-time = "2025-11-05T13:35:04.231Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/57/8d/b2e9578d960d38b1b04a278bf66e13008486aa73e73967186f2015d63d1c/cython-3.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ee408125b2d218ec7d7a061e09d24715fcab9bf7ea1a4ac01907c3f8ec8730b3", size = 2953775, upload-time = "2025-11-05T13:35:22.291Z" }, - { url = "https://files.pythonhosted.org/packages/19/dd/cfd684f98bac9e0f505af1cbb7998498c59d713275e920a72b40dab03bfa/cython-3.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c93ce307b05fcd86a5bb0e4a7d7fab238e2f0e9936636097a60bc0e21f2def30", size = 3361627, upload-time = "2025-11-05T13:35:24.519Z" }, - { url = "https://files.pythonhosted.org/packages/9c/c1/75acdbe9f6292514f0bb92ab1b78df5eedd7049235f4cbd194d2c6c46bfc/cython-3.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:191cfc2fa84642ad41a52d5abaacfb330d9a6653a465e4bf0a5681f66197a967", size = 3529751, upload-time = "2025-11-05T13:35:26.341Z" }, - { url = "https://files.pythonhosted.org/packages/f2/ce/d0468eb6d87b956902b02909f5007ad61e3839d4c07ab235b514911d869b/cython-3.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:a259053037ef82959b743b7fde238bd191ee43f88eb8e51101d5f3d8849f1e32", size = 2758839, upload-time = "2025-11-05T13:35:28.36Z" }, - { url = "https://files.pythonhosted.org/packages/ff/2b/904493fceda95747ba83971b40a66c8cc29ff009313429903f38ee620140/cython-3.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e9e4b2248dc3a98b86aeba65e9862d2cc881d072c163c0fb31b511d4d72e93c8", size = 2946248, upload-time = "2025-11-05T13:35:30.406Z" }, - { url = "https://files.pythonhosted.org/packages/89/fe/abe926699fe6c580967e30bc4035da54b5e31355ba9b1f4c0cf574228a84/cython-3.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:02fb4990a83d5d6f780dda18ed8baa8d587cb6523f57b4d72bc0b41ad3766c96", size = 3236384, upload-time = "2025-11-05T13:35:32.233Z" }, - { url = "https://files.pythonhosted.org/packages/1b/36/6b6266549802234286438298d494152deb19922a94928d9dcd256659ebd1/cython-3.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8a98925517819d62ea25d2cf40057df60a9bcf75fdd1d6ed3882e6ae0730d82f", size = 3372915, upload-time = "2025-11-05T13:35:34.082Z" }, - { url = "https://files.pythonhosted.org/packages/29/fa/5cf15466b428f9248e38a28515cf0fd98078ae869aa395cfb300315964c4/cython-3.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:4c959a5d4cd6331e8498822ba47200bd2ff4bf74517c0c91475d5bc21da3b4d5", size = 2762735, upload-time = "2025-11-05T13:35:35.806Z" }, - { url = "https://files.pythonhosted.org/packages/57/d3/2e6f5f2552c860bb9c00653d092103521846114f6a2ae0648ecf84c0816c/cython-3.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:511d823d9f8a1b850178ec355d6df0a1731b9c20b08ee6d1a780f68215e9013f", size = 2959932, upload-time = "2025-11-05T13:35:37.518Z" }, - { url = "https://files.pythonhosted.org/packages/dd/bf/7bdc7f231fff6780f78586f939c1740475adecaa03bf256fcb62b2353952/cython-3.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bbadeedcb2d135655bcce7380fb28c9e2a75b6810426c12b6e5a6fe6106fafb4", size = 3218588, upload-time = "2025-11-05T13:35:39.642Z" }, - { url = "https://files.pythonhosted.org/packages/be/81/7d7a81010897dc5abee59691f5fc85849dcc4c8a7687b22ed01bc8d86a7a/cython-3.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:92d2394a3e3fe704210b5324eb8118333b514af72c98b1e02a6503945825b231", size = 3381940, upload-time = "2025-11-05T13:35:41.886Z" }, - { url = "https://files.pythonhosted.org/packages/4f/9d/35e7fb7b591bd9912685a772fcc773d7bb951a8feb6fb9be20addbc38928/cython-3.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:73435e56654a34ece57d4c3304a4556a8402cc4ae2d0e30f71c237a985dc5246", size = 2750886, upload-time = "2025-11-05T13:35:43.629Z" }, - { url = "https://files.pythonhosted.org/packages/5d/d0/dc4b260e8fde81b23ab4dca56948b3e69617ef470247ec6a3e09370a9849/cython-3.2.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d900e58e826f9a5a27b0e2b50e33473e9986a5bae375c39b0f2e19f2c545fa23", size = 2950437, upload-time = "2025-11-05T13:35:45.427Z" }, - { url = "https://files.pythonhosted.org/packages/c8/53/c322bf0486a938ad954a645866b67e978777d79183cf0a042bda6bea11de/cython-3.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a9d38cd3aab720d21fa6d6ee168228352f69aea0a95bd4fb84e8879c6ed38fbb", size = 3209331, upload-time = "2025-11-05T13:35:47.278Z" }, - { url = "https://files.pythonhosted.org/packages/cd/48/55d02dba0606768d3450afd088e2bbcd6f8a54977dce041c2c3c1894631c/cython-3.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:92b31d0b7b0a49b3d2aa94faaf75d44a03174cff2616b341a8853c919e511d51", size = 3370974, upload-time = "2025-11-05T13:35:49.534Z" }, - { url = "https://files.pythonhosted.org/packages/ce/bd/6dab19652b68464572b7a137d07a91ebe86db2a81c35842ff5e49ef23403/cython-3.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:2847b74e76dbad612f6fc7182c12a5f78cffb0d05808fd2c4b638cf02d1aade6", size = 2746274, upload-time = "2025-11-05T13:35:51.522Z" }, - { url = "https://files.pythonhosted.org/packages/e2/db/de5331ca6489da1761078825709257e1f24e543b4040f86a2502a4b841f9/cython-3.2.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:a0a8274959d538d12f865193dcd67bb5630906e020190c890d2b7c13d31713c6", size = 2961164, upload-time = "2025-11-05T13:35:53.826Z" }, - { url = "https://files.pythonhosted.org/packages/54/3e/64e37e419331f7c4c540ad25c0b3e6d8f44d597f21ab8861afbc66aa7e02/cython-3.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a1c800833c25195833805c7c3626a2c30b3baaaa9ba361a1af3bbc379662a8d", size = 3249627, upload-time = "2025-11-05T13:35:55.524Z" }, - { url = "https://files.pythonhosted.org/packages/9b/fc/9faedfcc2de807f77115d97a4910c260dd4693f4fa9e0e3be0d9ae89e260/cython-3.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:df15af08c21c18a2e848df5954d6fd3310735089b60405132fa4111e2cf7482a", size = 3375458, upload-time = "2025-11-05T13:35:57.279Z" }, - { url = "https://files.pythonhosted.org/packages/31/e0/30d449cd97ee0d6395aba18f2646b61b52ab3dc5a3851a346e2d363a7d85/cython-3.2.0-cp314-cp314-win_amd64.whl", hash = "sha256:9d6876af2132757fff1b42a2f4eaa72482f991863160e3f0dc8f2c812b300ebf", size = 2783210, upload-time = "2025-11-05T13:35:59.54Z" }, - { url = "https://files.pythonhosted.org/packages/dd/6b/9e1e171fe19274465d84dffa4610d46f434b1ae945e946802db396695d67/cython-3.2.0-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:04821ce06598a3aa5c9e0270d98960cfe6556dedbd1418c65e4479162b8ae74a", size = 2869249, upload-time = "2025-11-05T13:36:08.944Z" }, - { url = "https://files.pythonhosted.org/packages/c4/f1/f461726f664668a96072b2a245bdfae566d68e2eb1393ec72780cc59c21e/cython-3.2.0-cp39-abi3-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:54b5b1c72a63da822b3f4739a0e31546c0a19f8e834b174906bf817ed5f9d65f", size = 3204332, upload-time = "2025-11-05T13:36:11.386Z" }, - { url = "https://files.pythonhosted.org/packages/78/d8/73c07ce64cae496e5f5a6dfe3e53574af1a8ef777e2a834d10dae8b67a4e/cython-3.2.0-cp39-abi3-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6155a6c360e32af1aaa16fa10b0119b49deeadff42a1958973324150870af1b5", size = 2851317, upload-time = "2025-11-05T13:36:13.14Z" }, - { url = "https://files.pythonhosted.org/packages/bc/d9/d9f321637b8034b5028fa5fe7d1085ffa9351fea350af6510d5cb924c014/cython-3.2.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:861258ac3878b76c57b9b5a379787d772a0bc47fec9167b43986777de542c474", size = 2987155, upload-time = "2025-11-05T13:36:15.018Z" }, - { url = "https://files.pythonhosted.org/packages/f8/b5/9f9e7d261f083b4066d734b27a7872b0c584fd4c3578196652dbf72b3f62/cython-3.2.0-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:85dbf955e3193893d0288105afa0fa5f4e835ff587061681f240a4f0487c44fb", size = 2884219, upload-time = "2025-11-05T13:36:17.334Z" }, - { url = "https://files.pythonhosted.org/packages/88/64/5aeb6e43e0ded9efedc5a516f87a487fdca8e434491cc352e5a805380459/cython-3.2.0-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:3b3f13822526726bac43275c0e92916bbcc2c30e9f559edc4c1132670b70498d", size = 3218067, upload-time = "2025-11-05T13:36:19.493Z" }, - { url = "https://files.pythonhosted.org/packages/c4/a0/1958f54cd79d8251a330b9c9652b2a5ceba6a3fcec10782dd03e2a23c74f/cython-3.2.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:ab18d09673d219008be5b6174bcbb6dbfd50904e66371f104a8a4698b791472d", size = 3108277, upload-time = "2025-11-05T13:36:21.203Z" }, - { url = "https://files.pythonhosted.org/packages/9c/84/9b8112160cab922b97edef00616ed18771567d88b5ba9d30d1736880c345/cython-3.2.0-cp39-abi3-win32.whl", hash = "sha256:c9fd986413fc52929b916187630a9abab9f876299951488c4b905ad5346afee6", size = 2430852, upload-time = "2025-11-05T13:36:23.049Z" }, - { url = "https://files.pythonhosted.org/packages/8f/57/65d3de140b51c45dd6892846bfabdfaaa032e2418f1cb1a2f46058c1fe42/cython-3.2.0-cp39-abi3-win_arm64.whl", hash = "sha256:ee2ea79ddeb721f912e7efea039b9db059c81767ff04fbf9a995f64e1187df99", size = 2435793, upload-time = "2025-11-05T13:36:25.139Z" }, - { url = "https://files.pythonhosted.org/packages/20/58/1f798ddb7fe6bfddf85f4f97d2d4ad63a491a7b643e85c1e274d0f09138e/cython-3.2.0-py3-none-any.whl", hash = "sha256:73f7f4c75acde5b5b4df05b11fdc2705ec637b99241d1bc2f4ebf345f7a2ea90", size = 1252818, upload-time = "2025-11-05T13:35:00.391Z" }, +version = "3.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/83/36/cce2972e13e83ffe58bc73bfd9d37340b5e5113e8243841a57511c7ae1c2/cython-3.2.1.tar.gz", hash = "sha256:2be1e4d0cbdf7f4cd4d9b8284a034e1989b59fd060f6bd4d24bf3729394d2ed8", size = 3270455, upload-time = "2025-11-12T19:02:59.847Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/74/f9fe9e7034f24aef407e7816880c012d8e863bedaa6b42b9ff33e79ea139/cython-3.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f1d10b3731171a33563ba81fdcba39c229e45087269dfbe07a1c00e7dcb2537f", size = 2957374, upload-time = "2025-11-12T19:03:10.132Z" }, + { url = "https://files.pythonhosted.org/packages/65/47/f9dd519117f520aaf4d723c88fd9e9139262a0379edc01e71a1e9825e082/cython-3.2.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92b814b6066d178a5057b557d372e2a03854e947e41cb9dec21db732fbd14c3c", size = 3366838, upload-time = "2025-11-12T19:03:11.742Z" }, + { url = "https://files.pythonhosted.org/packages/5d/3e/d967acfafef00056c3ba832692b9bb358ede2919f641e4a2d24828adacc6/cython-3.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9fc6abd0532007827d8c6143b2bfedf80c7cb89a3c1c12f058336663489ed2e", size = 3535901, upload-time = "2025-11-12T19:03:13.545Z" }, + { url = "https://files.pythonhosted.org/packages/68/79/bc46e714ecb010f80a8aa7f7eaf412c53cbabbe7489590d6aba5f4478ba5/cython-3.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:14f1ed135347587cfddcd3c3219667cac4f0ea0b66aa1c4c0187d50a1b92c222", size = 2764043, upload-time = "2025-11-12T19:03:15.584Z" }, + { url = "https://files.pythonhosted.org/packages/48/d4/ba7b9f341ec168de78bd659600e04bb7de3b2d069bf98b2178a135e88ea4/cython-3.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3cb32c650e7f4476941d1f735cae75a2067d5e3279576273bb8802e8ea907222", size = 2949720, upload-time = "2025-11-12T19:03:17.492Z" }, + { url = "https://files.pythonhosted.org/packages/ad/47/c42417f424c0b928361f48d7dd0ae72716ee21f647b73ceb16f66b98663e/cython-3.2.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a2b306813d7f28aa0a2c3e4e63ada1427a8109917532df942cd5429db228252", size = 3242127, upload-time = "2025-11-12T19:03:19.227Z" }, + { url = "https://files.pythonhosted.org/packages/e6/fc/1040460889129551649ec35be45e05169871fbcf71bd8e13c533e86f9468/cython-3.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0959d9a36d4f004ce63acc1474b3c606745af98b65e8ae709efd0c10988e9d6b", size = 3377094, upload-time = "2025-11-12T19:03:21.25Z" }, + { url = "https://files.pythonhosted.org/packages/f8/f2/8c754298eefa40e21af0ae3592837c6e71254900d5aea1c8859e96b11de5/cython-3.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:60c62e734421365135cc2842013d883136054a26c617c001be494235edfc447a", size = 2767824, upload-time = "2025-11-12T19:03:23.317Z" }, + { url = "https://files.pythonhosted.org/packages/ee/0e/19d5041b87f98ed19c94c388607cd27c1f7458078c3bad5de2dead55b2e1/cython-3.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ea5097d97afd2ab14e98637b7033eba5146de29a5dedf89f5e946076396ab891", size = 2966736, upload-time = "2025-11-12T19:03:25.064Z" }, + { url = "https://files.pythonhosted.org/packages/84/b8/bcc36d9d2464348106984956608a52a42a01ab44ea64031207dffdebc078/cython-3.2.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a4bf12de0475bb6a21e2336a4a04dc4a2b4dd0507a2a3c703e045f3484266605", size = 3221633, upload-time = "2025-11-12T19:03:26.754Z" }, + { url = "https://files.pythonhosted.org/packages/79/20/7d4807fe4ebcef9f20f2e5f93312d0f5d02f9f76524fd4e37706d04e83f7/cython-3.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:18c64a0f69a1b8164de70ec7efc72250c589fec21519170de21582300f6aaed9", size = 3389542, upload-time = "2025-11-12T19:03:28.656Z" }, + { url = "https://files.pythonhosted.org/packages/2a/92/b06ba6721299293bc41e89732070132c453bdbaaeabb8f8cc76851b75345/cython-3.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:5ba14907d5826d8010e82306ce279a0d3650f5b50a4813c80836a17b2213c520", size = 2755307, upload-time = "2025-11-12T19:03:30.684Z" }, + { url = "https://files.pythonhosted.org/packages/40/28/c6e36c214baeb27ae45b518552e74457536c7c964b1a55b5900b047fa467/cython-3.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b4e850fc7a2f72d19679dd083fe4d20bf66860fceabb4f3207112f240249d708", size = 2957307, upload-time = "2025-11-12T19:03:32.471Z" }, + { url = "https://files.pythonhosted.org/packages/c8/c8/b0b9ba64f81f2875c42aab5c0979d6454cd1ac6b3c1e2373ad552701565d/cython-3.2.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3d20ca4afe993f7dccad3aeddbf4c3536cb0fd3ad6dc7a225935a666a5655af2", size = 3210919, upload-time = "2025-11-12T19:03:34.274Z" }, + { url = "https://files.pythonhosted.org/packages/f9/33/5d9ca6abba0e77e1851b843dd1b3c4095fbc6373166935e83c4414f80e88/cython-3.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f5a54a757d01ca6a260b02ce5baf17d9db1c2253566ab5844ee4966ff2a69c19", size = 3373350, upload-time = "2025-11-12T19:03:35.927Z" }, + { url = "https://files.pythonhosted.org/packages/e4/29/4408c3486ff380a2d6ae0d4b71da5195efcef3c4360017113ee7d1cb7335/cython-3.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:1b81e56584727a328e00d91c164f8f0f2c59b02bf6857c3f000cd830fa571453", size = 2753425, upload-time = "2025-11-12T19:03:38.157Z" }, + { url = "https://files.pythonhosted.org/packages/f0/32/c1aa03ccadda89487ff31b90d8651c3706ce2744bf4f2c2ae213147e89bd/cython-3.2.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:d7af6ad01c0fe1965d1d3badaeb6df53c1f37383ebae1ccb405b73f628f87713", size = 2967833, upload-time = "2025-11-12T19:03:40.233Z" }, + { url = "https://files.pythonhosted.org/packages/ff/dc/3488d3ade0635408a2ebb05561a3009e2f54616bfefd1f107088dfeb2c4c/cython-3.2.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e3ea7cd085b62acb67c0fbde5cd17a7d9e47992c965e81ec977cf9ea7c59cd65", size = 3256237, upload-time = "2025-11-12T19:03:42.005Z" }, + { url = "https://files.pythonhosted.org/packages/7b/ba/f3d35d3803c9a424fa8812893847114deb9e2440c1bc67a31ab9ec4b9355/cython-3.2.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:986aea38fdf231e78d73745f83271c5654852c822dc5141a1d3fba64429a6aa6", size = 3383100, upload-time = "2025-11-12T19:03:43.675Z" }, + { url = "https://files.pythonhosted.org/packages/86/dc/d72dbb2f8e7ca95d2d18fd86f32b2e385996576230e7ecddd7d250786825/cython-3.2.1-cp314-cp314-win_amd64.whl", hash = "sha256:4960e26cd34c1385f21646339f2e0361fcdd2ed3c01cdb50fe734add577ec56a", size = 2790322, upload-time = "2025-11-12T19:03:45.373Z" }, + { url = "https://files.pythonhosted.org/packages/5a/7e/1194f4ba98b981bbdca945a292e4f49e87ea09d69516b24445409e7cf611/cython-3.2.1-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:4e9167316bf6ecfea33dcca62f074605648fb93cc053ef46b5deb3e5d12fc0d3", size = 2872858, upload-time = "2025-11-12T19:03:55.074Z" }, + { url = "https://files.pythonhosted.org/packages/6b/1a/393ca8ffec7ad3f02b8e4bffaba3dba4fb62c4a1c4c0b6dbf3b80e709fe3/cython-3.2.1-cp39-abi3-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3095df6cd470064742f428c937bed7200c5123b9e19ee04aa09ec61281e565a3", size = 3209664, upload-time = "2025-11-12T19:03:56.771Z" }, + { url = "https://files.pythonhosted.org/packages/37/57/f209f64c609d3d8fac60a572e56da2f621dc1789e399c58db61d5645a31f/cython-3.2.1-cp39-abi3-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:db3f53b2d9afb206075a2605f1150aa019f0733c7795a38eccc6119c2e9c3f7b", size = 2854607, upload-time = "2025-11-12T19:03:59.413Z" }, + { url = "https://files.pythonhosted.org/packages/fc/af/1e5c73fe52423f40776130b0be914fd9f9f8dc26c4f6ea4c2ed04772d558/cython-3.2.1-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0fc5e7687ac8f8e2b2fb95648f43e9e074ebaa72fd5cb3d8e20e5f1e8b8e02d9", size = 2991567, upload-time = "2025-11-12T19:04:02.209Z" }, + { url = "https://files.pythonhosted.org/packages/39/2c/3ea175b6b1fdfb429f9e9c395240d894155b3c0615caced05fef43264cba/cython-3.2.1-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:bbb3bc152bc0de82b031c8d355418fa4890a92424209d59366c2c0bc9e6cf53c", size = 2889178, upload-time = "2025-11-12T19:04:05.272Z" }, + { url = "https://files.pythonhosted.org/packages/f1/88/b2ab22a3a3feac78c62354a823c5c0c33659909e9918f53aa05904532b4b/cython-3.2.1-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:a2022bc48ad0c2c0e0485bf0b54902913a3d81086b7d435f4437620c667799f6", size = 3223755, upload-time = "2025-11-12T19:04:07.262Z" }, + { url = "https://files.pythonhosted.org/packages/0b/56/9ba58629a03cbffb5965a3c65ccd91fa683d95d588c21a875da72fdc249b/cython-3.2.1-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:99fdd4ffc2dcb513f4be9ce71c6fedd895b96b1f814655b6bbab196df497b090", size = 3113456, upload-time = "2025-11-12T19:04:09.175Z" }, + { url = "https://files.pythonhosted.org/packages/56/5b/148c1a7ea5aebe460a70cad716a77e5fd0205be2de9fc5250491eb13ad8c/cython-3.2.1-cp39-abi3-win32.whl", hash = "sha256:06071f85bd5ce040464d43b2f9f287742a79f905e81b709fe904567230f1ed51", size = 2434223, upload-time = "2025-11-12T19:04:11.294Z" }, + { url = "https://files.pythonhosted.org/packages/7a/54/bb9b0c9db2a92a5e93747ca3027cfc645741411f8f1c6af2fb2a7b82df5d/cython-3.2.1-cp39-abi3-win_arm64.whl", hash = "sha256:e87c131d59480aee1ebac622b64f287c0e1d665ad1a1b7d498ac48accdb36c6b", size = 2439268, upload-time = "2025-11-12T19:04:12.931Z" }, + { url = "https://files.pythonhosted.org/packages/aa/30/373775b8d933d781d055c1dd0f110f275a101f320dab724c8c63a7c1b945/cython-3.2.1-py3-none-any.whl", hash = "sha256:cd72c46e7bffe8250c52d400e72c8d5d3086437b6aeec5b0eca99ccd337f5834", size = 1254219, upload-time = "2025-11-12T19:02:56.14Z" }, ] [[package]] @@ -2229,8 +2229,8 @@ dev = [ { name = "onnxscript", version = "0.5.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "opentelemetry-api" }, { name = "setuptools" }, - { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "tensorstore", version = "0.1.78", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.79", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tqdm" }, { name = "transformer-engine", marker = "extra == 'extra-13-megatron-core-dev'" }, { name = "wget" }, @@ -2249,8 +2249,8 @@ lts = [ { name = "onnxscript", version = "0.5.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "opentelemetry-api" }, { name = "setuptools" }, - { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "tensorstore", version = "0.1.78", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.79", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tqdm" }, { name = "wget" }, ] @@ -2951,6 +2951,36 @@ dependencies = [ ] sdist = { url = "https://files.pythonhosted.org/packages/05/79/87c45f32e661b25e0aaa1e325ba166511f57be5dff8f0fcabc12d3e73b64/nv_grouped_gemm-1.1.4.post6.tar.gz", hash = "sha256:dad6115f4b4ff7ceb0bc40ad44e923c13a24fc88cfe1e20b1a6b4c9cf24c445c", size = 26508, upload-time = "2025-10-10T18:52:29.508Z" } +[[package]] +name = "nv-one-logger-core" +version = "2.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "overrides" }, + { name = "pydantic" }, + { name = "strenum" }, + { name = "toml" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3b/37/963095797035f371e0db6ea761f5aaccb624fc786af217115b423baeb0e2/nv_one_logger_core-2.3.1.tar.gz", hash = "sha256:cbb2f87604c78b96a302f32d87199902129d76153a73a20f8455a250b3246c1d", size = 52640, upload-time = "2025-10-29T21:11:55.812Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ee/c4/ea91554c4fcbff66057f667690101d7a4b965605741350ac661b03fa6c46/nv_one_logger_core-2.3.1-py3-none-any.whl", hash = "sha256:0c8b77bcdac4daa1ea913bf8d4afd2a057bd5526e3654ac39f67caba157341a6", size = 63066, upload-time = "2025-10-29T21:11:52.753Z" }, +] + +[[package]] +name = "nv-one-logger-training-telemetry" +version = "2.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nv-one-logger-core" }, + { name = "strenum" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c5/21/016fa067967734d52f1ccf5a2a37a1a65216f2d7053bc2b85872cce956ca/nv_one_logger_training_telemetry-2.3.1.tar.gz", hash = "sha256:8c67940ea71799afaf1f46df3ba2f52f93aea26321c6f1c1d54aae02efc2a4af", size = 44435, upload-time = "2025-10-29T21:21:42.035Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/15/97e6e4ddfe5fc35bcee74a45b7c33fb73abb83713c7dfa26420b971a86c3/nv_one_logger_training_telemetry-2.3.1-py3-none-any.whl", hash = "sha256:5319443829b59378a498c3c62ac98973e14f31be675c229ff2b14e2fe109aa0b", size = 44140, upload-time = "2025-10-29T21:21:40.72Z" }, +] + [[package]] name = "nvidia-cublas-cu12" version = "12.8.4.1" @@ -3115,10 +3145,10 @@ wheels = [ [[package]] name = "nvidia-mathdx" -version = "25.1.1" +version = "25.6.0" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/59/00/f1a73ac224d466b31b6eb09794656112e896185678720b05668777e87db3/nvidia_mathdx-25.1.1-py3-none-any.whl", hash = "sha256:4fb948fe4842d24e679f3d0c140c8a0e8e24c3c7ae5eb6e08584253ad94a198b", size = 39894902, upload-time = "2025-05-06T22:58:32.29Z" }, + { url = "https://files.pythonhosted.org/packages/20/1a/a418b8c1adc58abd87fd69414c19883af5c1b10514e3dbfcc27cde831b13/nvidia_mathdx-25.6.0-py3-none-any.whl", hash = "sha256:22e6ad5d0d005f836be5cbd14e836cf2e9ea42c82deb602707246ce8198eaa96", size = 23013087, upload-time = "2025-11-13T18:25:11.228Z" }, ] [[package]] @@ -3210,24 +3240,25 @@ wheels = [ [[package]] name = "nvidia-resiliency-ext" -version = "0.4.1" +version = "0.5.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "defusedxml" }, + { name = "nv-one-logger-core" }, + { name = "nv-one-logger-training-telemetry" }, { name = "nvidia-ml-py" }, { name = "packaging" }, { name = "psutil" }, - { name = "pynvml" }, { name = "pyyaml" }, { name = "torch", marker = "sys_platform == 'never'" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/a7/8c/6547d9fdea9730d4f69a19ca492ccbe221768f8473b82502a78a824acc3d/nvidia_resiliency_ext-0.4.1-cp310-cp310-manylinux_2_31_aarch64.whl", hash = "sha256:cf80599411018ebbf03da64769527dee6b37746b72b8606f919b7999633770b8", size = 442891, upload-time = "2025-07-17T03:53:38.878Z" }, - { url = "https://files.pythonhosted.org/packages/34/0d/520cab980949ad11bd5291784fea309bcd6654a9c97943a3a87644c1d111/nvidia_resiliency_ext-0.4.1-cp310-cp310-manylinux_2_31_x86_64.whl", hash = "sha256:0c23e621d598ba436549db83deeb3569c19df0194b89fe6169d62b6ead711be3", size = 448044, upload-time = "2025-07-17T03:48:30.851Z" }, - { url = "https://files.pythonhosted.org/packages/46/77/8cda264b262e2868a4e6ebcddaea112200b1e34b8d5a35a2fe3b4978d137/nvidia_resiliency_ext-0.4.1-cp311-cp311-manylinux_2_31_aarch64.whl", hash = "sha256:d8ca454a8b8abef72e0ff0e33914686c263414e8891471c02a9f6af9d2d6b925", size = 443649, upload-time = "2025-07-17T03:49:16.183Z" }, - { url = "https://files.pythonhosted.org/packages/3a/53/029cc7493b5833cb8dfa201f15a1e422e2e1cc6308d34c5b0a90028a73fd/nvidia_resiliency_ext-0.4.1-cp311-cp311-manylinux_2_31_x86_64.whl", hash = "sha256:dde6034f29350ac6326cdd861ceec641bdd93be0eddbf034739f4cd9452a4dd9", size = 449189, upload-time = "2025-07-17T03:52:15.24Z" }, - { url = "https://files.pythonhosted.org/packages/70/05/38d491962273c7905708762279f440520eb79f3c00b67a023497215ad023/nvidia_resiliency_ext-0.4.1-cp312-cp312-manylinux_2_31_aarch64.whl", hash = "sha256:b3bd5f01535574b16d0f38bca6e39afe3806c4a2896eee1b321cd944e00025a7", size = 444570, upload-time = "2025-07-17T03:50:58.877Z" }, - { url = "https://files.pythonhosted.org/packages/18/8b/4cb8aa2bbdf3705d3034c3f3dacdadb03b3b7dd3dc7f5200e64663fb477f/nvidia_resiliency_ext-0.4.1-cp312-cp312-manylinux_2_31_x86_64.whl", hash = "sha256:ca9f8de465af345952bedbea53c90c0e2323d88cfd830ded0e806fad91845c0e", size = 450280, upload-time = "2025-07-17T03:49:55.327Z" }, + { url = "https://files.pythonhosted.org/packages/df/18/1898cad3bdd643c6bfa5f7aee125a5ef308ab1701ab15106e3e9c66bb416/nvidia_resiliency_ext-0.5.0-cp310-cp310-manylinux_2_39_aarch64.whl", hash = "sha256:97d4b68d3949f3b8370addb474d8662d6ac5008c3c1296420cdeb93a88d6a804", size = 402915, upload-time = "2025-11-13T21:28:34.578Z" }, + { url = "https://files.pythonhosted.org/packages/fa/48/10fc3f278898e3b2aacc3bea65f0ac4b579e6e0e8447b467742d75adeec1/nvidia_resiliency_ext-0.5.0-cp310-cp310-manylinux_2_39_x86_64.whl", hash = "sha256:ceb04ec5a7bc9301fd6f14449bda6b0d1f37ead4fbe37aa3bf1d7b2ad5b662d4", size = 406483, upload-time = "2025-11-13T21:28:58.732Z" }, + { url = "https://files.pythonhosted.org/packages/14/17/c19dfed8d4aced307a1c1404f0917ee6c1b319db8092b3cfe2af4e76de6d/nvidia_resiliency_ext-0.5.0-cp311-cp311-manylinux_2_39_aarch64.whl", hash = "sha256:62d396356adcf898cb86a54956eeece29017a41b5872db0b364c8449d23f2f66", size = 404062, upload-time = "2025-11-13T21:29:46.873Z" }, + { url = "https://files.pythonhosted.org/packages/7f/99/b4324595171c3cdffb03cef070006ab9a3de7fca90a22403576ec6423b69/nvidia_resiliency_ext-0.5.0-cp311-cp311-manylinux_2_39_x86_64.whl", hash = "sha256:c4fcd006ef69300f753bb30d17efbb6bcee6699f044e3532209b2825d22e9977", size = 407027, upload-time = "2025-11-13T21:30:09.124Z" }, + { url = "https://files.pythonhosted.org/packages/8c/73/232d9f25558f3c6165ff1d15c980a434b47c13e8f527f999cd265859abcf/nvidia_resiliency_ext-0.5.0-cp312-cp312-manylinux_2_39_aarch64.whl", hash = "sha256:81e3d827885e90bed369e67f76dda6709dd4073c2e5fa1228df85d6987cee495", size = 403317, upload-time = "2025-11-13T21:31:24.603Z" }, + { url = "https://files.pythonhosted.org/packages/44/89/4d7f39416aa3be72ee9f1260a7af56af40f2570f5add1e039d96279a8764/nvidia_resiliency_ext-0.5.0-cp312-cp312-manylinux_2_39_x86_64.whl", hash = "sha256:eb720cd25feabef07f971d4051c7bcac2f9ec73642a9031953d2663307950cb9", size = 407963, upload-time = "2025-11-13T21:30:28.998Z" }, ] [[package]] @@ -3424,6 +3455,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/05/44/4c45a34def3506122ae61ad684139f0bbc4e00c39555d4f7e20e0e001c8a/opentelemetry_api-1.33.1-py3-none-any.whl", hash = "sha256:4db83ebcf7ea93e64637ec6ee6fabee45c5cbe4abd9cf3da95c43828ddb50b83", size = 65771, upload-time = "2025-05-16T18:52:17.419Z" }, ] +[[package]] +name = "overrides" +version = "7.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/36/86/b585f53236dec60aba864e050778b25045f857e17f6e5ea0ae95fe80edd2/overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a", size = 22812, upload-time = "2024-01-27T21:01:33.423Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49", size = 17832, upload-time = "2024-01-27T21:01:31.393Z" }, +] + [[package]] name = "packaging" version = "25.0" @@ -3805,17 +3845,17 @@ wheels = [ [[package]] name = "protobuf" -version = "6.33.0" +version = "6.33.1" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/19/ff/64a6c8f420818bb873713988ca5492cba3a7946be57e027ac63495157d97/protobuf-6.33.0.tar.gz", hash = "sha256:140303d5c8d2037730c548f8c7b93b20bb1dc301be280c378b82b8894589c954", size = 443463, upload-time = "2025-10-15T20:39:52.159Z" } +sdist = { url = "https://files.pythonhosted.org/packages/0a/03/a1440979a3f74f16cab3b75b0da1a1a7f922d56a8ddea96092391998edc0/protobuf-6.33.1.tar.gz", hash = "sha256:97f65757e8d09870de6fd973aeddb92f85435607235d20b2dfed93405d00c85b", size = 443432, upload-time = "2025-11-13T16:44:18.895Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/7e/ee/52b3fa8feb6db4a833dfea4943e175ce645144532e8a90f72571ad85df4e/protobuf-6.33.0-cp310-abi3-win32.whl", hash = "sha256:d6101ded078042a8f17959eccd9236fb7a9ca20d3b0098bbcb91533a5680d035", size = 425593, upload-time = "2025-10-15T20:39:40.29Z" }, - { url = "https://files.pythonhosted.org/packages/7b/c6/7a465f1825872c55e0341ff4a80198743f73b69ce5d43ab18043699d1d81/protobuf-6.33.0-cp310-abi3-win_amd64.whl", hash = "sha256:9a031d10f703f03768f2743a1c403af050b6ae1f3480e9c140f39c45f81b13ee", size = 436882, upload-time = "2025-10-15T20:39:42.841Z" }, - { url = "https://files.pythonhosted.org/packages/e1/a9/b6eee662a6951b9c3640e8e452ab3e09f117d99fc10baa32d1581a0d4099/protobuf-6.33.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:905b07a65f1a4b72412314082c7dbfae91a9e8b68a0cc1577515f8df58ecf455", size = 427521, upload-time = "2025-10-15T20:39:43.803Z" }, - { url = "https://files.pythonhosted.org/packages/10/35/16d31e0f92c6d2f0e77c2a3ba93185130ea13053dd16200a57434c882f2b/protobuf-6.33.0-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:e0697ece353e6239b90ee43a9231318302ad8353c70e6e45499fa52396debf90", size = 324445, upload-time = "2025-10-15T20:39:44.932Z" }, - { url = "https://files.pythonhosted.org/packages/e6/eb/2a981a13e35cda8b75b5585aaffae2eb904f8f351bdd3870769692acbd8a/protobuf-6.33.0-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:e0a1715e4f27355afd9570f3ea369735afc853a6c3951a6afe1f80d8569ad298", size = 339159, upload-time = "2025-10-15T20:39:46.186Z" }, - { url = "https://files.pythonhosted.org/packages/21/51/0b1cbad62074439b867b4e04cc09b93f6699d78fd191bed2bbb44562e077/protobuf-6.33.0-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:35be49fd3f4fefa4e6e2aacc35e8b837d6703c37a2168a55ac21e9b1bc7559ef", size = 323172, upload-time = "2025-10-15T20:39:47.465Z" }, - { url = "https://files.pythonhosted.org/packages/07/d1/0a28c21707807c6aacd5dc9c3704b2aa1effbf37adebd8caeaf68b17a636/protobuf-6.33.0-py3-none-any.whl", hash = "sha256:25c9e1963c6734448ea2d308cfa610e692b801304ba0908d7bfa564ac5132995", size = 170477, upload-time = "2025-10-15T20:39:51.311Z" }, + { url = "https://files.pythonhosted.org/packages/06/f1/446a9bbd2c60772ca36556bac8bfde40eceb28d9cc7838755bc41e001d8f/protobuf-6.33.1-cp310-abi3-win32.whl", hash = "sha256:f8d3fdbc966aaab1d05046d0240dd94d40f2a8c62856d41eaa141ff64a79de6b", size = 425593, upload-time = "2025-11-13T16:44:06.275Z" }, + { url = "https://files.pythonhosted.org/packages/a6/79/8780a378c650e3df849b73de8b13cf5412f521ca2ff9b78a45c247029440/protobuf-6.33.1-cp310-abi3-win_amd64.whl", hash = "sha256:923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed", size = 436883, upload-time = "2025-11-13T16:44:09.222Z" }, + { url = "https://files.pythonhosted.org/packages/cd/93/26213ff72b103ae55bb0d73e7fb91ea570ef407c3ab4fd2f1f27cac16044/protobuf-6.33.1-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:fe34575f2bdde76ac429ec7b570235bf0c788883e70aee90068e9981806f2490", size = 427522, upload-time = "2025-11-13T16:44:10.475Z" }, + { url = "https://files.pythonhosted.org/packages/c2/32/df4a35247923393aa6b887c3b3244a8c941c32a25681775f96e2b418f90e/protobuf-6.33.1-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:f8adba2e44cde2d7618996b3fc02341f03f5bc3f2748be72dc7b063319276178", size = 324445, upload-time = "2025-11-13T16:44:11.869Z" }, + { url = "https://files.pythonhosted.org/packages/8e/d0/d796e419e2ec93d2f3fa44888861c3f88f722cde02b7c3488fcc6a166820/protobuf-6.33.1-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:0f4cf01222c0d959c2b399142deb526de420be8236f22c71356e2a544e153c53", size = 339161, upload-time = "2025-11-13T16:44:12.778Z" }, + { url = "https://files.pythonhosted.org/packages/1d/2a/3c5f05a4af06649547027d288747f68525755de692a26a7720dced3652c0/protobuf-6.33.1-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:8fd7d5e0eb08cd5b87fd3df49bc193f5cfd778701f47e11d127d0afc6c39f1d1", size = 323171, upload-time = "2025-11-13T16:44:14.035Z" }, + { url = "https://files.pythonhosted.org/packages/08/b4/46310463b4f6ceef310f8348786f3cff181cea671578e3d9743ba61a459e/protobuf-6.33.1-py3-none-any.whl", hash = "sha256:d595a9fd694fdeb061a62fbe10eb039cc1e444df81ec9bb70c7fc59ebcb1eafa", size = 170477, upload-time = "2025-11-13T16:44:17.633Z" }, ] [[package]] @@ -4193,18 +4233,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/35/76/c34426d532e4dce7ff36e4d92cb20f4cbbd94b619964b93d24e8f5b5510f/pynacl-1.6.1-cp38-abi3-win_arm64.whl", hash = "sha256:5953e8b8cfadb10889a6e7bd0f53041a745d1b3d30111386a1bb37af171e6daf", size = 183970, upload-time = "2025-11-10T16:02:05.786Z" }, ] -[[package]] -name = "pynvml" -version = "13.0.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "nvidia-ml-py" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/5c/57/da7dc63a79f59e082e26a66ac02d87d69ea316b35b35b7a00d82f3ce3d2f/pynvml-13.0.1.tar.gz", hash = "sha256:1245991d9db786b4d2f277ce66869bd58f38ac654e38c9397d18f243c8f6e48f", size = 35226, upload-time = "2025-09-05T20:33:25.377Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d7/4a/cac76c174bb439a0c46c9a4413fcbea5c6cabfb01879f7bbdb9fdfaed76c/pynvml-13.0.1-py3-none-any.whl", hash = "sha256:e2b20e0a501eeec951e2455b7ab444759cf048e0e13a57b08049fa2775266aa8", size = 28810, upload-time = "2025-09-05T20:33:24.13Z" }, -] - [[package]] name = "pyre-extensions" version = "0.0.32" @@ -5076,11 +5104,11 @@ wheels = [ [[package]] name = "slack-sdk" -version = "3.37.0" +version = "3.38.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/8e/c2/0a174a155623d7dc3ed4d1360cdf755590acdc2c3fc9ce0d2340f468909f/slack_sdk-3.37.0.tar.gz", hash = "sha256:242d6cffbd9e843af807487ff04853189b812081aeaa22f90a8f159f20220ed9", size = 241612, upload-time = "2025-10-06T23:07:20.856Z" } +sdist = { url = "https://files.pythonhosted.org/packages/69/90/8c830172b1847bd3084a2cf39aee9d522e2a55d1c3d4e2b066001e9765ee/slack_sdk-3.38.0.tar.gz", hash = "sha256:73f43ef535929c6034982434aba4d5fd04db3b40f4e0cd14c3abfd56419d181d", size = 240091, upload-time = "2025-11-13T16:05:20.905Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/07/fd/a502ee24d8c7d12a8f749878ae0949b8eeb50aeac22dc5a613d417a256d0/slack_sdk-3.37.0-py2.py3-none-any.whl", hash = "sha256:e108a0836eafda74d8a95e76c12c2bcb010e645d504d8497451e4c7ebb229c87", size = 302751, upload-time = "2025-10-06T23:07:19.542Z" }, + { url = "https://files.pythonhosted.org/packages/3d/fc/0563891d3d1f7c503b2daf0b5b9ae9e605ea112272661897c150fd3d69cb/slack_sdk-3.38.0-py2.py3-none-any.whl", hash = "sha256:6c5e908abd68e97373a88437ef2fa3ff7a4c356807bbc41fcd7d6cbbfa2034d6", size = 302796, upload-time = "2025-11-13T16:05:18.856Z" }, ] [[package]] @@ -5359,6 +5387,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl", hash = "sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca", size = 74033, upload-time = "2025-11-01T15:25:25.461Z" }, ] +[[package]] +name = "strenum" +version = "0.4.15" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/85/ad/430fb60d90e1d112a62ff57bdd1f286ec73a2a0331272febfddd21f330e1/StrEnum-0.4.15.tar.gz", hash = "sha256:878fb5ab705442070e4dd1929bb5e2249511c0bcf2b0eeacf3bcd80875c82eff", size = 23384, upload-time = "2023-06-29T22:02:58.399Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/69/297302c5f5f59c862faa31e6cb9a4cd74721cd1e052b38e464c5b402df8b/StrEnum-0.4.15-py3-none-any.whl", hash = "sha256:a30cda4af7cc6b5bf52c8055bc4bf4b2b6b14a93b574626da33df53cf7740659", size = 8851, upload-time = "2023-06-29T22:02:56.947Z" }, +] + [[package]] name = "sympy" version = "1.14.0" @@ -5419,10 +5456,13 @@ resolution-markers = [ "python_full_version == '3.13.*' and sys_platform == 'linux'", "python_full_version >= '3.14' and sys_platform != 'linux'", "python_full_version == '3.13.*' and sys_platform != 'linux'", + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", ] dependencies = [ - { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.13'" }, - { name = "numpy", marker = "python_full_version >= '3.13'" }, + { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "numpy", marker = "python_full_version < '3.11' or python_full_version >= '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/3c/b9/ea25aba62c688a87d7d7d9cc5926d602e2f9e84fa72586825486fb180b7e/tensorstore-0.1.74.tar.gz", hash = "sha256:a062875f27283d30ce4959c408c253ecb336fce8e3f9837c064e3d30cda79203", size = 6795605, upload-time = "2025-04-24T15:42:18.829Z" } wheels = [ @@ -5450,42 +5490,40 @@ wheels = [ [[package]] name = "tensorstore" -version = "0.1.78" +version = "0.1.79" source = { registry = "https://pypi.org/simple" } resolution-markers = [ "python_full_version == '3.12.*' and sys_platform == 'linux'", "python_full_version == '3.12.*' and sys_platform != 'linux'", "python_full_version == '3.11.*' and sys_platform == 'linux'", "python_full_version == '3.11.*' and sys_platform != 'linux'", - "python_full_version < '3.11' and sys_platform == 'linux'", - "python_full_version < '3.11' and sys_platform != 'linux'", ] dependencies = [ - { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.13'" }, - { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' and python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version >= '3.11' and python_full_version < '3.13'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/9f/ee/05eb424437f4db63331c90e4605025eedc0f71da3faff97161d5d7b405af/tensorstore-0.1.78.tar.gz", hash = "sha256:e26074ffe462394cf54197eb76d6569b500f347573cd74da3f4dd5f510a4ad7c", size = 6913502, upload-time = "2025-10-06T17:44:29.649Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7a/1e/77eff7bb320f72a9cb6e9a19eee4d78bee4a6ac1c28ceef60df28b4ab670/tensorstore-0.1.78-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:f1bc58164ad964d9cc298d20b62ca704ab6241639a21015e47ce6ea5b5cae27f", size = 15710776, upload-time = "2025-10-06T17:43:47.469Z" }, - { url = "https://files.pythonhosted.org/packages/55/df/f74f8004b246006ae03c90c28e32d71eb8a86a5b325d2d84dda327babdcc/tensorstore-0.1.78-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1910101ea85b6507958da28628ef53712c5311df19a795f449604f82bae6a24b", size = 13771121, upload-time = "2025-10-06T17:43:49.88Z" }, - { url = "https://files.pythonhosted.org/packages/be/b8/ab0d0b2afc53f47fbfd95c10d9ae21d393019aca45c8513657b8d7002f1f/tensorstore-0.1.78-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e92195db0c8c3ca749f24b1e930ab93382ac27430ac4ad2e3f53fc8f739323f", size = 18154513, upload-time = "2025-10-06T17:43:51.694Z" }, - { url = "https://files.pythonhosted.org/packages/f7/ea/c1b4cc6a089a39f63e8d189a55c715e393995628b12b4c8560b3ae4874ba/tensorstore-0.1.78-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:90570b867f9100f7405e4116c73910d0bd283a101500ea5680c5a8a881ea05c6", size = 20048971, upload-time = "2025-10-06T17:43:54.358Z" }, - { url = "https://files.pythonhosted.org/packages/58/2a/7167087885b12473f20ae4fddb9a8feeed6bd44ea8d42c73ae29ad3d1591/tensorstore-0.1.78-cp310-cp310-win_amd64.whl", hash = "sha256:4de9d4ee93d712cb665890af0738f4d74cac3b9b9a0492d477a3ee63fbbf445b", size = 12707793, upload-time = "2025-10-06T17:43:56.405Z" }, - { url = "https://files.pythonhosted.org/packages/33/b1/45070c393586306cef44c7bfc47ed2eddfb8930e648aaa847f615e3ae797/tensorstore-0.1.78-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:1c91e7ff93561612bd9868f3ee56702b0e4fecb45079a4c152dff9a6aa751913", size = 15712387, upload-time = "2025-10-06T17:43:58.458Z" }, - { url = "https://files.pythonhosted.org/packages/a0/d8/c045da71460301f37704e1ab1eec9e7e480dc711dbd281d86dc3d792c50e/tensorstore-0.1.78-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:781e123d392b2d9115e94b01849797a4540f54cd6d34c6ee32b9491f2f2a399c", size = 13773158, upload-time = "2025-10-06T17:44:00.285Z" }, - { url = "https://files.pythonhosted.org/packages/5b/e8/2b0d48100816649ec516fca31d02ad8028c090324e77b1c309c09a172350/tensorstore-0.1.78-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e650d363ad43754626a828a242785e6359a59fedb171276e9a0c66c0bd963cd4", size = 18154388, upload-time = "2025-10-06T17:44:02.428Z" }, - { url = "https://files.pythonhosted.org/packages/3e/a1/d9be82de18afe764c0fc7fb21b3d3bb0ad12845d202861fff7189afdb99d/tensorstore-0.1.78-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:33fed0ffa7a42ad24ce203486cf039f81b211723b45bd54859ba237a9d3aedb9", size = 20050304, upload-time = "2025-10-06T17:44:04.673Z" }, - { url = "https://files.pythonhosted.org/packages/d1/fc/b980958f91a9780e4dbc1038da723d2ad91307dbe30563359606f78926e5/tensorstore-0.1.78-cp311-cp311-win_amd64.whl", hash = "sha256:c02df3d8de4703d9ee42c8f620b2288f41c19a0fd5ffa907b72a736678e22188", size = 12708115, upload-time = "2025-10-06T17:44:06.574Z" }, - { url = "https://files.pythonhosted.org/packages/d0/5f/5853c04bebaed2d3c0ada9245328ffe3fff8b0f0f1c64f4776f67b42033f/tensorstore-0.1.78-cp312-cp312-macosx_10_14_x86_64.whl", hash = "sha256:ce375a8f6621cdb94638b9cdc5266519db16a58353d4c6920e8b9d6bdd419e21", size = 15727539, upload-time = "2025-10-06T17:44:08.631Z" }, - { url = "https://files.pythonhosted.org/packages/a2/e2/f67fcca8f90258c1cf1326aa366fe10f559f4c60102f53fdcc6614159c45/tensorstore-0.1.78-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:82f68fa5a3b4c84365a667ea0a7465a53d5d969c4d3909ac990f314d1569ffc3", size = 13780753, upload-time = "2025-10-06T17:44:10.488Z" }, - { url = "https://files.pythonhosted.org/packages/57/de/95013db6ef3b6a14b4237b95184c21becdf56d16605bf42903bb141f729e/tensorstore-0.1.78-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5dc0bd6361d73e3f67d70980f96f4e8bcbd8e810b5475a01333ca9c37f0785a5", size = 18157446, upload-time = "2025-10-06T17:44:12.831Z" }, - { url = "https://files.pythonhosted.org/packages/e2/75/6e7cef68cab3a672c6668cc80c399ae6626a498a3ef04b35b3704b41e9cc/tensorstore-0.1.78-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:75a17cef99f05fad9cc6fda37f1a1868d5f1502fd577af13174382931481c948", size = 20060211, upload-time = "2025-10-06T17:44:15.189Z" }, - { url = "https://files.pythonhosted.org/packages/1e/46/4ff3e395c44348c7442523c8ddd8ccc72d9ac81838e7a8f6afdd92131c3e/tensorstore-0.1.78-cp312-cp312-win_amd64.whl", hash = "sha256:56271d4652a7cb445879089f620af47801c091765d35a005505d6bfb8d00c535", size = 12711274, upload-time = "2025-10-06T17:44:17.586Z" }, - { url = "https://files.pythonhosted.org/packages/18/36/cfb5a2acf9005896c88f80b93c2aee42f00fab9d0045369fef6e1b297242/tensorstore-0.1.78-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:8a1d0ae7996c80f2e623be5b8cfbc32a307d08dfef3d2dcb455f592908ecd46d", size = 15727334, upload-time = "2025-10-06T17:44:19.93Z" }, - { url = "https://files.pythonhosted.org/packages/54/cd/d1bcc3aab5be4298616dbc060b5aa2012b686270aaa16a9579c7945d0a1c/tensorstore-0.1.78-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:311846cfb2d644cd4a7861005e521a79816093e76d7924c83de5d06ca323067e", size = 13780722, upload-time = "2025-10-06T17:44:21.822Z" }, - { url = "https://files.pythonhosted.org/packages/e2/3b/b0bb4440a9d67859b1abb367e436c62b0a27991dd7109f20be9dabff488f/tensorstore-0.1.78-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:630538a66eb9964bd2975c4e09ae83be9984f2e4ebd5f7969983137bfda92071", size = 18157269, upload-time = "2025-10-06T17:44:23.743Z" }, - { url = "https://files.pythonhosted.org/packages/68/d6/d95cde18ca2475bf317051b2be168cc963c5cfcd67e9c59786326ccdca53/tensorstore-0.1.78-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6886bec93b8ba22f83c4dc9e7c1ee20b11025ea9a5a839de21d0cbf7fd7aada2", size = 20060053, upload-time = "2025-10-06T17:44:25.942Z" }, - { url = "https://files.pythonhosted.org/packages/db/a2/dbd1af0e97d5d549051309d72c6e3f2fe81fae636f9db3692d21adc9c731/tensorstore-0.1.78-cp313-cp313-win_amd64.whl", hash = "sha256:e0073de8fa3074bc4cc92ced0210310fd89851899faf42a5ba256f0ba87d095c", size = 12711250, upload-time = "2025-10-06T17:44:27.926Z" }, +sdist = { url = "https://files.pythonhosted.org/packages/26/2c/50ab489a0862ca88d2d766130a6fec45ccd5174f0e04081d8b7b07a8aedd/tensorstore-0.1.79.tar.gz", hash = "sha256:8dad44a8a7f2952a5d0030a8bd868b3cfdff048bd40ab53e7226f3d8b0881c5e", size = 7075782, upload-time = "2025-11-11T22:05:23.824Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/68/a9/1695d7ea197c4568c2f02f34b203eef702ec8080422331f00a65c6fb2a37/tensorstore-0.1.79-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:11a2c62694ea9c21770bc5a09938d3d15c4b9662b738ae6e1e513c26ed96251a", size = 16466511, upload-time = "2025-11-11T22:04:18.614Z" }, + { url = "https://files.pythonhosted.org/packages/db/0e/5ce8a615c7f9ad7cf8ed4ac6e182fe0ef46fd06fef89757e49ba84a6ba9e/tensorstore-0.1.79-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5e152d334bf34fbabdfe8e5bc35b87d1f9947065924ff83c29e659308b36e948", size = 14499810, upload-time = "2025-11-11T22:04:21.725Z" }, + { url = "https://files.pythonhosted.org/packages/c0/29/2cb9552138fe84ab29421489121350e4af0502eafff31ccd9017490be0d8/tensorstore-0.1.79-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c4230b8fd29795e88e441f749d881973eca8dadf33c5262b367839fb8891f79b", size = 18937510, upload-time = "2025-11-11T22:04:24.221Z" }, + { url = "https://files.pythonhosted.org/packages/42/70/d2a672a93faebdd176cd8541405cd5614b14d3d8dc812fbeaf2cf46d390a/tensorstore-0.1.79-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:83072ee0e551d6dca582e154b64c8b8066d276ec0759784e3149c28212a61f18", size = 20910324, upload-time = "2025-11-11T22:04:26.769Z" }, + { url = "https://files.pythonhosted.org/packages/91/d5/7958cbfb614c4ffa5070ae9575874d46937067c0d81a7739e67fb1d62de5/tensorstore-0.1.79-cp311-cp311-win_amd64.whl", hash = "sha256:6c98c6b74c00e00eba7969292144e471d5c45d67088f0dc08e3a4c60a15ee191", size = 13206191, upload-time = "2025-11-11T22:04:29.254Z" }, + { url = "https://files.pythonhosted.org/packages/f1/a2/a77be16b4a882ace36da0748305795f35306bdad568472f208bd89b96b9d/tensorstore-0.1.79-cp312-cp312-macosx_10_14_x86_64.whl", hash = "sha256:71aa9b45436d888c37b965f7b71195916d15438119b7dccb66a3b0776bfba367", size = 16485740, upload-time = "2025-11-11T22:04:33.478Z" }, + { url = "https://files.pythonhosted.org/packages/7a/e4/7fe268ec41aa70b71a1c56b1ec83346fbcbf12f4bfbefc79d14fb9c03408/tensorstore-0.1.79-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:108c0e867aa2c87d4982cc6325a2de0c4f5bd63c2bea18adb193a370c40594ce", size = 14508736, upload-time = "2025-11-11T22:04:38.613Z" }, + { url = "https://files.pythonhosted.org/packages/5a/f1/b1248dae02598ce534834413e841f915a32ab185c36ecd05e4c67bdc8d19/tensorstore-0.1.79-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:debd435042c00be68ba1fb3cf59325a7babb3f4a3cf4744c87dde346802cbbb4", size = 18947817, upload-time = "2025-11-11T22:04:40.768Z" }, + { url = "https://files.pythonhosted.org/packages/87/4a/60e234147570e21bbab4ac70ab79dd794a5ef9a4945d36c34c1914a73205/tensorstore-0.1.79-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:608f7178ec6e4e4a3c26545b0a44f44bf83438d04bf2d960cd0e7699eaa99ef6", size = 20929832, upload-time = "2025-11-11T22:04:43.613Z" }, + { url = "https://files.pythonhosted.org/packages/f8/48/0531868bce12a2f520002e810d4200ec6f01ba33a2f27b6bd7289fbc197b/tensorstore-0.1.79-cp312-cp312-win_amd64.whl", hash = "sha256:a071c6c255b7e412957a6aa563bc4250242c7894edad06ae6358e3d30b7d88ce", size = 13211970, upload-time = "2025-11-11T22:04:46.179Z" }, + { url = "https://files.pythonhosted.org/packages/fa/0b/54a44e55836d8e8f576343134c0e3db71c6c837d39a0ac44699aba5b01df/tensorstore-0.1.79-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:1e8e2d098829919caac6a62cf568902e34789069ceddb28497d6e36ebcb95c0b", size = 16485855, upload-time = "2025-11-11T22:04:48.734Z" }, + { url = "https://files.pythonhosted.org/packages/04/59/cadb9a45896d480882476df4759cda1659c70669aff87a4d5a4a07ded084/tensorstore-0.1.79-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:29cf4336153af136ac8ac528e2ed46df19367edae7e14e37bca1a8b7c4848ef2", size = 14508277, upload-time = "2025-11-11T22:04:50.775Z" }, + { url = "https://files.pythonhosted.org/packages/e6/cb/3647bdd03c7692882ebc10c19df9ede49f290c216b2906f785edbdb53ef1/tensorstore-0.1.79-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:94d8fc9df1721b0287046aca7209fd5040889cad4202e7b73a1fdb77cd9b71c6", size = 18949307, upload-time = "2025-11-11T22:04:53.145Z" }, + { url = "https://files.pythonhosted.org/packages/20/a0/f91ac492cf2ee9f7541aefaaed4ad1258e73e33f3cd3e06cdce5859431db/tensorstore-0.1.79-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9f2dc3342e4686af98f6e259dc9fb377f1bf657b649c247bf6647bbe4f98090", size = 20930427, upload-time = "2025-11-11T22:04:55.353Z" }, + { url = "https://files.pythonhosted.org/packages/69/a6/752fd11747eb9fead715b02d389da7fb180a56172b885de0b48b20237d1e/tensorstore-0.1.79-cp313-cp313-win_amd64.whl", hash = "sha256:0fd6165f3df49abc7c9de029b2b72d74bebd2ff2481a5ced003607eb61c56d3e", size = 13212196, upload-time = "2025-11-11T22:05:00.451Z" }, + { url = "https://files.pythonhosted.org/packages/46/57/1649019893accb3f195780fec55b8bf6793343faf140040bc73f1c28d6a5/tensorstore-0.1.79-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:6f8f5a940eab434a951c2dadcc7c0516c7bef6d8b7a7144054f7a0c56152b5f5", size = 16488849, upload-time = "2025-11-11T22:05:03.014Z" }, + { url = "https://files.pythonhosted.org/packages/bf/23/2668cb120e855a6a7a8a5eb0eba30e2e7020da932a4d3fa13c6ee3c41f9f/tensorstore-0.1.79-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:97756d2cba3c5ce21e15602c2af5a02521cc0ecda7f9fb6d18da2f3bd51827f4", size = 14511448, upload-time = "2025-11-11T22:05:05.58Z" }, + { url = "https://files.pythonhosted.org/packages/6a/0e/c38f079f3933cc284aab53d52976f6cb4f1ad43bb6a704ac27e0b710f176/tensorstore-0.1.79-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:847982652273fb7b2d694b789205747aaf3e50ae64738c5cb7b5eb03d86a9947", size = 18949282, upload-time = "2025-11-11T22:05:07.562Z" }, + { url = "https://files.pythonhosted.org/packages/6f/99/03479deea5bfd27a0d8a8c75d5f1d85417a7bbc9c6c7a90fb85b4a4e347a/tensorstore-0.1.79-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7af9422269c2bfcdecf9dd55309060665ab9c2d7f6c892377ed32c032400feea", size = 20931601, upload-time = "2025-11-11T22:05:10.098Z" }, + { url = "https://files.pythonhosted.org/packages/26/36/2617edf6c6d6fc73b3ff96d9d0b97332adf0d0c56fa2014a226bf4f7dfa6/tensorstore-0.1.79-cp314-cp314-win_amd64.whl", hash = "sha256:bbd8c1ab7d2e3c03ded3d40bb373ee9a67668e33a564484927865ce43b210386", size = 13599766, upload-time = "2025-11-11T22:05:12.265Z" }, ] [[package]] @@ -5643,7 +5681,7 @@ wheels = [ [[package]] name = "torch" -version = "2.9.0" +version = "2.9.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "filelock" }, @@ -5672,34 +5710,34 @@ dependencies = [ { name = "typing-extensions" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/bb/86/245c240d2138c17ed572c943c289056c2721abab70810d772c6bf5495b28/torch-2.9.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:030bbfe367379ae6a4ae4042b6c44da25383343b8b3c68abaa9c7231efbaf2dd", size = 104213554, upload-time = "2025-10-15T15:45:59.798Z" }, - { url = "https://files.pythonhosted.org/packages/58/1d/fd1e88ae0948825efcab7dd66d12bec23f05d4d38ed81573c8d453c14c06/torch-2.9.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:51cb63902182a78e90886e8068befd8ea102af4b00e420263591a3d70c7d3c6c", size = 899795167, upload-time = "2025-10-15T15:47:12.695Z" }, - { url = "https://files.pythonhosted.org/packages/63/5a/496197b45c14982bef4e079b24c61dc108e3ab0d0cc9718dba9f54f45a46/torch-2.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:3f6aad4d2f0ee2248bac25339d74858ff846c3969b27d14ac235821f055af83d", size = 109310314, upload-time = "2025-10-15T15:46:16.633Z" }, - { url = "https://files.pythonhosted.org/packages/58/b0/2b4e647b0fc706e88eb6c253d05511865578f5f67b55fad639bf3272a4a1/torch-2.9.0-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:413e1654c9203733138858780e184d9fc59442f0b3b209e16f39354eb893db9b", size = 74452019, upload-time = "2025-10-15T15:46:04.296Z" }, - { url = "https://files.pythonhosted.org/packages/58/fe/334225e6330e672b36aef23d77451fa906ea12881570c08638a91331a212/torch-2.9.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:c596708b5105d0b199215acf0c9be7c1db5f1680d88eddadf4b75a299259a677", size = 104230578, upload-time = "2025-10-15T15:46:08.182Z" }, - { url = "https://files.pythonhosted.org/packages/05/cc/49566caaa218872ec9a2912456f470ff92649894a4bc2e5274aa9ef87c4a/torch-2.9.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:51de31219c97c51cf4bf2be94d622e3deb5dcc526c6dc00e97c17eaec0fc1d67", size = 899815990, upload-time = "2025-10-15T15:48:03.336Z" }, - { url = "https://files.pythonhosted.org/packages/74/25/e9ab21d5925b642d008f139d4a3c9664fc9ee1faafca22913c080cc4c0a5/torch-2.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:dd515c70059afd95f48b8192733764c08ca37a1d19803af6401b5ecad7c8676e", size = 109313698, upload-time = "2025-10-15T15:46:12.425Z" }, - { url = "https://files.pythonhosted.org/packages/b3/b7/205ef3e94de636feffd64b28bb59a0dfac0771221201b9871acf9236f5ca/torch-2.9.0-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:614a185e4986326d526a91210c8fc1397e76e8cfafa78baf6296a790e53a9eec", size = 74463678, upload-time = "2025-10-15T15:46:29.779Z" }, - { url = "https://files.pythonhosted.org/packages/d1/d3/3985739f3b8e88675127bf70f82b3a48ae083e39cda56305dbd90398fec0/torch-2.9.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:e5f7af1dc4c0a7c4a260c2534f41ddaf209714f7c89145e644c44712fbd6b642", size = 104107898, upload-time = "2025-10-15T15:46:20.883Z" }, - { url = "https://files.pythonhosted.org/packages/a5/4b/f4bb2e6c25d0272f798cd6d7a04ed315da76cec68c602d87040c7847287f/torch-2.9.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:01cff95ecd9a212ea2f141db28acccdceb6a4c54f64e6c51091146f5e2a772c6", size = 899738273, upload-time = "2025-10-15T15:50:04.188Z" }, - { url = "https://files.pythonhosted.org/packages/66/11/c1c5ba6691cda6279087c35bd626536e4fd29521fe740abf5008377a9a02/torch-2.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:4582b162f541651f0cb184d3e291c05c2f556c7117c64a9873e2ee158d40062b", size = 109280887, upload-time = "2025-10-15T15:46:26.228Z" }, - { url = "https://files.pythonhosted.org/packages/dd/5f/b85bd8c05312d71de9402bf5868d217c38827cfd09d8f8514e5be128a52b/torch-2.9.0-cp312-none-macosx_11_0_arm64.whl", hash = "sha256:33f58e9a102a91259af289d50525c30323b5c9ae1d31322b6447c0814da68695", size = 74478983, upload-time = "2025-10-15T15:46:39.406Z" }, - { url = "https://files.pythonhosted.org/packages/c2/1c/90eb13833cdf4969ea9707586d7b57095c3b6e2b223a7256bf111689bcb8/torch-2.9.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:c30a17fc83eeab346913e237c64b15b5ba6407fff812f6c541e322e19bc9ea0e", size = 104111330, upload-time = "2025-10-15T15:46:35.238Z" }, - { url = "https://files.pythonhosted.org/packages/0e/21/2254c54b8d523592c25ef4434769aa23e29b1e6bf5f4c0ad9e27bf442927/torch-2.9.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:8f25033b8667b57857dfd01458fbf2a9e6a6df1f8def23aef0dc46292f6aa642", size = 899750243, upload-time = "2025-10-15T15:48:57.459Z" }, - { url = "https://files.pythonhosted.org/packages/b7/a5/5cb94fa4fd1e78223455c23c200f30f6dc10c6d4a2bcc8f6e7f2a2588370/torch-2.9.0-cp313-cp313-win_amd64.whl", hash = "sha256:d037f1b4ffd25013be4a7bf3651a0a910c68554956c7b2c92ebe87c76475dece", size = 109284513, upload-time = "2025-10-15T15:46:45.061Z" }, - { url = "https://files.pythonhosted.org/packages/66/e8/fc414d8656250ee46120b44836ffbb3266343db424b3e18ca79ebbf69d4f/torch-2.9.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e4e5b5cba837a2a8d1a497ba9a58dae46fa392593eaa13b871c42f71847503a5", size = 74830362, upload-time = "2025-10-15T15:46:48.983Z" }, - { url = "https://files.pythonhosted.org/packages/ed/5f/9474c98fc5ae0cd04b9466035428cd360e6611a86b8352a0fc2fa504acdc/torch-2.9.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:64693568f5dc4dbd5f880a478b1cea0201cc6b510d91d1bc54fea86ac5d1a637", size = 104144940, upload-time = "2025-10-15T15:47:29.076Z" }, - { url = "https://files.pythonhosted.org/packages/2d/5a/8e0c1cf57830172c109d4bd6be2708cabeaf550983eee7029291322447a0/torch-2.9.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:f8ed31ddd7d10bfb3fbe0b9fe01b1243577f13d75e6f4a0839a283915ce3791e", size = 899744054, upload-time = "2025-10-15T15:48:29.864Z" }, - { url = "https://files.pythonhosted.org/packages/6d/28/82c28b30fcb4b7c9cdd995763d18bbb830d6521356712faebbad92ffa61d/torch-2.9.0-cp313-cp313t-win_amd64.whl", hash = "sha256:eff527d4e4846e6f70d2afd8058b73825761203d66576a7e04ea2ecfebcb4ab8", size = 109517546, upload-time = "2025-10-15T15:47:33.395Z" }, - { url = "https://files.pythonhosted.org/packages/ff/c3/a91f96ec74347fa5fd24453fa514bc61c61ecc79196fa760b012a1873d96/torch-2.9.0-cp313-none-macosx_11_0_arm64.whl", hash = "sha256:f8877779cf56d1ce431a7636703bdb13307f5960bb1af49716d8b179225e0e6a", size = 74480732, upload-time = "2025-10-15T15:47:38.002Z" }, - { url = "https://files.pythonhosted.org/packages/5c/73/9f70af34b334a7e0ef496ceec96b7ec767bd778ea35385ce6f77557534d1/torch-2.9.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:7e614fae699838038d888729f82b687c03413c5989ce2a9481f9a7e7a396e0bb", size = 74433037, upload-time = "2025-10-15T15:47:41.894Z" }, - { url = "https://files.pythonhosted.org/packages/b7/84/37cf88625901934c97109e583ecc21777d21c6f54cda97a7e5bbad1ee2f2/torch-2.9.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:dfb5b8cd310ba3436c7e14e8b7833ef658cf3045e50d2bdaed23c8fc517065eb", size = 104116482, upload-time = "2025-10-15T15:47:46.266Z" }, - { url = "https://files.pythonhosted.org/packages/56/8e/ca8b17866943a8d4f4664d402ea84210aa274588b4c5d89918f5caa24eec/torch-2.9.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:b3d29524993a478e46f5d598b249cd824b7ed98d7fba538bd9c4cde6c803948f", size = 899746916, upload-time = "2025-10-15T15:50:40.294Z" }, - { url = "https://files.pythonhosted.org/packages/43/65/3b17c0fbbdab6501c5b320a52a648628d0d44e7379f64e27d9eef701b6bf/torch-2.9.0-cp314-cp314-win_amd64.whl", hash = "sha256:71c7578984f5ec0eb645eb4816ac8435fcf3e3e2ae1901bcd2f519a9cafb5125", size = 109275151, upload-time = "2025-10-15T15:49:20.715Z" }, - { url = "https://files.pythonhosted.org/packages/83/36/74f8c051f785500396e42f93542422422dfd874a174f21f8d955d36e5d64/torch-2.9.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:71d9309aee457bbe0b164bce2111cd911c4ed4e847e65d5077dbbcd3aba6befc", size = 74823353, upload-time = "2025-10-15T15:49:16.59Z" }, - { url = "https://files.pythonhosted.org/packages/62/51/dc3b4e2f9ba98ae27238f0153ca098bf9340b2dafcc67fde645d496dfc2a/torch-2.9.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:c08fb654d783899e204a32cca758a7ce8a45b2d78eeb89517cc937088316f78e", size = 104140340, upload-time = "2025-10-15T15:50:19.67Z" }, - { url = "https://files.pythonhosted.org/packages/c0/8d/b00657f8141ac16af7bb6cda2e67de18499a3263b78d516b9a93fcbc98e3/torch-2.9.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:ec8feb0099b2daa5728fbc7abb0b05730fd97e0f359ff8bda09865aaa7bd7d4b", size = 899731750, upload-time = "2025-10-15T15:49:36.673Z" }, - { url = "https://files.pythonhosted.org/packages/fc/29/bd361e0cbb2c79ce6450f42643aaf6919956f89923a50571b0ebfe92d142/torch-2.9.0-cp314-cp314t-win_amd64.whl", hash = "sha256:695ba920f234ad4170c9c50e28d56c848432f8f530e6bc7f88fcb15ddf338e75", size = 109503850, upload-time = "2025-10-15T15:50:24.118Z" }, + { url = "https://files.pythonhosted.org/packages/5f/56/9577683b23072075ed2e40d725c52c2019d71a972fab8e083763da8e707e/torch-2.9.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:1cc208435f6c379f9b8fdfd5ceb5be1e3b72a6bdf1cb46c0d2812aa73472db9e", size = 104207681, upload-time = "2025-11-12T15:19:56.48Z" }, + { url = "https://files.pythonhosted.org/packages/38/45/be5a74f221df8f4b609b78ff79dc789b0cc9017624544ac4dd1c03973150/torch-2.9.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:9fd35c68b3679378c11f5eb73220fdcb4e6f4592295277fbb657d31fd053237c", size = 899794036, upload-time = "2025-11-12T15:21:01.886Z" }, + { url = "https://files.pythonhosted.org/packages/67/95/a581e8a382596b69385a44bab2733f1273d45c842f5d4a504c0edc3133b6/torch-2.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:2af70e3be4a13becba4655d6cc07dcfec7ae844db6ac38d6c1dafeb245d17d65", size = 110969861, upload-time = "2025-11-12T15:21:30.145Z" }, + { url = "https://files.pythonhosted.org/packages/ad/51/1756dc128d2bf6ea4e0a915cb89ea5e730315ff33d60c1ff56fd626ba3eb/torch-2.9.1-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:a83b0e84cc375e3318a808d032510dde99d696a85fe9473fc8575612b63ae951", size = 74452222, upload-time = "2025-11-12T15:20:46.223Z" }, + { url = "https://files.pythonhosted.org/packages/15/db/c064112ac0089af3d2f7a2b5bfbabf4aa407a78b74f87889e524b91c5402/torch-2.9.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:62b3fd888277946918cba4478cf849303da5359f0fb4e3bfb86b0533ba2eaf8d", size = 104220430, upload-time = "2025-11-12T15:20:31.705Z" }, + { url = "https://files.pythonhosted.org/packages/56/be/76eaa36c9cd032d3b01b001e2c5a05943df75f26211f68fae79e62f87734/torch-2.9.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d033ff0ac3f5400df862a51bdde9bad83561f3739ea0046e68f5401ebfa67c1b", size = 899821446, upload-time = "2025-11-12T15:20:15.544Z" }, + { url = "https://files.pythonhosted.org/packages/47/cc/7a2949e38dfe3244c4df21f0e1c27bce8aedd6c604a587dd44fc21017cb4/torch-2.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:0d06b30a9207b7c3516a9e0102114024755a07045f0c1d2f2a56b1819ac06bcb", size = 110973074, upload-time = "2025-11-12T15:21:39.958Z" }, + { url = "https://files.pythonhosted.org/packages/1e/ce/7d251155a783fb2c1bb6837b2b7023c622a2070a0a72726ca1df47e7ea34/torch-2.9.1-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:52347912d868653e1528b47cafaf79b285b98be3f4f35d5955389b1b95224475", size = 74463887, upload-time = "2025-11-12T15:20:36.611Z" }, + { url = "https://files.pythonhosted.org/packages/0f/27/07c645c7673e73e53ded71705045d6cb5bae94c4b021b03aa8d03eee90ab/torch-2.9.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:da5f6f4d7f4940a173e5572791af238cb0b9e21b1aab592bd8b26da4c99f1cd6", size = 104126592, upload-time = "2025-11-12T15:20:41.62Z" }, + { url = "https://files.pythonhosted.org/packages/19/17/e377a460603132b00760511299fceba4102bd95db1a0ee788da21298ccff/torch-2.9.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:27331cd902fb4322252657f3902adf1c4f6acad9dcad81d8df3ae14c7c4f07c4", size = 899742281, upload-time = "2025-11-12T15:22:17.602Z" }, + { url = "https://files.pythonhosted.org/packages/b1/1a/64f5769025db846a82567fa5b7d21dba4558a7234ee631712ee4771c436c/torch-2.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:81a285002d7b8cfd3fdf1b98aa8df138d41f1a8334fd9ea37511517cedf43083", size = 110940568, upload-time = "2025-11-12T15:21:18.689Z" }, + { url = "https://files.pythonhosted.org/packages/6e/ab/07739fd776618e5882661d04c43f5b5586323e2f6a2d7d84aac20d8f20bd/torch-2.9.1-cp312-none-macosx_11_0_arm64.whl", hash = "sha256:c0d25d1d8e531b8343bea0ed811d5d528958f1dcbd37e7245bc686273177ad7e", size = 74479191, upload-time = "2025-11-12T15:21:25.816Z" }, + { url = "https://files.pythonhosted.org/packages/20/60/8fc5e828d050bddfab469b3fe78e5ab9a7e53dda9c3bdc6a43d17ce99e63/torch-2.9.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:c29455d2b910b98738131990394da3e50eea8291dfeb4b12de71ecf1fdeb21cb", size = 104135743, upload-time = "2025-11-12T15:21:34.936Z" }, + { url = "https://files.pythonhosted.org/packages/f2/b7/6d3f80e6918213babddb2a37b46dbb14c15b14c5f473e347869a51f40e1f/torch-2.9.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:524de44cd13931208ba2c4bde9ec7741fd4ae6bfd06409a604fc32f6520c2bc9", size = 899749493, upload-time = "2025-11-12T15:24:36.356Z" }, + { url = "https://files.pythonhosted.org/packages/a6/47/c7843d69d6de8938c1cbb1eba426b1d48ddf375f101473d3e31a5fc52b74/torch-2.9.1-cp313-cp313-win_amd64.whl", hash = "sha256:545844cc16b3f91e08ce3b40e9c2d77012dd33a48d505aed34b7740ed627a1b2", size = 110944162, upload-time = "2025-11-12T15:21:53.151Z" }, + { url = "https://files.pythonhosted.org/packages/28/0e/2a37247957e72c12151b33a01e4df651d9d155dd74d8cfcbfad15a79b44a/torch-2.9.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5be4bf7496f1e3ffb1dd44b672adb1ac3f081f204c5ca81eba6442f5f634df8e", size = 74830751, upload-time = "2025-11-12T15:21:43.792Z" }, + { url = "https://files.pythonhosted.org/packages/4b/f7/7a18745edcd7b9ca2381aa03353647bca8aace91683c4975f19ac233809d/torch-2.9.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:30a3e170a84894f3652434b56d59a64a2c11366b0ed5776fab33c2439396bf9a", size = 104142929, upload-time = "2025-11-12T15:21:48.319Z" }, + { url = "https://files.pythonhosted.org/packages/f4/dd/f1c0d879f2863ef209e18823a988dc7a1bf40470750e3ebe927efdb9407f/torch-2.9.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:8301a7b431e51764629208d0edaa4f9e4c33e6df0f2f90b90e261d623df6a4e2", size = 899748978, upload-time = "2025-11-12T15:23:04.568Z" }, + { url = "https://files.pythonhosted.org/packages/1f/9f/6986b83a53b4d043e36f3f898b798ab51f7f20fdf1a9b01a2720f445043d/torch-2.9.1-cp313-cp313t-win_amd64.whl", hash = "sha256:2e1c42c0ae92bf803a4b2409fdfed85e30f9027a66887f5e7dcdbc014c7531db", size = 111176995, upload-time = "2025-11-12T15:22:01.618Z" }, + { url = "https://files.pythonhosted.org/packages/40/60/71c698b466dd01e65d0e9514b5405faae200c52a76901baf6906856f17e4/torch-2.9.1-cp313-none-macosx_11_0_arm64.whl", hash = "sha256:2c14b3da5df416cf9cb5efab83aa3056f5b8cd8620b8fde81b4987ecab730587", size = 74480347, upload-time = "2025-11-12T15:21:57.648Z" }, + { url = "https://files.pythonhosted.org/packages/48/50/c4b5112546d0d13cc9eaa1c732b823d676a9f49ae8b6f97772f795874a03/torch-2.9.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1edee27a7c9897f4e0b7c14cfc2f3008c571921134522d5b9b5ec4ebbc69041a", size = 74433245, upload-time = "2025-11-12T15:22:39.027Z" }, + { url = "https://files.pythonhosted.org/packages/81/c9/2628f408f0518b3bae49c95f5af3728b6ab498c8624ab1e03a43dd53d650/torch-2.9.1-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:19d144d6b3e29921f1fc70503e9f2fc572cde6a5115c0c0de2f7ca8b1483e8b6", size = 104134804, upload-time = "2025-11-12T15:22:35.222Z" }, + { url = "https://files.pythonhosted.org/packages/28/fc/5bc91d6d831ae41bf6e9e6da6468f25330522e92347c9156eb3f1cb95956/torch-2.9.1-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:c432d04376f6d9767a9852ea0def7b47a7bbc8e7af3b16ac9cf9ce02b12851c9", size = 899747132, upload-time = "2025-11-12T15:23:36.068Z" }, + { url = "https://files.pythonhosted.org/packages/63/5d/e8d4e009e52b6b2cf1684bde2a6be157b96fb873732542fb2a9a99e85a83/torch-2.9.1-cp314-cp314-win_amd64.whl", hash = "sha256:d187566a2cdc726fc80138c3cdb260970fab1c27e99f85452721f7759bbd554d", size = 110934845, upload-time = "2025-11-12T15:22:48.367Z" }, + { url = "https://files.pythonhosted.org/packages/bd/b2/2d15a52516b2ea3f414643b8de68fa4cb220d3877ac8b1028c83dc8ca1c4/torch-2.9.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:cb10896a1f7fedaddbccc2017ce6ca9ecaaf990f0973bdfcf405439750118d2c", size = 74823558, upload-time = "2025-11-12T15:22:43.392Z" }, + { url = "https://files.pythonhosted.org/packages/86/5c/5b2e5d84f5b9850cd1e71af07524d8cbb74cba19379800f1f9f7c997fc70/torch-2.9.1-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:0a2bd769944991c74acf0c4ef23603b9c777fdf7637f115605a4b2d8023110c7", size = 104145788, upload-time = "2025-11-12T15:23:52.109Z" }, + { url = "https://files.pythonhosted.org/packages/a9/8c/3da60787bcf70add986c4ad485993026ac0ca74f2fc21410bc4eb1bb7695/torch-2.9.1-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:07c8a9660bc9414c39cac530ac83b1fb1b679d7155824144a40a54f4a47bfa73", size = 899735500, upload-time = "2025-11-12T15:24:08.788Z" }, + { url = "https://files.pythonhosted.org/packages/db/2b/f7818f6ec88758dfd21da46b6cd46af9d1b3433e53ddbb19ad1e0da17f9b/torch-2.9.1-cp314-cp314t-win_amd64.whl", hash = "sha256:c88d3299ddeb2b35dcc31753305612db485ab6f1823e37fb29451c8b2732b87e", size = 111163659, upload-time = "2025-11-12T15:23:20.009Z" }, ] [[package]] @@ -5718,7 +5756,7 @@ wheels = [ [[package]] name = "torchvision" -version = "0.24.0" +version = "0.24.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "numpy" }, @@ -5726,34 +5764,34 @@ dependencies = [ { name = "torch", marker = "sys_platform == 'never'" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/63/5b/1404eeab00819df71a30e916c2081654366741f7838fcc4fff86b7bd9e7e/torchvision-0.24.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5e8d5e667deff87bd66d26df6d225f46224bb0782d4f3f8f5d2f3068b5fd4492", size = 1891723, upload-time = "2025-10-15T15:51:08.5Z" }, - { url = "https://files.pythonhosted.org/packages/88/e3/1b003ecd52bd721f8304aeb66691edfbc2002747ec83d36188ad6abab506/torchvision-0.24.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:a110a51c75e89807a8382b0d8034f5e180fb9319570be3389ffd3d4ac4fd57a9", size = 2418988, upload-time = "2025-10-15T15:51:25.195Z" }, - { url = "https://files.pythonhosted.org/packages/56/2e/3c19a35e62da0f606baf8f6e2ceeab1eb66aaa2f84c6528538b06b416d54/torchvision-0.24.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:81d5b12a6df1bb2cc8bdbad837b637d6ea446f2866e6d94f1b5d478856331be3", size = 8046769, upload-time = "2025-10-15T15:51:15.221Z" }, - { url = "https://files.pythonhosted.org/packages/e0/1d/e7ab614a1ace820a2366eab1532679fbe81bd9501ffd6a1b7be14936366d/torchvision-0.24.0-cp310-cp310-win_amd64.whl", hash = "sha256:0839dbb305d34671f5a64f558782095134b04bbeff8b90f11eb80515d7d50092", size = 3686529, upload-time = "2025-10-15T15:51:20.982Z" }, - { url = "https://files.pythonhosted.org/packages/a3/17/54ed2ec6944ea972b461a86424c8c7f98835982c90cbc45bf59bd962863a/torchvision-0.24.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f771cf918351ad509a28488be475f3e9cc71a750d6b1467842bfb64863a5e986", size = 1891719, upload-time = "2025-10-15T15:51:10.384Z" }, - { url = "https://files.pythonhosted.org/packages/f8/07/0cd6776eee784742ad3cb2bfd3295383d84cb2f9e87386119333d1587f0f/torchvision-0.24.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:bbd63bf4ebff84c48c50123eba90526cc9f794fe45bc9f5dd07cec19e8c62bce", size = 2420513, upload-time = "2025-10-15T15:51:18.087Z" }, - { url = "https://files.pythonhosted.org/packages/1a/f4/6026c08011ddcefcbc14161c5aa9dce55c35c6b045e04ef0952e88bf4594/torchvision-0.24.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:78fe414b3bb6dbf7e6f6da6f733ba96881f6b29a9b997228de7c5f603e5ed940", size = 8048018, upload-time = "2025-10-15T15:51:13.579Z" }, - { url = "https://files.pythonhosted.org/packages/2f/b4/362b4e67ed87cee0fb4f8f0363a852eaeef527968bf62c07ed56f764d729/torchvision-0.24.0-cp311-cp311-win_amd64.whl", hash = "sha256:629584b94e52f32a6278f2a35d85eeaae95fcc38730fcb765064f26c3c96df5d", size = 4027686, upload-time = "2025-10-15T15:51:19.189Z" }, - { url = "https://files.pythonhosted.org/packages/47/ef/81e4e69e02e2c4650b30e8c11c8974f946682a30e0ab7e9803a831beff76/torchvision-0.24.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c61d40bcd2e2451e932902a702ad495ba1ec6f279e90b1e15cef2bb55dc911e2", size = 1891726, upload-time = "2025-10-15T15:51:16.977Z" }, - { url = "https://files.pythonhosted.org/packages/00/7b/e3809b3302caea9a12c13f3adebe4fef127188438e719fd6c8dc93db1da6/torchvision-0.24.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:b0531d1483fc322d7da0d83be52f0df860a75114ab87dbeeb9de765feaeda843", size = 2419495, upload-time = "2025-10-15T15:51:11.885Z" }, - { url = "https://files.pythonhosted.org/packages/7e/e6/7324ead6793075a8c75c56abeed1236d1750de16a5613cfe2ddad164a92a/torchvision-0.24.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:26b9dd9c083f8e5f7ac827de6d5b88c615d9c582dc87666770fbdf16887e4c25", size = 8050480, upload-time = "2025-10-15T15:51:24.012Z" }, - { url = "https://files.pythonhosted.org/packages/3e/ad/3c56fcd2a0d6e8afa80e115b5ade4302232ec99655220a51d05709819523/torchvision-0.24.0-cp312-cp312-win_amd64.whl", hash = "sha256:060b7c50ed4b3fb0316b08e2e31bfd874ec2f63ef5ae02f81e54341ca4e88703", size = 4292225, upload-time = "2025-10-15T15:51:27.699Z" }, - { url = "https://files.pythonhosted.org/packages/4f/b5/b2008e4b77a8d6aada828dd0f6a438d8f94befa23fdd2d62fa0ac6e60113/torchvision-0.24.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:84d79cfc6457310107ce4d712de7a3d388b24484bc9aeded4a76d8f8e3a2813d", size = 1891722, upload-time = "2025-10-15T15:51:28.854Z" }, - { url = "https://files.pythonhosted.org/packages/8f/02/e2f6b0ff93ca4db5751ac9c5be43f13d5e53d9e9412324f464dca1775027/torchvision-0.24.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:fec12a269cf80f6b0b71471c8d498cd3bdd9d8e892c425bf39fecb604852c3b0", size = 2371478, upload-time = "2025-10-15T15:51:37.842Z" }, - { url = "https://files.pythonhosted.org/packages/77/85/42e5fc4f716ec7b73cf1f32eeb5c77961be4d4054b26cd6a5ff97f20c966/torchvision-0.24.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:7323a9be5e3da695605753f501cdc87824888c5655d27735cdeaa9986b45884c", size = 8050200, upload-time = "2025-10-15T15:51:46.276Z" }, - { url = "https://files.pythonhosted.org/packages/93/c2/48cb0b6b26276d2120b1e0dbc877579a748eae02b4091a7522ce54f6d5e1/torchvision-0.24.0-cp313-cp313-win_amd64.whl", hash = "sha256:08cad8b204196e945f0b2d73adee952d433db1c03645851d52b22a45f1015b13", size = 4309939, upload-time = "2025-10-15T15:51:39.002Z" }, - { url = "https://files.pythonhosted.org/packages/7d/d7/3dd10830b047eeb46ae6b465474258d7b4fbb7d8872dca69bd42449f5c82/torchvision-0.24.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:6ab956a6e588623353e0f20d4b03eb1656cb4a3c75ca4dd8b4e32e01bc43271a", size = 2028355, upload-time = "2025-10-15T15:51:22.384Z" }, - { url = "https://files.pythonhosted.org/packages/f7/cf/2d7e43409089ce7070f5336161f9216d58653ee1cb26bcb5d6c84cc2de36/torchvision-0.24.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:b1b3db80609c32a088554e8e94b4fc31f1033fe5bb4ac0673ec49c3eb03fb4da", size = 2374466, upload-time = "2025-10-15T15:51:35.382Z" }, - { url = "https://files.pythonhosted.org/packages/e9/30/8f7c328fd7e0a9665da4b6b56b1c627665c18470bfe62f3729ad3eda9aec/torchvision-0.24.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:e6635f100d455c80b43f297df4b8585a76c6a2e114802f6567ddd28d7b5479b0", size = 8217068, upload-time = "2025-10-15T15:51:36.623Z" }, - { url = "https://files.pythonhosted.org/packages/55/a2/b6f9e40e2904574c80b3bb872c66af20bbd642053e7c8e1b9e99ab396535/torchvision-0.24.0-cp313-cp313t-win_amd64.whl", hash = "sha256:4ce158bbdc3a9086034bced0b5212888bd5b251fee6d08a9eff151d30b4b228a", size = 4273912, upload-time = "2025-10-15T15:51:33.866Z" }, - { url = "https://files.pythonhosted.org/packages/1b/24/790a39645cc8c71bf442d54a76da9bda5caeb2a44c5f7e02498649cd99d4/torchvision-0.24.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:4bdfc85a5ed706421555f32cdc5e3ddb6d40bf65ef03a274ce3c176393e2904b", size = 2028335, upload-time = "2025-10-15T15:51:26.252Z" }, - { url = "https://files.pythonhosted.org/packages/b0/d7/69479a066ea773653e88eda99031e38681e9094046f87cb957af5036db0e/torchvision-0.24.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:73576a9c4a593223fbae85a64e8bbd77049abd1101893ecf3c5e981284fd58b4", size = 2371609, upload-time = "2025-10-15T15:51:29.859Z" }, - { url = "https://files.pythonhosted.org/packages/46/64/3c7fdb3771ec992b9445a1f7a969466b23ce2cdb14e09303b3db351a0655/torchvision-0.24.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:dd565b1b06666ff399d0801d4d1824fa570c0167a179ca700a5be232527b3c62", size = 8214918, upload-time = "2025-10-15T15:51:41.465Z" }, - { url = "https://files.pythonhosted.org/packages/58/51/abc416bc34d574ad479af738e413d9ebf93027ee92d0f4ae38f966b818f7/torchvision-0.24.0-cp314-cp314-win_amd64.whl", hash = "sha256:eb45d12ac48d757738788fd3fb8e88e647d6b2ab2424134ca87556efc72d81b5", size = 4257776, upload-time = "2025-10-15T15:51:42.642Z" }, - { url = "https://files.pythonhosted.org/packages/08/f7/261d1353c611820541ecd43046b89da3f1ae998dc786e4288b890a009883/torchvision-0.24.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:68120e7e03c31900e499a10bb7fdd63cfd67f0054c9fa108e7e27f9cd372f315", size = 2028359, upload-time = "2025-10-15T15:51:32.119Z" }, - { url = "https://files.pythonhosted.org/packages/a2/fd/615d8a86db1578345de7fa1edaf476fbcf4f057bf7e4fd898306b620c487/torchvision-0.24.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:64e54494043eecf9f57a9881c6fdea49c62282782e737c002ae8b1639e6ea80e", size = 2374469, upload-time = "2025-10-15T15:51:40.19Z" }, - { url = "https://files.pythonhosted.org/packages/04/98/bac11e8fdbf00d6c398246ff2781370aa72c99f2ac685c01ce79354c9a32/torchvision-0.24.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:75ef9546323b321a451239d886f0cb528f7e98bb294da47a3200effd4e572064", size = 8217060, upload-time = "2025-10-15T15:51:45.033Z" }, - { url = "https://files.pythonhosted.org/packages/47/6f/9fba8abc468c904570699eceeb51588f9622172b8fffa4ab11bcf15598c2/torchvision-0.24.0-cp314-cp314t-win_amd64.whl", hash = "sha256:2efb617667950814fc8bb9437e5893861b3616e214285be33cbc364a3f42c599", size = 4358490, upload-time = "2025-10-15T15:51:43.884Z" }, + { url = "https://files.pythonhosted.org/packages/f7/09/d51aadf8591138e08b74c64a6eb783630c7a31ca2634416277115a9c3a2b/torchvision-0.24.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ded5e625788572e4e1c4d155d1bbc48805c113794100d70e19c76e39e4d53465", size = 1891441, upload-time = "2025-11-12T15:25:01.687Z" }, + { url = "https://files.pythonhosted.org/packages/6b/49/a35df863e7c153aad82af7505abd8264a5b510306689712ef86bea862822/torchvision-0.24.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:54ed17c3d30e718e08d8da3fd5b30ea44b0311317e55647cb97077a29ecbc25b", size = 2386226, upload-time = "2025-11-12T15:25:05.449Z" }, + { url = "https://files.pythonhosted.org/packages/49/20/f2d7cd1eea052887c1083afff0b8df5228ec93b53e03759f20b1a3c6d22a/torchvision-0.24.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:f476da4e085b7307aaab6f540219617d46d5926aeda24be33e1359771c83778f", size = 8046093, upload-time = "2025-11-12T15:25:09.425Z" }, + { url = "https://files.pythonhosted.org/packages/d8/cf/0ff4007c09903199307da5f53a192ff5d62b45447069e9ef3a19bdc5ff12/torchvision-0.24.1-cp310-cp310-win_amd64.whl", hash = "sha256:fbdbdae5e540b868a681240b7dbd6473986c862445ee8a138680a6a97d6c34ff", size = 3696202, upload-time = "2025-11-12T15:25:10.657Z" }, + { url = "https://files.pythonhosted.org/packages/e7/69/30f5f03752aa1a7c23931d2519b31e557f3f10af5089d787cddf3b903ecf/torchvision-0.24.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:056c525dc875f18fe8e9c27079ada166a7b2755cea5a2199b0bc7f1f8364e600", size = 1891436, upload-time = "2025-11-12T15:25:04.3Z" }, + { url = "https://files.pythonhosted.org/packages/0c/69/49aae86edb75fe16460b59a191fcc0f568c2378f780bb063850db0fe007a/torchvision-0.24.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:1e39619de698e2821d71976c92c8a9e50cdfd1e993507dfb340f2688bfdd8283", size = 2387757, upload-time = "2025-11-12T15:25:06.795Z" }, + { url = "https://files.pythonhosted.org/packages/11/c9/1dfc3db98797b326f1d0c3f3bb61c83b167a813fc7eab6fcd2edb8c7eb9d/torchvision-0.24.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a0f106663e60332aa4fcb1ca2159ef8c3f2ed266b0e6df88de261048a840e0df", size = 8047682, upload-time = "2025-11-12T15:25:21.125Z" }, + { url = "https://files.pythonhosted.org/packages/fa/bb/cfc6a6f6ccc84a534ed1fdf029ae5716dd6ff04e57ed9dc2dab38bf652d5/torchvision-0.24.1-cp311-cp311-win_amd64.whl", hash = "sha256:a9308cdd37d8a42e14a3e7fd9d271830c7fecb150dd929b642f3c1460514599a", size = 4037588, upload-time = "2025-11-12T15:25:14.402Z" }, + { url = "https://files.pythonhosted.org/packages/f0/af/18e2c6b9538a045f60718a0c5a058908ccb24f88fde8e6f0fc12d5ff7bd3/torchvision-0.24.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e48bf6a8ec95872eb45763f06499f87bd2fb246b9b96cb00aae260fda2f96193", size = 1891433, upload-time = "2025-11-12T15:25:03.232Z" }, + { url = "https://files.pythonhosted.org/packages/9d/43/600e5cfb0643d10d633124f5982d7abc2170dfd7ce985584ff16edab3e76/torchvision-0.24.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:7fb7590c737ebe3e1c077ad60c0e5e2e56bb26e7bccc3b9d04dbfc34fd09f050", size = 2386737, upload-time = "2025-11-12T15:25:08.288Z" }, + { url = "https://files.pythonhosted.org/packages/93/b1/db2941526ecddd84884132e2742a55c9311296a6a38627f9e2627f5ac889/torchvision-0.24.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:66a98471fc18cad9064123106d810a75f57f0838eee20edc56233fd8484b0cc7", size = 8049868, upload-time = "2025-11-12T15:25:13.058Z" }, + { url = "https://files.pythonhosted.org/packages/69/98/16e583f59f86cd59949f59d52bfa8fc286f86341a229a9d15cbe7a694f0c/torchvision-0.24.1-cp312-cp312-win_amd64.whl", hash = "sha256:4aa6cb806eb8541e92c9b313e96192c6b826e9eb0042720e2fa250d021079952", size = 4302006, upload-time = "2025-11-12T15:25:16.184Z" }, + { url = "https://files.pythonhosted.org/packages/e4/97/ab40550f482577f2788304c27220e8ba02c63313bd74cf2f8920526aac20/torchvision-0.24.1-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:8a6696db7fb71eadb2c6a48602106e136c785642e598eb1533e0b27744f2cce6", size = 1891435, upload-time = "2025-11-12T15:25:28.642Z" }, + { url = "https://files.pythonhosted.org/packages/30/65/ac0a3f9be6abdbe4e1d82c915d7e20de97e7fd0e9a277970508b015309f3/torchvision-0.24.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:db2125c46f9cb25dc740be831ce3ce99303cfe60439249a41b04fd9f373be671", size = 2338718, upload-time = "2025-11-12T15:25:26.19Z" }, + { url = "https://files.pythonhosted.org/packages/10/b5/5bba24ff9d325181508501ed7f0c3de8ed3dd2edca0784d48b144b6c5252/torchvision-0.24.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:f035f0cacd1f44a8ff6cb7ca3627d84c54d685055961d73a1a9fb9827a5414c8", size = 8049661, upload-time = "2025-11-12T15:25:22.558Z" }, + { url = "https://files.pythonhosted.org/packages/5c/ec/54a96ae9ab6a0dd66d4bba27771f892e36478a9c3489fa56e51c70abcc4d/torchvision-0.24.1-cp313-cp313-win_amd64.whl", hash = "sha256:16274823b93048e0a29d83415166a2e9e0bf4e1b432668357b657612a4802864", size = 4319808, upload-time = "2025-11-12T15:25:17.318Z" }, + { url = "https://files.pythonhosted.org/packages/d5/f3/a90a389a7e547f3eb8821b13f96ea7c0563cdefbbbb60a10e08dda9720ff/torchvision-0.24.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e3f96208b4bef54cd60e415545f5200346a65024e04f29a26cd0006dbf9e8e66", size = 2005342, upload-time = "2025-11-12T15:25:11.871Z" }, + { url = "https://files.pythonhosted.org/packages/a9/fe/ff27d2ed1b524078164bea1062f23d2618a5fc3208e247d6153c18c91a76/torchvision-0.24.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:f231f6a4f2aa6522713326d0d2563538fa72d613741ae364f9913027fa52ea35", size = 2341708, upload-time = "2025-11-12T15:25:25.08Z" }, + { url = "https://files.pythonhosted.org/packages/b1/b9/d6c903495cbdfd2533b3ef6f7b5643ff589ea062f8feb5c206ee79b9d9e5/torchvision-0.24.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:1540a9e7f8cf55fe17554482f5a125a7e426347b71de07327d5de6bfd8d17caa", size = 8177239, upload-time = "2025-11-12T15:25:18.554Z" }, + { url = "https://files.pythonhosted.org/packages/4f/2b/ba02e4261369c3798310483028495cf507e6cb3f394f42e4796981ecf3a7/torchvision-0.24.1-cp313-cp313t-win_amd64.whl", hash = "sha256:d83e16d70ea85d2f196d678bfb702c36be7a655b003abed84e465988b6128938", size = 4251604, upload-time = "2025-11-12T15:25:34.069Z" }, + { url = "https://files.pythonhosted.org/packages/42/84/577b2cef8f32094add5f52887867da4c2a3e6b4261538447e9b48eb25812/torchvision-0.24.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:cccf4b4fec7fdfcd3431b9ea75d1588c0a8596d0333245dafebee0462abe3388", size = 2005319, upload-time = "2025-11-12T15:25:23.827Z" }, + { url = "https://files.pythonhosted.org/packages/5f/34/ecb786bffe0159a3b49941a61caaae089853132f3cd1e8f555e3621f7e6f/torchvision-0.24.1-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:1b495edd3a8f9911292424117544f0b4ab780452e998649425d1f4b2bed6695f", size = 2338844, upload-time = "2025-11-12T15:25:32.625Z" }, + { url = "https://files.pythonhosted.org/packages/51/99/a84623786a6969504c87f2dc3892200f586ee13503f519d282faab0bb4f0/torchvision-0.24.1-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:ab211e1807dc3e53acf8f6638df9a7444c80c0ad050466e8d652b3e83776987b", size = 8175144, upload-time = "2025-11-12T15:25:31.355Z" }, + { url = "https://files.pythonhosted.org/packages/6d/ba/8fae3525b233e109317ce6a9c1de922ab2881737b029a7e88021f81e068f/torchvision-0.24.1-cp314-cp314-win_amd64.whl", hash = "sha256:18f9cb60e64b37b551cd605a3d62c15730c086362b40682d23e24b616a697d41", size = 4234459, upload-time = "2025-11-12T15:25:19.859Z" }, + { url = "https://files.pythonhosted.org/packages/50/33/481602c1c72d0485d4b3a6b48c9534b71c2957c9d83bf860eb837bf5a620/torchvision-0.24.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ec9d7379c519428395e4ffda4dbb99ec56be64b0a75b95989e00f9ec7ae0b2d7", size = 2005336, upload-time = "2025-11-12T15:25:27.225Z" }, + { url = "https://files.pythonhosted.org/packages/d0/7f/372de60bf3dd8f5593bd0d03f4aecf0d1fd58f5bc6943618d9d913f5e6d5/torchvision-0.24.1-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:af9201184c2712d808bd4eb656899011afdfce1e83721c7cb08000034df353fe", size = 2341704, upload-time = "2025-11-12T15:25:29.857Z" }, + { url = "https://files.pythonhosted.org/packages/36/9b/0f3b9ff3d0225ee2324ec663de0e7fb3eb855615ca958ac1875f22f1f8e5/torchvision-0.24.1-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:9ef95d819fd6df81bc7cc97b8f21a15d2c0d3ac5dbfaab5cbc2d2ce57114b19e", size = 8177422, upload-time = "2025-11-12T15:25:37.357Z" }, + { url = "https://files.pythonhosted.org/packages/d6/ab/e2bcc7c2f13d882a58f8b30ff86f794210b075736587ea50f8c545834f8a/torchvision-0.24.1-cp314-cp314t-win_amd64.whl", hash = "sha256:480b271d6edff83ac2e8d69bbb4cf2073f93366516a50d48f140ccfceedb002e", size = 4335190, upload-time = "2025-11-12T15:25:35.745Z" }, ] [[package]] @@ -5826,23 +5864,23 @@ wheels = [ [[package]] name = "triton" -version = "3.5.0" +version = "3.5.1" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/dd/22/507b6f58a35e05e84381630b2dc2a3cee1a7a2a7eaf4cba857c638a18a24/triton-3.5.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6f90de6a6566bb619b4c0adc9855729e1b1b5e26533fca1bf6206e96b6d277a3", size = 159827599, upload-time = "2025-10-15T19:15:43.87Z" }, - { url = "https://files.pythonhosted.org/packages/0b/eb/09e31d107a5d00eb281aa7e6635ca463e9bca86515944e399480eadb71f8/triton-3.5.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d5d3b3d480debf24eaa739623c9a42446b0b77f95593d30eb1f64cd2278cc1f0", size = 170333110, upload-time = "2025-10-13T16:37:49.588Z" }, - { url = "https://files.pythonhosted.org/packages/79/f9/b6f60f978397c616fd8dacca2305759fe4f80d397b20ef72534803244bd5/triton-3.5.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8457b22148defefdcb7fa8144b05ce211b9faefad650a1ce85b23df488d5549c", size = 159926731, upload-time = "2025-10-15T19:15:49.682Z" }, - { url = "https://files.pythonhosted.org/packages/3d/78/949a04391c21956c816523678f0e5fa308eb5b1e7622d88c4e4ef5fceca0/triton-3.5.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f34bfa21c5b3a203c0f0eab28dcc1e49bd1f67d22724e77fb6665a659200a4ec", size = 170433488, upload-time = "2025-10-13T16:37:57.132Z" }, - { url = "https://files.pythonhosted.org/packages/87/9b/30988039e1e84df7554fba24e6a734d2d0e847af33cabdf9b532b3c51456/triton-3.5.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7da21fccceafc163e3a5e857abe34351ef76345af06cabf9637a914742671f0b", size = 159946647, upload-time = "2025-10-15T19:15:56.325Z" }, - { url = "https://files.pythonhosted.org/packages/f5/3a/e991574f3102147b642e49637e0281e9bb7c4ba254edb2bab78247c85e01/triton-3.5.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9e71db82261c4ffa3921cd050cd5faa18322d2d405c30eb56084afaff3b0833", size = 170476535, upload-time = "2025-10-13T16:38:05.18Z" }, - { url = "https://files.pythonhosted.org/packages/cd/85/e37f1197acb04c8f3d83851d23d5d6ed5060ef74580668b112e23fdfa203/triton-3.5.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:188da5b81fa2f8322c27fec1627703eac24cb9bb7ab0dfbe9925973bc1b070d3", size = 159958970, upload-time = "2025-10-15T19:16:01.717Z" }, - { url = "https://files.pythonhosted.org/packages/6c/29/10728de8a6e932e517c10773486b8e99f85d1b1d9dd87d9a9616e1fef4a1/triton-3.5.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e6bb9aa5519c084a333acdba443789e50012a4b851cd486c54f0b8dc2a8d3a12", size = 170487289, upload-time = "2025-10-13T16:38:11.662Z" }, - { url = "https://files.pythonhosted.org/packages/b8/1d/38258f05010ac17a7b058c022911c9cae6526e149b7397134a048cf5a6c2/triton-3.5.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:03127d9b33aaf979c856676b394bc059ec1d68cb6da68ae03f62dd8ad77a04ae", size = 160073012, upload-time = "2025-10-15T19:16:07.477Z" }, - { url = "https://files.pythonhosted.org/packages/5c/38/db80e48b9220c9bce872b0f616ad0446cdf554a40b85c7865cbca99ab3c2/triton-3.5.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c83f2343e1a220a716c7b3ab9fccfcbe3ad4020d189549200e2d2e8d5868bed9", size = 170577179, upload-time = "2025-10-13T16:38:17.865Z" }, - { url = "https://files.pythonhosted.org/packages/91/fe/8f5771d00227f4eb1ee034f218ed427102b989366d2275fe3b3c105a3921/triton-3.5.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:468936651d383f4a6d10068d34a627505e13af55be5d002b9f27b987e7a5f0ac", size = 159957460, upload-time = "2025-10-15T19:16:12.626Z" }, - { url = "https://files.pythonhosted.org/packages/ff/60/1810655d1d856c9a4fcc90ee8966d85f552d98c53a6589f95ab2cbe27bb8/triton-3.5.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:da0fa67ccd76c3dcfb0bffe1b1c57c685136a6bd33d141c24d9655d4185b1289", size = 170487949, upload-time = "2025-10-13T16:38:24.881Z" }, - { url = "https://files.pythonhosted.org/packages/78/59/99edd103958fe6e42b50b9ad8ce4f223ddf4ccf475259cf7d2b53381dc6c/triton-3.5.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c7ceef21410229ac23173a28eee5cfc0e37c1dfdb8b4bc11ecda2e3ecec7c686", size = 160075629, upload-time = "2025-10-15T19:16:18.746Z" }, - { url = "https://files.pythonhosted.org/packages/fb/b7/1dec8433ac604c061173d0589d99217fe7bf90a70bdc375e745d044b8aad/triton-3.5.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:317fe477ea8fd4524a6a8c499fb0a36984a56d0b75bf9c9cb6133a1c56d5a6e7", size = 170580176, upload-time = "2025-10-13T16:38:31.14Z" }, + { url = "https://files.pythonhosted.org/packages/d9/2e/f95e673222afa2c7f0c687d8913e98fcf2589ef0b1405de76894e37fe18f/triton-3.5.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f63e34dcb32d7bd3a1d0195f60f30d2aee8b08a69a0424189b71017e23dfc3d2", size = 159821655, upload-time = "2025-11-11T17:51:44.09Z" }, + { url = "https://files.pythonhosted.org/packages/fd/6e/676ab5019b4dde8b9b7bab71245102fc02778ef3df48218b298686b9ffd6/triton-3.5.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5fc53d849f879911ea13f4a877243afc513187bc7ee92d1f2c0f1ba3169e3c94", size = 170320692, upload-time = "2025-11-11T17:40:46.074Z" }, + { url = "https://files.pythonhosted.org/packages/dc/dc/6ce44d055f2fc2403c4ec6b3cfd3a9b25f57b7d95efadccdea91497f8e81/triton-3.5.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:da47169e30a779bade679ce78df4810fca6d78a955843d2ddb11f226adc517dc", size = 159928005, upload-time = "2025-11-11T17:51:50.008Z" }, + { url = "https://files.pythonhosted.org/packages/b0/72/ec90c3519eaf168f22cb1757ad412f3a2add4782ad3a92861c9ad135d886/triton-3.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:61413522a48add32302353fdbaaf92daaaab06f6b5e3229940d21b5207f47579", size = 170425802, upload-time = "2025-11-11T17:40:53.209Z" }, + { url = "https://files.pythonhosted.org/packages/db/53/2bcc46879910991f09c063eea07627baef2bc62fe725302ba8f46a2c1ae5/triton-3.5.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:275a045b6ed670dd1bd005c3e6c2d61846c74c66f4512d6f33cc027b11de8fd4", size = 159940689, upload-time = "2025-11-11T17:51:55.938Z" }, + { url = "https://files.pythonhosted.org/packages/f2/50/9a8358d3ef58162c0a415d173cfb45b67de60176e1024f71fbc4d24c0b6d/triton-3.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d2c6b915a03888ab931a9fd3e55ba36785e1fe70cbea0b40c6ef93b20fc85232", size = 170470207, upload-time = "2025-11-11T17:41:00.253Z" }, + { url = "https://files.pythonhosted.org/packages/f1/ba/805684a992ee32d486b7948d36aed2f5e3c643fc63883bf8bdca1c3f3980/triton-3.5.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:56765ffe12c554cd560698398b8a268db1f616c120007bfd8829d27139abd24a", size = 159955460, upload-time = "2025-11-11T17:52:01.861Z" }, + { url = "https://files.pythonhosted.org/packages/27/46/8c3bbb5b0a19313f50edcaa363b599e5a1a5ac9683ead82b9b80fe497c8d/triton-3.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f3f4346b6ebbd4fad18773f5ba839114f4826037c9f2f34e0148894cd5dd3dba", size = 170470410, upload-time = "2025-11-11T17:41:06.319Z" }, + { url = "https://files.pythonhosted.org/packages/84/1e/7df59baef41931e21159371c481c31a517ff4c2517343b62503d0cd2be99/triton-3.5.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:02c770856f5e407d24d28ddc66e33cf026e6f4d360dcb8b2fabe6ea1fc758621", size = 160072799, upload-time = "2025-11-11T17:52:07.293Z" }, + { url = "https://files.pythonhosted.org/packages/37/92/e97fcc6b2c27cdb87ce5ee063d77f8f26f19f06916aa680464c8104ef0f6/triton-3.5.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0b4d2c70127fca6a23e247f9348b8adde979d2e7a20391bfbabaac6aebc7e6a8", size = 170579924, upload-time = "2025-11-11T17:41:12.455Z" }, + { url = "https://files.pythonhosted.org/packages/14/f9/0430e879c1e63a1016cb843261528fd3187c872c3a9539132efc39514753/triton-3.5.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f617aa7925f9ea9968ec2e1adaf93e87864ff51549c8f04ce658f29bbdb71e2d", size = 159956163, upload-time = "2025-11-11T17:52:12.999Z" }, + { url = "https://files.pythonhosted.org/packages/a4/e6/c595c35e5c50c4bc56a7bac96493dad321e9e29b953b526bbbe20f9911d0/triton-3.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d0637b1efb1db599a8e9dc960d53ab6e4637db7d4ab6630a0974705d77b14b60", size = 170480488, upload-time = "2025-11-11T17:41:18.222Z" }, + { url = "https://files.pythonhosted.org/packages/41/1e/63d367c576c75919e268e4fbc33c1cb33b6dc12bb85e8bfe531c2a8bd5d3/triton-3.5.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8932391d7f93698dfe5bc9bead77c47a24f97329e9f20c10786bb230a9083f56", size = 160073620, upload-time = "2025-11-11T17:52:18.403Z" }, + { url = "https://files.pythonhosted.org/packages/16/b5/b0d3d8b901b6a04ca38df5e24c27e53afb15b93624d7fd7d658c7cd9352a/triton-3.5.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bac7f7d959ad0f48c0e97d6643a1cc0fd5786fe61cb1f83b537c6b2d54776478", size = 170582192, upload-time = "2025-11-11T17:41:23.963Z" }, ] [[package]] @@ -5937,7 +5975,7 @@ wheels = [ [[package]] name = "wandb" -version = "0.22.3" +version = "0.23.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "click" }, @@ -5951,17 +5989,17 @@ dependencies = [ { name = "sentry-sdk" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/c1/d1/6b70f365ed86bd69debba8ad55dec8606fc21006e7ca703a5a091bd3b719/wandb-0.22.3.tar.gz", hash = "sha256:04468a8ab2769a46f5e384c9c4ada5da0dced005ca689a8424e4b8b5cb2a0291", size = 44337368, upload-time = "2025-10-28T23:59:10.275Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/23/02/87fb60f587ec249f784a40bd91c30de1b2b24d691ee72675d5b66c3d0728/wandb-0.22.3-py3-none-macosx_12_0_arm64.whl", hash = "sha256:81b3b6e405f38342b0a080898b7d00c5b9375432f5ba358942a09e65cdcfe781", size = 18758047, upload-time = "2025-10-28T23:58:46.56Z" }, - { url = "https://files.pythonhosted.org/packages/26/88/64081740ef2b2efc7fbcb2139a07a849e42bcb09ae0c56ae50c41bd0ad63/wandb-0.22.3-py3-none-macosx_12_0_x86_64.whl", hash = "sha256:d29c16817cca6401b4919069ec7570c781eacb67dc0b1ff2e0096a9a59581720", size = 19798011, upload-time = "2025-10-28T23:58:49.718Z" }, - { url = "https://files.pythonhosted.org/packages/19/72/c4f922b33dbb84d1c81ee045ff8791dd14e26d79e1e9bbafff964b7043e2/wandb-0.22.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb955d73a4ba55df9adc61fafbabef5556784d33fc39c7b5c8165d2694ddeb3b", size = 18542713, upload-time = "2025-10-28T23:58:51.927Z" }, - { url = "https://files.pythonhosted.org/packages/ad/98/3ce5f6e2086d91b0c51b38ae7ff591109e7da2bb25fe1a12eec0cdbaa494/wandb-0.22.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:23f3ebe41a26506117a098fdfd2706ed0e50b37899bfbefe3a0628fcbd70c69d", size = 19984910, upload-time = "2025-10-28T23:58:54.641Z" }, - { url = "https://files.pythonhosted.org/packages/5e/57/e68cb38427b60490d6ddf1b992e6c7f36be83be1079d291ce87a8d347f48/wandb-0.22.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:2973462bed5d4a653b1a97cf9fc350673bb200fb356a2f4eba34beae9b87e0aa", size = 18581776, upload-time = "2025-10-28T23:58:56.975Z" }, - { url = "https://files.pythonhosted.org/packages/66/6d/543f907ce0c6b6da13628b23d19ca7282c559fd73eb47b04977b9a61d0c6/wandb-0.22.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:c5c2bd18f95c1639863c527da0a5818ac6b0e5194f9c691426b265908ddd8b2c", size = 20078800, upload-time = "2025-10-28T23:58:59.217Z" }, - { url = "https://files.pythonhosted.org/packages/da/91/1decaf1a6ac2017481c782e0fad7f90bc9ae4057f3d76d478cb6527f3dd3/wandb-0.22.3-py3-none-win32.whl", hash = "sha256:09ca1edfe0fd6dc30447d368acddb825668e60ee705c98594a6bbfd30d34d47e", size = 19160297, upload-time = "2025-10-28T23:59:01.536Z" }, - { url = "https://files.pythonhosted.org/packages/4c/ba/3b092634279994b0c79fe05220532822be09f3a353ae95c54e7142769db8/wandb-0.22.3-py3-none-win_amd64.whl", hash = "sha256:55403bf93872c9978433d101324f51e43e78c70c809bf6d06ca7b2760e39f497", size = 19160300, upload-time = "2025-10-28T23:59:04.06Z" }, - { url = "https://files.pythonhosted.org/packages/7f/80/4662fce9eebcc8c71f5083e9152ccaf7d43d4ca9c446e1422f9aa784a51c/wandb-0.22.3-py3-none-win_arm64.whl", hash = "sha256:49f66b05882abfa53816cc8d01b3c2435a89c5a090176802fa6928b5979d34d9", size = 17461959, upload-time = "2025-10-28T23:59:07.059Z" }, +sdist = { url = "https://files.pythonhosted.org/packages/ef/8b/db2d44395c967cd452517311fd6ede5d1e07310769f448358d4874248512/wandb-0.23.0.tar.gz", hash = "sha256:e5f98c61a8acc3ee84583ca78057f64344162ce026b9f71cb06eea44aec27c93", size = 44413921, upload-time = "2025-11-11T21:06:30.737Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/61/a3220c7fa4cadfb2b2a5c09e3fa401787326584ade86d7c1f58bf1cd43bd/wandb-0.23.0-py3-none-macosx_12_0_arm64.whl", hash = "sha256:b682ec5e38fc97bd2e868ac7615a0ab4fc6a15220ee1159e87270a5ebb7a816d", size = 18992250, upload-time = "2025-11-11T21:06:03.412Z" }, + { url = "https://files.pythonhosted.org/packages/90/16/e69333cf3d11e7847f424afc6c8ae325e1f6061b2e5118d7a17f41b6525d/wandb-0.23.0-py3-none-macosx_12_0_x86_64.whl", hash = "sha256:ec094eb71b778e77db8c188da19e52c4f96cb9d5b4421d7dc05028afc66fd7e7", size = 20045616, upload-time = "2025-11-11T21:06:07.109Z" }, + { url = "https://files.pythonhosted.org/packages/62/79/42dc6c7bb0b425775fe77f1a3f1a22d75d392841a06b43e150a3a7f2553a/wandb-0.23.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e43f1f04b98c34f407dcd2744cec0a590abce39bed14a61358287f817514a7b", size = 18758848, upload-time = "2025-11-11T21:06:09.832Z" }, + { url = "https://files.pythonhosted.org/packages/b8/94/d6ddb78334996ccfc1179444bfcfc0f37ffd07ee79bb98940466da6f68f8/wandb-0.23.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e5847f98cbb3175caf5291932374410141f5bb3b7c25f9c5e562c1988ce0bf5", size = 20231493, upload-time = "2025-11-11T21:06:12.323Z" }, + { url = "https://files.pythonhosted.org/packages/52/4d/0ad6df0e750c19dabd24d2cecad0938964f69a072f05fbdab7281bec2b64/wandb-0.23.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:6151355fd922539926e870be811474238c9614b96541773b990f1ce53368aef6", size = 18793473, upload-time = "2025-11-11T21:06:14.967Z" }, + { url = "https://files.pythonhosted.org/packages/f8/da/c2ba49c5573dff93dafc0acce691bb1c3d57361bf834b2f2c58e6193439b/wandb-0.23.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:df62e426e448ebc44269140deb7240df474e743b12d4b1f53b753afde4aa06d4", size = 20332882, upload-time = "2025-11-11T21:06:17.865Z" }, + { url = "https://files.pythonhosted.org/packages/40/65/21bfb10ee5cd93fbcaf794958863c7e05bac4bbeb1cc1b652094aa3743a5/wandb-0.23.0-py3-none-win32.whl", hash = "sha256:6c21d3eadda17aef7df6febdffdddfb0b4835c7754435fc4fe27631724269f5c", size = 19433198, upload-time = "2025-11-11T21:06:21.913Z" }, + { url = "https://files.pythonhosted.org/packages/f1/33/cbe79e66c171204e32cf940c7fdfb8b5f7d2af7a00f301c632f3a38aa84b/wandb-0.23.0-py3-none-win_amd64.whl", hash = "sha256:b50635fa0e16e528bde25715bf446e9153368428634ca7a5dbd7a22c8ae4e915", size = 19433201, upload-time = "2025-11-11T21:06:24.607Z" }, + { url = "https://files.pythonhosted.org/packages/1c/a0/5ecfae12d78ea036a746c071e4c13b54b28d641efbba61d2947c73b3e6f9/wandb-0.23.0-py3-none-win_arm64.whl", hash = "sha256:fa0181b02ce4d1993588f4a728d8b73ae487eb3cb341e6ce01c156be7a98ec72", size = 17678649, upload-time = "2025-11-11T21:06:27.289Z" }, ] [[package]] From 34d5fdad7170eb687a10ee65db6b9b5161a0bd94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 09:18:38 +0000 Subject: [PATCH 20/27] attempt to fix lockfile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- pyproject.toml | 4 ++-- uv.lock | 30 +++++++----------------------- 2 files changed, 9 insertions(+), 25 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 456cb6634aa..c56d68638bf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -67,7 +67,7 @@ Homepage = "https://github.com/NVIDIA/Megatron-LM/megatron/core" mlm = ["flask-restful", "sentencepiece", "tiktoken", "wandb", "transformers"] dev = [ - "nvidia-modelopt[torch]>=0.33.0a0,<0.34.0; sys_platform != 'darwin'", + "nvidia-modelopt[torch]; sys_platform != 'darwin'", "transformer-engine[pytorch]>=2.9.0a0,<2.10.0", "nvidia-resiliency-ext", "tqdm", @@ -177,7 +177,7 @@ flash_mla = [ ] transformer-engine = { git = "https://github.com/NVIDIA/TransformerEngine.git", rev = "release_v2.9" } # on `release_v2.9` nemo-run = { git = "https://github.com/NVIDIA-NeMo/Run.git", rev = "01a9a8ba360f7b2908728ad0516e0ad9d936966d" } -emerging_optimizers = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git", rev = "cf9909b777ffac18e05b67a6708282cadc000942" } +emerging_optimizers = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git", rev = "fb1add873e7851ec34b48581ea1b15761b73d189" } [tool.isort] profile = "black" # black-compatible diff --git a/uv.lock b/uv.lock index c3dc9b95bb4..7d042dc04f0 100644 --- a/uv.lock +++ b/uv.lock @@ -1235,7 +1235,7 @@ wheels = [ [[package]] name = "emerging-optimizers" version = "0.1.0" -source = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=cf9909b777ffac18e05b67a6708282cadc000942#cf9909b777ffac18e05b67a6708282cadc000942" } +source = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=fb1add873e7851ec34b48581ea1b15761b73d189#fb1add873e7851ec34b48581ea1b15761b73d189" } dependencies = [ { name = "absl-py" }, { name = "torch", marker = "sys_platform == 'never'" }, @@ -2321,7 +2321,7 @@ requires-dist = [ { name = "causal-conv1d", marker = "extra == 'lts'", specifier = "~=1.5" }, { name = "einops", marker = "extra == 'dev'", specifier = "~=0.8" }, { name = "einops", marker = "extra == 'lts'", specifier = "~=0.8" }, - { name = "emerging-optimizers", marker = "extra == 'dev'", git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=cf9909b777ffac18e05b67a6708282cadc000942" }, + { name = "emerging-optimizers", marker = "extra == 'dev'", git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=fb1add873e7851ec34b48581ea1b15761b73d189" }, { name = "flash-linear-attention", marker = "extra == 'dev'", specifier = "~=0.3.2" }, { name = "flashinfer-python", marker = "extra == 'dev'" }, { name = "flashinfer-python", marker = "extra == 'lts'" }, @@ -2335,7 +2335,7 @@ requires-dist = [ { name = "numpy", specifier = "<2.0.0" }, { name = "nv-grouped-gemm", marker = "extra == 'dev'", specifier = "~=1.1" }, { name = "nv-grouped-gemm", marker = "extra == 'lts'", specifier = "~=1.1" }, - { name = "nvidia-modelopt", extras = ["torch"], marker = "sys_platform != 'darwin' and extra == 'dev'", specifier = ">=0.33.0a0,<0.34.0" }, + { name = "nvidia-modelopt", extras = ["torch"], marker = "sys_platform != 'darwin' and extra == 'dev'" }, { name = "nvidia-resiliency-ext", marker = "extra == 'dev'" }, { name = "nvtx", marker = "extra == 'dev'", specifier = "~=0.2" }, { name = "nvtx", marker = "extra == 'lts'", specifier = "~=0.2" }, @@ -3162,13 +3162,12 @@ wheels = [ [[package]] name = "nvidia-modelopt" -version = "0.33.1" +version = "0.39.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "ninja" }, { name = "numpy" }, { name = "nvidia-ml-py" }, - { name = "nvidia-modelopt-core" }, { name = "packaging" }, { name = "pulp" }, { name = "pydantic" }, @@ -3179,25 +3178,10 @@ dependencies = [ { name = "scipy", version = "1.16.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "torch", marker = "sys_platform == 'never'" }, { name = "torchprofile" }, - { name = "torchvision", marker = "sys_platform == 'never'" }, { name = "tqdm" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/ca/cb/4af39357792a96f334c7877ea0380c9337aec210ff4794a7dd95beb7c349/nvidia_modelopt-0.33.1-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:6c51091683a117cd40fdb96a0ec28579f2276f6b627db7ccddc370df544e1dd7", size = 751683, upload-time = "2025-08-12T18:37:48.832Z" }, - { url = "https://files.pythonhosted.org/packages/0a/b1/fc2f468d140ef58e90fac584759d0cc449db9bc4f64668cdff750ef38fef/nvidia_modelopt-0.33.1-py3-none-manylinux_2_28_x86_64.whl", hash = "sha256:ef78a98901890f265596ec413dffac177d4a1865201d89a14f29f4fa0cf8e710", size = 751683, upload-time = "2025-08-12T18:36:59.964Z" }, -] - -[[package]] -name = "nvidia-modelopt-core" -version = "0.33.1" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/6a/21/d12ca11f5554340684d11958aae6c6e7755cf0aaae10a2d2c9db217228cf/nvidia_modelopt_core-0.33.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:f25f6a817609c693ee39d1bcf2d3aeef462b9769f971590133de8b1b0310885b", size = 1307716, upload-time = "2025-08-12T18:41:12.086Z" }, - { url = "https://files.pythonhosted.org/packages/eb/df/7bead24d4854274d9f2818f1ae780fc24260aab60b7b6f73e1af4f056ce5/nvidia_modelopt_core-0.33.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:195f32f06d19bc9f9d858811f1864bddcc1db6278974d98ea6309cb3553427f1", size = 1326896, upload-time = "2025-08-12T18:39:48.243Z" }, - { url = "https://files.pythonhosted.org/packages/a1/36/3318980c670292d827ace5ac6110ab6054d0f2d87e507382842ea9e7c78f/nvidia_modelopt_core-0.33.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:ffd008a90d8867660ae41c98002156b526e368a4cdf39e225fe20f478adce8b2", size = 1376104, upload-time = "2025-08-12T18:41:47.358Z" }, - { url = "https://files.pythonhosted.org/packages/27/97/99d1ddabe01ab262c18621619c996e1c2c119bc058607d2bc9ce7eb85fe7/nvidia_modelopt_core-0.33.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:be49121b2f74db4cb73955396a7bb83935d92232c5a20bcfd7b8e7cae68e482f", size = 1393729, upload-time = "2025-08-12T18:40:07.86Z" }, - { url = "https://files.pythonhosted.org/packages/9b/b5/ba79b1c52b634b24e45dca409f133f947217a5c7ec5c256266e4ec5fa3eb/nvidia_modelopt_core-0.33.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:1ddd9279d8312f8e972b302692a26e6180f1c9fd277232f5925a5589f42b1b76", size = 1338081, upload-time = "2025-08-12T18:40:36.156Z" }, - { url = "https://files.pythonhosted.org/packages/13/40/4427583475dfd8eb1b8c7522d75d4d059f0512ff03dcc62d6986a22ab918/nvidia_modelopt_core-0.33.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:69d5ace564f2b056c916117be2023f2b7fc01cd1501073915e6b2ced2b8a5394", size = 1363366, upload-time = "2025-08-12T18:39:28.854Z" }, + { url = "https://files.pythonhosted.org/packages/b0/d5/b03ad3ffa28984b629a72da678fa98f912fc45bac3b514c4a70cf2a82fe3/nvidia_modelopt-0.39.0-py3-none-any.whl", hash = "sha256:32f05317c81be1ff2ffeab749e5258b7bea8e4c6e60a09c760584f25ad03f648", size = 864981, upload-time = "2025-11-13T07:35:42.761Z" }, ] [[package]] @@ -5759,8 +5743,8 @@ name = "torchvision" version = "0.24.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "pillow" }, + { name = "numpy", marker = "sys_platform != 'linux'" }, + { name = "pillow", marker = "sys_platform != 'linux'" }, { name = "torch", marker = "sys_platform == 'never'" }, ] wheels = [ From d86384dff1762b8d6d30bd5f12343220020e02ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 09:57:13 +0000 Subject: [PATCH 21/27] pydantic MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index c56d68638bf..c86686b78f8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -87,6 +87,7 @@ dev = [ "onnxscript", "flash-linear-attention~=0.3.2", "emerging_optimizers", + "pydantic<1.8.0", ] lts = [ From 5d8d08fd0a77e6d7943315395116a271b553d6a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 10:01:14 +0000 Subject: [PATCH 22/27] "pydantic<1.8.0", MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index c86686b78f8..5bacc5dc85d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -170,6 +170,7 @@ override-dependencies = [ "torch; sys_platform == 'never'", "torchvision; sys_platform == 'never'", "triton; sys_platform == 'never'", + "pydantic<1.8.0", ] [tool.uv.sources] From fe3ede3d6b4194ad599d0066cf0b03e0b55509b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 10:04:55 +0000 Subject: [PATCH 23/27] lockfile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- uv.lock | 154 +++----------------------------------------------------- 1 file changed, 6 insertions(+), 148 deletions(-) diff --git a/uv.lock b/uv.lock index 7d042dc04f0..f832d8adeec 100644 --- a/uv.lock +++ b/uv.lock @@ -20,6 +20,7 @@ conflicts = [[ [manifest] overrides = [ + { name = "pydantic", specifier = "<1.8.0" }, { name = "torch", marker = "sys_platform == 'never'" }, { name = "torchvision", marker = "sys_platform == 'never'" }, { name = "triton", marker = "sys_platform == 'never'" }, @@ -233,15 +234,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/59/75/e0e10dc7ed1408c28e03a6cb2d7a407f99320eb953f229d008a7a6d05546/aniso8601-10.0.1-py2.py3-none-any.whl", hash = "sha256:eb19717fd4e0db6de1aab06f12450ab92144246b257423fe020af5748c0cb89e", size = 52848, upload-time = "2025-04-18T17:29:41.492Z" }, ] -[[package]] -name = "annotated-types" -version = "0.7.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" }, -] - [[package]] name = "antlr4-python3-runtime" version = "4.9.3" @@ -2228,6 +2220,7 @@ dev = [ { name = "onnxscript", version = "0.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "onnxscript", version = "0.5.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "opentelemetry-api" }, + { name = "pydantic" }, { name = "setuptools" }, { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tensorstore", version = "0.1.79", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, @@ -2344,6 +2337,7 @@ requires-dist = [ { name = "opentelemetry-api", marker = "extra == 'dev'", specifier = "~=1.33.1" }, { name = "opentelemetry-api", marker = "extra == 'lts'", specifier = "~=1.33.1" }, { name = "packaging", specifier = ">=24.2" }, + { name = "pydantic", marker = "extra == 'dev'", specifier = "<1.8.0" }, { name = "sentencepiece", marker = "extra == 'mlm'" }, { name = "setuptools", marker = "extra == 'dev'", specifier = "<80.0.0" }, { name = "setuptools", marker = "extra == 'lts'", specifier = "<80.0.0" }, @@ -3963,135 +3957,11 @@ wheels = [ [[package]] name = "pydantic" -version = "2.12.4" +version = "1.7.4" source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "annotated-types" }, - { name = "pydantic-core" }, - { name = "typing-extensions" }, - { name = "typing-inspection" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/96/ad/a17bc283d7d81837c061c49e3eaa27a45991759a1b7eae1031921c6bd924/pydantic-2.12.4.tar.gz", hash = "sha256:0f8cb9555000a4b5b617f66bfd2566264c4984b27589d3b845685983e8ea85ac", size = 821038, upload-time = "2025-11-05T10:50:08.59Z" } +sdist = { url = "https://files.pythonhosted.org/packages/2f/91/c0829599e8281492e40ff69a0d88340713a37fb0facd187fabfab53d6915/pydantic-1.7.4.tar.gz", hash = "sha256:0a1abcbd525fbb52da58c813d54c2ec706c31a91afdb75411a73dd1dec036595", size = 225694, upload-time = "2021-05-11T19:53:12.997Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798/pydantic-2.12.4-py3-none-any.whl", hash = "sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e", size = 463400, upload-time = "2025-11-05T10:50:06.732Z" }, -] - -[[package]] -name = "pydantic-core" -version = "2.41.5" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "typing-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/71/70/23b021c950c2addd24ec408e9ab05d59b035b39d97cdc1130e1bce647bb6/pydantic_core-2.41.5.tar.gz", hash = "sha256:08daa51ea16ad373ffd5e7606252cc32f07bc72b28284b6bc9c6df804816476e", size = 460952, upload-time = "2025-11-04T13:43:49.098Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/c6/90/32c9941e728d564b411d574d8ee0cf09b12ec978cb22b294995bae5549a5/pydantic_core-2.41.5-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:77b63866ca88d804225eaa4af3e664c5faf3568cea95360d21f4725ab6e07146", size = 2107298, upload-time = "2025-11-04T13:39:04.116Z" }, - { url = "https://files.pythonhosted.org/packages/fb/a8/61c96a77fe28993d9a6fb0f4127e05430a267b235a124545d79fea46dd65/pydantic_core-2.41.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dfa8a0c812ac681395907e71e1274819dec685fec28273a28905df579ef137e2", size = 1901475, upload-time = "2025-11-04T13:39:06.055Z" }, - { url = "https://files.pythonhosted.org/packages/5d/b6/338abf60225acc18cdc08b4faef592d0310923d19a87fba1faf05af5346e/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5921a4d3ca3aee735d9fd163808f5e8dd6c6972101e4adbda9a4667908849b97", size = 1918815, upload-time = "2025-11-04T13:39:10.41Z" }, - { url = "https://files.pythonhosted.org/packages/d1/1c/2ed0433e682983d8e8cba9c8d8ef274d4791ec6a6f24c58935b90e780e0a/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e25c479382d26a2a41b7ebea1043564a937db462816ea07afa8a44c0866d52f9", size = 2065567, upload-time = "2025-11-04T13:39:12.244Z" }, - { url = "https://files.pythonhosted.org/packages/b3/24/cf84974ee7d6eae06b9e63289b7b8f6549d416b5c199ca2d7ce13bbcf619/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f547144f2966e1e16ae626d8ce72b4cfa0caedc7fa28052001c94fb2fcaa1c52", size = 2230442, upload-time = "2025-11-04T13:39:13.962Z" }, - { url = "https://files.pythonhosted.org/packages/fd/21/4e287865504b3edc0136c89c9c09431be326168b1eb7841911cbc877a995/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f52298fbd394f9ed112d56f3d11aabd0d5bd27beb3084cc3d8ad069483b8941", size = 2350956, upload-time = "2025-11-04T13:39:15.889Z" }, - { url = "https://files.pythonhosted.org/packages/a8/76/7727ef2ffa4b62fcab916686a68a0426b9b790139720e1934e8ba797e238/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:100baa204bb412b74fe285fb0f3a385256dad1d1879f0a5cb1499ed2e83d132a", size = 2068253, upload-time = "2025-11-04T13:39:17.403Z" }, - { url = "https://files.pythonhosted.org/packages/d5/8c/a4abfc79604bcb4c748e18975c44f94f756f08fb04218d5cb87eb0d3a63e/pydantic_core-2.41.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:05a2c8852530ad2812cb7914dc61a1125dc4e06252ee98e5638a12da6cc6fb6c", size = 2177050, upload-time = "2025-11-04T13:39:19.351Z" }, - { url = "https://files.pythonhosted.org/packages/67/b1/de2e9a9a79b480f9cb0b6e8b6ba4c50b18d4e89852426364c66aa82bb7b3/pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:29452c56df2ed968d18d7e21f4ab0ac55e71dc59524872f6fc57dcf4a3249ed2", size = 2147178, upload-time = "2025-11-04T13:39:21Z" }, - { url = "https://files.pythonhosted.org/packages/16/c1/dfb33f837a47b20417500efaa0378adc6635b3c79e8369ff7a03c494b4ac/pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:d5160812ea7a8a2ffbe233d8da666880cad0cbaf5d4de74ae15c313213d62556", size = 2341833, upload-time = "2025-11-04T13:39:22.606Z" }, - { url = "https://files.pythonhosted.org/packages/47/36/00f398642a0f4b815a9a558c4f1dca1b4020a7d49562807d7bc9ff279a6c/pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:df3959765b553b9440adfd3c795617c352154e497a4eaf3752555cfb5da8fc49", size = 2321156, upload-time = "2025-11-04T13:39:25.843Z" }, - { url = "https://files.pythonhosted.org/packages/7e/70/cad3acd89fde2010807354d978725ae111ddf6d0ea46d1ea1775b5c1bd0c/pydantic_core-2.41.5-cp310-cp310-win32.whl", hash = "sha256:1f8d33a7f4d5a7889e60dc39856d76d09333d8a6ed0f5f1190635cbec70ec4ba", size = 1989378, upload-time = "2025-11-04T13:39:27.92Z" }, - { url = "https://files.pythonhosted.org/packages/76/92/d338652464c6c367e5608e4488201702cd1cbb0f33f7b6a85a60fe5f3720/pydantic_core-2.41.5-cp310-cp310-win_amd64.whl", hash = "sha256:62de39db01b8d593e45871af2af9e497295db8d73b085f6bfd0b18c83c70a8f9", size = 2013622, upload-time = "2025-11-04T13:39:29.848Z" }, - { url = "https://files.pythonhosted.org/packages/e8/72/74a989dd9f2084b3d9530b0915fdda64ac48831c30dbf7c72a41a5232db8/pydantic_core-2.41.5-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:a3a52f6156e73e7ccb0f8cced536adccb7042be67cb45f9562e12b319c119da6", size = 2105873, upload-time = "2025-11-04T13:39:31.373Z" }, - { url = "https://files.pythonhosted.org/packages/12/44/37e403fd9455708b3b942949e1d7febc02167662bf1a7da5b78ee1ea2842/pydantic_core-2.41.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7f3bf998340c6d4b0c9a2f02d6a400e51f123b59565d74dc60d252ce888c260b", size = 1899826, upload-time = "2025-11-04T13:39:32.897Z" }, - { url = "https://files.pythonhosted.org/packages/33/7f/1d5cab3ccf44c1935a359d51a8a2a9e1a654b744b5e7f80d41b88d501eec/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:378bec5c66998815d224c9ca994f1e14c0c21cb95d2f52b6021cc0b2a58f2a5a", size = 1917869, upload-time = "2025-11-04T13:39:34.469Z" }, - { url = "https://files.pythonhosted.org/packages/6e/6a/30d94a9674a7fe4f4744052ed6c5e083424510be1e93da5bc47569d11810/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e7b576130c69225432866fe2f4a469a85a54ade141d96fd396dffcf607b558f8", size = 2063890, upload-time = "2025-11-04T13:39:36.053Z" }, - { url = "https://files.pythonhosted.org/packages/50/be/76e5d46203fcb2750e542f32e6c371ffa9b8ad17364cf94bb0818dbfb50c/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6cb58b9c66f7e4179a2d5e0f849c48eff5c1fca560994d6eb6543abf955a149e", size = 2229740, upload-time = "2025-11-04T13:39:37.753Z" }, - { url = "https://files.pythonhosted.org/packages/d3/ee/fed784df0144793489f87db310a6bbf8118d7b630ed07aa180d6067e653a/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:88942d3a3dff3afc8288c21e565e476fc278902ae4d6d134f1eeda118cc830b1", size = 2350021, upload-time = "2025-11-04T13:39:40.94Z" }, - { url = "https://files.pythonhosted.org/packages/c8/be/8fed28dd0a180dca19e72c233cbf58efa36df055e5b9d90d64fd1740b828/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f31d95a179f8d64d90f6831d71fa93290893a33148d890ba15de25642c5d075b", size = 2066378, upload-time = "2025-11-04T13:39:42.523Z" }, - { url = "https://files.pythonhosted.org/packages/b0/3b/698cf8ae1d536a010e05121b4958b1257f0b5522085e335360e53a6b1c8b/pydantic_core-2.41.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c1df3d34aced70add6f867a8cf413e299177e0c22660cc767218373d0779487b", size = 2175761, upload-time = "2025-11-04T13:39:44.553Z" }, - { url = "https://files.pythonhosted.org/packages/b8/ba/15d537423939553116dea94ce02f9c31be0fa9d0b806d427e0308ec17145/pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:4009935984bd36bd2c774e13f9a09563ce8de4abaa7226f5108262fa3e637284", size = 2146303, upload-time = "2025-11-04T13:39:46.238Z" }, - { url = "https://files.pythonhosted.org/packages/58/7f/0de669bf37d206723795f9c90c82966726a2ab06c336deba4735b55af431/pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:34a64bc3441dc1213096a20fe27e8e128bd3ff89921706e83c0b1ac971276594", size = 2340355, upload-time = "2025-11-04T13:39:48.002Z" }, - { url = "https://files.pythonhosted.org/packages/e5/de/e7482c435b83d7e3c3ee5ee4451f6e8973cff0eb6007d2872ce6383f6398/pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:c9e19dd6e28fdcaa5a1de679aec4141f691023916427ef9bae8584f9c2fb3b0e", size = 2319875, upload-time = "2025-11-04T13:39:49.705Z" }, - { url = "https://files.pythonhosted.org/packages/fe/e6/8c9e81bb6dd7560e33b9053351c29f30c8194b72f2d6932888581f503482/pydantic_core-2.41.5-cp311-cp311-win32.whl", hash = "sha256:2c010c6ded393148374c0f6f0bf89d206bf3217f201faa0635dcd56bd1520f6b", size = 1987549, upload-time = "2025-11-04T13:39:51.842Z" }, - { url = "https://files.pythonhosted.org/packages/11/66/f14d1d978ea94d1bc21fc98fcf570f9542fe55bfcc40269d4e1a21c19bf7/pydantic_core-2.41.5-cp311-cp311-win_amd64.whl", hash = "sha256:76ee27c6e9c7f16f47db7a94157112a2f3a00e958bc626e2f4ee8bec5c328fbe", size = 2011305, upload-time = "2025-11-04T13:39:53.485Z" }, - { url = "https://files.pythonhosted.org/packages/56/d8/0e271434e8efd03186c5386671328154ee349ff0354d83c74f5caaf096ed/pydantic_core-2.41.5-cp311-cp311-win_arm64.whl", hash = "sha256:4bc36bbc0b7584de96561184ad7f012478987882ebf9f9c389b23f432ea3d90f", size = 1972902, upload-time = "2025-11-04T13:39:56.488Z" }, - { url = "https://files.pythonhosted.org/packages/5f/5d/5f6c63eebb5afee93bcaae4ce9a898f3373ca23df3ccaef086d0233a35a7/pydantic_core-2.41.5-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f41a7489d32336dbf2199c8c0a215390a751c5b014c2c1c5366e817202e9cdf7", size = 2110990, upload-time = "2025-11-04T13:39:58.079Z" }, - { url = "https://files.pythonhosted.org/packages/aa/32/9c2e8ccb57c01111e0fd091f236c7b371c1bccea0fa85247ac55b1e2b6b6/pydantic_core-2.41.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:070259a8818988b9a84a449a2a7337c7f430a22acc0859c6b110aa7212a6d9c0", size = 1896003, upload-time = "2025-11-04T13:39:59.956Z" }, - { url = "https://files.pythonhosted.org/packages/68/b8/a01b53cb0e59139fbc9e4fda3e9724ede8de279097179be4ff31f1abb65a/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e96cea19e34778f8d59fe40775a7a574d95816eb150850a85a7a4c8f4b94ac69", size = 1919200, upload-time = "2025-11-04T13:40:02.241Z" }, - { url = "https://files.pythonhosted.org/packages/38/de/8c36b5198a29bdaade07b5985e80a233a5ac27137846f3bc2d3b40a47360/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed2e99c456e3fadd05c991f8f437ef902e00eedf34320ba2b0842bd1c3ca3a75", size = 2052578, upload-time = "2025-11-04T13:40:04.401Z" }, - { url = "https://files.pythonhosted.org/packages/00/b5/0e8e4b5b081eac6cb3dbb7e60a65907549a1ce035a724368c330112adfdd/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:65840751b72fbfd82c3c640cff9284545342a4f1eb1586ad0636955b261b0b05", size = 2208504, upload-time = "2025-11-04T13:40:06.072Z" }, - { url = "https://files.pythonhosted.org/packages/77/56/87a61aad59c7c5b9dc8caad5a41a5545cba3810c3e828708b3d7404f6cef/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e536c98a7626a98feb2d3eaf75944ef6f3dbee447e1f841eae16f2f0a72d8ddc", size = 2335816, upload-time = "2025-11-04T13:40:07.835Z" }, - { url = "https://files.pythonhosted.org/packages/0d/76/941cc9f73529988688a665a5c0ecff1112b3d95ab48f81db5f7606f522d3/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eceb81a8d74f9267ef4081e246ffd6d129da5d87e37a77c9bde550cb04870c1c", size = 2075366, upload-time = "2025-11-04T13:40:09.804Z" }, - { url = "https://files.pythonhosted.org/packages/d3/43/ebef01f69baa07a482844faaa0a591bad1ef129253ffd0cdaa9d8a7f72d3/pydantic_core-2.41.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d38548150c39b74aeeb0ce8ee1d8e82696f4a4e16ddc6de7b1d8823f7de4b9b5", size = 2171698, upload-time = "2025-11-04T13:40:12.004Z" }, - { url = "https://files.pythonhosted.org/packages/b1/87/41f3202e4193e3bacfc2c065fab7706ebe81af46a83d3e27605029c1f5a6/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c23e27686783f60290e36827f9c626e63154b82b116d7fe9adba1fda36da706c", size = 2132603, upload-time = "2025-11-04T13:40:13.868Z" }, - { url = "https://files.pythonhosted.org/packages/49/7d/4c00df99cb12070b6bccdef4a195255e6020a550d572768d92cc54dba91a/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:482c982f814460eabe1d3bb0adfdc583387bd4691ef00b90575ca0d2b6fe2294", size = 2329591, upload-time = "2025-11-04T13:40:15.672Z" }, - { url = "https://files.pythonhosted.org/packages/cc/6a/ebf4b1d65d458f3cda6a7335d141305dfa19bdc61140a884d165a8a1bbc7/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bfea2a5f0b4d8d43adf9d7b8bf019fb46fdd10a2e5cde477fbcb9d1fa08c68e1", size = 2319068, upload-time = "2025-11-04T13:40:17.532Z" }, - { url = "https://files.pythonhosted.org/packages/49/3b/774f2b5cd4192d5ab75870ce4381fd89cf218af999515baf07e7206753f0/pydantic_core-2.41.5-cp312-cp312-win32.whl", hash = "sha256:b74557b16e390ec12dca509bce9264c3bbd128f8a2c376eaa68003d7f327276d", size = 1985908, upload-time = "2025-11-04T13:40:19.309Z" }, - { url = "https://files.pythonhosted.org/packages/86/45/00173a033c801cacf67c190fef088789394feaf88a98a7035b0e40d53dc9/pydantic_core-2.41.5-cp312-cp312-win_amd64.whl", hash = "sha256:1962293292865bca8e54702b08a4f26da73adc83dd1fcf26fbc875b35d81c815", size = 2020145, upload-time = "2025-11-04T13:40:21.548Z" }, - { url = "https://files.pythonhosted.org/packages/f9/22/91fbc821fa6d261b376a3f73809f907cec5ca6025642c463d3488aad22fb/pydantic_core-2.41.5-cp312-cp312-win_arm64.whl", hash = "sha256:1746d4a3d9a794cacae06a5eaaccb4b8643a131d45fbc9af23e353dc0a5ba5c3", size = 1976179, upload-time = "2025-11-04T13:40:23.393Z" }, - { url = "https://files.pythonhosted.org/packages/87/06/8806241ff1f70d9939f9af039c6c35f2360cf16e93c2ca76f184e76b1564/pydantic_core-2.41.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:941103c9be18ac8daf7b7adca8228f8ed6bb7a1849020f643b3a14d15b1924d9", size = 2120403, upload-time = "2025-11-04T13:40:25.248Z" }, - { url = "https://files.pythonhosted.org/packages/94/02/abfa0e0bda67faa65fef1c84971c7e45928e108fe24333c81f3bfe35d5f5/pydantic_core-2.41.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:112e305c3314f40c93998e567879e887a3160bb8689ef3d2c04b6cc62c33ac34", size = 1896206, upload-time = "2025-11-04T13:40:27.099Z" }, - { url = "https://files.pythonhosted.org/packages/15/df/a4c740c0943e93e6500f9eb23f4ca7ec9bf71b19e608ae5b579678c8d02f/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbaad15cb0c90aa221d43c00e77bb33c93e8d36e0bf74760cd00e732d10a6a0", size = 1919307, upload-time = "2025-11-04T13:40:29.806Z" }, - { url = "https://files.pythonhosted.org/packages/9a/e3/6324802931ae1d123528988e0e86587c2072ac2e5394b4bc2bc34b61ff6e/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:03ca43e12fab6023fc79d28ca6b39b05f794ad08ec2feccc59a339b02f2b3d33", size = 2063258, upload-time = "2025-11-04T13:40:33.544Z" }, - { url = "https://files.pythonhosted.org/packages/c9/d4/2230d7151d4957dd79c3044ea26346c148c98fbf0ee6ebd41056f2d62ab5/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc799088c08fa04e43144b164feb0c13f9a0bc40503f8df3e9fde58a3c0c101e", size = 2214917, upload-time = "2025-11-04T13:40:35.479Z" }, - { url = "https://files.pythonhosted.org/packages/e6/9f/eaac5df17a3672fef0081b6c1bb0b82b33ee89aa5cec0d7b05f52fd4a1fa/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97aeba56665b4c3235a0e52b2c2f5ae9cd071b8a8310ad27bddb3f7fb30e9aa2", size = 2332186, upload-time = "2025-11-04T13:40:37.436Z" }, - { url = "https://files.pythonhosted.org/packages/cf/4e/35a80cae583a37cf15604b44240e45c05e04e86f9cfd766623149297e971/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:406bf18d345822d6c21366031003612b9c77b3e29ffdb0f612367352aab7d586", size = 2073164, upload-time = "2025-11-04T13:40:40.289Z" }, - { url = "https://files.pythonhosted.org/packages/bf/e3/f6e262673c6140dd3305d144d032f7bd5f7497d3871c1428521f19f9efa2/pydantic_core-2.41.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b93590ae81f7010dbe380cdeab6f515902ebcbefe0b9327cc4804d74e93ae69d", size = 2179146, upload-time = "2025-11-04T13:40:42.809Z" }, - { url = "https://files.pythonhosted.org/packages/75/c7/20bd7fc05f0c6ea2056a4565c6f36f8968c0924f19b7d97bbfea55780e73/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:01a3d0ab748ee531f4ea6c3e48ad9dac84ddba4b0d82291f87248f2f9de8d740", size = 2137788, upload-time = "2025-11-04T13:40:44.752Z" }, - { url = "https://files.pythonhosted.org/packages/3a/8d/34318ef985c45196e004bc46c6eab2eda437e744c124ef0dbe1ff2c9d06b/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:6561e94ba9dacc9c61bce40e2d6bdc3bfaa0259d3ff36ace3b1e6901936d2e3e", size = 2340133, upload-time = "2025-11-04T13:40:46.66Z" }, - { url = "https://files.pythonhosted.org/packages/9c/59/013626bf8c78a5a5d9350d12e7697d3d4de951a75565496abd40ccd46bee/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:915c3d10f81bec3a74fbd4faebe8391013ba61e5a1a8d48c4455b923bdda7858", size = 2324852, upload-time = "2025-11-04T13:40:48.575Z" }, - { url = "https://files.pythonhosted.org/packages/1a/d9/c248c103856f807ef70c18a4f986693a46a8ffe1602e5d361485da502d20/pydantic_core-2.41.5-cp313-cp313-win32.whl", hash = "sha256:650ae77860b45cfa6e2cdafc42618ceafab3a2d9a3811fcfbd3bbf8ac3c40d36", size = 1994679, upload-time = "2025-11-04T13:40:50.619Z" }, - { url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl", hash = "sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11", size = 2019766, upload-time = "2025-11-04T13:40:52.631Z" }, - { url = "https://files.pythonhosted.org/packages/73/7d/f2f9db34af103bea3e09735bb40b021788a5e834c81eedb541991badf8f5/pydantic_core-2.41.5-cp313-cp313-win_arm64.whl", hash = "sha256:3f84d5c1b4ab906093bdc1ff10484838aca54ef08de4afa9de0f5f14d69639cd", size = 1981005, upload-time = "2025-11-04T13:40:54.734Z" }, - { url = "https://files.pythonhosted.org/packages/ea/28/46b7c5c9635ae96ea0fbb779e271a38129df2550f763937659ee6c5dbc65/pydantic_core-2.41.5-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:3f37a19d7ebcdd20b96485056ba9e8b304e27d9904d233d7b1015db320e51f0a", size = 2119622, upload-time = "2025-11-04T13:40:56.68Z" }, - { url = "https://files.pythonhosted.org/packages/74/1a/145646e5687e8d9a1e8d09acb278c8535ebe9e972e1f162ed338a622f193/pydantic_core-2.41.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1d1d9764366c73f996edd17abb6d9d7649a7eb690006ab6adbda117717099b14", size = 1891725, upload-time = "2025-11-04T13:40:58.807Z" }, - { url = "https://files.pythonhosted.org/packages/23/04/e89c29e267b8060b40dca97bfc64a19b2a3cf99018167ea1677d96368273/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25e1c2af0fce638d5f1988b686f3b3ea8cd7de5f244ca147c777769e798a9cd1", size = 1915040, upload-time = "2025-11-04T13:41:00.853Z" }, - { url = "https://files.pythonhosted.org/packages/84/a3/15a82ac7bd97992a82257f777b3583d3e84bdb06ba6858f745daa2ec8a85/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:506d766a8727beef16b7adaeb8ee6217c64fc813646b424d0804d67c16eddb66", size = 2063691, upload-time = "2025-11-04T13:41:03.504Z" }, - { url = "https://files.pythonhosted.org/packages/74/9b/0046701313c6ef08c0c1cf0e028c67c770a4e1275ca73131563c5f2a310a/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4819fa52133c9aa3c387b3328f25c1facc356491e6135b459f1de698ff64d869", size = 2213897, upload-time = "2025-11-04T13:41:05.804Z" }, - { url = "https://files.pythonhosted.org/packages/8a/cd/6bac76ecd1b27e75a95ca3a9a559c643b3afcd2dd62086d4b7a32a18b169/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b761d210c9ea91feda40d25b4efe82a1707da2ef62901466a42492c028553a2", size = 2333302, upload-time = "2025-11-04T13:41:07.809Z" }, - { url = "https://files.pythonhosted.org/packages/4c/d2/ef2074dc020dd6e109611a8be4449b98cd25e1b9b8a303c2f0fca2f2bcf7/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375", size = 2064877, upload-time = "2025-11-04T13:41:09.827Z" }, - { url = "https://files.pythonhosted.org/packages/18/66/e9db17a9a763d72f03de903883c057b2592c09509ccfe468187f2a2eef29/pydantic_core-2.41.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2782c870e99878c634505236d81e5443092fba820f0373997ff75f90f68cd553", size = 2180680, upload-time = "2025-11-04T13:41:12.379Z" }, - { url = "https://files.pythonhosted.org/packages/d3/9e/3ce66cebb929f3ced22be85d4c2399b8e85b622db77dad36b73c5387f8f8/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:0177272f88ab8312479336e1d777f6b124537d47f2123f89cb37e0accea97f90", size = 2138960, upload-time = "2025-11-04T13:41:14.627Z" }, - { url = "https://files.pythonhosted.org/packages/a6/62/205a998f4327d2079326b01abee48e502ea739d174f0a89295c481a2272e/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:63510af5e38f8955b8ee5687740d6ebf7c2a0886d15a6d65c32814613681bc07", size = 2339102, upload-time = "2025-11-04T13:41:16.868Z" }, - { url = "https://files.pythonhosted.org/packages/3c/0d/f05e79471e889d74d3d88f5bd20d0ed189ad94c2423d81ff8d0000aab4ff/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:e56ba91f47764cc14f1daacd723e3e82d1a89d783f0f5afe9c364b8bb491ccdb", size = 2326039, upload-time = "2025-11-04T13:41:18.934Z" }, - { url = "https://files.pythonhosted.org/packages/ec/e1/e08a6208bb100da7e0c4b288eed624a703f4d129bde2da475721a80cab32/pydantic_core-2.41.5-cp314-cp314-win32.whl", hash = "sha256:aec5cf2fd867b4ff45b9959f8b20ea3993fc93e63c7363fe6851424c8a7e7c23", size = 1995126, upload-time = "2025-11-04T13:41:21.418Z" }, - { url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl", hash = "sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf", size = 2015489, upload-time = "2025-11-04T13:41:24.076Z" }, - { url = "https://files.pythonhosted.org/packages/4e/bb/f7a190991ec9e3e0ba22e4993d8755bbc4a32925c0b5b42775c03e8148f9/pydantic_core-2.41.5-cp314-cp314-win_arm64.whl", hash = "sha256:e672ba74fbc2dc8eea59fb6d4aed6845e6905fc2a8afe93175d94a83ba2a01a0", size = 1977288, upload-time = "2025-11-04T13:41:26.33Z" }, - { url = "https://files.pythonhosted.org/packages/92/ed/77542d0c51538e32e15afe7899d79efce4b81eee631d99850edc2f5e9349/pydantic_core-2.41.5-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:8566def80554c3faa0e65ac30ab0932b9e3a5cd7f8323764303d468e5c37595a", size = 2120255, upload-time = "2025-11-04T13:41:28.569Z" }, - { url = "https://files.pythonhosted.org/packages/bb/3d/6913dde84d5be21e284439676168b28d8bbba5600d838b9dca99de0fad71/pydantic_core-2.41.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:b80aa5095cd3109962a298ce14110ae16b8c1aece8b72f9dafe81cf597ad80b3", size = 1863760, upload-time = "2025-11-04T13:41:31.055Z" }, - { url = "https://files.pythonhosted.org/packages/5a/f0/e5e6b99d4191da102f2b0eb9687aaa7f5bea5d9964071a84effc3e40f997/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3006c3dd9ba34b0c094c544c6006cc79e87d8612999f1a5d43b769b89181f23c", size = 1878092, upload-time = "2025-11-04T13:41:33.21Z" }, - { url = "https://files.pythonhosted.org/packages/71/48/36fb760642d568925953bcc8116455513d6e34c4beaa37544118c36aba6d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:72f6c8b11857a856bcfa48c86f5368439f74453563f951e473514579d44aa612", size = 2053385, upload-time = "2025-11-04T13:41:35.508Z" }, - { url = "https://files.pythonhosted.org/packages/20/25/92dc684dd8eb75a234bc1c764b4210cf2646479d54b47bf46061657292a8/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5cb1b2f9742240e4bb26b652a5aeb840aa4b417c7748b6f8387927bc6e45e40d", size = 2218832, upload-time = "2025-11-04T13:41:37.732Z" }, - { url = "https://files.pythonhosted.org/packages/e2/09/f53e0b05023d3e30357d82eb35835d0f6340ca344720a4599cd663dca599/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bd3d54f38609ff308209bd43acea66061494157703364ae40c951f83ba99a1a9", size = 2327585, upload-time = "2025-11-04T13:41:40Z" }, - { url = "https://files.pythonhosted.org/packages/aa/4e/2ae1aa85d6af35a39b236b1b1641de73f5a6ac4d5a7509f77b814885760c/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ff4321e56e879ee8d2a879501c8e469414d948f4aba74a2d4593184eb326660", size = 2041078, upload-time = "2025-11-04T13:41:42.323Z" }, - { url = "https://files.pythonhosted.org/packages/cd/13/2e215f17f0ef326fc72afe94776edb77525142c693767fc347ed6288728d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0d2568a8c11bf8225044aa94409e21da0cb09dcdafe9ecd10250b2baad531a9", size = 2173914, upload-time = "2025-11-04T13:41:45.221Z" }, - { url = "https://files.pythonhosted.org/packages/02/7a/f999a6dcbcd0e5660bc348a3991c8915ce6599f4f2c6ac22f01d7a10816c/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:a39455728aabd58ceabb03c90e12f71fd30fa69615760a075b9fec596456ccc3", size = 2129560, upload-time = "2025-11-04T13:41:47.474Z" }, - { url = "https://files.pythonhosted.org/packages/3a/b1/6c990ac65e3b4c079a4fb9f5b05f5b013afa0f4ed6780a3dd236d2cbdc64/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:239edca560d05757817c13dc17c50766136d21f7cd0fac50295499ae24f90fdf", size = 2329244, upload-time = "2025-11-04T13:41:49.992Z" }, - { url = "https://files.pythonhosted.org/packages/d9/02/3c562f3a51afd4d88fff8dffb1771b30cfdfd79befd9883ee094f5b6c0d8/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:2a5e06546e19f24c6a96a129142a75cee553cc018ffee48a460059b1185f4470", size = 2331955, upload-time = "2025-11-04T13:41:54.079Z" }, - { url = "https://files.pythonhosted.org/packages/5c/96/5fb7d8c3c17bc8c62fdb031c47d77a1af698f1d7a406b0f79aaa1338f9ad/pydantic_core-2.41.5-cp314-cp314t-win32.whl", hash = "sha256:b4ececa40ac28afa90871c2cc2b9ffd2ff0bf749380fbdf57d165fd23da353aa", size = 1988906, upload-time = "2025-11-04T13:41:56.606Z" }, - { url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl", hash = "sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c", size = 1981607, upload-time = "2025-11-04T13:41:58.889Z" }, - { url = "https://files.pythonhosted.org/packages/9f/ed/068e41660b832bb0b1aa5b58011dea2a3fe0ba7861ff38c4d4904c1c1a99/pydantic_core-2.41.5-cp314-cp314t-win_arm64.whl", hash = "sha256:35b44f37a3199f771c3eaa53051bc8a70cd7b54f333531c59e29fd4db5d15008", size = 1974769, upload-time = "2025-11-04T13:42:01.186Z" }, - { url = "https://files.pythonhosted.org/packages/11/72/90fda5ee3b97e51c494938a4a44c3a35a9c96c19bba12372fb9c634d6f57/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-macosx_10_12_x86_64.whl", hash = "sha256:b96d5f26b05d03cc60f11a7761a5ded1741da411e7fe0909e27a5e6a0cb7b034", size = 2115441, upload-time = "2025-11-04T13:42:39.557Z" }, - { url = "https://files.pythonhosted.org/packages/1f/53/8942f884fa33f50794f119012dc6a1a02ac43a56407adaac20463df8e98f/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-macosx_11_0_arm64.whl", hash = "sha256:634e8609e89ceecea15e2d61bc9ac3718caaaa71963717bf3c8f38bfde64242c", size = 1930291, upload-time = "2025-11-04T13:42:42.169Z" }, - { url = "https://files.pythonhosted.org/packages/79/c8/ecb9ed9cd942bce09fc888ee960b52654fbdbede4ba6c2d6e0d3b1d8b49c/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:93e8740d7503eb008aa2df04d3b9735f845d43ae845e6dcd2be0b55a2da43cd2", size = 1948632, upload-time = "2025-11-04T13:42:44.564Z" }, - { url = "https://files.pythonhosted.org/packages/2e/1b/687711069de7efa6af934e74f601e2a4307365e8fdc404703afc453eab26/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f15489ba13d61f670dcc96772e733aad1a6f9c429cc27574c6cdaed82d0146ad", size = 2138905, upload-time = "2025-11-04T13:42:47.156Z" }, - { url = "https://files.pythonhosted.org/packages/09/32/59b0c7e63e277fa7911c2fc70ccfb45ce4b98991e7ef37110663437005af/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_10_12_x86_64.whl", hash = "sha256:7da7087d756b19037bc2c06edc6c170eeef3c3bafcb8f532ff17d64dc427adfd", size = 2110495, upload-time = "2025-11-04T13:42:49.689Z" }, - { url = "https://files.pythonhosted.org/packages/aa/81/05e400037eaf55ad400bcd318c05bb345b57e708887f07ddb2d20e3f0e98/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:aabf5777b5c8ca26f7824cb4a120a740c9588ed58df9b2d196ce92fba42ff8dc", size = 1915388, upload-time = "2025-11-04T13:42:52.215Z" }, - { url = "https://files.pythonhosted.org/packages/6e/0d/e3549b2399f71d56476b77dbf3cf8937cec5cd70536bdc0e374a421d0599/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c007fe8a43d43b3969e8469004e9845944f1a80e6acd47c150856bb87f230c56", size = 1942879, upload-time = "2025-11-04T13:42:56.483Z" }, - { url = "https://files.pythonhosted.org/packages/f7/07/34573da085946b6a313d7c42f82f16e8920bfd730665de2d11c0c37a74b5/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76d0819de158cd855d1cbb8fcafdf6f5cf1eb8e470abe056d5d161106e38062b", size = 2139017, upload-time = "2025-11-04T13:42:59.471Z" }, - { url = "https://files.pythonhosted.org/packages/e6/b0/1a2aa41e3b5a4ba11420aba2d091b2d17959c8d1519ece3627c371951e73/pydantic_core-2.41.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:b5819cd790dbf0c5eb9f82c73c16b39a65dd6dd4d1439dcdea7816ec9adddab8", size = 2103351, upload-time = "2025-11-04T13:43:02.058Z" }, - { url = "https://files.pythonhosted.org/packages/a4/ee/31b1f0020baaf6d091c87900ae05c6aeae101fa4e188e1613c80e4f1ea31/pydantic_core-2.41.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:5a4e67afbc95fa5c34cf27d9089bca7fcab4e51e57278d710320a70b956d1b9a", size = 1925363, upload-time = "2025-11-04T13:43:05.159Z" }, - { url = "https://files.pythonhosted.org/packages/e1/89/ab8e86208467e467a80deaca4e434adac37b10a9d134cd2f99b28a01e483/pydantic_core-2.41.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ece5c59f0ce7d001e017643d8d24da587ea1f74f6993467d85ae8a5ef9d4f42b", size = 2135615, upload-time = "2025-11-04T13:43:08.116Z" }, - { url = "https://files.pythonhosted.org/packages/99/0a/99a53d06dd0348b2008f2f30884b34719c323f16c3be4e6cc1203b74a91d/pydantic_core-2.41.5-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:16f80f7abe3351f8ea6858914ddc8c77e02578544a0ebc15b4c2e1a0e813b0b2", size = 2175369, upload-time = "2025-11-04T13:43:12.49Z" }, - { url = "https://files.pythonhosted.org/packages/6d/94/30ca3b73c6d485b9bb0bc66e611cff4a7138ff9736b7e66bcf0852151636/pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:33cb885e759a705b426baada1fe68cbb0a2e68e34c5d0d0289a364cf01709093", size = 2144218, upload-time = "2025-11-04T13:43:15.431Z" }, - { url = "https://files.pythonhosted.org/packages/87/57/31b4f8e12680b739a91f472b5671294236b82586889ef764b5fbc6669238/pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:c8d8b4eb992936023be7dee581270af5c6e0697a8559895f527f5b7105ecd36a", size = 2329951, upload-time = "2025-11-04T13:43:18.062Z" }, - { url = "https://files.pythonhosted.org/packages/7d/73/3c2c8edef77b8f7310e6fb012dbc4b8551386ed575b9eb6fb2506e28a7eb/pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:242a206cd0318f95cd21bdacff3fcc3aab23e79bba5cac3db5a841c9ef9c6963", size = 2318428, upload-time = "2025-11-04T13:43:20.679Z" }, - { url = "https://files.pythonhosted.org/packages/2f/02/8559b1f26ee0d502c74f9cca5c0d2fd97e967e083e006bbbb4e97f3a043a/pydantic_core-2.41.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:d3a978c4f57a597908b7e697229d996d77a6d3c94901e9edee593adada95ce1a", size = 2147009, upload-time = "2025-11-04T13:43:23.286Z" }, - { url = "https://files.pythonhosted.org/packages/5f/9b/1b3f0e9f9305839d7e84912f9e8bfbd191ed1b1ef48083609f0dabde978c/pydantic_core-2.41.5-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:b2379fa7ed44ddecb5bfe4e48577d752db9fc10be00a6b7446e9663ba143de26", size = 2101980, upload-time = "2025-11-04T13:43:25.97Z" }, - { url = "https://files.pythonhosted.org/packages/a4/ed/d71fefcb4263df0da6a85b5d8a7508360f2f2e9b3bf5814be9c8bccdccc1/pydantic_core-2.41.5-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:266fb4cbf5e3cbd0b53669a6d1b039c45e3ce651fd5442eff4d07c2cc8d66808", size = 1923865, upload-time = "2025-11-04T13:43:28.763Z" }, - { url = "https://files.pythonhosted.org/packages/ce/3a/626b38db460d675f873e4444b4bb030453bbe7b4ba55df821d026a0493c4/pydantic_core-2.41.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58133647260ea01e4d0500089a8c4f07bd7aa6ce109682b1426394988d8aaacc", size = 2134256, upload-time = "2025-11-04T13:43:31.71Z" }, - { url = "https://files.pythonhosted.org/packages/83/d9/8412d7f06f616bbc053d30cb4e5f76786af3221462ad5eee1f202021eb4e/pydantic_core-2.41.5-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:287dad91cfb551c363dc62899a80e9e14da1f0e2b6ebde82c806612ca2a13ef1", size = 2174762, upload-time = "2025-11-04T13:43:34.744Z" }, - { url = "https://files.pythonhosted.org/packages/55/4c/162d906b8e3ba3a99354e20faa1b49a85206c47de97a639510a0e673f5da/pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:03b77d184b9eb40240ae9fd676ca364ce1085f203e1b1256f8ab9984dca80a84", size = 2143141, upload-time = "2025-11-04T13:43:37.701Z" }, - { url = "https://files.pythonhosted.org/packages/1f/f2/f11dd73284122713f5f89fc940f370d035fa8e1e078d446b3313955157fe/pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:a668ce24de96165bb239160b3d854943128f4334822900534f2fe947930e5770", size = 2330317, upload-time = "2025-11-04T13:43:40.406Z" }, - { url = "https://files.pythonhosted.org/packages/88/9d/b06ca6acfe4abb296110fb1273a4d848a0bfb2ff65f3ee92127b3244e16b/pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f14f8f046c14563f8eb3f45f499cc658ab8d10072961e07225e507adb700e93f", size = 2316992, upload-time = "2025-11-04T13:43:43.602Z" }, - { url = "https://files.pythonhosted.org/packages/36/c7/cfc8e811f061c841d7990b0201912c3556bfeb99cdcb7ed24adc8d6f8704/pydantic_core-2.41.5-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:56121965f7a4dc965bff783d70b907ddf3d57f6eba29b6d2e5dabfaf07799c51", size = 2145302, upload-time = "2025-11-04T13:43:46.64Z" }, + { url = "https://files.pythonhosted.org/packages/ed/12/72633da8bf0428fd0a7d2915073f4bc03fcdc2ebc0f703e56af597ac45db/pydantic-1.7.4-py3-none-any.whl", hash = "sha256:a82385c6d5a77e3387e94612e3e34b77e13c39ff1295c26e3ba664e7b98073e2", size = 107885, upload-time = "2021-05-11T19:53:11.513Z" }, ] [[package]] @@ -5913,18 +5783,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/65/f3/107a22063bf27bdccf2024833d3445f4eea42b2e598abfbd46f6a63b6cb0/typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f", size = 8827, upload-time = "2023-05-24T20:25:45.287Z" }, ] -[[package]] -name = "typing-inspection" -version = "0.4.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "typing-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7", size = 14611, upload-time = "2025-10-01T02:14:40.154Z" }, -] - [[package]] name = "tzdata" version = "2025.2" From 21a481a012ade58ec351aec0116efa3f10a9cb3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 10:38:15 +0000 Subject: [PATCH 24/27] bump MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- pyproject.toml | 8 +- uv.lock | 259 ++++++++++++++++++++++++++++++++++++------------- 2 files changed, 193 insertions(+), 74 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 5bacc5dc85d..2d7517914a0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -67,9 +67,9 @@ Homepage = "https://github.com/NVIDIA/Megatron-LM/megatron/core" mlm = ["flask-restful", "sentencepiece", "tiktoken", "wandb", "transformers"] dev = [ - "nvidia-modelopt[torch]; sys_platform != 'darwin'", + "nvidia-modelopt[torch]>=0.33.0a0,<0.34.0; sys_platform != 'darwin'", "transformer-engine[pytorch]>=2.9.0a0,<2.10.0", - "nvidia-resiliency-ext", + "nvidia-resiliency-ext>=0.4.0a0,<0.5.0", "tqdm", "einops~=0.8", "tensorstore~=0.1,!=0.1.46,!=0.1.72", @@ -81,13 +81,12 @@ dev = [ "causal-conv1d~=1.5", "nv-grouped-gemm~=1.1", "megatron-energon[av_decode]~=6.0", - "av<16.0.0", # At the time, av 16.0.0 is not compatible with Python 3.12 + "av<16.0.0", # At the time, av 16.0.0 is not compatible with Python 3.12 "flashinfer-python", "wget", "onnxscript", "flash-linear-attention~=0.3.2", "emerging_optimizers", - "pydantic<1.8.0", ] lts = [ @@ -170,7 +169,6 @@ override-dependencies = [ "torch; sys_platform == 'never'", "torchvision; sys_platform == 'never'", "triton; sys_platform == 'never'", - "pydantic<1.8.0", ] [tool.uv.sources] diff --git a/uv.lock b/uv.lock index f832d8adeec..4ea6cd2ac31 100644 --- a/uv.lock +++ b/uv.lock @@ -20,7 +20,6 @@ conflicts = [[ [manifest] overrides = [ - { name = "pydantic", specifier = "<1.8.0" }, { name = "torch", marker = "sys_platform == 'never'" }, { name = "torchvision", marker = "sys_platform == 'never'" }, { name = "triton", marker = "sys_platform == 'never'" }, @@ -234,6 +233,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/59/75/e0e10dc7ed1408c28e03a6cb2d7a407f99320eb953f229d008a7a6d05546/aniso8601-10.0.1-py2.py3-none-any.whl", hash = "sha256:eb19717fd4e0db6de1aab06f12450ab92144246b257423fe020af5748c0cb89e", size = 52848, upload-time = "2025-04-18T17:29:41.492Z" }, ] +[[package]] +name = "annotated-types" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" }, +] + [[package]] name = "antlr4-python3-runtime" version = "4.9.3" @@ -2220,7 +2228,6 @@ dev = [ { name = "onnxscript", version = "0.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "onnxscript", version = "0.5.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "opentelemetry-api" }, - { name = "pydantic" }, { name = "setuptools" }, { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tensorstore", version = "0.1.79", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, @@ -2328,8 +2335,8 @@ requires-dist = [ { name = "numpy", specifier = "<2.0.0" }, { name = "nv-grouped-gemm", marker = "extra == 'dev'", specifier = "~=1.1" }, { name = "nv-grouped-gemm", marker = "extra == 'lts'", specifier = "~=1.1" }, - { name = "nvidia-modelopt", extras = ["torch"], marker = "sys_platform != 'darwin' and extra == 'dev'" }, - { name = "nvidia-resiliency-ext", marker = "extra == 'dev'" }, + { name = "nvidia-modelopt", extras = ["torch"], marker = "sys_platform != 'darwin' and extra == 'dev'", specifier = ">=0.33.0a0,<0.34.0" }, + { name = "nvidia-resiliency-ext", marker = "extra == 'dev'", specifier = ">=0.4.0a0,<0.5.0" }, { name = "nvtx", marker = "extra == 'dev'", specifier = "~=0.2" }, { name = "nvtx", marker = "extra == 'lts'", specifier = "~=0.2" }, { name = "onnxscript", marker = "extra == 'dev'" }, @@ -2337,7 +2344,6 @@ requires-dist = [ { name = "opentelemetry-api", marker = "extra == 'dev'", specifier = "~=1.33.1" }, { name = "opentelemetry-api", marker = "extra == 'lts'", specifier = "~=1.33.1" }, { name = "packaging", specifier = ">=24.2" }, - { name = "pydantic", marker = "extra == 'dev'", specifier = "<1.8.0" }, { name = "sentencepiece", marker = "extra == 'mlm'" }, { name = "setuptools", marker = "extra == 'dev'", specifier = "<80.0.0" }, { name = "setuptools", marker = "extra == 'lts'", specifier = "<80.0.0" }, @@ -2945,36 +2951,6 @@ dependencies = [ ] sdist = { url = "https://files.pythonhosted.org/packages/05/79/87c45f32e661b25e0aaa1e325ba166511f57be5dff8f0fcabc12d3e73b64/nv_grouped_gemm-1.1.4.post6.tar.gz", hash = "sha256:dad6115f4b4ff7ceb0bc40ad44e923c13a24fc88cfe1e20b1a6b4c9cf24c445c", size = 26508, upload-time = "2025-10-10T18:52:29.508Z" } -[[package]] -name = "nv-one-logger-core" -version = "2.3.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "overrides" }, - { name = "pydantic" }, - { name = "strenum" }, - { name = "toml" }, - { name = "typing-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/3b/37/963095797035f371e0db6ea761f5aaccb624fc786af217115b423baeb0e2/nv_one_logger_core-2.3.1.tar.gz", hash = "sha256:cbb2f87604c78b96a302f32d87199902129d76153a73a20f8455a250b3246c1d", size = 52640, upload-time = "2025-10-29T21:11:55.812Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ee/c4/ea91554c4fcbff66057f667690101d7a4b965605741350ac661b03fa6c46/nv_one_logger_core-2.3.1-py3-none-any.whl", hash = "sha256:0c8b77bcdac4daa1ea913bf8d4afd2a057bd5526e3654ac39f67caba157341a6", size = 63066, upload-time = "2025-10-29T21:11:52.753Z" }, -] - -[[package]] -name = "nv-one-logger-training-telemetry" -version = "2.3.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "nv-one-logger-core" }, - { name = "strenum" }, - { name = "typing-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/c5/21/016fa067967734d52f1ccf5a2a37a1a65216f2d7053bc2b85872cce956ca/nv_one_logger_training_telemetry-2.3.1.tar.gz", hash = "sha256:8c67940ea71799afaf1f46df3ba2f52f93aea26321c6f1c1d54aae02efc2a4af", size = 44435, upload-time = "2025-10-29T21:21:42.035Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/e5/15/97e6e4ddfe5fc35bcee74a45b7c33fb73abb83713c7dfa26420b971a86c3/nv_one_logger_training_telemetry-2.3.1-py3-none-any.whl", hash = "sha256:5319443829b59378a498c3c62ac98973e14f31be675c229ff2b14e2fe109aa0b", size = 44140, upload-time = "2025-10-29T21:21:40.72Z" }, -] - [[package]] name = "nvidia-cublas-cu12" version = "12.8.4.1" @@ -3156,12 +3132,13 @@ wheels = [ [[package]] name = "nvidia-modelopt" -version = "0.39.0" +version = "0.33.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "ninja" }, { name = "numpy" }, { name = "nvidia-ml-py" }, + { name = "nvidia-modelopt-core" }, { name = "packaging" }, { name = "pulp" }, { name = "pydantic" }, @@ -3172,10 +3149,25 @@ dependencies = [ { name = "scipy", version = "1.16.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "torch", marker = "sys_platform == 'never'" }, { name = "torchprofile" }, + { name = "torchvision", marker = "sys_platform == 'never'" }, { name = "tqdm" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/b0/d5/b03ad3ffa28984b629a72da678fa98f912fc45bac3b514c4a70cf2a82fe3/nvidia_modelopt-0.39.0-py3-none-any.whl", hash = "sha256:32f05317c81be1ff2ffeab749e5258b7bea8e4c6e60a09c760584f25ad03f648", size = 864981, upload-time = "2025-11-13T07:35:42.761Z" }, + { url = "https://files.pythonhosted.org/packages/ca/cb/4af39357792a96f334c7877ea0380c9337aec210ff4794a7dd95beb7c349/nvidia_modelopt-0.33.1-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:6c51091683a117cd40fdb96a0ec28579f2276f6b627db7ccddc370df544e1dd7", size = 751683, upload-time = "2025-08-12T18:37:48.832Z" }, + { url = "https://files.pythonhosted.org/packages/0a/b1/fc2f468d140ef58e90fac584759d0cc449db9bc4f64668cdff750ef38fef/nvidia_modelopt-0.33.1-py3-none-manylinux_2_28_x86_64.whl", hash = "sha256:ef78a98901890f265596ec413dffac177d4a1865201d89a14f29f4fa0cf8e710", size = 751683, upload-time = "2025-08-12T18:36:59.964Z" }, +] + +[[package]] +name = "nvidia-modelopt-core" +version = "0.33.1" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/21/d12ca11f5554340684d11958aae6c6e7755cf0aaae10a2d2c9db217228cf/nvidia_modelopt_core-0.33.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:f25f6a817609c693ee39d1bcf2d3aeef462b9769f971590133de8b1b0310885b", size = 1307716, upload-time = "2025-08-12T18:41:12.086Z" }, + { url = "https://files.pythonhosted.org/packages/eb/df/7bead24d4854274d9f2818f1ae780fc24260aab60b7b6f73e1af4f056ce5/nvidia_modelopt_core-0.33.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:195f32f06d19bc9f9d858811f1864bddcc1db6278974d98ea6309cb3553427f1", size = 1326896, upload-time = "2025-08-12T18:39:48.243Z" }, + { url = "https://files.pythonhosted.org/packages/a1/36/3318980c670292d827ace5ac6110ab6054d0f2d87e507382842ea9e7c78f/nvidia_modelopt_core-0.33.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:ffd008a90d8867660ae41c98002156b526e368a4cdf39e225fe20f478adce8b2", size = 1376104, upload-time = "2025-08-12T18:41:47.358Z" }, + { url = "https://files.pythonhosted.org/packages/27/97/99d1ddabe01ab262c18621619c996e1c2c119bc058607d2bc9ce7eb85fe7/nvidia_modelopt_core-0.33.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:be49121b2f74db4cb73955396a7bb83935d92232c5a20bcfd7b8e7cae68e482f", size = 1393729, upload-time = "2025-08-12T18:40:07.86Z" }, + { url = "https://files.pythonhosted.org/packages/9b/b5/ba79b1c52b634b24e45dca409f133f947217a5c7ec5c256266e4ec5fa3eb/nvidia_modelopt_core-0.33.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:1ddd9279d8312f8e972b302692a26e6180f1c9fd277232f5925a5589f42b1b76", size = 1338081, upload-time = "2025-08-12T18:40:36.156Z" }, + { url = "https://files.pythonhosted.org/packages/13/40/4427583475dfd8eb1b8c7522d75d4d059f0512ff03dcc62d6986a22ab918/nvidia_modelopt_core-0.33.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:69d5ace564f2b056c916117be2023f2b7fc01cd1501073915e6b2ced2b8a5394", size = 1363366, upload-time = "2025-08-12T18:39:28.854Z" }, ] [[package]] @@ -3218,25 +3210,24 @@ wheels = [ [[package]] name = "nvidia-resiliency-ext" -version = "0.5.0" +version = "0.4.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "defusedxml" }, - { name = "nv-one-logger-core" }, - { name = "nv-one-logger-training-telemetry" }, { name = "nvidia-ml-py" }, { name = "packaging" }, { name = "psutil" }, + { name = "pynvml" }, { name = "pyyaml" }, { name = "torch", marker = "sys_platform == 'never'" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/df/18/1898cad3bdd643c6bfa5f7aee125a5ef308ab1701ab15106e3e9c66bb416/nvidia_resiliency_ext-0.5.0-cp310-cp310-manylinux_2_39_aarch64.whl", hash = "sha256:97d4b68d3949f3b8370addb474d8662d6ac5008c3c1296420cdeb93a88d6a804", size = 402915, upload-time = "2025-11-13T21:28:34.578Z" }, - { url = "https://files.pythonhosted.org/packages/fa/48/10fc3f278898e3b2aacc3bea65f0ac4b579e6e0e8447b467742d75adeec1/nvidia_resiliency_ext-0.5.0-cp310-cp310-manylinux_2_39_x86_64.whl", hash = "sha256:ceb04ec5a7bc9301fd6f14449bda6b0d1f37ead4fbe37aa3bf1d7b2ad5b662d4", size = 406483, upload-time = "2025-11-13T21:28:58.732Z" }, - { url = "https://files.pythonhosted.org/packages/14/17/c19dfed8d4aced307a1c1404f0917ee6c1b319db8092b3cfe2af4e76de6d/nvidia_resiliency_ext-0.5.0-cp311-cp311-manylinux_2_39_aarch64.whl", hash = "sha256:62d396356adcf898cb86a54956eeece29017a41b5872db0b364c8449d23f2f66", size = 404062, upload-time = "2025-11-13T21:29:46.873Z" }, - { url = "https://files.pythonhosted.org/packages/7f/99/b4324595171c3cdffb03cef070006ab9a3de7fca90a22403576ec6423b69/nvidia_resiliency_ext-0.5.0-cp311-cp311-manylinux_2_39_x86_64.whl", hash = "sha256:c4fcd006ef69300f753bb30d17efbb6bcee6699f044e3532209b2825d22e9977", size = 407027, upload-time = "2025-11-13T21:30:09.124Z" }, - { url = "https://files.pythonhosted.org/packages/8c/73/232d9f25558f3c6165ff1d15c980a434b47c13e8f527f999cd265859abcf/nvidia_resiliency_ext-0.5.0-cp312-cp312-manylinux_2_39_aarch64.whl", hash = "sha256:81e3d827885e90bed369e67f76dda6709dd4073c2e5fa1228df85d6987cee495", size = 403317, upload-time = "2025-11-13T21:31:24.603Z" }, - { url = "https://files.pythonhosted.org/packages/44/89/4d7f39416aa3be72ee9f1260a7af56af40f2570f5add1e039d96279a8764/nvidia_resiliency_ext-0.5.0-cp312-cp312-manylinux_2_39_x86_64.whl", hash = "sha256:eb720cd25feabef07f971d4051c7bcac2f9ec73642a9031953d2663307950cb9", size = 407963, upload-time = "2025-11-13T21:30:28.998Z" }, + { url = "https://files.pythonhosted.org/packages/a7/8c/6547d9fdea9730d4f69a19ca492ccbe221768f8473b82502a78a824acc3d/nvidia_resiliency_ext-0.4.1-cp310-cp310-manylinux_2_31_aarch64.whl", hash = "sha256:cf80599411018ebbf03da64769527dee6b37746b72b8606f919b7999633770b8", size = 442891, upload-time = "2025-07-17T03:53:38.878Z" }, + { url = "https://files.pythonhosted.org/packages/34/0d/520cab980949ad11bd5291784fea309bcd6654a9c97943a3a87644c1d111/nvidia_resiliency_ext-0.4.1-cp310-cp310-manylinux_2_31_x86_64.whl", hash = "sha256:0c23e621d598ba436549db83deeb3569c19df0194b89fe6169d62b6ead711be3", size = 448044, upload-time = "2025-07-17T03:48:30.851Z" }, + { url = "https://files.pythonhosted.org/packages/46/77/8cda264b262e2868a4e6ebcddaea112200b1e34b8d5a35a2fe3b4978d137/nvidia_resiliency_ext-0.4.1-cp311-cp311-manylinux_2_31_aarch64.whl", hash = "sha256:d8ca454a8b8abef72e0ff0e33914686c263414e8891471c02a9f6af9d2d6b925", size = 443649, upload-time = "2025-07-17T03:49:16.183Z" }, + { url = "https://files.pythonhosted.org/packages/3a/53/029cc7493b5833cb8dfa201f15a1e422e2e1cc6308d34c5b0a90028a73fd/nvidia_resiliency_ext-0.4.1-cp311-cp311-manylinux_2_31_x86_64.whl", hash = "sha256:dde6034f29350ac6326cdd861ceec641bdd93be0eddbf034739f4cd9452a4dd9", size = 449189, upload-time = "2025-07-17T03:52:15.24Z" }, + { url = "https://files.pythonhosted.org/packages/70/05/38d491962273c7905708762279f440520eb79f3c00b67a023497215ad023/nvidia_resiliency_ext-0.4.1-cp312-cp312-manylinux_2_31_aarch64.whl", hash = "sha256:b3bd5f01535574b16d0f38bca6e39afe3806c4a2896eee1b321cd944e00025a7", size = 444570, upload-time = "2025-07-17T03:50:58.877Z" }, + { url = "https://files.pythonhosted.org/packages/18/8b/4cb8aa2bbdf3705d3034c3f3dacdadb03b3b7dd3dc7f5200e64663fb477f/nvidia_resiliency_ext-0.4.1-cp312-cp312-manylinux_2_31_x86_64.whl", hash = "sha256:ca9f8de465af345952bedbea53c90c0e2323d88cfd830ded0e806fad91845c0e", size = 450280, upload-time = "2025-07-17T03:49:55.327Z" }, ] [[package]] @@ -3433,15 +3424,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/05/44/4c45a34def3506122ae61ad684139f0bbc4e00c39555d4f7e20e0e001c8a/opentelemetry_api-1.33.1-py3-none-any.whl", hash = "sha256:4db83ebcf7ea93e64637ec6ee6fabee45c5cbe4abd9cf3da95c43828ddb50b83", size = 65771, upload-time = "2025-05-16T18:52:17.419Z" }, ] -[[package]] -name = "overrides" -version = "7.7.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/36/86/b585f53236dec60aba864e050778b25045f857e17f6e5ea0ae95fe80edd2/overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a", size = 22812, upload-time = "2024-01-27T21:01:33.423Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49", size = 17832, upload-time = "2024-01-27T21:01:31.393Z" }, -] - [[package]] name = "packaging" version = "25.0" @@ -3957,11 +3939,135 @@ wheels = [ [[package]] name = "pydantic" -version = "1.7.4" +version = "2.12.4" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/2f/91/c0829599e8281492e40ff69a0d88340713a37fb0facd187fabfab53d6915/pydantic-1.7.4.tar.gz", hash = "sha256:0a1abcbd525fbb52da58c813d54c2ec706c31a91afdb75411a73dd1dec036595", size = 225694, upload-time = "2021-05-11T19:53:12.997Z" } +dependencies = [ + { name = "annotated-types" }, + { name = "pydantic-core" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/96/ad/a17bc283d7d81837c061c49e3eaa27a45991759a1b7eae1031921c6bd924/pydantic-2.12.4.tar.gz", hash = "sha256:0f8cb9555000a4b5b617f66bfd2566264c4984b27589d3b845685983e8ea85ac", size = 821038, upload-time = "2025-11-05T10:50:08.59Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/ed/12/72633da8bf0428fd0a7d2915073f4bc03fcdc2ebc0f703e56af597ac45db/pydantic-1.7.4-py3-none-any.whl", hash = "sha256:a82385c6d5a77e3387e94612e3e34b77e13c39ff1295c26e3ba664e7b98073e2", size = 107885, upload-time = "2021-05-11T19:53:11.513Z" }, + { url = "https://files.pythonhosted.org/packages/82/2f/e68750da9b04856e2a7ec56fc6f034a5a79775e9b9a81882252789873798/pydantic-2.12.4-py3-none-any.whl", hash = "sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e", size = 463400, upload-time = "2025-11-05T10:50:06.732Z" }, +] + +[[package]] +name = "pydantic-core" +version = "2.41.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/71/70/23b021c950c2addd24ec408e9ab05d59b035b39d97cdc1130e1bce647bb6/pydantic_core-2.41.5.tar.gz", hash = "sha256:08daa51ea16ad373ffd5e7606252cc32f07bc72b28284b6bc9c6df804816476e", size = 460952, upload-time = "2025-11-04T13:43:49.098Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c6/90/32c9941e728d564b411d574d8ee0cf09b12ec978cb22b294995bae5549a5/pydantic_core-2.41.5-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:77b63866ca88d804225eaa4af3e664c5faf3568cea95360d21f4725ab6e07146", size = 2107298, upload-time = "2025-11-04T13:39:04.116Z" }, + { url = "https://files.pythonhosted.org/packages/fb/a8/61c96a77fe28993d9a6fb0f4127e05430a267b235a124545d79fea46dd65/pydantic_core-2.41.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dfa8a0c812ac681395907e71e1274819dec685fec28273a28905df579ef137e2", size = 1901475, upload-time = "2025-11-04T13:39:06.055Z" }, + { url = "https://files.pythonhosted.org/packages/5d/b6/338abf60225acc18cdc08b4faef592d0310923d19a87fba1faf05af5346e/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5921a4d3ca3aee735d9fd163808f5e8dd6c6972101e4adbda9a4667908849b97", size = 1918815, upload-time = "2025-11-04T13:39:10.41Z" }, + { url = "https://files.pythonhosted.org/packages/d1/1c/2ed0433e682983d8e8cba9c8d8ef274d4791ec6a6f24c58935b90e780e0a/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e25c479382d26a2a41b7ebea1043564a937db462816ea07afa8a44c0866d52f9", size = 2065567, upload-time = "2025-11-04T13:39:12.244Z" }, + { url = "https://files.pythonhosted.org/packages/b3/24/cf84974ee7d6eae06b9e63289b7b8f6549d416b5c199ca2d7ce13bbcf619/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f547144f2966e1e16ae626d8ce72b4cfa0caedc7fa28052001c94fb2fcaa1c52", size = 2230442, upload-time = "2025-11-04T13:39:13.962Z" }, + { url = "https://files.pythonhosted.org/packages/fd/21/4e287865504b3edc0136c89c9c09431be326168b1eb7841911cbc877a995/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f52298fbd394f9ed112d56f3d11aabd0d5bd27beb3084cc3d8ad069483b8941", size = 2350956, upload-time = "2025-11-04T13:39:15.889Z" }, + { url = "https://files.pythonhosted.org/packages/a8/76/7727ef2ffa4b62fcab916686a68a0426b9b790139720e1934e8ba797e238/pydantic_core-2.41.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:100baa204bb412b74fe285fb0f3a385256dad1d1879f0a5cb1499ed2e83d132a", size = 2068253, upload-time = "2025-11-04T13:39:17.403Z" }, + { url = "https://files.pythonhosted.org/packages/d5/8c/a4abfc79604bcb4c748e18975c44f94f756f08fb04218d5cb87eb0d3a63e/pydantic_core-2.41.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:05a2c8852530ad2812cb7914dc61a1125dc4e06252ee98e5638a12da6cc6fb6c", size = 2177050, upload-time = "2025-11-04T13:39:19.351Z" }, + { url = "https://files.pythonhosted.org/packages/67/b1/de2e9a9a79b480f9cb0b6e8b6ba4c50b18d4e89852426364c66aa82bb7b3/pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:29452c56df2ed968d18d7e21f4ab0ac55e71dc59524872f6fc57dcf4a3249ed2", size = 2147178, upload-time = "2025-11-04T13:39:21Z" }, + { url = "https://files.pythonhosted.org/packages/16/c1/dfb33f837a47b20417500efaa0378adc6635b3c79e8369ff7a03c494b4ac/pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:d5160812ea7a8a2ffbe233d8da666880cad0cbaf5d4de74ae15c313213d62556", size = 2341833, upload-time = "2025-11-04T13:39:22.606Z" }, + { url = "https://files.pythonhosted.org/packages/47/36/00f398642a0f4b815a9a558c4f1dca1b4020a7d49562807d7bc9ff279a6c/pydantic_core-2.41.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:df3959765b553b9440adfd3c795617c352154e497a4eaf3752555cfb5da8fc49", size = 2321156, upload-time = "2025-11-04T13:39:25.843Z" }, + { url = "https://files.pythonhosted.org/packages/7e/70/cad3acd89fde2010807354d978725ae111ddf6d0ea46d1ea1775b5c1bd0c/pydantic_core-2.41.5-cp310-cp310-win32.whl", hash = "sha256:1f8d33a7f4d5a7889e60dc39856d76d09333d8a6ed0f5f1190635cbec70ec4ba", size = 1989378, upload-time = "2025-11-04T13:39:27.92Z" }, + { url = "https://files.pythonhosted.org/packages/76/92/d338652464c6c367e5608e4488201702cd1cbb0f33f7b6a85a60fe5f3720/pydantic_core-2.41.5-cp310-cp310-win_amd64.whl", hash = "sha256:62de39db01b8d593e45871af2af9e497295db8d73b085f6bfd0b18c83c70a8f9", size = 2013622, upload-time = "2025-11-04T13:39:29.848Z" }, + { url = "https://files.pythonhosted.org/packages/e8/72/74a989dd9f2084b3d9530b0915fdda64ac48831c30dbf7c72a41a5232db8/pydantic_core-2.41.5-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:a3a52f6156e73e7ccb0f8cced536adccb7042be67cb45f9562e12b319c119da6", size = 2105873, upload-time = "2025-11-04T13:39:31.373Z" }, + { url = "https://files.pythonhosted.org/packages/12/44/37e403fd9455708b3b942949e1d7febc02167662bf1a7da5b78ee1ea2842/pydantic_core-2.41.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7f3bf998340c6d4b0c9a2f02d6a400e51f123b59565d74dc60d252ce888c260b", size = 1899826, upload-time = "2025-11-04T13:39:32.897Z" }, + { url = "https://files.pythonhosted.org/packages/33/7f/1d5cab3ccf44c1935a359d51a8a2a9e1a654b744b5e7f80d41b88d501eec/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:378bec5c66998815d224c9ca994f1e14c0c21cb95d2f52b6021cc0b2a58f2a5a", size = 1917869, upload-time = "2025-11-04T13:39:34.469Z" }, + { url = "https://files.pythonhosted.org/packages/6e/6a/30d94a9674a7fe4f4744052ed6c5e083424510be1e93da5bc47569d11810/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e7b576130c69225432866fe2f4a469a85a54ade141d96fd396dffcf607b558f8", size = 2063890, upload-time = "2025-11-04T13:39:36.053Z" }, + { url = "https://files.pythonhosted.org/packages/50/be/76e5d46203fcb2750e542f32e6c371ffa9b8ad17364cf94bb0818dbfb50c/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6cb58b9c66f7e4179a2d5e0f849c48eff5c1fca560994d6eb6543abf955a149e", size = 2229740, upload-time = "2025-11-04T13:39:37.753Z" }, + { url = "https://files.pythonhosted.org/packages/d3/ee/fed784df0144793489f87db310a6bbf8118d7b630ed07aa180d6067e653a/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:88942d3a3dff3afc8288c21e565e476fc278902ae4d6d134f1eeda118cc830b1", size = 2350021, upload-time = "2025-11-04T13:39:40.94Z" }, + { url = "https://files.pythonhosted.org/packages/c8/be/8fed28dd0a180dca19e72c233cbf58efa36df055e5b9d90d64fd1740b828/pydantic_core-2.41.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f31d95a179f8d64d90f6831d71fa93290893a33148d890ba15de25642c5d075b", size = 2066378, upload-time = "2025-11-04T13:39:42.523Z" }, + { url = "https://files.pythonhosted.org/packages/b0/3b/698cf8ae1d536a010e05121b4958b1257f0b5522085e335360e53a6b1c8b/pydantic_core-2.41.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c1df3d34aced70add6f867a8cf413e299177e0c22660cc767218373d0779487b", size = 2175761, upload-time = "2025-11-04T13:39:44.553Z" }, + { url = "https://files.pythonhosted.org/packages/b8/ba/15d537423939553116dea94ce02f9c31be0fa9d0b806d427e0308ec17145/pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:4009935984bd36bd2c774e13f9a09563ce8de4abaa7226f5108262fa3e637284", size = 2146303, upload-time = "2025-11-04T13:39:46.238Z" }, + { url = "https://files.pythonhosted.org/packages/58/7f/0de669bf37d206723795f9c90c82966726a2ab06c336deba4735b55af431/pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:34a64bc3441dc1213096a20fe27e8e128bd3ff89921706e83c0b1ac971276594", size = 2340355, upload-time = "2025-11-04T13:39:48.002Z" }, + { url = "https://files.pythonhosted.org/packages/e5/de/e7482c435b83d7e3c3ee5ee4451f6e8973cff0eb6007d2872ce6383f6398/pydantic_core-2.41.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:c9e19dd6e28fdcaa5a1de679aec4141f691023916427ef9bae8584f9c2fb3b0e", size = 2319875, upload-time = "2025-11-04T13:39:49.705Z" }, + { url = "https://files.pythonhosted.org/packages/fe/e6/8c9e81bb6dd7560e33b9053351c29f30c8194b72f2d6932888581f503482/pydantic_core-2.41.5-cp311-cp311-win32.whl", hash = "sha256:2c010c6ded393148374c0f6f0bf89d206bf3217f201faa0635dcd56bd1520f6b", size = 1987549, upload-time = "2025-11-04T13:39:51.842Z" }, + { url = "https://files.pythonhosted.org/packages/11/66/f14d1d978ea94d1bc21fc98fcf570f9542fe55bfcc40269d4e1a21c19bf7/pydantic_core-2.41.5-cp311-cp311-win_amd64.whl", hash = "sha256:76ee27c6e9c7f16f47db7a94157112a2f3a00e958bc626e2f4ee8bec5c328fbe", size = 2011305, upload-time = "2025-11-04T13:39:53.485Z" }, + { url = "https://files.pythonhosted.org/packages/56/d8/0e271434e8efd03186c5386671328154ee349ff0354d83c74f5caaf096ed/pydantic_core-2.41.5-cp311-cp311-win_arm64.whl", hash = "sha256:4bc36bbc0b7584de96561184ad7f012478987882ebf9f9c389b23f432ea3d90f", size = 1972902, upload-time = "2025-11-04T13:39:56.488Z" }, + { url = "https://files.pythonhosted.org/packages/5f/5d/5f6c63eebb5afee93bcaae4ce9a898f3373ca23df3ccaef086d0233a35a7/pydantic_core-2.41.5-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f41a7489d32336dbf2199c8c0a215390a751c5b014c2c1c5366e817202e9cdf7", size = 2110990, upload-time = "2025-11-04T13:39:58.079Z" }, + { url = "https://files.pythonhosted.org/packages/aa/32/9c2e8ccb57c01111e0fd091f236c7b371c1bccea0fa85247ac55b1e2b6b6/pydantic_core-2.41.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:070259a8818988b9a84a449a2a7337c7f430a22acc0859c6b110aa7212a6d9c0", size = 1896003, upload-time = "2025-11-04T13:39:59.956Z" }, + { url = "https://files.pythonhosted.org/packages/68/b8/a01b53cb0e59139fbc9e4fda3e9724ede8de279097179be4ff31f1abb65a/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e96cea19e34778f8d59fe40775a7a574d95816eb150850a85a7a4c8f4b94ac69", size = 1919200, upload-time = "2025-11-04T13:40:02.241Z" }, + { url = "https://files.pythonhosted.org/packages/38/de/8c36b5198a29bdaade07b5985e80a233a5ac27137846f3bc2d3b40a47360/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed2e99c456e3fadd05c991f8f437ef902e00eedf34320ba2b0842bd1c3ca3a75", size = 2052578, upload-time = "2025-11-04T13:40:04.401Z" }, + { url = "https://files.pythonhosted.org/packages/00/b5/0e8e4b5b081eac6cb3dbb7e60a65907549a1ce035a724368c330112adfdd/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:65840751b72fbfd82c3c640cff9284545342a4f1eb1586ad0636955b261b0b05", size = 2208504, upload-time = "2025-11-04T13:40:06.072Z" }, + { url = "https://files.pythonhosted.org/packages/77/56/87a61aad59c7c5b9dc8caad5a41a5545cba3810c3e828708b3d7404f6cef/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e536c98a7626a98feb2d3eaf75944ef6f3dbee447e1f841eae16f2f0a72d8ddc", size = 2335816, upload-time = "2025-11-04T13:40:07.835Z" }, + { url = "https://files.pythonhosted.org/packages/0d/76/941cc9f73529988688a665a5c0ecff1112b3d95ab48f81db5f7606f522d3/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eceb81a8d74f9267ef4081e246ffd6d129da5d87e37a77c9bde550cb04870c1c", size = 2075366, upload-time = "2025-11-04T13:40:09.804Z" }, + { url = "https://files.pythonhosted.org/packages/d3/43/ebef01f69baa07a482844faaa0a591bad1ef129253ffd0cdaa9d8a7f72d3/pydantic_core-2.41.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d38548150c39b74aeeb0ce8ee1d8e82696f4a4e16ddc6de7b1d8823f7de4b9b5", size = 2171698, upload-time = "2025-11-04T13:40:12.004Z" }, + { url = "https://files.pythonhosted.org/packages/b1/87/41f3202e4193e3bacfc2c065fab7706ebe81af46a83d3e27605029c1f5a6/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c23e27686783f60290e36827f9c626e63154b82b116d7fe9adba1fda36da706c", size = 2132603, upload-time = "2025-11-04T13:40:13.868Z" }, + { url = "https://files.pythonhosted.org/packages/49/7d/4c00df99cb12070b6bccdef4a195255e6020a550d572768d92cc54dba91a/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:482c982f814460eabe1d3bb0adfdc583387bd4691ef00b90575ca0d2b6fe2294", size = 2329591, upload-time = "2025-11-04T13:40:15.672Z" }, + { url = "https://files.pythonhosted.org/packages/cc/6a/ebf4b1d65d458f3cda6a7335d141305dfa19bdc61140a884d165a8a1bbc7/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bfea2a5f0b4d8d43adf9d7b8bf019fb46fdd10a2e5cde477fbcb9d1fa08c68e1", size = 2319068, upload-time = "2025-11-04T13:40:17.532Z" }, + { url = "https://files.pythonhosted.org/packages/49/3b/774f2b5cd4192d5ab75870ce4381fd89cf218af999515baf07e7206753f0/pydantic_core-2.41.5-cp312-cp312-win32.whl", hash = "sha256:b74557b16e390ec12dca509bce9264c3bbd128f8a2c376eaa68003d7f327276d", size = 1985908, upload-time = "2025-11-04T13:40:19.309Z" }, + { url = "https://files.pythonhosted.org/packages/86/45/00173a033c801cacf67c190fef088789394feaf88a98a7035b0e40d53dc9/pydantic_core-2.41.5-cp312-cp312-win_amd64.whl", hash = "sha256:1962293292865bca8e54702b08a4f26da73adc83dd1fcf26fbc875b35d81c815", size = 2020145, upload-time = "2025-11-04T13:40:21.548Z" }, + { url = "https://files.pythonhosted.org/packages/f9/22/91fbc821fa6d261b376a3f73809f907cec5ca6025642c463d3488aad22fb/pydantic_core-2.41.5-cp312-cp312-win_arm64.whl", hash = "sha256:1746d4a3d9a794cacae06a5eaaccb4b8643a131d45fbc9af23e353dc0a5ba5c3", size = 1976179, upload-time = "2025-11-04T13:40:23.393Z" }, + { url = "https://files.pythonhosted.org/packages/87/06/8806241ff1f70d9939f9af039c6c35f2360cf16e93c2ca76f184e76b1564/pydantic_core-2.41.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:941103c9be18ac8daf7b7adca8228f8ed6bb7a1849020f643b3a14d15b1924d9", size = 2120403, upload-time = "2025-11-04T13:40:25.248Z" }, + { url = "https://files.pythonhosted.org/packages/94/02/abfa0e0bda67faa65fef1c84971c7e45928e108fe24333c81f3bfe35d5f5/pydantic_core-2.41.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:112e305c3314f40c93998e567879e887a3160bb8689ef3d2c04b6cc62c33ac34", size = 1896206, upload-time = "2025-11-04T13:40:27.099Z" }, + { url = "https://files.pythonhosted.org/packages/15/df/a4c740c0943e93e6500f9eb23f4ca7ec9bf71b19e608ae5b579678c8d02f/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbaad15cb0c90aa221d43c00e77bb33c93e8d36e0bf74760cd00e732d10a6a0", size = 1919307, upload-time = "2025-11-04T13:40:29.806Z" }, + { url = "https://files.pythonhosted.org/packages/9a/e3/6324802931ae1d123528988e0e86587c2072ac2e5394b4bc2bc34b61ff6e/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:03ca43e12fab6023fc79d28ca6b39b05f794ad08ec2feccc59a339b02f2b3d33", size = 2063258, upload-time = "2025-11-04T13:40:33.544Z" }, + { url = "https://files.pythonhosted.org/packages/c9/d4/2230d7151d4957dd79c3044ea26346c148c98fbf0ee6ebd41056f2d62ab5/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc799088c08fa04e43144b164feb0c13f9a0bc40503f8df3e9fde58a3c0c101e", size = 2214917, upload-time = "2025-11-04T13:40:35.479Z" }, + { url = "https://files.pythonhosted.org/packages/e6/9f/eaac5df17a3672fef0081b6c1bb0b82b33ee89aa5cec0d7b05f52fd4a1fa/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97aeba56665b4c3235a0e52b2c2f5ae9cd071b8a8310ad27bddb3f7fb30e9aa2", size = 2332186, upload-time = "2025-11-04T13:40:37.436Z" }, + { url = "https://files.pythonhosted.org/packages/cf/4e/35a80cae583a37cf15604b44240e45c05e04e86f9cfd766623149297e971/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:406bf18d345822d6c21366031003612b9c77b3e29ffdb0f612367352aab7d586", size = 2073164, upload-time = "2025-11-04T13:40:40.289Z" }, + { url = "https://files.pythonhosted.org/packages/bf/e3/f6e262673c6140dd3305d144d032f7bd5f7497d3871c1428521f19f9efa2/pydantic_core-2.41.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b93590ae81f7010dbe380cdeab6f515902ebcbefe0b9327cc4804d74e93ae69d", size = 2179146, upload-time = "2025-11-04T13:40:42.809Z" }, + { url = "https://files.pythonhosted.org/packages/75/c7/20bd7fc05f0c6ea2056a4565c6f36f8968c0924f19b7d97bbfea55780e73/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:01a3d0ab748ee531f4ea6c3e48ad9dac84ddba4b0d82291f87248f2f9de8d740", size = 2137788, upload-time = "2025-11-04T13:40:44.752Z" }, + { url = "https://files.pythonhosted.org/packages/3a/8d/34318ef985c45196e004bc46c6eab2eda437e744c124ef0dbe1ff2c9d06b/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:6561e94ba9dacc9c61bce40e2d6bdc3bfaa0259d3ff36ace3b1e6901936d2e3e", size = 2340133, upload-time = "2025-11-04T13:40:46.66Z" }, + { url = "https://files.pythonhosted.org/packages/9c/59/013626bf8c78a5a5d9350d12e7697d3d4de951a75565496abd40ccd46bee/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:915c3d10f81bec3a74fbd4faebe8391013ba61e5a1a8d48c4455b923bdda7858", size = 2324852, upload-time = "2025-11-04T13:40:48.575Z" }, + { url = "https://files.pythonhosted.org/packages/1a/d9/c248c103856f807ef70c18a4f986693a46a8ffe1602e5d361485da502d20/pydantic_core-2.41.5-cp313-cp313-win32.whl", hash = "sha256:650ae77860b45cfa6e2cdafc42618ceafab3a2d9a3811fcfbd3bbf8ac3c40d36", size = 1994679, upload-time = "2025-11-04T13:40:50.619Z" }, + { url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl", hash = "sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11", size = 2019766, upload-time = "2025-11-04T13:40:52.631Z" }, + { url = "https://files.pythonhosted.org/packages/73/7d/f2f9db34af103bea3e09735bb40b021788a5e834c81eedb541991badf8f5/pydantic_core-2.41.5-cp313-cp313-win_arm64.whl", hash = "sha256:3f84d5c1b4ab906093bdc1ff10484838aca54ef08de4afa9de0f5f14d69639cd", size = 1981005, upload-time = "2025-11-04T13:40:54.734Z" }, + { url = "https://files.pythonhosted.org/packages/ea/28/46b7c5c9635ae96ea0fbb779e271a38129df2550f763937659ee6c5dbc65/pydantic_core-2.41.5-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:3f37a19d7ebcdd20b96485056ba9e8b304e27d9904d233d7b1015db320e51f0a", size = 2119622, upload-time = "2025-11-04T13:40:56.68Z" }, + { url = "https://files.pythonhosted.org/packages/74/1a/145646e5687e8d9a1e8d09acb278c8535ebe9e972e1f162ed338a622f193/pydantic_core-2.41.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1d1d9764366c73f996edd17abb6d9d7649a7eb690006ab6adbda117717099b14", size = 1891725, upload-time = "2025-11-04T13:40:58.807Z" }, + { url = "https://files.pythonhosted.org/packages/23/04/e89c29e267b8060b40dca97bfc64a19b2a3cf99018167ea1677d96368273/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25e1c2af0fce638d5f1988b686f3b3ea8cd7de5f244ca147c777769e798a9cd1", size = 1915040, upload-time = "2025-11-04T13:41:00.853Z" }, + { url = "https://files.pythonhosted.org/packages/84/a3/15a82ac7bd97992a82257f777b3583d3e84bdb06ba6858f745daa2ec8a85/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:506d766a8727beef16b7adaeb8ee6217c64fc813646b424d0804d67c16eddb66", size = 2063691, upload-time = "2025-11-04T13:41:03.504Z" }, + { url = "https://files.pythonhosted.org/packages/74/9b/0046701313c6ef08c0c1cf0e028c67c770a4e1275ca73131563c5f2a310a/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4819fa52133c9aa3c387b3328f25c1facc356491e6135b459f1de698ff64d869", size = 2213897, upload-time = "2025-11-04T13:41:05.804Z" }, + { url = "https://files.pythonhosted.org/packages/8a/cd/6bac76ecd1b27e75a95ca3a9a559c643b3afcd2dd62086d4b7a32a18b169/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b761d210c9ea91feda40d25b4efe82a1707da2ef62901466a42492c028553a2", size = 2333302, upload-time = "2025-11-04T13:41:07.809Z" }, + { url = "https://files.pythonhosted.org/packages/4c/d2/ef2074dc020dd6e109611a8be4449b98cd25e1b9b8a303c2f0fca2f2bcf7/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375", size = 2064877, upload-time = "2025-11-04T13:41:09.827Z" }, + { url = "https://files.pythonhosted.org/packages/18/66/e9db17a9a763d72f03de903883c057b2592c09509ccfe468187f2a2eef29/pydantic_core-2.41.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2782c870e99878c634505236d81e5443092fba820f0373997ff75f90f68cd553", size = 2180680, upload-time = "2025-11-04T13:41:12.379Z" }, + { url = "https://files.pythonhosted.org/packages/d3/9e/3ce66cebb929f3ced22be85d4c2399b8e85b622db77dad36b73c5387f8f8/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:0177272f88ab8312479336e1d777f6b124537d47f2123f89cb37e0accea97f90", size = 2138960, upload-time = "2025-11-04T13:41:14.627Z" }, + { url = "https://files.pythonhosted.org/packages/a6/62/205a998f4327d2079326b01abee48e502ea739d174f0a89295c481a2272e/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:63510af5e38f8955b8ee5687740d6ebf7c2a0886d15a6d65c32814613681bc07", size = 2339102, upload-time = "2025-11-04T13:41:16.868Z" }, + { url = "https://files.pythonhosted.org/packages/3c/0d/f05e79471e889d74d3d88f5bd20d0ed189ad94c2423d81ff8d0000aab4ff/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:e56ba91f47764cc14f1daacd723e3e82d1a89d783f0f5afe9c364b8bb491ccdb", size = 2326039, upload-time = "2025-11-04T13:41:18.934Z" }, + { url = "https://files.pythonhosted.org/packages/ec/e1/e08a6208bb100da7e0c4b288eed624a703f4d129bde2da475721a80cab32/pydantic_core-2.41.5-cp314-cp314-win32.whl", hash = "sha256:aec5cf2fd867b4ff45b9959f8b20ea3993fc93e63c7363fe6851424c8a7e7c23", size = 1995126, upload-time = "2025-11-04T13:41:21.418Z" }, + { url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl", hash = "sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf", size = 2015489, upload-time = "2025-11-04T13:41:24.076Z" }, + { url = "https://files.pythonhosted.org/packages/4e/bb/f7a190991ec9e3e0ba22e4993d8755bbc4a32925c0b5b42775c03e8148f9/pydantic_core-2.41.5-cp314-cp314-win_arm64.whl", hash = "sha256:e672ba74fbc2dc8eea59fb6d4aed6845e6905fc2a8afe93175d94a83ba2a01a0", size = 1977288, upload-time = "2025-11-04T13:41:26.33Z" }, + { url = "https://files.pythonhosted.org/packages/92/ed/77542d0c51538e32e15afe7899d79efce4b81eee631d99850edc2f5e9349/pydantic_core-2.41.5-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:8566def80554c3faa0e65ac30ab0932b9e3a5cd7f8323764303d468e5c37595a", size = 2120255, upload-time = "2025-11-04T13:41:28.569Z" }, + { url = "https://files.pythonhosted.org/packages/bb/3d/6913dde84d5be21e284439676168b28d8bbba5600d838b9dca99de0fad71/pydantic_core-2.41.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:b80aa5095cd3109962a298ce14110ae16b8c1aece8b72f9dafe81cf597ad80b3", size = 1863760, upload-time = "2025-11-04T13:41:31.055Z" }, + { url = "https://files.pythonhosted.org/packages/5a/f0/e5e6b99d4191da102f2b0eb9687aaa7f5bea5d9964071a84effc3e40f997/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3006c3dd9ba34b0c094c544c6006cc79e87d8612999f1a5d43b769b89181f23c", size = 1878092, upload-time = "2025-11-04T13:41:33.21Z" }, + { url = "https://files.pythonhosted.org/packages/71/48/36fb760642d568925953bcc8116455513d6e34c4beaa37544118c36aba6d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:72f6c8b11857a856bcfa48c86f5368439f74453563f951e473514579d44aa612", size = 2053385, upload-time = "2025-11-04T13:41:35.508Z" }, + { url = "https://files.pythonhosted.org/packages/20/25/92dc684dd8eb75a234bc1c764b4210cf2646479d54b47bf46061657292a8/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5cb1b2f9742240e4bb26b652a5aeb840aa4b417c7748b6f8387927bc6e45e40d", size = 2218832, upload-time = "2025-11-04T13:41:37.732Z" }, + { url = "https://files.pythonhosted.org/packages/e2/09/f53e0b05023d3e30357d82eb35835d0f6340ca344720a4599cd663dca599/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bd3d54f38609ff308209bd43acea66061494157703364ae40c951f83ba99a1a9", size = 2327585, upload-time = "2025-11-04T13:41:40Z" }, + { url = "https://files.pythonhosted.org/packages/aa/4e/2ae1aa85d6af35a39b236b1b1641de73f5a6ac4d5a7509f77b814885760c/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ff4321e56e879ee8d2a879501c8e469414d948f4aba74a2d4593184eb326660", size = 2041078, upload-time = "2025-11-04T13:41:42.323Z" }, + { url = "https://files.pythonhosted.org/packages/cd/13/2e215f17f0ef326fc72afe94776edb77525142c693767fc347ed6288728d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0d2568a8c11bf8225044aa94409e21da0cb09dcdafe9ecd10250b2baad531a9", size = 2173914, upload-time = "2025-11-04T13:41:45.221Z" }, + { url = "https://files.pythonhosted.org/packages/02/7a/f999a6dcbcd0e5660bc348a3991c8915ce6599f4f2c6ac22f01d7a10816c/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:a39455728aabd58ceabb03c90e12f71fd30fa69615760a075b9fec596456ccc3", size = 2129560, upload-time = "2025-11-04T13:41:47.474Z" }, + { url = "https://files.pythonhosted.org/packages/3a/b1/6c990ac65e3b4c079a4fb9f5b05f5b013afa0f4ed6780a3dd236d2cbdc64/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:239edca560d05757817c13dc17c50766136d21f7cd0fac50295499ae24f90fdf", size = 2329244, upload-time = "2025-11-04T13:41:49.992Z" }, + { url = "https://files.pythonhosted.org/packages/d9/02/3c562f3a51afd4d88fff8dffb1771b30cfdfd79befd9883ee094f5b6c0d8/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:2a5e06546e19f24c6a96a129142a75cee553cc018ffee48a460059b1185f4470", size = 2331955, upload-time = "2025-11-04T13:41:54.079Z" }, + { url = "https://files.pythonhosted.org/packages/5c/96/5fb7d8c3c17bc8c62fdb031c47d77a1af698f1d7a406b0f79aaa1338f9ad/pydantic_core-2.41.5-cp314-cp314t-win32.whl", hash = "sha256:b4ececa40ac28afa90871c2cc2b9ffd2ff0bf749380fbdf57d165fd23da353aa", size = 1988906, upload-time = "2025-11-04T13:41:56.606Z" }, + { url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl", hash = "sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c", size = 1981607, upload-time = "2025-11-04T13:41:58.889Z" }, + { url = "https://files.pythonhosted.org/packages/9f/ed/068e41660b832bb0b1aa5b58011dea2a3fe0ba7861ff38c4d4904c1c1a99/pydantic_core-2.41.5-cp314-cp314t-win_arm64.whl", hash = "sha256:35b44f37a3199f771c3eaa53051bc8a70cd7b54f333531c59e29fd4db5d15008", size = 1974769, upload-time = "2025-11-04T13:42:01.186Z" }, + { url = "https://files.pythonhosted.org/packages/11/72/90fda5ee3b97e51c494938a4a44c3a35a9c96c19bba12372fb9c634d6f57/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-macosx_10_12_x86_64.whl", hash = "sha256:b96d5f26b05d03cc60f11a7761a5ded1741da411e7fe0909e27a5e6a0cb7b034", size = 2115441, upload-time = "2025-11-04T13:42:39.557Z" }, + { url = "https://files.pythonhosted.org/packages/1f/53/8942f884fa33f50794f119012dc6a1a02ac43a56407adaac20463df8e98f/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-macosx_11_0_arm64.whl", hash = "sha256:634e8609e89ceecea15e2d61bc9ac3718caaaa71963717bf3c8f38bfde64242c", size = 1930291, upload-time = "2025-11-04T13:42:42.169Z" }, + { url = "https://files.pythonhosted.org/packages/79/c8/ecb9ed9cd942bce09fc888ee960b52654fbdbede4ba6c2d6e0d3b1d8b49c/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:93e8740d7503eb008aa2df04d3b9735f845d43ae845e6dcd2be0b55a2da43cd2", size = 1948632, upload-time = "2025-11-04T13:42:44.564Z" }, + { url = "https://files.pythonhosted.org/packages/2e/1b/687711069de7efa6af934e74f601e2a4307365e8fdc404703afc453eab26/pydantic_core-2.41.5-graalpy311-graalpy242_311_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f15489ba13d61f670dcc96772e733aad1a6f9c429cc27574c6cdaed82d0146ad", size = 2138905, upload-time = "2025-11-04T13:42:47.156Z" }, + { url = "https://files.pythonhosted.org/packages/09/32/59b0c7e63e277fa7911c2fc70ccfb45ce4b98991e7ef37110663437005af/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_10_12_x86_64.whl", hash = "sha256:7da7087d756b19037bc2c06edc6c170eeef3c3bafcb8f532ff17d64dc427adfd", size = 2110495, upload-time = "2025-11-04T13:42:49.689Z" }, + { url = "https://files.pythonhosted.org/packages/aa/81/05e400037eaf55ad400bcd318c05bb345b57e708887f07ddb2d20e3f0e98/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:aabf5777b5c8ca26f7824cb4a120a740c9588ed58df9b2d196ce92fba42ff8dc", size = 1915388, upload-time = "2025-11-04T13:42:52.215Z" }, + { url = "https://files.pythonhosted.org/packages/6e/0d/e3549b2399f71d56476b77dbf3cf8937cec5cd70536bdc0e374a421d0599/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c007fe8a43d43b3969e8469004e9845944f1a80e6acd47c150856bb87f230c56", size = 1942879, upload-time = "2025-11-04T13:42:56.483Z" }, + { url = "https://files.pythonhosted.org/packages/f7/07/34573da085946b6a313d7c42f82f16e8920bfd730665de2d11c0c37a74b5/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76d0819de158cd855d1cbb8fcafdf6f5cf1eb8e470abe056d5d161106e38062b", size = 2139017, upload-time = "2025-11-04T13:42:59.471Z" }, + { url = "https://files.pythonhosted.org/packages/e6/b0/1a2aa41e3b5a4ba11420aba2d091b2d17959c8d1519ece3627c371951e73/pydantic_core-2.41.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:b5819cd790dbf0c5eb9f82c73c16b39a65dd6dd4d1439dcdea7816ec9adddab8", size = 2103351, upload-time = "2025-11-04T13:43:02.058Z" }, + { url = "https://files.pythonhosted.org/packages/a4/ee/31b1f0020baaf6d091c87900ae05c6aeae101fa4e188e1613c80e4f1ea31/pydantic_core-2.41.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:5a4e67afbc95fa5c34cf27d9089bca7fcab4e51e57278d710320a70b956d1b9a", size = 1925363, upload-time = "2025-11-04T13:43:05.159Z" }, + { url = "https://files.pythonhosted.org/packages/e1/89/ab8e86208467e467a80deaca4e434adac37b10a9d134cd2f99b28a01e483/pydantic_core-2.41.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ece5c59f0ce7d001e017643d8d24da587ea1f74f6993467d85ae8a5ef9d4f42b", size = 2135615, upload-time = "2025-11-04T13:43:08.116Z" }, + { url = "https://files.pythonhosted.org/packages/99/0a/99a53d06dd0348b2008f2f30884b34719c323f16c3be4e6cc1203b74a91d/pydantic_core-2.41.5-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:16f80f7abe3351f8ea6858914ddc8c77e02578544a0ebc15b4c2e1a0e813b0b2", size = 2175369, upload-time = "2025-11-04T13:43:12.49Z" }, + { url = "https://files.pythonhosted.org/packages/6d/94/30ca3b73c6d485b9bb0bc66e611cff4a7138ff9736b7e66bcf0852151636/pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:33cb885e759a705b426baada1fe68cbb0a2e68e34c5d0d0289a364cf01709093", size = 2144218, upload-time = "2025-11-04T13:43:15.431Z" }, + { url = "https://files.pythonhosted.org/packages/87/57/31b4f8e12680b739a91f472b5671294236b82586889ef764b5fbc6669238/pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:c8d8b4eb992936023be7dee581270af5c6e0697a8559895f527f5b7105ecd36a", size = 2329951, upload-time = "2025-11-04T13:43:18.062Z" }, + { url = "https://files.pythonhosted.org/packages/7d/73/3c2c8edef77b8f7310e6fb012dbc4b8551386ed575b9eb6fb2506e28a7eb/pydantic_core-2.41.5-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:242a206cd0318f95cd21bdacff3fcc3aab23e79bba5cac3db5a841c9ef9c6963", size = 2318428, upload-time = "2025-11-04T13:43:20.679Z" }, + { url = "https://files.pythonhosted.org/packages/2f/02/8559b1f26ee0d502c74f9cca5c0d2fd97e967e083e006bbbb4e97f3a043a/pydantic_core-2.41.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:d3a978c4f57a597908b7e697229d996d77a6d3c94901e9edee593adada95ce1a", size = 2147009, upload-time = "2025-11-04T13:43:23.286Z" }, + { url = "https://files.pythonhosted.org/packages/5f/9b/1b3f0e9f9305839d7e84912f9e8bfbd191ed1b1ef48083609f0dabde978c/pydantic_core-2.41.5-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:b2379fa7ed44ddecb5bfe4e48577d752db9fc10be00a6b7446e9663ba143de26", size = 2101980, upload-time = "2025-11-04T13:43:25.97Z" }, + { url = "https://files.pythonhosted.org/packages/a4/ed/d71fefcb4263df0da6a85b5d8a7508360f2f2e9b3bf5814be9c8bccdccc1/pydantic_core-2.41.5-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:266fb4cbf5e3cbd0b53669a6d1b039c45e3ce651fd5442eff4d07c2cc8d66808", size = 1923865, upload-time = "2025-11-04T13:43:28.763Z" }, + { url = "https://files.pythonhosted.org/packages/ce/3a/626b38db460d675f873e4444b4bb030453bbe7b4ba55df821d026a0493c4/pydantic_core-2.41.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58133647260ea01e4d0500089a8c4f07bd7aa6ce109682b1426394988d8aaacc", size = 2134256, upload-time = "2025-11-04T13:43:31.71Z" }, + { url = "https://files.pythonhosted.org/packages/83/d9/8412d7f06f616bbc053d30cb4e5f76786af3221462ad5eee1f202021eb4e/pydantic_core-2.41.5-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:287dad91cfb551c363dc62899a80e9e14da1f0e2b6ebde82c806612ca2a13ef1", size = 2174762, upload-time = "2025-11-04T13:43:34.744Z" }, + { url = "https://files.pythonhosted.org/packages/55/4c/162d906b8e3ba3a99354e20faa1b49a85206c47de97a639510a0e673f5da/pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:03b77d184b9eb40240ae9fd676ca364ce1085f203e1b1256f8ab9984dca80a84", size = 2143141, upload-time = "2025-11-04T13:43:37.701Z" }, + { url = "https://files.pythonhosted.org/packages/1f/f2/f11dd73284122713f5f89fc940f370d035fa8e1e078d446b3313955157fe/pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:a668ce24de96165bb239160b3d854943128f4334822900534f2fe947930e5770", size = 2330317, upload-time = "2025-11-04T13:43:40.406Z" }, + { url = "https://files.pythonhosted.org/packages/88/9d/b06ca6acfe4abb296110fb1273a4d848a0bfb2ff65f3ee92127b3244e16b/pydantic_core-2.41.5-pp311-pypy311_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f14f8f046c14563f8eb3f45f499cc658ab8d10072961e07225e507adb700e93f", size = 2316992, upload-time = "2025-11-04T13:43:43.602Z" }, + { url = "https://files.pythonhosted.org/packages/36/c7/cfc8e811f061c841d7990b0201912c3556bfeb99cdcb7ed24adc8d6f8704/pydantic_core-2.41.5-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:56121965f7a4dc965bff783d70b907ddf3d57f6eba29b6d2e5dabfaf07799c51", size = 2145302, upload-time = "2025-11-04T13:43:46.64Z" }, ] [[package]] @@ -4087,6 +4193,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/35/76/c34426d532e4dce7ff36e4d92cb20f4cbbd94b619964b93d24e8f5b5510f/pynacl-1.6.1-cp38-abi3-win_arm64.whl", hash = "sha256:5953e8b8cfadb10889a6e7bd0f53041a745d1b3d30111386a1bb37af171e6daf", size = 183970, upload-time = "2025-11-10T16:02:05.786Z" }, ] +[[package]] +name = "pynvml" +version = "13.0.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-ml-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5c/57/da7dc63a79f59e082e26a66ac02d87d69ea316b35b35b7a00d82f3ce3d2f/pynvml-13.0.1.tar.gz", hash = "sha256:1245991d9db786b4d2f277ce66869bd58f38ac654e38c9397d18f243c8f6e48f", size = 35226, upload-time = "2025-09-05T20:33:25.377Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d7/4a/cac76c174bb439a0c46c9a4413fcbea5c6cabfb01879f7bbdb9fdfaed76c/pynvml-13.0.1-py3-none-any.whl", hash = "sha256:e2b20e0a501eeec951e2455b7ab444759cf048e0e13a57b08049fa2775266aa8", size = 28810, upload-time = "2025-09-05T20:33:24.13Z" }, +] + [[package]] name = "pyre-extensions" version = "0.0.32" @@ -5241,15 +5359,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl", hash = "sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca", size = 74033, upload-time = "2025-11-01T15:25:25.461Z" }, ] -[[package]] -name = "strenum" -version = "0.4.15" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/85/ad/430fb60d90e1d112a62ff57bdd1f286ec73a2a0331272febfddd21f330e1/StrEnum-0.4.15.tar.gz", hash = "sha256:878fb5ab705442070e4dd1929bb5e2249511c0bcf2b0eeacf3bcd80875c82eff", size = 23384, upload-time = "2023-06-29T22:02:58.399Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/81/69/297302c5f5f59c862faa31e6cb9a4cd74721cd1e052b38e464c5b402df8b/StrEnum-0.4.15-py3-none-any.whl", hash = "sha256:a30cda4af7cc6b5bf52c8055bc4bf4b2b6b14a93b574626da33df53cf7740659", size = 8851, upload-time = "2023-06-29T22:02:56.947Z" }, -] - [[package]] name = "sympy" version = "1.14.0" @@ -5613,8 +5722,8 @@ name = "torchvision" version = "0.24.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy", marker = "sys_platform != 'linux'" }, - { name = "pillow", marker = "sys_platform != 'linux'" }, + { name = "numpy" }, + { name = "pillow" }, { name = "torch", marker = "sys_platform == 'never'" }, ] wheels = [ @@ -5783,6 +5892,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/65/f3/107a22063bf27bdccf2024833d3445f4eea42b2e598abfbd46f6a63b6cb0/typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f", size = 8827, upload-time = "2023-05-24T20:25:45.287Z" }, ] +[[package]] +name = "typing-inspection" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7", size = 14611, upload-time = "2025-10-01T02:14:40.154Z" }, +] + [[package]] name = "tzdata" version = "2025.2" From d79833be45705a2da500b47a35e52f470cb302c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 10:42:45 +0000 Subject: [PATCH 25/27] revert EO MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 2d7517914a0..03fadb5e7ff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -177,7 +177,7 @@ flash_mla = [ ] transformer-engine = { git = "https://github.com/NVIDIA/TransformerEngine.git", rev = "release_v2.9" } # on `release_v2.9` nemo-run = { git = "https://github.com/NVIDIA-NeMo/Run.git", rev = "01a9a8ba360f7b2908728ad0516e0ad9d936966d" } -emerging_optimizers = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git", rev = "fb1add873e7851ec34b48581ea1b15761b73d189" } +emerging_optimizers = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git", rev = "cf9909b777ffac18e05b67a6708282cadc000942" } [tool.isort] profile = "black" # black-compatible From 36b897c28d00139f5b37278e407ceecded7e1294 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 10:43:13 +0000 Subject: [PATCH 26/27] lock MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- uv.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uv.lock b/uv.lock index 4ea6cd2ac31..58f43844d47 100644 --- a/uv.lock +++ b/uv.lock @@ -1235,7 +1235,7 @@ wheels = [ [[package]] name = "emerging-optimizers" version = "0.1.0" -source = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=fb1add873e7851ec34b48581ea1b15761b73d189#fb1add873e7851ec34b48581ea1b15761b73d189" } +source = { git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=cf9909b777ffac18e05b67a6708282cadc000942#cf9909b777ffac18e05b67a6708282cadc000942" } dependencies = [ { name = "absl-py" }, { name = "torch", marker = "sys_platform == 'never'" }, @@ -2321,7 +2321,7 @@ requires-dist = [ { name = "causal-conv1d", marker = "extra == 'lts'", specifier = "~=1.5" }, { name = "einops", marker = "extra == 'dev'", specifier = "~=0.8" }, { name = "einops", marker = "extra == 'lts'", specifier = "~=0.8" }, - { name = "emerging-optimizers", marker = "extra == 'dev'", git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=fb1add873e7851ec34b48581ea1b15761b73d189" }, + { name = "emerging-optimizers", marker = "extra == 'dev'", git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=cf9909b777ffac18e05b67a6708282cadc000942" }, { name = "flash-linear-attention", marker = "extra == 'dev'", specifier = "~=0.3.2" }, { name = "flashinfer-python", marker = "extra == 'dev'" }, { name = "flashinfer-python", marker = "extra == 'lts'" }, From f699c3a4eec8811d8c6acc71678c77238c1a7bc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Fri, 14 Nov 2025 11:07:37 +0000 Subject: [PATCH 27/27] revert dependency change MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: oliver könig --- pyproject.toml | 19 +- uv.lock | 1560 +++++++++++++++++++++++++++++++++--------------- 2 files changed, 1072 insertions(+), 507 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 03fadb5e7ff..3e4267889e2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -81,7 +81,7 @@ dev = [ "causal-conv1d~=1.5", "nv-grouped-gemm~=1.1", "megatron-energon[av_decode]~=6.0", - "av<16.0.0", # At the time, av 16.0.0 is not compatible with Python 3.12 + "av<16.0.0", # At the time, av 16.0.0 is not compatible with Python 3.12 "flashinfer-python", "wget", "onnxscript", @@ -91,20 +91,13 @@ dev = [ lts = [ "tqdm", - "einops~=0.8", - "tensorstore~=0.1,!=0.1.46,!=0.1.72", - "nvtx~=0.2", - "multi-storage-client~=0.27", - "opentelemetry-api~=1.33.1", + "einops", + "tensorstore!=0.1.46,!=0.1.72", + "nvtx", + "transformers", + "zarr", "setuptools<80.0.0", - "mamba-ssm~=2.2", - "causal-conv1d~=1.5", - "nv-grouped-gemm~=1.1", - "megatron-energon[av_decode]~=6.0", - "av<16.0.0", # At the time, av 16.0.0 is not compatible with Python 3.12 - "flashinfer-python", "wget", - "onnxscript", ] [dependency-groups] diff --git a/uv.lock b/uv.lock index 58f43844d47..8b2e0f3d13e 100644 --- a/uv.lock +++ b/uv.lock @@ -1,17 +1,51 @@ version = 1 -revision = 2 +revision = 3 requires-python = ">=3.10" resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", - "python_full_version == '3.12.*' and sys_platform != 'linux'", - "python_full_version == '3.11.*' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and sys_platform != 'linux'", - "python_full_version < '3.11' and sys_platform == 'linux'", - "python_full_version < '3.11' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", ] conflicts = [[ { package = "megatron-core", extra = "dev" }, @@ -48,7 +82,7 @@ wheels = [ [[package]] name = "aiobotocore" -version = "2.25.2" +version = "2.25.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "aiohttp" }, @@ -57,11 +91,11 @@ dependencies = [ { name = "jmespath" }, { name = "multidict" }, { name = "python-dateutil" }, - { name = "wrapt" }, + { name = "wrapt", version = "1.17.3", source = { registry = "https://pypi.org/simple" } }, ] -sdist = { url = "https://files.pythonhosted.org/packages/52/48/cf3c88c5e3fecdeed824f97a8a98a9fc0d7ef33e603f8f22c2fd32b9ef09/aiobotocore-2.25.2.tar.gz", hash = "sha256:ae0a512b34127097910b7af60752956254099ae54402a84c2021830768f92cda", size = 120585, upload-time = "2025-11-11T18:51:28.056Z" } +sdist = { url = "https://files.pythonhosted.org/packages/62/94/2e4ec48cf1abb89971cb2612d86f979a6240520f0a659b53a43116d344dc/aiobotocore-2.25.1.tar.gz", hash = "sha256:ea9be739bfd7ece8864f072ec99bb9ed5c7e78ebb2b0b15f29781fbe02daedbc", size = 120560, upload-time = "2025-10-28T22:33:21.787Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/8e/ad/a2f3964aa37da5a4c94c1e5f3934d6ac1333f991f675fcf08a618397a413/aiobotocore-2.25.2-py3-none-any.whl", hash = "sha256:0cec45c6ba7627dd5e5460337291c86ac38c3b512ec4054ce76407d0f7f2a48f", size = 86048, upload-time = "2025-11-11T18:51:26.139Z" }, + { url = "https://files.pythonhosted.org/packages/95/2a/d275ec4ce5cd0096665043995a7d76f5d0524853c76a3d04656de49f8808/aiobotocore-2.25.1-py3-none-any.whl", hash = "sha256:eb6daebe3cbef5b39a0bb2a97cffbe9c7cb46b2fcc399ad141f369f3c2134b1f", size = 86039, upload-time = "2025-10-28T22:33:19.949Z" }, ] [[package]] @@ -195,11 +229,11 @@ wheels = [ [[package]] name = "aioitertools" -version = "0.13.0" +version = "0.12.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/fd/3c/53c4a17a05fb9ea2313ee1777ff53f5e001aefd5cc85aa2f4c2d982e1e38/aioitertools-0.13.0.tar.gz", hash = "sha256:620bd241acc0bbb9ec819f1ab215866871b4bbd1f73836a55f799200ee86950c", size = 19322, upload-time = "2025-11-06T22:17:07.609Z" } +sdist = { url = "https://files.pythonhosted.org/packages/06/de/38491a84ab323b47c7f86e94d2830e748780525f7a10c8600b67ead7e9ea/aioitertools-0.12.0.tar.gz", hash = "sha256:c2a9055b4fbb7705f561b9d86053e8af5d10cc845d22c32008c43490b2d8dd6b", size = 19369, upload-time = "2024-09-02T03:33:40.349Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/10/a1/510b0a7fadc6f43a6ce50152e69dbd86415240835868bb0bd9b5b88b1e06/aioitertools-0.13.0-py3-none-any.whl", hash = "sha256:0be0292b856f08dfac90e31f4739432f4cb6d7520ab9eb73e143f4f2fa5259be", size = 24182, upload-time = "2025-11-06T22:17:06.502Z" }, + { url = "https://files.pythonhosted.org/packages/85/13/58b70a580de00893223d61de8fea167877a3aed97d4a5e1405c9159ef925/aioitertools-0.12.0-py3-none-any.whl", hash = "sha256:fc1f5fac3d737354de8831cbba3eb04f79dd649d8f3afb4c5b114925e662a796", size = 24345, upload-time = "2024-09-02T03:34:59.454Z" }, ] [[package]] @@ -233,6 +267,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/59/75/e0e10dc7ed1408c28e03a6cb2d7a407f99320eb953f229d008a7a6d05546/aniso8601-10.0.1-py2.py3-none-any.whl", hash = "sha256:eb19717fd4e0db6de1aab06f12450ab92144246b257423fe020af5748c0cb89e", size = 52848, upload-time = "2025-04-18T17:29:41.492Z" }, ] +[[package]] +name = "annotated-doc" +version = "0.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d7/a6/dc46877b911e40c00d395771ea710d5e77b6de7bacd5fdcd78d70cc5a48f/annotated_doc-0.0.3.tar.gz", hash = "sha256:e18370014c70187422c33e945053ff4c286f453a984eba84d0dbfa0c935adeda", size = 5535, upload-time = "2025-10-24T14:57:10.718Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/02/b7/cf592cb5de5cb3bade3357f8d2cf42bf103bbe39f459824b4939fd212911/annotated_doc-0.0.3-py3-none-any.whl", hash = "sha256:348ec6664a76f1fd3be81f43dffbee4c7e8ce931ba71ec67cc7f4ade7fbbb580", size = 5488, upload-time = "2025-10-24T14:57:09.462Z" }, +] + [[package]] name = "annotated-types" version = "0.7.0" @@ -253,10 +296,10 @@ name = "anyio" version = "4.9.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, + { name = "exceptiongroup", marker = "python_full_version < '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "idna" }, { name = "sniffio" }, - { name = "typing-extensions", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/95/7d/4c1bd541d4dffa1b52bd83fb8527089e097a106fc90b467a7313b105f840/anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028", size = 190949, upload-time = "2025-03-17T00:02:54.77Z" } wheels = [ @@ -265,38 +308,44 @@ wheels = [ [[package]] name = "apache-tvm-ffi" -version = "0.1.2" +version = "0.1.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/78/85/37f89a12961152026e2bca28e7781c3a216835bd6f9ef8f7e9b6b596ae26/apache_tvm_ffi-0.1.2.tar.gz", hash = "sha256:91f6e4e38572f7ce78c6df810cc16bdd1283fd925010b0e503697934d58bb7e7", size = 1266004, upload-time = "2025-11-11T15:29:37.04Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ac/da/9a3784a6f713bfcb23ccdfd772fcddd52575beab06d52c95a2f01abf2f7b/apache_tvm_ffi-0.1.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5c5dd8edbb7c70c2531055aa11d305b4c648d3c603b40be94108ee54c57bfff5", size = 1727564, upload-time = "2025-11-11T15:28:35.837Z" }, - { url = "https://files.pythonhosted.org/packages/7f/bf/7759592c0fdaa0560b7190295f1d7f760c35f777255535d3a9387abd41bd/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:85654383246a92eb93e11413a71bc5f43aeb07b4fcd34e264e0a19e5bb6c74fa", size = 1882846, upload-time = "2025-11-11T15:28:38.097Z" }, - { url = "https://files.pythonhosted.org/packages/2d/90/7621f35b71537322519257ad989d55c24eddac64228ff08446418b8dd950/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1727ccd716bc660a97b436c8b79581c0e5f9e49509c72d998a5c8546319e1d0f", size = 1955889, upload-time = "2025-11-11T15:28:40.047Z" }, - { url = "https://files.pythonhosted.org/packages/e7/c7/34489858c2ea8040ce1a186c07d0b205932d8fd6a453edcf33e592c2f7dd/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4fa95de8aca32b195c18cb69e1e4fddb093eec601b1753877d0d92be31f3385d", size = 1836839, upload-time = "2025-11-11T15:28:41.616Z" }, - { url = "https://files.pythonhosted.org/packages/d8/d0/03f5022f4444b9dabd719f9aacb32a9fdf773e09ddc46c046c16b3786ed7/apache_tvm_ffi-0.1.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c81e317fe4941902b4ea81e7c8cdb379babc516f4531ebece802c4bef2b5ceaf", size = 1947466, upload-time = "2025-11-11T15:28:43.094Z" }, - { url = "https://files.pythonhosted.org/packages/2a/0e/1ab046ebb387833562e7a3f62fc007eb5b0709ceb4f9ac5a8cca854ce185/apache_tvm_ffi-0.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:93fb39b8f42126f884e173ec763dbe80e490162d8e403bcf7c09a89105e9cca0", size = 1712582, upload-time = "2025-11-11T15:28:44.684Z" }, - { url = "https://files.pythonhosted.org/packages/5b/50/d7d6ec1aa0ca8ff33aa24d43540570371c00adb3644a704fa04b77ba8027/apache_tvm_ffi-0.1.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6b8ae1aaa5eb713440950a91191753495cff63aedf9952edec42ba87523ead6e", size = 1727049, upload-time = "2025-11-11T15:28:46.316Z" }, - { url = "https://files.pythonhosted.org/packages/c4/3e/4aed56991cc9442f6873c344885a38879aaa2adff006038d2083674c507c/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:161cb2843753aa7428e20542fa7e90b494a86dca1317173a3846cee7cca66cb0", size = 1882729, upload-time = "2025-11-11T15:28:47.846Z" }, - { url = "https://files.pythonhosted.org/packages/fc/12/65539ca9f49bdc8a0a87ddddeb4a95176d3bfcc94c7604a62d9646d86c47/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:42fb0fb16a4956b7029beb3e1575dfbdd75a76685f8c99e57f1ab1c743b32446", size = 1955858, upload-time = "2025-11-11T15:28:49.887Z" }, - { url = "https://files.pythonhosted.org/packages/8e/08/b64ebc2a31c6502b1763a44e81369de7ea6235417b21e4f4acf0d4223f7c/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8c80b8defe86c805d679a75a3593a5d09bcf1bde4638dcca41dff7d2503df030", size = 1837206, upload-time = "2025-11-11T15:28:51.764Z" }, - { url = "https://files.pythonhosted.org/packages/1f/cb/775ff54f965801e1314afe1c39292b14e118402c66470f1baa7e50e638a7/apache_tvm_ffi-0.1.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ea8adc68e21d2eb46e8f89ee0c1be1e76f0450de9836bce63c6387b4e8b506f3", size = 1947597, upload-time = "2025-11-11T15:28:53.288Z" }, - { url = "https://files.pythonhosted.org/packages/50/0b/d52787822a06afc52707bb03cbdd3d5f4859f653bf7888d00492d66a9fbc/apache_tvm_ffi-0.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:dbcb788d94fde7bac932f73ae283d0f5a791f5ce8bc93d8f250b50b9724c92f7", size = 1712343, upload-time = "2025-11-11T15:28:54.856Z" }, - { url = "https://files.pythonhosted.org/packages/f3/db/b450e65e5a7d231f42a0a54c19bf45f870176d85d631df0b0636704bdc14/apache_tvm_ffi-0.1.2-cp312-abi3-macosx_11_0_arm64.whl", hash = "sha256:fa1b18c3f15089154729ffd6e9f18dc5e1737542b8f770770bdacba75c11d824", size = 1703946, upload-time = "2025-11-11T15:28:56.341Z" }, - { url = "https://files.pythonhosted.org/packages/0a/60/c199b53def4de5c412fd2d9ffce70dea974f2fdedeadcf67463e82562597/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fc9c12f26514a714e1ffbe3d3d82f8459a705600b2bd91621468dd4c16fadb4b", size = 1855387, upload-time = "2025-11-11T15:28:57.861Z" }, - { url = "https://files.pythonhosted.org/packages/ca/69/99ce93a028bdd08d35f760d8528773d9fbd79cd55a405f8600779b9deca7/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1637a3069573a3dd47921f2d2c81b1a60ce0d9a3cb0d18534a336e0e0fbfc831", size = 1932336, upload-time = "2025-11-11T15:28:59.323Z" }, - { url = "https://files.pythonhosted.org/packages/03/d7/dffbd0d454ce02e51712e35f16a5f28c5a4ca0c8cba35bcef98e8b974dec/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e0b5853895659759453aeb24fbc933cc6865f2f713f18216ab76360c9dd06f19", size = 1809796, upload-time = "2025-11-11T15:29:00.803Z" }, - { url = "https://files.pythonhosted.org/packages/79/83/5b2567261d9de3d3df32a137fc43bf83f82d95094889b9813c86d11224a9/apache_tvm_ffi-0.1.2-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bbe79e942923ee6cd1576c153a728d40cd590e4fb83f7b55c595c6d1bb50173c", size = 1921824, upload-time = "2025-11-11T15:29:02.585Z" }, - { url = "https://files.pythonhosted.org/packages/88/67/22325ae6eaca866cf745bd796a1c460b6a940b5c57e1868ccead097a8602/apache_tvm_ffi-0.1.2-cp312-abi3-win_amd64.whl", hash = "sha256:78d7c0f724d36ef4c9e9d84b750fa8f8d0ca72e2fc21f7f79368ad2cdfcfea74", size = 1692931, upload-time = "2025-11-11T15:29:04.343Z" }, - { url = "https://files.pythonhosted.org/packages/44/4b/bd940660a7daf256ab0bd0f3084918c4292899d9cb9549ec80d661fa06e5/apache_tvm_ffi-0.1.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c6578482ec5a682379007e75bda2ed86b40c473c0e1616b8d92078f226b7f10f", size = 1734016, upload-time = "2025-11-11T15:29:06.485Z" }, - { url = "https://files.pythonhosted.org/packages/6a/30/54806d8cacb27d3acef9176df57003006f324629270880900d57daa89e04/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6de5455b5b9e457dd0f293cbae281d07ad10064cab62b1b47c1f29084e377295", size = 1869479, upload-time = "2025-11-11T15:29:08.466Z" }, - { url = "https://files.pythonhosted.org/packages/49/98/119a55517abd0fdbe445e2461b3397f0876027ba2a978644010491a111c6/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:43365f39dcc4cf33bcca0a51600add2caf4cc99da02d36c981fdb4da37293c5e", size = 1940519, upload-time = "2025-11-11T15:29:10.484Z" }, - { url = "https://files.pythonhosted.org/packages/a6/a5/962bde8b751c6f33cea8d2ff014df66583b39ff900a9cd9add55f133f388/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d090c0515c852ef4bc1a4497d99286a41bbcaab0dc02d14d4c8930ff6e717fd7", size = 1822032, upload-time = "2025-11-11T15:29:12.112Z" }, - { url = "https://files.pythonhosted.org/packages/d3/27/bcb603e6426a965592bc62281b055a3cdc468cae8be3c9d16b196d0c92a6/apache_tvm_ffi-0.1.2-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cdc3a7bf0f142b433dc7b10d920b6583e21af310f7ca5641f14b7988676745e9", size = 1931627, upload-time = "2025-11-11T15:29:13.95Z" }, - { url = "https://files.pythonhosted.org/packages/e6/48/3efd1d2cb48c5d3c824e0b2b704b8b489561ecd138cd398b1449ed5f4074/apache_tvm_ffi-0.1.2-cp314-cp314t-win_amd64.whl", hash = "sha256:0872bb060ab90d6760296cf0720b2eed88245c17d7890592fea6ef0617b299d2", size = 1752549, upload-time = "2025-11-11T15:29:15.758Z" }, -] +sdist = { url = "https://files.pythonhosted.org/packages/d8/e8/7db1ca6db40877d190a8538cc378f740aae247c6fe063815898607c2d2ca/apache_tvm_ffi-0.1.1.tar.gz", hash = "sha256:728ce3f4ae02b89a7147b718f7f670afac3c6d1f96df38d488757274643709fc", size = 1259223, upload-time = "2025-11-04T02:43:38.154Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8a/ad/550aff4c9652ee8297f90a04c3ab4143ece1d373101010d85b5c9a9a2e7d/apache_tvm_ffi-0.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:af0de7bb9581ac9e090276cba37c4e7ffaeed601a2b2b546bf0e2daed3810cec", size = 1723658, upload-time = "2025-11-04T02:42:37.628Z" }, + { url = "https://files.pythonhosted.org/packages/48/5a/01e65f4a6c2b146f7c40f6d8d663d76b60c3be324159f8fb8223ea505738/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:eb7d6828652803cb8c0e13d1f06d01fc6bfb8e79e77e3de7e6fd4b5fae5ee9d2", size = 1882437, upload-time = "2025-11-04T02:42:39.647Z" }, + { url = "https://files.pythonhosted.org/packages/6b/bd/b52b71d03637d7a82388c2e90d48dddec2c46121be1333c9851d6a135824/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1fe072b55a7949720a792a9d455c0659aa097825e709a16a4667d720137b8b5c", size = 1954949, upload-time = "2025-11-04T02:42:41.119Z" }, + { url = "https://files.pythonhosted.org/packages/ac/ef/ff85926928694785f2399a4c5b793bcfecf8c3cf806dedf9202b7db73b8b/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b25178b265903dabd9a35bd767db26928be3b7869f681fe1d6e1aed93d7c0799", size = 1837395, upload-time = "2025-11-04T02:42:42.954Z" }, + { url = "https://files.pythonhosted.org/packages/de/69/f048bda5e5445a89200737062a202cb39097d3b1902e886654de9cd6b624/apache_tvm_ffi-0.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d5552af3c625750361d1b7d646d499a28caf94858967e74c9cce6ed7d4629b28", size = 1947740, upload-time = "2025-11-04T02:42:44.49Z" }, + { url = "https://files.pythonhosted.org/packages/dc/df/295f71613502edeb39a39b30c8bbb9ec8fcc06bd95b3043dd99b55fa98a8/apache_tvm_ffi-0.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:c102ba5899ce106c8068a3f21155c106790b5b0141fba52a52ed6e9aeb286aff", size = 1710966, upload-time = "2025-11-04T02:42:46.037Z" }, + { url = "https://files.pythonhosted.org/packages/8f/a9/544767d7058f825c0ceb5bc25760ad3a821b2efcc6a3dbe2e3988a3aee86/apache_tvm_ffi-0.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7cbf31c472920cdc5b3f75f2d2720b8a6b37ddbdb11d573fa94524815ea5a144", size = 1725662, upload-time = "2025-11-04T02:42:47.528Z" }, + { url = "https://files.pythonhosted.org/packages/54/c3/fe1a9f8968d5ce2d3b674e397c2bf01961e32a72b723817478c67c9780e3/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d7602bc37019387a4705677b6e742059c7e1973a899b6918af235febcb3d3b47", size = 1884278, upload-time = "2025-11-04T02:42:48.998Z" }, + { url = "https://files.pythonhosted.org/packages/24/b9/80cbba18b2d7d9013031d8c13671986912275b9ca6aaea70a1dd9b361c39/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7941f82a2ae4549f55c07d82d37c5765628d70f29dace98628393fcea525e870", size = 1957018, upload-time = "2025-11-04T02:42:50.538Z" }, + { url = "https://files.pythonhosted.org/packages/b4/0c/d27beb98d6841a3929468648433ed2c53e4da953fadb73c754b9372b2356/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2e0d6d8e0888ee3a3defd2cbe1eff7a65c05900b4e8fa0e18c890048fc6a44a6", size = 1839279, upload-time = "2025-11-04T02:42:52.438Z" }, + { url = "https://files.pythonhosted.org/packages/0f/10/d7cf7779c65047ad2ca652234a174c2908d936cb69bc4f5156e17382fa91/apache_tvm_ffi-0.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:549c2150e1c2d7ca7912cad173f62a192aec90cd981c024bd246161283ea5d78", size = 1950476, upload-time = "2025-11-04T02:42:54.159Z" }, + { url = "https://files.pythonhosted.org/packages/53/71/bb5ee4bca52a37a8f9580ab1f1de1be5366808a194981c324a756dabbe15/apache_tvm_ffi-0.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:3fbcfe526b458bc8edeafdc769388782d3bb4321c46a987e50bcece93ae78af8", size = 1711278, upload-time = "2025-11-04T02:42:55.56Z" }, + { url = "https://files.pythonhosted.org/packages/d1/1e/f8d16dbe2303d1e7348037b4207d6c1093c554573484c97c8f3cde61a060/apache_tvm_ffi-0.1.1-cp312-abi3-macosx_11_0_arm64.whl", hash = "sha256:f2c0164a5c6286f9c333ddedeb448b855cbc1225688d0a4c9aeab006ddfa1180", size = 1701072, upload-time = "2025-11-04T02:42:57.28Z" }, + { url = "https://files.pythonhosted.org/packages/3d/47/f7a55e9b5b741f901ed9101a3ef46fd250f2c1519a6479e055432ff4f308/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:33cc35738e0c44f2a67e550457b6b7dc7de9109ca64422a9e7063b1ba43c336e", size = 1854467, upload-time = "2025-11-04T02:43:00.158Z" }, + { url = "https://files.pythonhosted.org/packages/f2/db/f3adbe1e2d092fbb18908971a25ceb5496669ec65d01a28b7dd57f471ae0/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e9db6484259120b1bdc600f736084ee3d574775b1f4a3e8fef110323e3a9d2b6", size = 1930968, upload-time = "2025-11-04T02:43:01.96Z" }, + { url = "https://files.pythonhosted.org/packages/3b/da/7f678675ccc8af1c7d313322f3875e2c829f1faaa58c0d982431beeb3b3e/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c7bd812058ce9046cb69fd7b3e18538d1d0eefa1719822a1441b00bb841f7af4", size = 1811173, upload-time = "2025-11-04T02:43:03.404Z" }, + { url = "https://files.pythonhosted.org/packages/e1/11/c8b3b7d69ceebd219dcb06f5e4a3997edea3bc2e0bbdd8f57ae65bba4f2f/apache_tvm_ffi-0.1.1-cp312-abi3-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:807def3039fb336a228c120ca8c32eb794bdfd2d7aff218c8611f287ad913736", size = 1922690, upload-time = "2025-11-04T02:43:04.846Z" }, + { url = "https://files.pythonhosted.org/packages/fd/0b/f816735d761049e53eb388264238655f58fcb42a31e0d1848a4fb6a6556b/apache_tvm_ffi-0.1.1-cp312-abi3-win_amd64.whl", hash = "sha256:624b4430ca3949f85fffd9ef498ebaf1155ff0ac659fc764eec6c6fd66ec7986", size = 1690969, upload-time = "2025-11-04T02:43:06.581Z" }, + { url = "https://files.pythonhosted.org/packages/12/aa/df81df8f8b39d3c41fbac41b1e6661d192d9987a3ef317fabcefecf727a6/apache_tvm_ffi-0.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c93d9de81c1ba9560fcc696cf84d777f88016eb53f05ee2d6288ddcb95a5e72f", size = 1732582, upload-time = "2025-11-04T02:43:08.042Z" }, + { url = "https://files.pythonhosted.org/packages/a8/55/861090532e4accd855e119f0e67e0e482b42abb866c9505edd8956148ebc/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f9e0227179a0ce83384132b34757fd05f492270f1c031eae615870a5641b5039", size = 1870196, upload-time = "2025-11-04T02:43:09.911Z" }, + { url = "https://files.pythonhosted.org/packages/2a/c6/470493934559e371ad699e1764649176efc5e022267c6dd0a565217177ad/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:78e75e193d675b9639e6fd0c33c60c3a4259d4c9f848f60baa6a3194df7e1fea", size = 1941999, upload-time = "2025-11-04T02:43:11.467Z" }, + { url = "https://files.pythonhosted.org/packages/85/b8/84eba0d266c9b10beae59a6863ef5c68044e20a6f12d46a42116e80db774/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:49792622720421525a18e378d848411731d32fcb05a00b6e54b84d05ff46cc22", size = 1823965, upload-time = "2025-11-04T02:43:12.941Z" }, + { url = "https://files.pythonhosted.org/packages/64/73/ca73a43260a1374b1f34d0e6fcf6f8af16f66867a89dfd562b26184af1bd/apache_tvm_ffi-0.1.1-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:039293086d44e7f601bf8231e369198afe7ad38986330969ddb1a5fc7622976b", size = 1933779, upload-time = "2025-11-04T02:43:14.543Z" }, + { url = "https://files.pythonhosted.org/packages/5b/91/687c3b9ff3313addeebc1188ac50b299a82944ef1784b91890fc6f250ebd/apache_tvm_ffi-0.1.1-cp314-cp314t-win_amd64.whl", hash = "sha256:3f6cbd214bee2e52719d5264f05a2685c955ae7b096980f0361d917a5a9f47a6", size = 1751905, upload-time = "2025-11-04T02:43:16.286Z" }, +] + +[[package]] +name = "asciitree" +version = "0.3.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/6a/885bc91484e1aa8f618f6f0228d76d0e67000b0fdd6090673b777e311913/asciitree-0.3.3.tar.gz", hash = "sha256:4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e", size = 3951, upload-time = "2016-09-05T19:10:42.681Z" } [[package]] name = "astroid" @@ -618,16 +667,16 @@ wheels = [ [[package]] name = "botocore" -version = "1.40.70" +version = "1.40.61" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "jmespath" }, { name = "python-dateutil" }, { name = "urllib3" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/35/c1/8c4c199ae1663feee579a15861e34f10b29da11ae6ea0ad7b6a847ef3823/botocore-1.40.70.tar.gz", hash = "sha256:61b1f2cecd54d1b28a081116fa113b97bf4e17da57c62ae2c2751fe4c528af1f", size = 14444592, upload-time = "2025-11-10T20:29:04.046Z" } +sdist = { url = "https://files.pythonhosted.org/packages/28/a3/81d3a47c2dbfd76f185d3b894f2ad01a75096c006a2dd91f237dca182188/botocore-1.40.61.tar.gz", hash = "sha256:a2487ad69b090f9cccd64cf07c7021cd80ee9c0655ad974f87045b02f3ef52cd", size = 14393956, upload-time = "2025-10-28T19:26:46.108Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/55/d2/507fd0ee4dd574d2bdbdeac5df83f39d2cae1ffe97d4622cca6f6bab39f1/botocore-1.40.70-py3-none-any.whl", hash = "sha256:4a394ad25f5d9f1ef0bed610365744523eeb5c22de6862ab25d8c93f9f6d295c", size = 14106829, upload-time = "2025-11-10T20:29:01.101Z" }, + { url = "https://files.pythonhosted.org/packages/38/c5/f6ce561004db45f0b847c2cd9b19c67c6bf348a82018a48cb718be6b58b0/botocore-1.40.61-py3-none-any.whl", hash = "sha256:17ebae412692fd4824f99cde0f08d50126dc97954008e5ba2b522eb049238aa7", size = 14055973, upload-time = "2025-10-28T19:26:42.15Z" }, ] [[package]] @@ -670,11 +719,11 @@ sdist = { url = "https://files.pythonhosted.org/packages/64/cb/104778c728dc3d5ea [[package]] name = "certifi" -version = "2025.11.12" +version = "2025.10.5" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/a2/8c/58f469717fa48465e4a50c014a0400602d3c437d7c0c468e17ada824da3a/certifi-2025.11.12.tar.gz", hash = "sha256:d8ab5478f2ecd78af242878415affce761ca6bc54a22a27e026d7c25357c3316", size = 160538, upload-time = "2025-11-12T02:54:51.517Z" } +sdist = { url = "https://files.pythonhosted.org/packages/4c/5b/b6ce21586237c77ce67d01dc5507039d444b630dd76611bbca2d8e5dcd91/certifi-2025.10.5.tar.gz", hash = "sha256:47c09d31ccf2acf0be3f701ea53595ee7e0b8fa08801c6624be771df09ae7b43", size = 164519, upload-time = "2025-10-05T04:12:15.808Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/70/7d/9bc192684cea499815ff478dfcdc13835ddf401365057044fb721ec6bddb/certifi-2025.11.12-py3-none-any.whl", hash = "sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b", size = 159438, upload-time = "2025-11-12T02:54:49.735Z" }, + { url = "https://files.pythonhosted.org/packages/e4/37/af0d2ef3967ac0d6113837b44a4f0bfe1328c2b9763bd5b1744520e5cfed/certifi-2025.10.5-py3-none-any.whl", hash = "sha256:0f212c2744a9bb6de0c56639a6f68afe01ecd92d91f14ae897c4fe7bbeeef0de", size = 163286, upload-time = "2025-10-05T04:12:14.03Z" }, ] [[package]] @@ -682,7 +731,7 @@ name = "cffi" version = "2.0.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "pycparser", marker = "implementation_name != 'PyPy'" }, + { name = "pycparser", marker = "implementation_name != 'PyPy' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/eb/56/b1ba7935a17738ae8453301356628e8147c79dbb825bcbc73dc7401f9846/cffi-2.0.0.tar.gz", hash = "sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529", size = 523588, upload-time = "2025-09-08T23:24:04.541Z" } wheels = [ @@ -853,7 +902,7 @@ name = "click" version = "8.3.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, + { name = "colorama", marker = "sys_platform == 'win32' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/46/61/de6cd827efad202d7057d93e0fed9294b96952e188f7384832791c7b2254/click-8.3.0.tar.gz", hash = "sha256:e7b8232224eba16f4ebe410c25ced9f7875cb5f3263ffc93cc3e8da705e229c4", size = 276943, upload-time = "2025-09-18T17:32:23.696Z" } wheels = [ @@ -889,101 +938,101 @@ wheels = [ [[package]] name = "coverage" -version = "7.11.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/d2/59/9698d57a3b11704c7b89b21d69e9d23ecf80d538cabb536c8b63f4a12322/coverage-7.11.3.tar.gz", hash = "sha256:0f59387f5e6edbbffec2281affb71cdc85e0776c1745150a3ab9b6c1d016106b", size = 815210, upload-time = "2025-11-10T00:13:17.18Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/fd/68/b53157115ef76d50d1d916d6240e5cd5b3c14dba8ba1b984632b8221fc2e/coverage-7.11.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0c986537abca9b064510f3fd104ba33e98d3036608c7f2f5537f869bc10e1ee5", size = 216377, upload-time = "2025-11-10T00:10:27.317Z" }, - { url = "https://files.pythonhosted.org/packages/14/c1/d2f9d8e37123fe6e7ab8afcaab8195f13bc84a8b2f449a533fd4812ac724/coverage-7.11.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:28c5251b3ab1d23e66f1130ca0c419747edfbcb4690de19467cd616861507af7", size = 216892, upload-time = "2025-11-10T00:10:30.624Z" }, - { url = "https://files.pythonhosted.org/packages/83/73/18f05d8010149b650ed97ee5c9f7e4ae68c05c7d913391523281e41c2495/coverage-7.11.3-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:4f2bb4ee8dd40f9b2a80bb4adb2aecece9480ba1fa60d9382e8c8e0bd558e2eb", size = 243650, upload-time = "2025-11-10T00:10:32.392Z" }, - { url = "https://files.pythonhosted.org/packages/63/3c/c0cbb296c0ecc6dcbd70f4b473fcd7fe4517bbef8b09f4326d78f38adb87/coverage-7.11.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:e5f4bfac975a2138215a38bda599ef00162e4143541cf7dd186da10a7f8e69f1", size = 245478, upload-time = "2025-11-10T00:10:34.157Z" }, - { url = "https://files.pythonhosted.org/packages/b9/9a/dad288cf9faa142a14e75e39dc646d968b93d74e15c83e9b13fd628f2cb3/coverage-7.11.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8f4cbfff5cf01fa07464439a8510affc9df281535f41a1f5312fbd2b59b4ab5c", size = 247337, upload-time = "2025-11-10T00:10:35.655Z" }, - { url = "https://files.pythonhosted.org/packages/e3/ba/f6148ebf5547b3502013175e41bf3107a4e34b7dd19f9793a6ce0e1cd61f/coverage-7.11.3-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:31663572f20bf3406d7ac00d6981c7bbbcec302539d26b5ac596ca499664de31", size = 244328, upload-time = "2025-11-10T00:10:37.459Z" }, - { url = "https://files.pythonhosted.org/packages/e6/4d/b93784d0b593c5df89a0d48cbbd2d0963e0ca089eaf877405849792e46d3/coverage-7.11.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:9799bd6a910961cb666196b8583ed0ee125fa225c6fdee2cbf00232b861f29d2", size = 245381, upload-time = "2025-11-10T00:10:39.229Z" }, - { url = "https://files.pythonhosted.org/packages/3a/8d/6735bfd4f0f736d457642ee056a570d704c9d57fdcd5c91ea5d6b15c944e/coverage-7.11.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:097acc18bedf2c6e3144eaf09b5f6034926c3c9bb9e10574ffd0942717232507", size = 243390, upload-time = "2025-11-10T00:10:40.984Z" }, - { url = "https://files.pythonhosted.org/packages/db/3d/7ba68ed52d1873d450aefd8d2f5a353e67b421915cb6c174e4222c7b918c/coverage-7.11.3-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:6f033dec603eea88204589175782290a038b436105a8f3637a81c4359df27832", size = 243654, upload-time = "2025-11-10T00:10:42.496Z" }, - { url = "https://files.pythonhosted.org/packages/14/26/be2720c4c7bf73c6591ae4ab503a7b5a31c7a60ced6dba855cfcb4a5af7e/coverage-7.11.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:dd9ca2d44ed8018c90efb72f237a2a140325a4c3339971364d758e78b175f58e", size = 244272, upload-time = "2025-11-10T00:10:44.39Z" }, - { url = "https://files.pythonhosted.org/packages/90/20/086f5697780df146dbc0df4ae9b6db2b23ddf5aa550f977b2825137728e9/coverage-7.11.3-cp310-cp310-win32.whl", hash = "sha256:900580bc99c145e2561ea91a2d207e639171870d8a18756eb57db944a017d4bb", size = 218969, upload-time = "2025-11-10T00:10:45.863Z" }, - { url = "https://files.pythonhosted.org/packages/98/5c/cc6faba945ede5088156da7770e30d06c38b8591785ac99bcfb2074f9ef6/coverage-7.11.3-cp310-cp310-win_amd64.whl", hash = "sha256:c8be5bfcdc7832011b2652db29ed7672ce9d353dd19bce5272ca33dbcf60aaa8", size = 219903, upload-time = "2025-11-10T00:10:47.676Z" }, - { url = "https://files.pythonhosted.org/packages/92/92/43a961c0f57b666d01c92bcd960c7f93677de5e4ee7ca722564ad6dee0fa/coverage-7.11.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:200bb89fd2a8a07780eafcdff6463104dec459f3c838d980455cfa84f5e5e6e1", size = 216504, upload-time = "2025-11-10T00:10:49.524Z" }, - { url = "https://files.pythonhosted.org/packages/5d/5c/dbfc73329726aef26dbf7fefef81b8a2afd1789343a579ea6d99bf15d26e/coverage-7.11.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8d264402fc179776d43e557e1ca4a7d953020d3ee95f7ec19cc2c9d769277f06", size = 217006, upload-time = "2025-11-10T00:10:51.32Z" }, - { url = "https://files.pythonhosted.org/packages/a5/e0/878c84fb6661964bc435beb1e28c050650aa30e4c1cdc12341e298700bda/coverage-7.11.3-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:385977d94fc155f8731c895accdfcc3dd0d9dd9ef90d102969df95d3c637ab80", size = 247415, upload-time = "2025-11-10T00:10:52.805Z" }, - { url = "https://files.pythonhosted.org/packages/56/9e/0677e78b1e6a13527f39c4b39c767b351e256b333050539861c63f98bd61/coverage-7.11.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:0542ddf6107adbd2592f29da9f59f5d9cff7947b5bb4f734805085c327dcffaa", size = 249332, upload-time = "2025-11-10T00:10:54.35Z" }, - { url = "https://files.pythonhosted.org/packages/54/90/25fc343e4ce35514262451456de0953bcae5b37dda248aed50ee51234cee/coverage-7.11.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d60bf4d7f886989ddf80e121a7f4d140d9eac91f1d2385ce8eb6bda93d563297", size = 251443, upload-time = "2025-11-10T00:10:55.832Z" }, - { url = "https://files.pythonhosted.org/packages/13/56/bc02bbc890fd8b155a64285c93e2ab38647486701ac9c980d457cdae857a/coverage-7.11.3-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:c0a3b6e32457535df0d41d2d895da46434706dd85dbaf53fbc0d3bd7d914b362", size = 247554, upload-time = "2025-11-10T00:10:57.829Z" }, - { url = "https://files.pythonhosted.org/packages/0f/ab/0318888d091d799a82d788c1e8d8bd280f1d5c41662bbb6e11187efe33e8/coverage-7.11.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:876a3ee7fd2613eb79602e4cdb39deb6b28c186e76124c3f29e580099ec21a87", size = 249139, upload-time = "2025-11-10T00:10:59.465Z" }, - { url = "https://files.pythonhosted.org/packages/79/d8/3ee50929c4cd36fcfcc0f45d753337001001116c8a5b8dd18d27ea645737/coverage-7.11.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:a730cd0824e8083989f304e97b3f884189efb48e2151e07f57e9e138ab104200", size = 247209, upload-time = "2025-11-10T00:11:01.432Z" }, - { url = "https://files.pythonhosted.org/packages/94/7c/3cf06e327401c293e60c962b4b8a2ceb7167c1a428a02be3adbd1d7c7e4c/coverage-7.11.3-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:b5cd111d3ab7390be0c07ad839235d5ad54d2ca497b5f5db86896098a77180a4", size = 246936, upload-time = "2025-11-10T00:11:02.964Z" }, - { url = "https://files.pythonhosted.org/packages/99/0b/ffc03dc8f4083817900fd367110015ef4dd227b37284104a5eb5edc9c106/coverage-7.11.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:074e6a5cd38e06671580b4d872c1a67955d4e69639e4b04e87fc03b494c1f060", size = 247835, upload-time = "2025-11-10T00:11:04.405Z" }, - { url = "https://files.pythonhosted.org/packages/17/4d/dbe54609ee066553d0bcdcdf108b177c78dab836292bee43f96d6a5674d1/coverage-7.11.3-cp311-cp311-win32.whl", hash = "sha256:86d27d2dd7c7c5a44710565933c7dc9cd70e65ef97142e260d16d555667deef7", size = 218994, upload-time = "2025-11-10T00:11:05.966Z" }, - { url = "https://files.pythonhosted.org/packages/94/11/8e7155df53f99553ad8114054806c01a2c0b08f303ea7e38b9831652d83d/coverage-7.11.3-cp311-cp311-win_amd64.whl", hash = "sha256:ca90ef33a152205fb6f2f0c1f3e55c50df4ef049bb0940ebba666edd4cdebc55", size = 219926, upload-time = "2025-11-10T00:11:07.936Z" }, - { url = "https://files.pythonhosted.org/packages/1f/93/bea91b6a9e35d89c89a1cd5824bc72e45151a9c2a9ca0b50d9e9a85e3ae3/coverage-7.11.3-cp311-cp311-win_arm64.whl", hash = "sha256:56f909a40d68947ef726ce6a34eb38f0ed241ffbe55c5007c64e616663bcbafc", size = 218599, upload-time = "2025-11-10T00:11:09.578Z" }, - { url = "https://files.pythonhosted.org/packages/c2/39/af056ec7a27c487e25c7f6b6e51d2ee9821dba1863173ddf4dc2eebef4f7/coverage-7.11.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:5b771b59ac0dfb7f139f70c85b42717ef400a6790abb6475ebac1ecee8de782f", size = 216676, upload-time = "2025-11-10T00:11:11.566Z" }, - { url = "https://files.pythonhosted.org/packages/3c/f8/21126d34b174d037b5d01bea39077725cbb9a0da94a95c5f96929c695433/coverage-7.11.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:603c4414125fc9ae9000f17912dcfd3d3eb677d4e360b85206539240c96ea76e", size = 217034, upload-time = "2025-11-10T00:11:13.12Z" }, - { url = "https://files.pythonhosted.org/packages/d5/3f/0fd35f35658cdd11f7686303214bd5908225838f374db47f9e457c8d6df8/coverage-7.11.3-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:77ffb3b7704eb7b9b3298a01fe4509cef70117a52d50bcba29cffc5f53dd326a", size = 248531, upload-time = "2025-11-10T00:11:15.023Z" }, - { url = "https://files.pythonhosted.org/packages/8f/59/0bfc5900fc15ce4fd186e092451de776bef244565c840c9c026fd50857e1/coverage-7.11.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4d4ca49f5ba432b0755ebb0fc3a56be944a19a16bb33802264bbc7311622c0d1", size = 251290, upload-time = "2025-11-10T00:11:16.628Z" }, - { url = "https://files.pythonhosted.org/packages/71/88/d5c184001fa2ac82edf1b8f2cd91894d2230d7c309e937c54c796176e35b/coverage-7.11.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:05fd3fb6edff0c98874d752013588836f458261e5eba587afe4c547bba544afd", size = 252375, upload-time = "2025-11-10T00:11:18.249Z" }, - { url = "https://files.pythonhosted.org/packages/5c/29/f60af9f823bf62c7a00ce1ac88441b9a9a467e499493e5cc65028c8b8dd2/coverage-7.11.3-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:0e920567f8c3a3ce68ae5a42cf7c2dc4bb6cc389f18bff2235dd8c03fa405de5", size = 248946, upload-time = "2025-11-10T00:11:20.202Z" }, - { url = "https://files.pythonhosted.org/packages/67/16/4662790f3b1e03fce5280cad93fd18711c35980beb3c6f28dca41b5230c6/coverage-7.11.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:4bec8c7160688bd5a34e65c82984b25409563134d63285d8943d0599efbc448e", size = 250310, upload-time = "2025-11-10T00:11:21.689Z" }, - { url = "https://files.pythonhosted.org/packages/8f/75/dd6c2e28308a83e5fc1ee602f8204bd3aa5af685c104cb54499230cf56db/coverage-7.11.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:adb9b7b42c802bd8cb3927de8c1c26368ce50c8fdaa83a9d8551384d77537044", size = 248461, upload-time = "2025-11-10T00:11:23.384Z" }, - { url = "https://files.pythonhosted.org/packages/16/fe/b71af12be9f59dc9eb060688fa19a95bf3223f56c5af1e9861dfa2275d2c/coverage-7.11.3-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:c8f563b245b4ddb591e99f28e3cd140b85f114b38b7f95b2e42542f0603eb7d7", size = 248039, upload-time = "2025-11-10T00:11:25.07Z" }, - { url = "https://files.pythonhosted.org/packages/11/b8/023b2003a2cd96bdf607afe03d9b96c763cab6d76e024abe4473707c4eb8/coverage-7.11.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e2a96fdc7643c9517a317553aca13b5cae9bad9a5f32f4654ce247ae4d321405", size = 249903, upload-time = "2025-11-10T00:11:26.992Z" }, - { url = "https://files.pythonhosted.org/packages/d6/ee/5f1076311aa67b1fa4687a724cc044346380e90ce7d94fec09fd384aa5fd/coverage-7.11.3-cp312-cp312-win32.whl", hash = "sha256:e8feeb5e8705835f0622af0fe7ff8d5cb388948454647086494d6c41ec142c2e", size = 219201, upload-time = "2025-11-10T00:11:28.619Z" }, - { url = "https://files.pythonhosted.org/packages/4f/24/d21688f48fe9fcc778956680fd5aaf69f4e23b245b7c7a4755cbd421d25b/coverage-7.11.3-cp312-cp312-win_amd64.whl", hash = "sha256:abb903ffe46bd319d99979cdba350ae7016759bb69f47882242f7b93f3356055", size = 220012, upload-time = "2025-11-10T00:11:30.234Z" }, - { url = "https://files.pythonhosted.org/packages/4f/9e/d5eb508065f291456378aa9b16698b8417d87cb084c2b597f3beb00a8084/coverage-7.11.3-cp312-cp312-win_arm64.whl", hash = "sha256:1451464fd855d9bd000c19b71bb7dafea9ab815741fb0bd9e813d9b671462d6f", size = 218652, upload-time = "2025-11-10T00:11:32.165Z" }, - { url = "https://files.pythonhosted.org/packages/6d/f6/d8572c058211c7d976f24dab71999a565501fb5b3cdcb59cf782f19c4acb/coverage-7.11.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84b892e968164b7a0498ddc5746cdf4e985700b902128421bb5cec1080a6ee36", size = 216694, upload-time = "2025-11-10T00:11:34.296Z" }, - { url = "https://files.pythonhosted.org/packages/4a/f6/b6f9764d90c0ce1bce8d995649fa307fff21f4727b8d950fa2843b7b0de5/coverage-7.11.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f761dbcf45e9416ec4698e1a7649248005f0064ce3523a47402d1bff4af2779e", size = 217065, upload-time = "2025-11-10T00:11:36.281Z" }, - { url = "https://files.pythonhosted.org/packages/a5/8d/a12cb424063019fd077b5be474258a0ed8369b92b6d0058e673f0a945982/coverage-7.11.3-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1410bac9e98afd9623f53876fae7d8a5db9f5a0ac1c9e7c5188463cb4b3212e2", size = 248062, upload-time = "2025-11-10T00:11:37.903Z" }, - { url = "https://files.pythonhosted.org/packages/7f/9c/dab1a4e8e75ce053d14259d3d7485d68528a662e286e184685ea49e71156/coverage-7.11.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:004cdcea3457c0ea3233622cd3464c1e32ebba9b41578421097402bee6461b63", size = 250657, upload-time = "2025-11-10T00:11:39.509Z" }, - { url = "https://files.pythonhosted.org/packages/3f/89/a14f256438324f33bae36f9a1a7137729bf26b0a43f5eda60b147ec7c8c7/coverage-7.11.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8f067ada2c333609b52835ca4d4868645d3b63ac04fb2b9a658c55bba7f667d3", size = 251900, upload-time = "2025-11-10T00:11:41.372Z" }, - { url = "https://files.pythonhosted.org/packages/04/07/75b0d476eb349f1296486b1418b44f2d8780cc8db47493de3755e5340076/coverage-7.11.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:07bc7745c945a6d95676953e86ba7cebb9f11de7773951c387f4c07dc76d03f5", size = 248254, upload-time = "2025-11-10T00:11:43.27Z" }, - { url = "https://files.pythonhosted.org/packages/5a/4b/0c486581fa72873489ca092c52792d008a17954aa352809a7cbe6cf0bf07/coverage-7.11.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:8bba7e4743e37484ae17d5c3b8eb1ce78b564cb91b7ace2e2182b25f0f764cb5", size = 250041, upload-time = "2025-11-10T00:11:45.274Z" }, - { url = "https://files.pythonhosted.org/packages/af/a3/0059dafb240ae3e3291f81b8de00e9c511d3dd41d687a227dd4b529be591/coverage-7.11.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fbffc22d80d86fbe456af9abb17f7a7766e7b2101f7edaacc3535501691563f7", size = 248004, upload-time = "2025-11-10T00:11:46.93Z" }, - { url = "https://files.pythonhosted.org/packages/83/93/967d9662b1eb8c7c46917dcc7e4c1875724ac3e73c3cb78e86d7a0ac719d/coverage-7.11.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:0dba4da36730e384669e05b765a2c49f39514dd3012fcc0398dd66fba8d746d5", size = 247828, upload-time = "2025-11-10T00:11:48.563Z" }, - { url = "https://files.pythonhosted.org/packages/4c/1c/5077493c03215701e212767e470b794548d817dfc6247a4718832cc71fac/coverage-7.11.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ae12fe90b00b71a71b69f513773310782ce01d5f58d2ceb2b7c595ab9d222094", size = 249588, upload-time = "2025-11-10T00:11:50.581Z" }, - { url = "https://files.pythonhosted.org/packages/7f/a5/77f64de461016e7da3e05d7d07975c89756fe672753e4cf74417fc9b9052/coverage-7.11.3-cp313-cp313-win32.whl", hash = "sha256:12d821de7408292530b0d241468b698bce18dd12ecaf45316149f53877885f8c", size = 219223, upload-time = "2025-11-10T00:11:52.184Z" }, - { url = "https://files.pythonhosted.org/packages/ed/1c/ec51a3c1a59d225b44bdd3a4d463135b3159a535c2686fac965b698524f4/coverage-7.11.3-cp313-cp313-win_amd64.whl", hash = "sha256:6bb599052a974bb6cedfa114f9778fedfad66854107cf81397ec87cb9b8fbcf2", size = 220033, upload-time = "2025-11-10T00:11:53.871Z" }, - { url = "https://files.pythonhosted.org/packages/01/ec/e0ce39746ed558564c16f2cc25fa95ce6fc9fa8bfb3b9e62855d4386b886/coverage-7.11.3-cp313-cp313-win_arm64.whl", hash = "sha256:bb9d7efdb063903b3fdf77caec7b77c3066885068bdc0d44bc1b0c171033f944", size = 218661, upload-time = "2025-11-10T00:11:55.597Z" }, - { url = "https://files.pythonhosted.org/packages/46/cb/483f130bc56cbbad2638248915d97b185374d58b19e3cc3107359715949f/coverage-7.11.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:fb58da65e3339b3dbe266b607bb936efb983d86b00b03eb04c4ad5b442c58428", size = 217389, upload-time = "2025-11-10T00:11:57.59Z" }, - { url = "https://files.pythonhosted.org/packages/cb/ae/81f89bae3afef75553cf10e62feb57551535d16fd5859b9ee5a2a97ddd27/coverage-7.11.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:8d16bbe566e16a71d123cd66382c1315fcd520c7573652a8074a8fe281b38c6a", size = 217742, upload-time = "2025-11-10T00:11:59.519Z" }, - { url = "https://files.pythonhosted.org/packages/db/6e/a0fb897041949888191a49c36afd5c6f5d9f5fd757e0b0cd99ec198a324b/coverage-7.11.3-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:a8258f10059b5ac837232c589a350a2df4a96406d6d5f2a09ec587cbdd539655", size = 259049, upload-time = "2025-11-10T00:12:01.592Z" }, - { url = "https://files.pythonhosted.org/packages/d9/b6/d13acc67eb402d91eb94b9bd60593411799aed09ce176ee8d8c0e39c94ca/coverage-7.11.3-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4c5627429f7fbff4f4131cfdd6abd530734ef7761116811a707b88b7e205afd7", size = 261113, upload-time = "2025-11-10T00:12:03.639Z" }, - { url = "https://files.pythonhosted.org/packages/ea/07/a6868893c48191d60406df4356aa7f0f74e6de34ef1f03af0d49183e0fa1/coverage-7.11.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:465695268414e149bab754c54b0c45c8ceda73dd4a5c3ba255500da13984b16d", size = 263546, upload-time = "2025-11-10T00:12:05.485Z" }, - { url = "https://files.pythonhosted.org/packages/24/e5/28598f70b2c1098332bac47925806353b3313511d984841111e6e760c016/coverage-7.11.3-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:4ebcddfcdfb4c614233cff6e9a3967a09484114a8b2e4f2c7a62dc83676ba13f", size = 258260, upload-time = "2025-11-10T00:12:07.137Z" }, - { url = "https://files.pythonhosted.org/packages/0e/58/58e2d9e6455a4ed746a480c4b9cf96dc3cb2a6b8f3efbee5efd33ae24b06/coverage-7.11.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:13b2066303a1c1833c654d2af0455bb009b6e1727b3883c9964bc5c2f643c1d0", size = 261121, upload-time = "2025-11-10T00:12:09.138Z" }, - { url = "https://files.pythonhosted.org/packages/17/57/38803eefb9b0409934cbc5a14e3978f0c85cb251d2b6f6a369067a7105a0/coverage-7.11.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:d8750dd20362a1b80e3cf84f58013d4672f89663aee457ea59336df50fab6739", size = 258736, upload-time = "2025-11-10T00:12:11.195Z" }, - { url = "https://files.pythonhosted.org/packages/a8/f3/f94683167156e93677b3442be1d4ca70cb33718df32a2eea44a5898f04f6/coverage-7.11.3-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:ab6212e62ea0e1006531a2234e209607f360d98d18d532c2fa8e403c1afbdd71", size = 257625, upload-time = "2025-11-10T00:12:12.843Z" }, - { url = "https://files.pythonhosted.org/packages/87/ed/42d0bf1bc6bfa7d65f52299a31daaa866b4c11000855d753857fe78260ac/coverage-7.11.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:a6b17c2b5e0b9bb7702449200f93e2d04cb04b1414c41424c08aa1e5d352da76", size = 259827, upload-time = "2025-11-10T00:12:15.128Z" }, - { url = "https://files.pythonhosted.org/packages/d3/76/5682719f5d5fbedb0c624c9851ef847407cae23362deb941f185f489c54e/coverage-7.11.3-cp313-cp313t-win32.whl", hash = "sha256:426559f105f644b69290ea414e154a0d320c3ad8a2bb75e62884731f69cf8e2c", size = 219897, upload-time = "2025-11-10T00:12:17.274Z" }, - { url = "https://files.pythonhosted.org/packages/10/e0/1da511d0ac3d39e6676fa6cc5ec35320bbf1cebb9b24e9ee7548ee4e931a/coverage-7.11.3-cp313-cp313t-win_amd64.whl", hash = "sha256:90a96fcd824564eae6137ec2563bd061d49a32944858d4bdbae5c00fb10e76ac", size = 220959, upload-time = "2025-11-10T00:12:19.292Z" }, - { url = "https://files.pythonhosted.org/packages/e5/9d/e255da6a04e9ec5f7b633c54c0fdfa221a9e03550b67a9c83217de12e96c/coverage-7.11.3-cp313-cp313t-win_arm64.whl", hash = "sha256:1e33d0bebf895c7a0905fcfaff2b07ab900885fc78bba2a12291a2cfbab014cc", size = 219234, upload-time = "2025-11-10T00:12:21.251Z" }, - { url = "https://files.pythonhosted.org/packages/84/d6/634ec396e45aded1772dccf6c236e3e7c9604bc47b816e928f32ce7987d1/coverage-7.11.3-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:fdc5255eb4815babcdf236fa1a806ccb546724c8a9b129fd1ea4a5448a0bf07c", size = 216746, upload-time = "2025-11-10T00:12:23.089Z" }, - { url = "https://files.pythonhosted.org/packages/28/76/1079547f9d46f9c7c7d0dad35b6873c98bc5aa721eeabceafabd722cd5e7/coverage-7.11.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:fe3425dc6021f906c6325d3c415e048e7cdb955505a94f1eb774dafc779ba203", size = 217077, upload-time = "2025-11-10T00:12:24.863Z" }, - { url = "https://files.pythonhosted.org/packages/2d/71/6ad80d6ae0d7cb743b9a98df8bb88b1ff3dc54491508a4a97549c2b83400/coverage-7.11.3-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:4ca5f876bf41b24378ee67c41d688155f0e54cdc720de8ef9ad6544005899240", size = 248122, upload-time = "2025-11-10T00:12:26.553Z" }, - { url = "https://files.pythonhosted.org/packages/20/1d/784b87270784b0b88e4beec9d028e8d58f73ae248032579c63ad2ac6f69a/coverage-7.11.3-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:9061a3e3c92b27fd8036dafa26f25d95695b6aa2e4514ab16a254f297e664f83", size = 250638, upload-time = "2025-11-10T00:12:28.555Z" }, - { url = "https://files.pythonhosted.org/packages/f5/26/b6dd31e23e004e9de84d1a8672cd3d73e50f5dae65dbd0f03fa2cdde6100/coverage-7.11.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:abcea3b5f0dc44e1d01c27090bc32ce6ffb7aa665f884f1890710454113ea902", size = 251972, upload-time = "2025-11-10T00:12:30.246Z" }, - { url = "https://files.pythonhosted.org/packages/c9/ef/f9c64d76faac56b82daa036b34d4fe9ab55eb37f22062e68e9470583e688/coverage-7.11.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:68c4eb92997dbaaf839ea13527be463178ac0ddd37a7ac636b8bc11a51af2428", size = 248147, upload-time = "2025-11-10T00:12:32.195Z" }, - { url = "https://files.pythonhosted.org/packages/b6/eb/5b666f90a8f8053bd264a1ce693d2edef2368e518afe70680070fca13ecd/coverage-7.11.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:149eccc85d48c8f06547534068c41d69a1a35322deaa4d69ba1561e2e9127e75", size = 249995, upload-time = "2025-11-10T00:12:33.969Z" }, - { url = "https://files.pythonhosted.org/packages/eb/7b/871e991ffb5d067f8e67ffb635dabba65b231d6e0eb724a4a558f4a702a5/coverage-7.11.3-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:08c0bcf932e47795c49f0406054824b9d45671362dfc4269e0bc6e4bff010704", size = 247948, upload-time = "2025-11-10T00:12:36.341Z" }, - { url = "https://files.pythonhosted.org/packages/0a/8b/ce454f0af9609431b06dbe5485fc9d1c35ddc387e32ae8e374f49005748b/coverage-7.11.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:39764c6167c82d68a2d8c97c33dba45ec0ad9172570860e12191416f4f8e6e1b", size = 247770, upload-time = "2025-11-10T00:12:38.167Z" }, - { url = "https://files.pythonhosted.org/packages/61/8f/79002cb58a61dfbd2085de7d0a46311ef2476823e7938db80284cedd2428/coverage-7.11.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:3224c7baf34e923ffc78cb45e793925539d640d42c96646db62dbd61bbcfa131", size = 249431, upload-time = "2025-11-10T00:12:40.354Z" }, - { url = "https://files.pythonhosted.org/packages/58/cc/d06685dae97468ed22999440f2f2f5060940ab0e7952a7295f236d98cce7/coverage-7.11.3-cp314-cp314-win32.whl", hash = "sha256:c713c1c528284d636cd37723b0b4c35c11190da6f932794e145fc40f8210a14a", size = 219508, upload-time = "2025-11-10T00:12:42.231Z" }, - { url = "https://files.pythonhosted.org/packages/5f/ed/770cd07706a3598c545f62d75adf2e5bd3791bffccdcf708ec383ad42559/coverage-7.11.3-cp314-cp314-win_amd64.whl", hash = "sha256:c381a252317f63ca0179d2c7918e83b99a4ff3101e1b24849b999a00f9cd4f86", size = 220325, upload-time = "2025-11-10T00:12:44.065Z" }, - { url = "https://files.pythonhosted.org/packages/ee/ac/6a1c507899b6fb1b9a56069954365f655956bcc648e150ce64c2b0ecbed8/coverage-7.11.3-cp314-cp314-win_arm64.whl", hash = "sha256:3e33a968672be1394eded257ec10d4acbb9af2ae263ba05a99ff901bb863557e", size = 218899, upload-time = "2025-11-10T00:12:46.18Z" }, - { url = "https://files.pythonhosted.org/packages/9a/58/142cd838d960cd740654d094f7b0300d7b81534bb7304437d2439fb685fb/coverage-7.11.3-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:f9c96a29c6d65bd36a91f5634fef800212dff69dacdb44345c4c9783943ab0df", size = 217471, upload-time = "2025-11-10T00:12:48.392Z" }, - { url = "https://files.pythonhosted.org/packages/bc/2c/2f44d39eb33e41ab3aba80571daad32e0f67076afcf27cb443f9e5b5a3ee/coverage-7.11.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:2ec27a7a991d229213c8070d31e3ecf44d005d96a9edc30c78eaeafaa421c001", size = 217742, upload-time = "2025-11-10T00:12:50.182Z" }, - { url = "https://files.pythonhosted.org/packages/32/76/8ebc66c3c699f4de3174a43424c34c086323cd93c4930ab0f835731c443a/coverage-7.11.3-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:72c8b494bd20ae1c58528b97c4a67d5cfeafcb3845c73542875ecd43924296de", size = 259120, upload-time = "2025-11-10T00:12:52.451Z" }, - { url = "https://files.pythonhosted.org/packages/19/89/78a3302b9595f331b86e4f12dfbd9252c8e93d97b8631500888f9a3a2af7/coverage-7.11.3-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:60ca149a446da255d56c2a7a813b51a80d9497a62250532598d249b3cdb1a926", size = 261229, upload-time = "2025-11-10T00:12:54.667Z" }, - { url = "https://files.pythonhosted.org/packages/07/59/1a9c0844dadef2a6efac07316d9781e6c5a3f3ea7e5e701411e99d619bfd/coverage-7.11.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eb5069074db19a534de3859c43eec78e962d6d119f637c41c8e028c5ab3f59dd", size = 263642, upload-time = "2025-11-10T00:12:56.841Z" }, - { url = "https://files.pythonhosted.org/packages/37/86/66c15d190a8e82eee777793cabde730640f555db3c020a179625a2ad5320/coverage-7.11.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ac5d5329c9c942bbe6295f4251b135d860ed9f86acd912d418dce186de7c19ac", size = 258193, upload-time = "2025-11-10T00:12:58.687Z" }, - { url = "https://files.pythonhosted.org/packages/c7/c7/4a4aeb25cb6f83c3ec4763e5f7cc78da1c6d4ef9e22128562204b7f39390/coverage-7.11.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e22539b676fafba17f0a90ac725f029a309eb6e483f364c86dcadee060429d46", size = 261107, upload-time = "2025-11-10T00:13:00.502Z" }, - { url = "https://files.pythonhosted.org/packages/ed/91/b986b5035f23cf0272446298967ecdd2c3c0105ee31f66f7e6b6948fd7f8/coverage-7.11.3-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:2376e8a9c889016f25472c452389e98bc6e54a19570b107e27cde9d47f387b64", size = 258717, upload-time = "2025-11-10T00:13:02.747Z" }, - { url = "https://files.pythonhosted.org/packages/f0/c7/6c084997f5a04d050c513545d3344bfa17bd3b67f143f388b5757d762b0b/coverage-7.11.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:4234914b8c67238a3c4af2bba648dc716aa029ca44d01f3d51536d44ac16854f", size = 257541, upload-time = "2025-11-10T00:13:04.689Z" }, - { url = "https://files.pythonhosted.org/packages/3b/c5/38e642917e406930cb67941210a366ccffa767365c8f8d9ec0f465a8b218/coverage-7.11.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:f0b4101e2b3c6c352ff1f70b3a6fcc7c17c1ab1a91ccb7a33013cb0782af9820", size = 259872, upload-time = "2025-11-10T00:13:06.559Z" }, - { url = "https://files.pythonhosted.org/packages/b7/67/5e812979d20c167f81dbf9374048e0193ebe64c59a3d93d7d947b07865fa/coverage-7.11.3-cp314-cp314t-win32.whl", hash = "sha256:305716afb19133762e8cf62745c46c4853ad6f9eeba54a593e373289e24ea237", size = 220289, upload-time = "2025-11-10T00:13:08.635Z" }, - { url = "https://files.pythonhosted.org/packages/24/3a/b72573802672b680703e0df071faadfab7dcd4d659aaaffc4626bc8bbde8/coverage-7.11.3-cp314-cp314t-win_amd64.whl", hash = "sha256:9245bd392572b9f799261c4c9e7216bafc9405537d0f4ce3ad93afe081a12dc9", size = 221398, upload-time = "2025-11-10T00:13:10.734Z" }, - { url = "https://files.pythonhosted.org/packages/f8/4e/649628f28d38bad81e4e8eb3f78759d20ac173e3c456ac629123815feb40/coverage-7.11.3-cp314-cp314t-win_arm64.whl", hash = "sha256:9a1d577c20b4334e5e814c3d5fe07fa4a8c3ae42a601945e8d7940bab811d0bd", size = 219435, upload-time = "2025-11-10T00:13:12.712Z" }, - { url = "https://files.pythonhosted.org/packages/19/8f/92bdd27b067204b99f396a1414d6342122f3e2663459baf787108a6b8b84/coverage-7.11.3-py3-none-any.whl", hash = "sha256:351511ae28e2509c8d8cae5311577ea7dd511ab8e746ffc8814a0896c3d33fbe", size = 208478, upload-time = "2025-11-10T00:13:14.908Z" }, +version = "7.11.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1c/38/ee22495420457259d2f3390309505ea98f98a5eed40901cf62196abad006/coverage-7.11.0.tar.gz", hash = "sha256:167bd504ac1ca2af7ff3b81d245dfea0292c5032ebef9d66cc08a7d28c1b8050", size = 811905, upload-time = "2025-10-15T15:15:08.542Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/12/95/c49df0aceb5507a80b9fe5172d3d39bf23f05be40c23c8d77d556df96cec/coverage-7.11.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eb53f1e8adeeb2e78962bade0c08bfdc461853c7969706ed901821e009b35e31", size = 215800, upload-time = "2025-10-15T15:12:19.824Z" }, + { url = "https://files.pythonhosted.org/packages/dc/c6/7bb46ce01ed634fff1d7bb53a54049f539971862cc388b304ff3c51b4f66/coverage-7.11.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d9a03ec6cb9f40a5c360f138b88266fd8f58408d71e89f536b4f91d85721d075", size = 216198, upload-time = "2025-10-15T15:12:22.549Z" }, + { url = "https://files.pythonhosted.org/packages/94/b2/75d9d8fbf2900268aca5de29cd0a0fe671b0f69ef88be16767cc3c828b85/coverage-7.11.0-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:0d7f0616c557cbc3d1c2090334eddcbb70e1ae3a40b07222d62b3aa47f608fab", size = 242953, upload-time = "2025-10-15T15:12:24.139Z" }, + { url = "https://files.pythonhosted.org/packages/65/ac/acaa984c18f440170525a8743eb4b6c960ace2dbad80dc22056a437fc3c6/coverage-7.11.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:e44a86a47bbdf83b0a3ea4d7df5410d6b1a0de984fbd805fa5101f3624b9abe0", size = 244766, upload-time = "2025-10-15T15:12:25.974Z" }, + { url = "https://files.pythonhosted.org/packages/d8/0d/938d0bff76dfa4a6b228c3fc4b3e1c0e2ad4aa6200c141fcda2bd1170227/coverage-7.11.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:596763d2f9a0ee7eec6e643e29660def2eef297e1de0d334c78c08706f1cb785", size = 246625, upload-time = "2025-10-15T15:12:27.387Z" }, + { url = "https://files.pythonhosted.org/packages/38/54/8f5f5e84bfa268df98f46b2cb396b1009734cfb1e5d6adb663d284893b32/coverage-7.11.0-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ef55537ff511b5e0a43edb4c50a7bf7ba1c3eea20b4f49b1490f1e8e0e42c591", size = 243568, upload-time = "2025-10-15T15:12:28.799Z" }, + { url = "https://files.pythonhosted.org/packages/68/30/8ba337c2877fe3f2e1af0ed7ff4be0c0c4aca44d6f4007040f3ca2255e99/coverage-7.11.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:9cbabd8f4d0d3dc571d77ae5bdbfa6afe5061e679a9d74b6797c48d143307088", size = 244665, upload-time = "2025-10-15T15:12:30.297Z" }, + { url = "https://files.pythonhosted.org/packages/cc/fb/c6f1d6d9a665536b7dde2333346f0cc41dc6a60bd1ffc10cd5c33e7eb000/coverage-7.11.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e24045453384e0ae2a587d562df2a04d852672eb63051d16096d3f08aa4c7c2f", size = 242681, upload-time = "2025-10-15T15:12:32.326Z" }, + { url = "https://files.pythonhosted.org/packages/be/38/1b532319af5f991fa153c20373291dc65c2bf532af7dbcffdeef745c8f79/coverage-7.11.0-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:7161edd3426c8d19bdccde7d49e6f27f748f3c31cc350c5de7c633fea445d866", size = 242912, upload-time = "2025-10-15T15:12:34.079Z" }, + { url = "https://files.pythonhosted.org/packages/67/3d/f39331c60ef6050d2a861dc1b514fa78f85f792820b68e8c04196ad733d6/coverage-7.11.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3d4ed4de17e692ba6415b0587bc7f12bc80915031fc9db46a23ce70fc88c9841", size = 243559, upload-time = "2025-10-15T15:12:35.809Z" }, + { url = "https://files.pythonhosted.org/packages/4b/55/cb7c9df9d0495036ce582a8a2958d50c23cd73f84a23284bc23bd4711a6f/coverage-7.11.0-cp310-cp310-win32.whl", hash = "sha256:765c0bc8fe46f48e341ef737c91c715bd2a53a12792592296a095f0c237e09cf", size = 218266, upload-time = "2025-10-15T15:12:37.429Z" }, + { url = "https://files.pythonhosted.org/packages/68/a8/b79cb275fa7bd0208767f89d57a1b5f6ba830813875738599741b97c2e04/coverage-7.11.0-cp310-cp310-win_amd64.whl", hash = "sha256:24d6f3128f1b2d20d84b24f4074475457faedc3d4613a7e66b5e769939c7d969", size = 219169, upload-time = "2025-10-15T15:12:39.25Z" }, + { url = "https://files.pythonhosted.org/packages/49/3a/ee1074c15c408ddddddb1db7dd904f6b81bc524e01f5a1c5920e13dbde23/coverage-7.11.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d58ecaa865c5b9fa56e35efc51d1014d4c0d22838815b9fce57a27dd9576847", size = 215912, upload-time = "2025-10-15T15:12:40.665Z" }, + { url = "https://files.pythonhosted.org/packages/70/c4/9f44bebe5cb15f31608597b037d78799cc5f450044465bcd1ae8cb222fe1/coverage-7.11.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b679e171f1c104a5668550ada700e3c4937110dbdd153b7ef9055c4f1a1ee3cc", size = 216310, upload-time = "2025-10-15T15:12:42.461Z" }, + { url = "https://files.pythonhosted.org/packages/42/01/5e06077cfef92d8af926bdd86b84fb28bf9bc6ad27343d68be9b501d89f2/coverage-7.11.0-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:ca61691ba8c5b6797deb221a0d09d7470364733ea9c69425a640f1f01b7c5bf0", size = 246706, upload-time = "2025-10-15T15:12:44.001Z" }, + { url = "https://files.pythonhosted.org/packages/40/b8/7a3f1f33b35cc4a6c37e759137533119560d06c0cc14753d1a803be0cd4a/coverage-7.11.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:aef1747ede4bd8ca9cfc04cc3011516500c6891f1b33a94add3253f6f876b7b7", size = 248634, upload-time = "2025-10-15T15:12:45.768Z" }, + { url = "https://files.pythonhosted.org/packages/7a/41/7f987eb33de386bc4c665ab0bf98d15fcf203369d6aacae74f5dd8ec489a/coverage-7.11.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a1839d08406e4cba2953dcc0ffb312252f14d7c4c96919f70167611f4dee2623", size = 250741, upload-time = "2025-10-15T15:12:47.222Z" }, + { url = "https://files.pythonhosted.org/packages/23/c1/a4e0ca6a4e83069fb8216b49b30a7352061ca0cb38654bd2dc96b7b3b7da/coverage-7.11.0-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e0eb0a2dcc62478eb5b4cbb80b97bdee852d7e280b90e81f11b407d0b81c4287", size = 246837, upload-time = "2025-10-15T15:12:48.904Z" }, + { url = "https://files.pythonhosted.org/packages/5d/03/ced062a17f7c38b4728ff76c3acb40d8465634b20b4833cdb3cc3a74e115/coverage-7.11.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:bc1fbea96343b53f65d5351d8fd3b34fd415a2670d7c300b06d3e14a5af4f552", size = 248429, upload-time = "2025-10-15T15:12:50.73Z" }, + { url = "https://files.pythonhosted.org/packages/97/af/a7c6f194bb8c5a2705ae019036b8fe7f49ea818d638eedb15fdb7bed227c/coverage-7.11.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:214b622259dd0cf435f10241f1333d32caa64dbc27f8790ab693428a141723de", size = 246490, upload-time = "2025-10-15T15:12:52.646Z" }, + { url = "https://files.pythonhosted.org/packages/ab/c3/aab4df02b04a8fde79068c3c41ad7a622b0ef2b12e1ed154da986a727c3f/coverage-7.11.0-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:258d9967520cca899695d4eb7ea38be03f06951d6ca2f21fb48b1235f791e601", size = 246208, upload-time = "2025-10-15T15:12:54.586Z" }, + { url = "https://files.pythonhosted.org/packages/30/d8/e282ec19cd658238d60ed404f99ef2e45eed52e81b866ab1518c0d4163cf/coverage-7.11.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:cf9e6ff4ca908ca15c157c409d608da77a56a09877b97c889b98fb2c32b6465e", size = 247126, upload-time = "2025-10-15T15:12:56.485Z" }, + { url = "https://files.pythonhosted.org/packages/d1/17/a635fa07fac23adb1a5451ec756216768c2767efaed2e4331710342a3399/coverage-7.11.0-cp311-cp311-win32.whl", hash = "sha256:fcc15fc462707b0680cff6242c48625da7f9a16a28a41bb8fd7a4280920e676c", size = 218314, upload-time = "2025-10-15T15:12:58.365Z" }, + { url = "https://files.pythonhosted.org/packages/2a/29/2ac1dfcdd4ab9a70026edc8d715ece9b4be9a1653075c658ee6f271f394d/coverage-7.11.0-cp311-cp311-win_amd64.whl", hash = "sha256:865965bf955d92790f1facd64fe7ff73551bd2c1e7e6b26443934e9701ba30b9", size = 219203, upload-time = "2025-10-15T15:12:59.902Z" }, + { url = "https://files.pythonhosted.org/packages/03/21/5ce8b3a0133179115af4c041abf2ee652395837cb896614beb8ce8ddcfd9/coverage-7.11.0-cp311-cp311-win_arm64.whl", hash = "sha256:5693e57a065760dcbeb292d60cc4d0231a6d4b6b6f6a3191561e1d5e8820b745", size = 217879, upload-time = "2025-10-15T15:13:01.35Z" }, + { url = "https://files.pythonhosted.org/packages/c4/db/86f6906a7c7edc1a52b2c6682d6dd9be775d73c0dfe2b84f8923dfea5784/coverage-7.11.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:9c49e77811cf9d024b95faf86c3f059b11c0c9be0b0d61bc598f453703bd6fd1", size = 216098, upload-time = "2025-10-15T15:13:02.916Z" }, + { url = "https://files.pythonhosted.org/packages/21/54/e7b26157048c7ba555596aad8569ff903d6cd67867d41b75287323678ede/coverage-7.11.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a61e37a403a778e2cda2a6a39abcc895f1d984071942a41074b5c7ee31642007", size = 216331, upload-time = "2025-10-15T15:13:04.403Z" }, + { url = "https://files.pythonhosted.org/packages/b9/19/1ce6bf444f858b83a733171306134a0544eaddf1ca8851ede6540a55b2ad/coverage-7.11.0-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:c79cae102bb3b1801e2ef1511fb50e91ec83a1ce466b2c7c25010d884336de46", size = 247825, upload-time = "2025-10-15T15:13:05.92Z" }, + { url = "https://files.pythonhosted.org/packages/71/0b/d3bcbbc259fcced5fb67c5d78f6e7ee965f49760c14afd931e9e663a83b2/coverage-7.11.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:16ce17ceb5d211f320b62df002fa7016b7442ea0fd260c11cec8ce7730954893", size = 250573, upload-time = "2025-10-15T15:13:07.471Z" }, + { url = "https://files.pythonhosted.org/packages/58/8d/b0ff3641a320abb047258d36ed1c21d16be33beed4152628331a1baf3365/coverage-7.11.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:80027673e9d0bd6aef86134b0771845e2da85755cf686e7c7c59566cf5a89115", size = 251706, upload-time = "2025-10-15T15:13:09.4Z" }, + { url = "https://files.pythonhosted.org/packages/59/c8/5a586fe8c7b0458053d9c687f5cff515a74b66c85931f7fe17a1c958b4ac/coverage-7.11.0-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:4d3ffa07a08657306cd2215b0da53761c4d73cb54d9143b9303a6481ec0cd415", size = 248221, upload-time = "2025-10-15T15:13:10.964Z" }, + { url = "https://files.pythonhosted.org/packages/d0/ff/3a25e3132804ba44cfa9a778cdf2b73dbbe63ef4b0945e39602fc896ba52/coverage-7.11.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a3b6a5f8b2524fd6c1066bc85bfd97e78709bb5e37b5b94911a6506b65f47186", size = 249624, upload-time = "2025-10-15T15:13:12.5Z" }, + { url = "https://files.pythonhosted.org/packages/c5/12/ff10c8ce3895e1b17a73485ea79ebc1896a9e466a9d0f4aef63e0d17b718/coverage-7.11.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:fcc0a4aa589de34bc56e1a80a740ee0f8c47611bdfb28cd1849de60660f3799d", size = 247744, upload-time = "2025-10-15T15:13:14.554Z" }, + { url = "https://files.pythonhosted.org/packages/16/02/d500b91f5471b2975947e0629b8980e5e90786fe316b6d7299852c1d793d/coverage-7.11.0-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:dba82204769d78c3fd31b35c3d5f46e06511936c5019c39f98320e05b08f794d", size = 247325, upload-time = "2025-10-15T15:13:16.438Z" }, + { url = "https://files.pythonhosted.org/packages/77/11/dee0284fbbd9cd64cfce806b827452c6df3f100d9e66188e82dfe771d4af/coverage-7.11.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:81b335f03ba67309a95210caf3eb43bd6fe75a4e22ba653ef97b4696c56c7ec2", size = 249180, upload-time = "2025-10-15T15:13:17.959Z" }, + { url = "https://files.pythonhosted.org/packages/59/1b/cdf1def928f0a150a057cab03286774e73e29c2395f0d30ce3d9e9f8e697/coverage-7.11.0-cp312-cp312-win32.whl", hash = "sha256:037b2d064c2f8cc8716fe4d39cb705779af3fbf1ba318dc96a1af858888c7bb5", size = 218479, upload-time = "2025-10-15T15:13:19.608Z" }, + { url = "https://files.pythonhosted.org/packages/ff/55/e5884d55e031da9c15b94b90a23beccc9d6beee65e9835cd6da0a79e4f3a/coverage-7.11.0-cp312-cp312-win_amd64.whl", hash = "sha256:d66c0104aec3b75e5fd897e7940188ea1892ca1d0235316bf89286d6a22568c0", size = 219290, upload-time = "2025-10-15T15:13:21.593Z" }, + { url = "https://files.pythonhosted.org/packages/23/a8/faa930cfc71c1d16bc78f9a19bb73700464f9c331d9e547bfbc1dbd3a108/coverage-7.11.0-cp312-cp312-win_arm64.whl", hash = "sha256:d91ebeac603812a09cf6a886ba6e464f3bbb367411904ae3790dfe28311b15ad", size = 217924, upload-time = "2025-10-15T15:13:23.39Z" }, + { url = "https://files.pythonhosted.org/packages/60/7f/85e4dfe65e400645464b25c036a26ac226cf3a69d4a50c3934c532491cdd/coverage-7.11.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:cc3f49e65ea6e0d5d9bd60368684fe52a704d46f9e7fc413918f18d046ec40e1", size = 216129, upload-time = "2025-10-15T15:13:25.371Z" }, + { url = "https://files.pythonhosted.org/packages/96/5d/dc5fa98fea3c175caf9d360649cb1aa3715e391ab00dc78c4c66fabd7356/coverage-7.11.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f39ae2f63f37472c17b4990f794035c9890418b1b8cca75c01193f3c8d3e01be", size = 216380, upload-time = "2025-10-15T15:13:26.976Z" }, + { url = "https://files.pythonhosted.org/packages/b2/f5/3da9cc9596708273385189289c0e4d8197d37a386bdf17619013554b3447/coverage-7.11.0-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:7db53b5cdd2917b6eaadd0b1251cf4e7d96f4a8d24e174bdbdf2f65b5ea7994d", size = 247375, upload-time = "2025-10-15T15:13:28.923Z" }, + { url = "https://files.pythonhosted.org/packages/65/6c/f7f59c342359a235559d2bc76b0c73cfc4bac7d61bb0df210965cb1ecffd/coverage-7.11.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:10ad04ac3a122048688387828b4537bc9cf60c0bf4869c1e9989c46e45690b82", size = 249978, upload-time = "2025-10-15T15:13:30.525Z" }, + { url = "https://files.pythonhosted.org/packages/e7/8c/042dede2e23525e863bf1ccd2b92689692a148d8b5fd37c37899ba882645/coverage-7.11.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4036cc9c7983a2b1f2556d574d2eb2154ac6ed55114761685657e38782b23f52", size = 251253, upload-time = "2025-10-15T15:13:32.174Z" }, + { url = "https://files.pythonhosted.org/packages/7b/a9/3c58df67bfa809a7bddd786356d9c5283e45d693edb5f3f55d0986dd905a/coverage-7.11.0-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:7ab934dd13b1c5e94b692b1e01bd87e4488cb746e3a50f798cb9464fd128374b", size = 247591, upload-time = "2025-10-15T15:13:34.147Z" }, + { url = "https://files.pythonhosted.org/packages/26/5b/c7f32efd862ee0477a18c41e4761305de6ddd2d49cdeda0c1116227570fd/coverage-7.11.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:59a6e5a265f7cfc05f76e3bb53eca2e0dfe90f05e07e849930fecd6abb8f40b4", size = 249411, upload-time = "2025-10-15T15:13:38.425Z" }, + { url = "https://files.pythonhosted.org/packages/76/b5/78cb4f1e86c1611431c990423ec0768122905b03837e1b4c6a6f388a858b/coverage-7.11.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:df01d6c4c81e15a7c88337b795bb7595a8596e92310266b5072c7e301168efbd", size = 247303, upload-time = "2025-10-15T15:13:40.464Z" }, + { url = "https://files.pythonhosted.org/packages/87/c9/23c753a8641a330f45f221286e707c427e46d0ffd1719b080cedc984ec40/coverage-7.11.0-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:8c934bd088eed6174210942761e38ee81d28c46de0132ebb1801dbe36a390dcc", size = 247157, upload-time = "2025-10-15T15:13:42.087Z" }, + { url = "https://files.pythonhosted.org/packages/c5/42/6e0cc71dc8a464486e944a4fa0d85bdec031cc2969e98ed41532a98336b9/coverage-7.11.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5a03eaf7ec24078ad64a07f02e30060aaf22b91dedf31a6b24d0d98d2bba7f48", size = 248921, upload-time = "2025-10-15T15:13:43.715Z" }, + { url = "https://files.pythonhosted.org/packages/e8/1c/743c2ef665e6858cccb0f84377dfe3a4c25add51e8c7ef19249be92465b6/coverage-7.11.0-cp313-cp313-win32.whl", hash = "sha256:695340f698a5f56f795b2836abe6fb576e7c53d48cd155ad2f80fd24bc63a040", size = 218526, upload-time = "2025-10-15T15:13:45.336Z" }, + { url = "https://files.pythonhosted.org/packages/ff/d5/226daadfd1bf8ddbccefbd3aa3547d7b960fb48e1bdac124e2dd13a2b71a/coverage-7.11.0-cp313-cp313-win_amd64.whl", hash = "sha256:2727d47fce3ee2bac648528e41455d1b0c46395a087a229deac75e9f88ba5a05", size = 219317, upload-time = "2025-10-15T15:13:47.401Z" }, + { url = "https://files.pythonhosted.org/packages/97/54/47db81dcbe571a48a298f206183ba8a7ba79200a37cd0d9f4788fcd2af4a/coverage-7.11.0-cp313-cp313-win_arm64.whl", hash = "sha256:0efa742f431529699712b92ecdf22de8ff198df41e43aeaaadf69973eb93f17a", size = 217948, upload-time = "2025-10-15T15:13:49.096Z" }, + { url = "https://files.pythonhosted.org/packages/e5/8b/cb68425420154e7e2a82fd779a8cc01549b6fa83c2ad3679cd6c088ebd07/coverage-7.11.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:587c38849b853b157706407e9ebdca8fd12f45869edb56defbef2daa5fb0812b", size = 216837, upload-time = "2025-10-15T15:13:51.09Z" }, + { url = "https://files.pythonhosted.org/packages/33/55/9d61b5765a025685e14659c8d07037247de6383c0385757544ffe4606475/coverage-7.11.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b971bdefdd75096163dd4261c74be813c4508477e39ff7b92191dea19f24cd37", size = 217061, upload-time = "2025-10-15T15:13:52.747Z" }, + { url = "https://files.pythonhosted.org/packages/52/85/292459c9186d70dcec6538f06ea251bc968046922497377bf4a1dc9a71de/coverage-7.11.0-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:269bfe913b7d5be12ab13a95f3a76da23cf147be7fa043933320ba5625f0a8de", size = 258398, upload-time = "2025-10-15T15:13:54.45Z" }, + { url = "https://files.pythonhosted.org/packages/1f/e2/46edd73fb8bf51446c41148d81944c54ed224854812b6ca549be25113ee0/coverage-7.11.0-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:dadbcce51a10c07b7c72b0ce4a25e4b6dcb0c0372846afb8e5b6307a121eb99f", size = 260574, upload-time = "2025-10-15T15:13:56.145Z" }, + { url = "https://files.pythonhosted.org/packages/07/5e/1df469a19007ff82e2ca8fe509822820a31e251f80ee7344c34f6cd2ec43/coverage-7.11.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9ed43fa22c6436f7957df036331f8fe4efa7af132054e1844918866cd228af6c", size = 262797, upload-time = "2025-10-15T15:13:58.635Z" }, + { url = "https://files.pythonhosted.org/packages/f9/50/de216b31a1434b94d9b34a964c09943c6be45069ec704bfc379d8d89a649/coverage-7.11.0-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:9516add7256b6713ec08359b7b05aeff8850c98d357784c7205b2e60aa2513fa", size = 257361, upload-time = "2025-10-15T15:14:00.409Z" }, + { url = "https://files.pythonhosted.org/packages/82/1e/3f9f8344a48111e152e0fd495b6fff13cc743e771a6050abf1627a7ba918/coverage-7.11.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:eb92e47c92fcbcdc692f428da67db33337fa213756f7adb6a011f7b5a7a20740", size = 260349, upload-time = "2025-10-15T15:14:02.188Z" }, + { url = "https://files.pythonhosted.org/packages/65/9b/3f52741f9e7d82124272f3070bbe316006a7de1bad1093f88d59bfc6c548/coverage-7.11.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:d06f4fc7acf3cabd6d74941d53329e06bab00a8fe10e4df2714f0b134bfc64ef", size = 258114, upload-time = "2025-10-15T15:14:03.907Z" }, + { url = "https://files.pythonhosted.org/packages/0b/8b/918f0e15f0365d50d3986bbd3338ca01178717ac5678301f3f547b6619e6/coverage-7.11.0-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:6fbcee1a8f056af07ecd344482f711f563a9eb1c2cad192e87df00338ec3cdb0", size = 256723, upload-time = "2025-10-15T15:14:06.324Z" }, + { url = "https://files.pythonhosted.org/packages/44/9e/7776829f82d3cf630878a7965a7d70cc6ca94f22c7d20ec4944f7148cb46/coverage-7.11.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dbbf012be5f32533a490709ad597ad8a8ff80c582a95adc8d62af664e532f9ca", size = 259238, upload-time = "2025-10-15T15:14:08.002Z" }, + { url = "https://files.pythonhosted.org/packages/9a/b8/49cf253e1e7a3bedb85199b201862dd7ca4859f75b6cf25ffa7298aa0760/coverage-7.11.0-cp313-cp313t-win32.whl", hash = "sha256:cee6291bb4fed184f1c2b663606a115c743df98a537c969c3c64b49989da96c2", size = 219180, upload-time = "2025-10-15T15:14:09.786Z" }, + { url = "https://files.pythonhosted.org/packages/ac/e1/1a541703826be7ae2125a0fb7f821af5729d56bb71e946e7b933cc7a89a4/coverage-7.11.0-cp313-cp313t-win_amd64.whl", hash = "sha256:a386c1061bf98e7ea4758e4313c0ab5ecf57af341ef0f43a0bf26c2477b5c268", size = 220241, upload-time = "2025-10-15T15:14:11.471Z" }, + { url = "https://files.pythonhosted.org/packages/d5/d1/5ee0e0a08621140fd418ec4020f595b4d52d7eb429ae6a0c6542b4ba6f14/coverage-7.11.0-cp313-cp313t-win_arm64.whl", hash = "sha256:f9ea02ef40bb83823b2b04964459d281688fe173e20643870bb5d2edf68bc836", size = 218510, upload-time = "2025-10-15T15:14:13.46Z" }, + { url = "https://files.pythonhosted.org/packages/f4/06/e923830c1985ce808e40a3fa3eb46c13350b3224b7da59757d37b6ce12b8/coverage-7.11.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:c770885b28fb399aaf2a65bbd1c12bf6f307ffd112d6a76c5231a94276f0c497", size = 216110, upload-time = "2025-10-15T15:14:15.157Z" }, + { url = "https://files.pythonhosted.org/packages/42/82/cdeed03bfead45203fb651ed756dfb5266028f5f939e7f06efac4041dad5/coverage-7.11.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:a3d0e2087dba64c86a6b254f43e12d264b636a39e88c5cc0a01a7c71bcfdab7e", size = 216395, upload-time = "2025-10-15T15:14:16.863Z" }, + { url = "https://files.pythonhosted.org/packages/fc/ba/e1c80caffc3199aa699813f73ff097bc2df7b31642bdbc7493600a8f1de5/coverage-7.11.0-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:73feb83bb41c32811973b8565f3705caf01d928d972b72042b44e97c71fd70d1", size = 247433, upload-time = "2025-10-15T15:14:18.589Z" }, + { url = "https://files.pythonhosted.org/packages/80/c0/5b259b029694ce0a5bbc1548834c7ba3db41d3efd3474489d7efce4ceb18/coverage-7.11.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:c6f31f281012235ad08f9a560976cc2fc9c95c17604ff3ab20120fe480169bca", size = 249970, upload-time = "2025-10-15T15:14:20.307Z" }, + { url = "https://files.pythonhosted.org/packages/8c/86/171b2b5e1aac7e2fd9b43f7158b987dbeb95f06d1fbecad54ad8163ae3e8/coverage-7.11.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e9570ad567f880ef675673992222746a124b9595506826b210fbe0ce3f0499cd", size = 251324, upload-time = "2025-10-15T15:14:22.419Z" }, + { url = "https://files.pythonhosted.org/packages/1a/7e/7e10414d343385b92024af3932a27a1caf75c6e27ee88ba211221ff1a145/coverage-7.11.0-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:8badf70446042553a773547a61fecaa734b55dc738cacf20c56ab04b77425e43", size = 247445, upload-time = "2025-10-15T15:14:24.205Z" }, + { url = "https://files.pythonhosted.org/packages/c4/3b/e4f966b21f5be8c4bf86ad75ae94efa0de4c99c7bbb8114476323102e345/coverage-7.11.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:a09c1211959903a479e389685b7feb8a17f59ec5a4ef9afde7650bd5eabc2777", size = 249324, upload-time = "2025-10-15T15:14:26.234Z" }, + { url = "https://files.pythonhosted.org/packages/00/a2/8479325576dfcd909244d0df215f077f47437ab852ab778cfa2f8bf4d954/coverage-7.11.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:5ef83b107f50db3f9ae40f69e34b3bd9337456c5a7fe3461c7abf8b75dd666a2", size = 247261, upload-time = "2025-10-15T15:14:28.42Z" }, + { url = "https://files.pythonhosted.org/packages/7b/d8/3a9e2db19d94d65771d0f2e21a9ea587d11b831332a73622f901157cc24b/coverage-7.11.0-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:f91f927a3215b8907e214af77200250bb6aae36eca3f760f89780d13e495388d", size = 247092, upload-time = "2025-10-15T15:14:30.784Z" }, + { url = "https://files.pythonhosted.org/packages/b3/b1/bbca3c472544f9e2ad2d5116b2379732957048be4b93a9c543fcd0207e5f/coverage-7.11.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:cdbcd376716d6b7fbfeedd687a6c4be019c5a5671b35f804ba76a4c0a778cba4", size = 248755, upload-time = "2025-10-15T15:14:32.585Z" }, + { url = "https://files.pythonhosted.org/packages/89/49/638d5a45a6a0f00af53d6b637c87007eb2297042186334e9923a61aa8854/coverage-7.11.0-cp314-cp314-win32.whl", hash = "sha256:bab7ec4bb501743edc63609320aaec8cd9188b396354f482f4de4d40a9d10721", size = 218793, upload-time = "2025-10-15T15:14:34.972Z" }, + { url = "https://files.pythonhosted.org/packages/30/cc/b675a51f2d068adb3cdf3799212c662239b0ca27f4691d1fff81b92ea850/coverage-7.11.0-cp314-cp314-win_amd64.whl", hash = "sha256:3d4ba9a449e9364a936a27322b20d32d8b166553bfe63059bd21527e681e2fad", size = 219587, upload-time = "2025-10-15T15:14:37.047Z" }, + { url = "https://files.pythonhosted.org/packages/93/98/5ac886876026de04f00820e5094fe22166b98dcb8b426bf6827aaf67048c/coverage-7.11.0-cp314-cp314-win_arm64.whl", hash = "sha256:ce37f215223af94ef0f75ac68ea096f9f8e8c8ec7d6e8c346ee45c0d363f0479", size = 218168, upload-time = "2025-10-15T15:14:38.861Z" }, + { url = "https://files.pythonhosted.org/packages/14/d1/b4145d35b3e3ecf4d917e97fc8895bcf027d854879ba401d9ff0f533f997/coverage-7.11.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:f413ce6e07e0d0dc9c433228727b619871532674b45165abafe201f200cc215f", size = 216850, upload-time = "2025-10-15T15:14:40.651Z" }, + { url = "https://files.pythonhosted.org/packages/ca/d1/7f645fc2eccd318369a8a9948acc447bb7c1ade2911e31d3c5620544c22b/coverage-7.11.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:05791e528a18f7072bf5998ba772fe29db4da1234c45c2087866b5ba4dea710e", size = 217071, upload-time = "2025-10-15T15:14:42.755Z" }, + { url = "https://files.pythonhosted.org/packages/54/7d/64d124649db2737ceced1dfcbdcb79898d5868d311730f622f8ecae84250/coverage-7.11.0-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:cacb29f420cfeb9283b803263c3b9a068924474ff19ca126ba9103e1278dfa44", size = 258570, upload-time = "2025-10-15T15:14:44.542Z" }, + { url = "https://files.pythonhosted.org/packages/6c/3f/6f5922f80dc6f2d8b2c6f974835c43f53eb4257a7797727e6ca5b7b2ec1f/coverage-7.11.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:314c24e700d7027ae3ab0d95fbf8d53544fca1f20345fd30cd219b737c6e58d3", size = 260738, upload-time = "2025-10-15T15:14:46.436Z" }, + { url = "https://files.pythonhosted.org/packages/0e/5f/9e883523c4647c860b3812b417a2017e361eca5b635ee658387dc11b13c1/coverage-7.11.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:630d0bd7a293ad2fc8b4b94e5758c8b2536fdf36c05f1681270203e463cbfa9b", size = 262994, upload-time = "2025-10-15T15:14:48.3Z" }, + { url = "https://files.pythonhosted.org/packages/07/bb/43b5a8e94c09c8bf51743ffc65c4c841a4ca5d3ed191d0a6919c379a1b83/coverage-7.11.0-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e89641f5175d65e2dbb44db15fe4ea48fade5d5bbb9868fdc2b4fce22f4a469d", size = 257282, upload-time = "2025-10-15T15:14:50.236Z" }, + { url = "https://files.pythonhosted.org/packages/aa/e5/0ead8af411411330b928733e1d201384b39251a5f043c1612970310e8283/coverage-7.11.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c9f08ea03114a637dab06cedb2e914da9dc67fa52c6015c018ff43fdde25b9c2", size = 260430, upload-time = "2025-10-15T15:14:52.413Z" }, + { url = "https://files.pythonhosted.org/packages/ae/66/03dd8bb0ba5b971620dcaac145461950f6d8204953e535d2b20c6b65d729/coverage-7.11.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:ce9f3bde4e9b031eaf1eb61df95c1401427029ea1bfddb8621c1161dcb0fa02e", size = 258190, upload-time = "2025-10-15T15:14:54.268Z" }, + { url = "https://files.pythonhosted.org/packages/45/ae/28a9cce40bf3174426cb2f7e71ee172d98e7f6446dff936a7ccecee34b14/coverage-7.11.0-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:e4dc07e95495923d6fd4d6c27bf70769425b71c89053083843fd78f378558996", size = 256658, upload-time = "2025-10-15T15:14:56.436Z" }, + { url = "https://files.pythonhosted.org/packages/5c/7c/3a44234a8599513684bfc8684878fd7b126c2760f79712bb78c56f19efc4/coverage-7.11.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:424538266794db2861db4922b05d729ade0940ee69dcf0591ce8f69784db0e11", size = 259342, upload-time = "2025-10-15T15:14:58.538Z" }, + { url = "https://files.pythonhosted.org/packages/e1/e6/0108519cba871af0351725ebdb8660fd7a0fe2ba3850d56d32490c7d9b4b/coverage-7.11.0-cp314-cp314t-win32.whl", hash = "sha256:4c1eeb3fb8eb9e0190bebafd0462936f75717687117339f708f395fe455acc73", size = 219568, upload-time = "2025-10-15T15:15:00.382Z" }, + { url = "https://files.pythonhosted.org/packages/c9/76/44ba876e0942b4e62fdde23ccb029ddb16d19ba1bef081edd00857ba0b16/coverage-7.11.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b56efee146c98dbf2cf5cffc61b9829d1e94442df4d7398b26892a53992d3547", size = 220687, upload-time = "2025-10-15T15:15:02.322Z" }, + { url = "https://files.pythonhosted.org/packages/b9/0c/0df55ecb20d0d0ed5c322e10a441775e1a3a5d78c60f0c4e1abfe6fcf949/coverage-7.11.0-cp314-cp314t-win_arm64.whl", hash = "sha256:b5c2705afa83f49bd91962a4094b6b082f94aef7626365ab3f8f4bd159c5acf3", size = 218711, upload-time = "2025-10-15T15:15:04.575Z" }, + { url = "https://files.pythonhosted.org/packages/5f/04/642c1d8a448ae5ea1369eac8495740a79eb4e581a9fb0cbdce56bbf56da1/coverage-7.11.0-py3-none-any.whl", hash = "sha256:4b7589765348d78fb4e5fb6ea35d07564e387da2fc5efff62e0222971f155f68", size = 207761, upload-time = "2025-10-15T15:15:06.439Z" }, ] [package.optional-dependencies] @@ -991,6 +1040,82 @@ toml = [ { name = "tomli", marker = "python_full_version <= '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] +[[package]] +name = "crc32c" +version = "2.8" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e3/66/7e97aa77af7cf6afbff26e3651b564fe41932599bc2d3dce0b2f73d4829a/crc32c-2.8.tar.gz", hash = "sha256:578728964e59c47c356aeeedee6220e021e124b9d3e8631d95d9a5e5f06e261c", size = 48179, upload-time = "2025-10-17T06:20:13.61Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c4/a0/28b4686a8db0bb0f77970f4c6ccede90d1d5740a1d4b4703bd54c3e75655/crc32c-2.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:2c0f4eb01fe7c0a3e3f973a418e04d52101bb077dd77626fd80c658ec60aaf95", size = 66321, upload-time = "2025-10-17T06:18:53.543Z" }, + { url = "https://files.pythonhosted.org/packages/76/1f/1697f5b8b770f715ed9b264d79e36b4f77ae0527f81f3c749ef08937a32e/crc32c-2.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6baefcfbca82b1a9678455416da24f18629769a76920c640d5a538620a7d12bb", size = 62985, upload-time = "2025-10-17T06:18:54.97Z" }, + { url = "https://files.pythonhosted.org/packages/e0/e5/333cfa5ffa8d5779733aced2b984b5e5139b4a8ceaa2c6bc563e9a1092f3/crc32c-2.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d7f959fcf6c5aad1c4a653ee1a50f05760dab1d1c35d98ec4d7f0f68643f7612", size = 61517, upload-time = "2025-10-17T06:18:55.795Z" }, + { url = "https://files.pythonhosted.org/packages/e1/d8/362a009e8140dd926a153b44d56753e3aa7cb50aca243779a84adadbff11/crc32c-2.8-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:9bb678507a4e4cf3f0506607b046ecc4ed1c58a19e08a3fb3c2d25441c480bf1", size = 79385, upload-time = "2025-10-17T06:18:56.598Z" }, + { url = "https://files.pythonhosted.org/packages/4a/9f/0d4ea3aa71ffb15f1285669d23024cc40779388ce32157d339dc2584491c/crc32c-2.8-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1a16f7ffa4c242a909558565567cbba95148603717b53538ea299c98da68e7a9", size = 80965, upload-time = "2025-10-17T06:18:57.384Z" }, + { url = "https://files.pythonhosted.org/packages/20/44/d77657aaca4a2c0283f2356a3da6f8e91b003567bb8f09daaf540cbf192f/crc32c-2.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:0184369aad562d801f91f454c81f56b9ecb966f6b96684c4d6cf82fc8741d2ad", size = 79993, upload-time = "2025-10-17T06:18:58.503Z" }, + { url = "https://files.pythonhosted.org/packages/ab/c0/07017a93ebf85d9408028b7e03ef96d5c6bfb14cb77cfe90d35eedcc1501/crc32c-2.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:86d2eeb5f0189bd803720abe7387019328ea34c4acde62999e5723f789bc316b", size = 79243, upload-time = "2025-10-17T06:18:59.273Z" }, + { url = "https://files.pythonhosted.org/packages/c7/1a/b3c5ac4cf2fd1f82395173d0bd8e1a15d09f0bc1eccdf10ea7f8caaccd67/crc32c-2.8-cp310-cp310-win32.whl", hash = "sha256:51da61904a9e753780a2e6011885677d601db1fa840be4b68799643a113e6f08", size = 64888, upload-time = "2025-10-17T06:19:00.089Z" }, + { url = "https://files.pythonhosted.org/packages/b6/f2/60c45fc7bb2221d3c93c7a872e921be591f40d45228fe46f879b1d8c0424/crc32c-2.8-cp310-cp310-win_amd64.whl", hash = "sha256:b2d6a1f2500daaf2e4b08f97ad0349aa2eff5faaaa5fd3350314a26eade334cd", size = 66639, upload-time = "2025-10-17T06:19:00.974Z" }, + { url = "https://files.pythonhosted.org/packages/dc/0b/5e03b22d913698e9cc563f39b9f6bbd508606bf6b8e9122cd6bf196b87ea/crc32c-2.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e560a97fbb96c9897cb1d9b5076ef12fc12e2e25622530a1afd0de4240f17e1f", size = 66329, upload-time = "2025-10-17T06:19:01.771Z" }, + { url = "https://files.pythonhosted.org/packages/6b/38/2fe0051ffe8c6a650c8b1ac0da31b8802d1dbe5fa40a84e4b6b6f5583db5/crc32c-2.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6762d276d90331a490ef7e71ffee53b9c0eb053bd75a272d786f3b08d3fe3671", size = 62988, upload-time = "2025-10-17T06:19:02.953Z" }, + { url = "https://files.pythonhosted.org/packages/3e/30/5837a71c014be83aba1469c58820d287fc836512a0cad6b8fdd43868accd/crc32c-2.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:60670569f5ede91e39f48fb0cb4060e05b8d8704dd9e17ede930bf441b2f73ef", size = 61522, upload-time = "2025-10-17T06:19:03.796Z" }, + { url = "https://files.pythonhosted.org/packages/ca/29/63972fc1452778e2092ae998c50cbfc2fc93e3fa9798a0278650cd6169c5/crc32c-2.8-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:711743da6ccc70b3c6718c328947b0b6f34a1fe6a6c27cc6c1d69cc226bf70e9", size = 80200, upload-time = "2025-10-17T06:19:04.617Z" }, + { url = "https://files.pythonhosted.org/packages/cb/3a/60eb49d7bdada4122b3ffd45b0df54bdc1b8dd092cda4b069a287bdfcff4/crc32c-2.8-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5eb4094a2054774f13b26f21bf56792bb44fa1fcee6c6ad099387a43ffbfb4fa", size = 81757, upload-time = "2025-10-17T06:19:05.496Z" }, + { url = "https://files.pythonhosted.org/packages/f5/63/6efc1b64429ef7d23bd58b75b7ac24d15df327e3ebbe9c247a0f7b1c2ed1/crc32c-2.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:fff15bf2bd3e95780516baae935ed12be88deaa5ebe6143c53eb0d26a7bdc7b7", size = 80830, upload-time = "2025-10-17T06:19:06.621Z" }, + { url = "https://files.pythonhosted.org/packages/e1/eb/0ae9f436f8004f1c88f7429e659a7218a3879bd11a6b18ed1257aad7e98b/crc32c-2.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4c0e11e3826668121fa53e0745635baf5e4f0ded437e8ff63ea56f38fc4f970a", size = 80095, upload-time = "2025-10-17T06:19:07.381Z" }, + { url = "https://files.pythonhosted.org/packages/9e/81/4afc9d468977a4cd94a2eb62908553345009a7c0d30e74463a15d4b48ec3/crc32c-2.8-cp311-cp311-win32.whl", hash = "sha256:38f915336715d1f1353ab07d7d786f8a789b119e273aea106ba55355dfc9101d", size = 64886, upload-time = "2025-10-17T06:19:08.497Z" }, + { url = "https://files.pythonhosted.org/packages/d6/e8/94e839c9f7e767bf8479046a207afd440a08f5c59b52586e1af5e64fa4a0/crc32c-2.8-cp311-cp311-win_amd64.whl", hash = "sha256:60e0a765b1caab8d31b2ea80840639253906a9351d4b861551c8c8625ea20f86", size = 66639, upload-time = "2025-10-17T06:19:09.338Z" }, + { url = "https://files.pythonhosted.org/packages/b6/36/fd18ef23c42926b79c7003e16cb0f79043b5b179c633521343d3b499e996/crc32c-2.8-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:572ffb1b78cce3d88e8d4143e154d31044a44be42cb3f6fbbf77f1e7a941c5ab", size = 66379, upload-time = "2025-10-17T06:19:10.115Z" }, + { url = "https://files.pythonhosted.org/packages/7f/b8/c584958e53f7798dd358f5bdb1bbfc97483134f053ee399d3eeb26cca075/crc32c-2.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:cf827b3758ee0c4aacd21ceca0e2da83681f10295c38a10bfeb105f7d98f7a68", size = 63042, upload-time = "2025-10-17T06:19:10.946Z" }, + { url = "https://files.pythonhosted.org/packages/62/e6/6f2af0ec64a668a46c861e5bc778ea3ee42171fedfc5440f791f470fd783/crc32c-2.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:106fbd79013e06fa92bc3b51031694fcc1249811ed4364ef1554ee3dd2c7f5a2", size = 61528, upload-time = "2025-10-17T06:19:11.768Z" }, + { url = "https://files.pythonhosted.org/packages/17/8b/4a04bd80a024f1a23978f19ae99407783e06549e361ab56e9c08bba3c1d3/crc32c-2.8-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:6dde035f91ffbfe23163e68605ee5a4bb8ceebd71ed54bb1fb1d0526cdd125a2", size = 80028, upload-time = "2025-10-17T06:19:12.554Z" }, + { url = "https://files.pythonhosted.org/packages/21/8f/01c7afdc76ac2007d0e6a98e7300b4470b170480f8188475b597d1f4b4c6/crc32c-2.8-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e41ebe7c2f0fdcd9f3a3fd206989a36b460b4d3f24816d53e5be6c7dba72c5e1", size = 81531, upload-time = "2025-10-17T06:19:13.406Z" }, + { url = "https://files.pythonhosted.org/packages/32/2b/8f78c5a8cc66486be5f51b6f038fc347c3ba748d3ea68be17a014283c331/crc32c-2.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ecf66cf90266d9c15cea597d5cc86c01917cd1a238dc3c51420c7886fa750d7e", size = 80608, upload-time = "2025-10-17T06:19:14.223Z" }, + { url = "https://files.pythonhosted.org/packages/db/86/fad1a94cdeeeb6b6e2323c87f970186e74bfd6fbfbc247bf5c88ad0873d5/crc32c-2.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:59eee5f3a69ad0793d5fa9cdc9b9d743b0cd50edf7fccc0a3988a821fef0208c", size = 79886, upload-time = "2025-10-17T06:19:15.345Z" }, + { url = "https://files.pythonhosted.org/packages/d5/db/1a7cb6757a1e32376fa2dfce00c815ea4ee614a94f9bff8228e37420c183/crc32c-2.8-cp312-cp312-win32.whl", hash = "sha256:a73d03ce3604aa5d7a2698e9057a0eef69f529c46497b27ee1c38158e90ceb76", size = 64896, upload-time = "2025-10-17T06:19:16.457Z" }, + { url = "https://files.pythonhosted.org/packages/bf/8e/2024de34399b2e401a37dcb54b224b56c747b0dc46de4966886827b4d370/crc32c-2.8-cp312-cp312-win_amd64.whl", hash = "sha256:56b3b7d015247962cf58186e06d18c3d75a1a63d709d3233509e1c50a2d36aa2", size = 66645, upload-time = "2025-10-17T06:19:17.235Z" }, + { url = "https://files.pythonhosted.org/packages/e8/d8/3ae227890b3be40955a7144106ef4dd97d6123a82c2a5310cdab58ca49d8/crc32c-2.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:36f1e03ee9e9c6938e67d3bcb60e36f260170aa5f37da1185e04ef37b56af395", size = 66380, upload-time = "2025-10-17T06:19:18.009Z" }, + { url = "https://files.pythonhosted.org/packages/bd/8b/178d3f987cd0e049b484615512d3f91f3d2caeeb8ff336bb5896ae317438/crc32c-2.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b2f3226b94b85a8dd9b3533601d7a63e9e3e8edf03a8a169830ee8303a199aeb", size = 63048, upload-time = "2025-10-17T06:19:18.853Z" }, + { url = "https://files.pythonhosted.org/packages/f2/a1/48145ae2545ebc0169d3283ebe882da580ea4606bfb67cf4ca922ac3cfc3/crc32c-2.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6e08628bc72d5b6bc8e0730e8f142194b610e780a98c58cb6698e665cb885a5b", size = 61530, upload-time = "2025-10-17T06:19:19.974Z" }, + { url = "https://files.pythonhosted.org/packages/06/4b/cf05ed9d934cc30e5ae22f97c8272face420a476090e736615d9a6b53de0/crc32c-2.8-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:086f64793c5ec856d1ab31a026d52ad2b895ac83d7a38fce557d74eb857f0a82", size = 80001, upload-time = "2025-10-17T06:19:20.784Z" }, + { url = "https://files.pythonhosted.org/packages/15/ab/4b04801739faf36345f6ba1920be5b1c70282fec52f8280afd3613fb13e2/crc32c-2.8-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bcf72ee7e0135b3d941c34bb2c26c3fc6bc207106b49fd89aaafaeae223ae209", size = 81543, upload-time = "2025-10-17T06:19:21.557Z" }, + { url = "https://files.pythonhosted.org/packages/a9/1b/6e38dde5bfd2ea69b7f2ab6ec229fcd972a53d39e2db4efe75c0ac0382ce/crc32c-2.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:8a717dd9c3fd777d9bc6603717eae172887d402c4ab589d124ebd0184a83f89e", size = 80644, upload-time = "2025-10-17T06:19:22.325Z" }, + { url = "https://files.pythonhosted.org/packages/ce/45/012176ffee90059ae8ec7131019c71724ea472aa63e72c0c8edbd1fad1d7/crc32c-2.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:0450bb845b3c3c7b9bdc0b4e95620ec9a40824abdc8c86d6285c919a90743c1a", size = 79919, upload-time = "2025-10-17T06:19:23.101Z" }, + { url = "https://files.pythonhosted.org/packages/f0/2b/f557629842f9dec2b3461cb3a0d854bb586ec45b814cea58b082c32f0dde/crc32c-2.8-cp313-cp313-win32.whl", hash = "sha256:765d220bfcbcffa6598ac11eb1e10af0ee4802b49fe126aa6bf79f8ddb9931d1", size = 64896, upload-time = "2025-10-17T06:19:23.88Z" }, + { url = "https://files.pythonhosted.org/packages/d0/db/fd0f698c15d1e21d47c64181a98290665a08fcbb3940cd559e9c15bda57e/crc32c-2.8-cp313-cp313-win_amd64.whl", hash = "sha256:171ff0260d112c62abcce29332986950a57bddee514e0a2418bfde493ea06bb3", size = 66646, upload-time = "2025-10-17T06:19:24.702Z" }, + { url = "https://files.pythonhosted.org/packages/db/b9/8e5d7054fe8e7eecab10fd0c8e7ffb01439417bdb6de1d66a81c38fc4a20/crc32c-2.8-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b977a32a3708d6f51703c8557008f190aaa434d7347431efb0e86fcbe78c2a50", size = 66203, upload-time = "2025-10-17T06:19:25.872Z" }, + { url = "https://files.pythonhosted.org/packages/55/5f/cc926c70057a63cc0c98a3c8a896eb15fc7e74d3034eadd53c94917c6cc3/crc32c-2.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:7399b01db4adaf41da2fb36fe2408e75a8d82a179a9564ed7619412e427b26d6", size = 62956, upload-time = "2025-10-17T06:19:26.652Z" }, + { url = "https://files.pythonhosted.org/packages/a1/8a/0660c44a2dd2cb6ccbb529eb363b9280f5c766f1017bc8355ed8d695bd94/crc32c-2.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4379f73f9cdad31958a673d11a332ec725ca71572401ca865867229f5f15e853", size = 61442, upload-time = "2025-10-17T06:19:27.74Z" }, + { url = "https://files.pythonhosted.org/packages/f5/5a/6108d2dfc0fe33522ce83ba07aed4b22014911b387afa228808a278e27cd/crc32c-2.8-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:2e68264555fab19bab08331550dab58573e351a63ed79c869d455edd3b0aa417", size = 79109, upload-time = "2025-10-17T06:19:28.535Z" }, + { url = "https://files.pythonhosted.org/packages/84/1e/c054f9e390090c197abf3d2936f4f9effaf0c6ee14569ae03d6ddf86958a/crc32c-2.8-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b48f2486727b8d0e7ccbae4a34cb0300498433d2a9d6b49cb13cb57c2e3f19cb", size = 80987, upload-time = "2025-10-17T06:19:29.305Z" }, + { url = "https://files.pythonhosted.org/packages/c8/ad/1650e5c3341e4a485f800ea83116d72965030c5d48ccc168fcc685756e4d/crc32c-2.8-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:ecf123348934a086df8c8fde7f9f2d716d523ca0707c5a1367b8bb00d8134823", size = 79994, upload-time = "2025-10-17T06:19:30.109Z" }, + { url = "https://files.pythonhosted.org/packages/d7/3b/f2ed924b177729cbb2ab30ca2902abff653c31d48c95e7b66717a9ca9fcc/crc32c-2.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e636ac60f76de538f7a2c0d0f3abf43104ee83a8f5e516f6345dc283ed1a4df7", size = 79046, upload-time = "2025-10-17T06:19:30.894Z" }, + { url = "https://files.pythonhosted.org/packages/4b/80/413b05ee6ace613208b31b3670c3135ee1cf451f0e72a9c839b4946acc04/crc32c-2.8-cp313-cp313t-win32.whl", hash = "sha256:8dd4a19505e0253892e1b2f1425cc3bd47f79ae5a04cb8800315d00aad7197f2", size = 64837, upload-time = "2025-10-17T06:19:32.03Z" }, + { url = "https://files.pythonhosted.org/packages/3b/1b/85eddb6ac5b38496c4e35c20298aae627970c88c3c624a22ab33e84f16c7/crc32c-2.8-cp313-cp313t-win_amd64.whl", hash = "sha256:4bb18e4bd98fb266596523ffc6be9c5b2387b2fa4e505ec56ca36336f49cb639", size = 66574, upload-time = "2025-10-17T06:19:33.143Z" }, + { url = "https://files.pythonhosted.org/packages/aa/df/50e9079b532ff53dbfc0e66eed781374bd455af02ed5df8b56ad538de4ff/crc32c-2.8-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3a3b2e4bcf7b3ee333050e7d3ff38e2ba46ea205f1d73d8949b248aaffe937ac", size = 66399, upload-time = "2025-10-17T06:19:34.279Z" }, + { url = "https://files.pythonhosted.org/packages/5a/2e/67e3b0bc3d30e46ea5d16365cc81203286387671e22f2307eb41f19abb9c/crc32c-2.8-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:445e559e66dff16be54f8a4ef95aa6b01db799a639956d995c5498ba513fccc2", size = 63044, upload-time = "2025-10-17T06:19:35.062Z" }, + { url = "https://files.pythonhosted.org/packages/36/ea/1723b17437e4344ed8d067456382ecb1f5b535d83fdc5aaebab676c6d273/crc32c-2.8-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:bf3040919e17afa5782e01b1875d6a05f44b8f19c05f211d8b9f8a1deb8bbd9c", size = 61541, upload-time = "2025-10-17T06:19:36.204Z" }, + { url = "https://files.pythonhosted.org/packages/4c/6a/cbec8a235c5b46a01f319939b538958662159aec0ed3a74944e3a6de21f1/crc32c-2.8-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:5607ab8221e1ffd411f64aa40dbb6850cf06dd2908c9debd05d371e1acf62ff3", size = 80139, upload-time = "2025-10-17T06:19:37.351Z" }, + { url = "https://files.pythonhosted.org/packages/21/31/d096722fe74b692d6e8206c27da1ea5f6b2a12ff92c54a62a6ba2f376254/crc32c-2.8-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c7f5db4f16816926986d3c94253314920689706ae13a9bf4888b47336c6735ce", size = 81736, upload-time = "2025-10-17T06:19:38.16Z" }, + { url = "https://files.pythonhosted.org/packages/f6/a2/f75ef716ff7e3c22f385ba6ef30c5de80c19a21ebe699dc90824a1903275/crc32c-2.8-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:70b0153c4d418b673309d3529334d117e1074c4a3b2d7f676e430d72c14de67b", size = 80795, upload-time = "2025-10-17T06:19:38.948Z" }, + { url = "https://files.pythonhosted.org/packages/d8/94/6d647a12d96ab087d9b8eacee3da073f981987827d57c7072f89ffc7b6cd/crc32c-2.8-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5c8933531442042438753755a5c8a9034e4d88b01da9eb796f7e151b31a7256c", size = 80042, upload-time = "2025-10-17T06:19:39.725Z" }, + { url = "https://files.pythonhosted.org/packages/cd/dc/32b8896b40a0afee7a3c040536d0da5a73e68df2be9fadd21770fd158e16/crc32c-2.8-cp314-cp314-win32.whl", hash = "sha256:cdc83a3fe6c4e5df9457294cfd643de7d95bd4e9382c1dd6ed1e0f0f9169172c", size = 64914, upload-time = "2025-10-17T06:19:40.527Z" }, + { url = "https://files.pythonhosted.org/packages/f2/b4/4308b27d307e8ecaf8dd1dcc63bbb0e47ae1826d93faa3e62d1ee00ee2d5/crc32c-2.8-cp314-cp314-win_amd64.whl", hash = "sha256:509e10035106df66770fe24b9eb8d9e32b6fb967df17744402fb67772d8b2bc7", size = 66723, upload-time = "2025-10-17T06:19:42.449Z" }, + { url = "https://files.pythonhosted.org/packages/90/d5/a19d2489fa997a143bfbbf971a5c9a43f8b1ba9e775b1fb362d8fb15260c/crc32c-2.8-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:864359a39777a07b09b28eb31337c0cc603d5c1bf0fc328c3af736a8da624ec0", size = 66201, upload-time = "2025-10-17T06:19:43.273Z" }, + { url = "https://files.pythonhosted.org/packages/98/c2/5f82f22d2c1242cb6f6fe92aa9a42991ebea86de994b8f9974d9c1d128e2/crc32c-2.8-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:14511d7cfc5d9f5e1a6c6b64caa6225c2bdc1ed00d725e9a374a3e84073ce180", size = 62956, upload-time = "2025-10-17T06:19:44.099Z" }, + { url = "https://files.pythonhosted.org/packages/9b/61/3d43d33489cf974fb78bfb3500845770e139ae6d1d83473b660bd8f79a6c/crc32c-2.8-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:918b7999b52b5dcbcea34081e9a02d46917d571921a3f209956a9a429b2e06e5", size = 61443, upload-time = "2025-10-17T06:19:44.89Z" }, + { url = "https://files.pythonhosted.org/packages/52/6d/f306ce64a352a3002f76b0fc88a1373f4541f9d34fad3668688610bab14b/crc32c-2.8-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:cc445da03fc012a5a03b71da1df1b40139729e6a5571fd4215ab40bfb39689c7", size = 79106, upload-time = "2025-10-17T06:19:45.688Z" }, + { url = "https://files.pythonhosted.org/packages/a5/b7/1f74965dd7ea762954a69d172dfb3a706049c84ffa45d31401d010a4a126/crc32c-2.8-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e3dde2ec59a8a830511d72a086ead95c0b0b7f0d418f93ea106244c5e77e350", size = 80983, upload-time = "2025-10-17T06:19:46.792Z" }, + { url = "https://files.pythonhosted.org/packages/1b/50/af93f0d91ccd61833ce77374ebfbd16f5805f5c17d18c6470976d9866d76/crc32c-2.8-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:61d51681a08b6a2a2e771b7f0cd1947fb87cb28f38ed55a01cb7c40b2ac4cdd8", size = 80009, upload-time = "2025-10-17T06:19:47.619Z" }, + { url = "https://files.pythonhosted.org/packages/ee/fa/94f394beb68a88258af694dab2f1284f55a406b615d7900bdd6235283bc4/crc32c-2.8-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:67c0716c3b1a02d5235be649487b637eed21f2d070f2b3f63f709dcd2fefb4c7", size = 79066, upload-time = "2025-10-17T06:19:48.409Z" }, + { url = "https://files.pythonhosted.org/packages/91/c6/a6050e0c64fd73c67a97da96cb59f08b05111e00b958fb87ecdce99f17ac/crc32c-2.8-cp314-cp314t-win32.whl", hash = "sha256:2e8fe863fbbd8bdb6b414a2090f1b0f52106e76e9a9c96a413495dbe5ebe492a", size = 64869, upload-time = "2025-10-17T06:19:49.197Z" }, + { url = "https://files.pythonhosted.org/packages/08/1f/c7735034e401cb1ea14f996a224518e3a3fa9987cb13680e707328a7d779/crc32c-2.8-cp314-cp314t-win_amd64.whl", hash = "sha256:20a9cfb897693eb6da19e52e2a7be2026fd4d9fc8ae318f086c0d71d5dd2d8e0", size = 66633, upload-time = "2025-10-17T06:19:50.003Z" }, + { url = "https://files.pythonhosted.org/packages/a7/1d/dd926c68eb8aac8b142a1a10b8eb62d95212c1cf81775644373fe7cceac2/crc32c-2.8-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:5833f4071da7ea182c514ba17d1eee8aec3c5be927d798222fbfbbd0f5eea02c", size = 62345, upload-time = "2025-10-17T06:20:09.39Z" }, + { url = "https://files.pythonhosted.org/packages/51/be/803404e5abea2ef2c15042edca04bbb7f625044cca879e47f186b43887c2/crc32c-2.8-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:1dc4da036126ac07b39dd9d03e93e585ec615a2ad28ff12757aef7de175295a8", size = 61229, upload-time = "2025-10-17T06:20:10.236Z" }, + { url = "https://files.pythonhosted.org/packages/fc/3a/00cc578cd27ed0b22c9be25cef2c24539d92df9fa80ebd67a3fc5419724c/crc32c-2.8-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:15905fa78344654e241371c47e6ed2411f9eeb2b8095311c68c88eccf541e8b4", size = 64108, upload-time = "2025-10-17T06:20:11.072Z" }, + { url = "https://files.pythonhosted.org/packages/6b/bc/0587ef99a1c7629f95dd0c9d4f3d894de383a0df85831eb16c48a6afdae4/crc32c-2.8-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c596f918688821f796434e89b431b1698396c38bf0b56de873621528fe3ecb1e", size = 64815, upload-time = "2025-10-17T06:20:11.919Z" }, + { url = "https://files.pythonhosted.org/packages/73/42/94f2b8b92eae9064fcfb8deef2b971514065bd606231f8857ff8ae02bebd/crc32c-2.8-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:8d23c4fe01b3844cb6e091044bc1cebdef7d16472e058ce12d9fadf10d2614af", size = 66659, upload-time = "2025-10-17T06:20:12.766Z" }, +] + [[package]] name = "cryptography" version = "42.0.8" @@ -1082,40 +1207,40 @@ wheels = [ [[package]] name = "cython" -version = "3.2.1" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/83/36/cce2972e13e83ffe58bc73bfd9d37340b5e5113e8243841a57511c7ae1c2/cython-3.2.1.tar.gz", hash = "sha256:2be1e4d0cbdf7f4cd4d9b8284a034e1989b59fd060f6bd4d24bf3729394d2ed8", size = 3270455, upload-time = "2025-11-12T19:02:59.847Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/87/74/f9fe9e7034f24aef407e7816880c012d8e863bedaa6b42b9ff33e79ea139/cython-3.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f1d10b3731171a33563ba81fdcba39c229e45087269dfbe07a1c00e7dcb2537f", size = 2957374, upload-time = "2025-11-12T19:03:10.132Z" }, - { url = "https://files.pythonhosted.org/packages/65/47/f9dd519117f520aaf4d723c88fd9e9139262a0379edc01e71a1e9825e082/cython-3.2.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92b814b6066d178a5057b557d372e2a03854e947e41cb9dec21db732fbd14c3c", size = 3366838, upload-time = "2025-11-12T19:03:11.742Z" }, - { url = "https://files.pythonhosted.org/packages/5d/3e/d967acfafef00056c3ba832692b9bb358ede2919f641e4a2d24828adacc6/cython-3.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9fc6abd0532007827d8c6143b2bfedf80c7cb89a3c1c12f058336663489ed2e", size = 3535901, upload-time = "2025-11-12T19:03:13.545Z" }, - { url = "https://files.pythonhosted.org/packages/68/79/bc46e714ecb010f80a8aa7f7eaf412c53cbabbe7489590d6aba5f4478ba5/cython-3.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:14f1ed135347587cfddcd3c3219667cac4f0ea0b66aa1c4c0187d50a1b92c222", size = 2764043, upload-time = "2025-11-12T19:03:15.584Z" }, - { url = "https://files.pythonhosted.org/packages/48/d4/ba7b9f341ec168de78bd659600e04bb7de3b2d069bf98b2178a135e88ea4/cython-3.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3cb32c650e7f4476941d1f735cae75a2067d5e3279576273bb8802e8ea907222", size = 2949720, upload-time = "2025-11-12T19:03:17.492Z" }, - { url = "https://files.pythonhosted.org/packages/ad/47/c42417f424c0b928361f48d7dd0ae72716ee21f647b73ceb16f66b98663e/cython-3.2.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a2b306813d7f28aa0a2c3e4e63ada1427a8109917532df942cd5429db228252", size = 3242127, upload-time = "2025-11-12T19:03:19.227Z" }, - { url = "https://files.pythonhosted.org/packages/e6/fc/1040460889129551649ec35be45e05169871fbcf71bd8e13c533e86f9468/cython-3.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0959d9a36d4f004ce63acc1474b3c606745af98b65e8ae709efd0c10988e9d6b", size = 3377094, upload-time = "2025-11-12T19:03:21.25Z" }, - { url = "https://files.pythonhosted.org/packages/f8/f2/8c754298eefa40e21af0ae3592837c6e71254900d5aea1c8859e96b11de5/cython-3.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:60c62e734421365135cc2842013d883136054a26c617c001be494235edfc447a", size = 2767824, upload-time = "2025-11-12T19:03:23.317Z" }, - { url = "https://files.pythonhosted.org/packages/ee/0e/19d5041b87f98ed19c94c388607cd27c1f7458078c3bad5de2dead55b2e1/cython-3.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ea5097d97afd2ab14e98637b7033eba5146de29a5dedf89f5e946076396ab891", size = 2966736, upload-time = "2025-11-12T19:03:25.064Z" }, - { url = "https://files.pythonhosted.org/packages/84/b8/bcc36d9d2464348106984956608a52a42a01ab44ea64031207dffdebc078/cython-3.2.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a4bf12de0475bb6a21e2336a4a04dc4a2b4dd0507a2a3c703e045f3484266605", size = 3221633, upload-time = "2025-11-12T19:03:26.754Z" }, - { url = "https://files.pythonhosted.org/packages/79/20/7d4807fe4ebcef9f20f2e5f93312d0f5d02f9f76524fd4e37706d04e83f7/cython-3.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:18c64a0f69a1b8164de70ec7efc72250c589fec21519170de21582300f6aaed9", size = 3389542, upload-time = "2025-11-12T19:03:28.656Z" }, - { url = "https://files.pythonhosted.org/packages/2a/92/b06ba6721299293bc41e89732070132c453bdbaaeabb8f8cc76851b75345/cython-3.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:5ba14907d5826d8010e82306ce279a0d3650f5b50a4813c80836a17b2213c520", size = 2755307, upload-time = "2025-11-12T19:03:30.684Z" }, - { url = "https://files.pythonhosted.org/packages/40/28/c6e36c214baeb27ae45b518552e74457536c7c964b1a55b5900b047fa467/cython-3.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b4e850fc7a2f72d19679dd083fe4d20bf66860fceabb4f3207112f240249d708", size = 2957307, upload-time = "2025-11-12T19:03:32.471Z" }, - { url = "https://files.pythonhosted.org/packages/c8/c8/b0b9ba64f81f2875c42aab5c0979d6454cd1ac6b3c1e2373ad552701565d/cython-3.2.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3d20ca4afe993f7dccad3aeddbf4c3536cb0fd3ad6dc7a225935a666a5655af2", size = 3210919, upload-time = "2025-11-12T19:03:34.274Z" }, - { url = "https://files.pythonhosted.org/packages/f9/33/5d9ca6abba0e77e1851b843dd1b3c4095fbc6373166935e83c4414f80e88/cython-3.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f5a54a757d01ca6a260b02ce5baf17d9db1c2253566ab5844ee4966ff2a69c19", size = 3373350, upload-time = "2025-11-12T19:03:35.927Z" }, - { url = "https://files.pythonhosted.org/packages/e4/29/4408c3486ff380a2d6ae0d4b71da5195efcef3c4360017113ee7d1cb7335/cython-3.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:1b81e56584727a328e00d91c164f8f0f2c59b02bf6857c3f000cd830fa571453", size = 2753425, upload-time = "2025-11-12T19:03:38.157Z" }, - { url = "https://files.pythonhosted.org/packages/f0/32/c1aa03ccadda89487ff31b90d8651c3706ce2744bf4f2c2ae213147e89bd/cython-3.2.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:d7af6ad01c0fe1965d1d3badaeb6df53c1f37383ebae1ccb405b73f628f87713", size = 2967833, upload-time = "2025-11-12T19:03:40.233Z" }, - { url = "https://files.pythonhosted.org/packages/ff/dc/3488d3ade0635408a2ebb05561a3009e2f54616bfefd1f107088dfeb2c4c/cython-3.2.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e3ea7cd085b62acb67c0fbde5cd17a7d9e47992c965e81ec977cf9ea7c59cd65", size = 3256237, upload-time = "2025-11-12T19:03:42.005Z" }, - { url = "https://files.pythonhosted.org/packages/7b/ba/f3d35d3803c9a424fa8812893847114deb9e2440c1bc67a31ab9ec4b9355/cython-3.2.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:986aea38fdf231e78d73745f83271c5654852c822dc5141a1d3fba64429a6aa6", size = 3383100, upload-time = "2025-11-12T19:03:43.675Z" }, - { url = "https://files.pythonhosted.org/packages/86/dc/d72dbb2f8e7ca95d2d18fd86f32b2e385996576230e7ecddd7d250786825/cython-3.2.1-cp314-cp314-win_amd64.whl", hash = "sha256:4960e26cd34c1385f21646339f2e0361fcdd2ed3c01cdb50fe734add577ec56a", size = 2790322, upload-time = "2025-11-12T19:03:45.373Z" }, - { url = "https://files.pythonhosted.org/packages/5a/7e/1194f4ba98b981bbdca945a292e4f49e87ea09d69516b24445409e7cf611/cython-3.2.1-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:4e9167316bf6ecfea33dcca62f074605648fb93cc053ef46b5deb3e5d12fc0d3", size = 2872858, upload-time = "2025-11-12T19:03:55.074Z" }, - { url = "https://files.pythonhosted.org/packages/6b/1a/393ca8ffec7ad3f02b8e4bffaba3dba4fb62c4a1c4c0b6dbf3b80e709fe3/cython-3.2.1-cp39-abi3-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3095df6cd470064742f428c937bed7200c5123b9e19ee04aa09ec61281e565a3", size = 3209664, upload-time = "2025-11-12T19:03:56.771Z" }, - { url = "https://files.pythonhosted.org/packages/37/57/f209f64c609d3d8fac60a572e56da2f621dc1789e399c58db61d5645a31f/cython-3.2.1-cp39-abi3-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:db3f53b2d9afb206075a2605f1150aa019f0733c7795a38eccc6119c2e9c3f7b", size = 2854607, upload-time = "2025-11-12T19:03:59.413Z" }, - { url = "https://files.pythonhosted.org/packages/fc/af/1e5c73fe52423f40776130b0be914fd9f9f8dc26c4f6ea4c2ed04772d558/cython-3.2.1-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0fc5e7687ac8f8e2b2fb95648f43e9e074ebaa72fd5cb3d8e20e5f1e8b8e02d9", size = 2991567, upload-time = "2025-11-12T19:04:02.209Z" }, - { url = "https://files.pythonhosted.org/packages/39/2c/3ea175b6b1fdfb429f9e9c395240d894155b3c0615caced05fef43264cba/cython-3.2.1-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:bbb3bc152bc0de82b031c8d355418fa4890a92424209d59366c2c0bc9e6cf53c", size = 2889178, upload-time = "2025-11-12T19:04:05.272Z" }, - { url = "https://files.pythonhosted.org/packages/f1/88/b2ab22a3a3feac78c62354a823c5c0c33659909e9918f53aa05904532b4b/cython-3.2.1-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:a2022bc48ad0c2c0e0485bf0b54902913a3d81086b7d435f4437620c667799f6", size = 3223755, upload-time = "2025-11-12T19:04:07.262Z" }, - { url = "https://files.pythonhosted.org/packages/0b/56/9ba58629a03cbffb5965a3c65ccd91fa683d95d588c21a875da72fdc249b/cython-3.2.1-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:99fdd4ffc2dcb513f4be9ce71c6fedd895b96b1f814655b6bbab196df497b090", size = 3113456, upload-time = "2025-11-12T19:04:09.175Z" }, - { url = "https://files.pythonhosted.org/packages/56/5b/148c1a7ea5aebe460a70cad716a77e5fd0205be2de9fc5250491eb13ad8c/cython-3.2.1-cp39-abi3-win32.whl", hash = "sha256:06071f85bd5ce040464d43b2f9f287742a79f905e81b709fe904567230f1ed51", size = 2434223, upload-time = "2025-11-12T19:04:11.294Z" }, - { url = "https://files.pythonhosted.org/packages/7a/54/bb9b0c9db2a92a5e93747ca3027cfc645741411f8f1c6af2fb2a7b82df5d/cython-3.2.1-cp39-abi3-win_arm64.whl", hash = "sha256:e87c131d59480aee1ebac622b64f287c0e1d665ad1a1b7d498ac48accdb36c6b", size = 2439268, upload-time = "2025-11-12T19:04:12.931Z" }, - { url = "https://files.pythonhosted.org/packages/aa/30/373775b8d933d781d055c1dd0f110f275a101f320dab724c8c63a7c1b945/cython-3.2.1-py3-none-any.whl", hash = "sha256:cd72c46e7bffe8250c52d400e72c8d5d3086437b6aeec5b0eca99ccd337f5834", size = 1254219, upload-time = "2025-11-12T19:02:56.14Z" }, +version = "3.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/52/82/01f0b63287cb922e5ba96c5147c30f1e51f541ce91bd178025bb3518b1ba/cython-3.2.0.tar.gz", hash = "sha256:41fdce8237baee2d961c292ed0386903dfe126f131e450a62de0fd7a5280d4b2", size = 3267264, upload-time = "2025-11-05T13:35:04.231Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/57/8d/b2e9578d960d38b1b04a278bf66e13008486aa73e73967186f2015d63d1c/cython-3.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ee408125b2d218ec7d7a061e09d24715fcab9bf7ea1a4ac01907c3f8ec8730b3", size = 2953775, upload-time = "2025-11-05T13:35:22.291Z" }, + { url = "https://files.pythonhosted.org/packages/19/dd/cfd684f98bac9e0f505af1cbb7998498c59d713275e920a72b40dab03bfa/cython-3.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c93ce307b05fcd86a5bb0e4a7d7fab238e2f0e9936636097a60bc0e21f2def30", size = 3361627, upload-time = "2025-11-05T13:35:24.519Z" }, + { url = "https://files.pythonhosted.org/packages/9c/c1/75acdbe9f6292514f0bb92ab1b78df5eedd7049235f4cbd194d2c6c46bfc/cython-3.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:191cfc2fa84642ad41a52d5abaacfb330d9a6653a465e4bf0a5681f66197a967", size = 3529751, upload-time = "2025-11-05T13:35:26.341Z" }, + { url = "https://files.pythonhosted.org/packages/f2/ce/d0468eb6d87b956902b02909f5007ad61e3839d4c07ab235b514911d869b/cython-3.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:a259053037ef82959b743b7fde238bd191ee43f88eb8e51101d5f3d8849f1e32", size = 2758839, upload-time = "2025-11-05T13:35:28.36Z" }, + { url = "https://files.pythonhosted.org/packages/ff/2b/904493fceda95747ba83971b40a66c8cc29ff009313429903f38ee620140/cython-3.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e9e4b2248dc3a98b86aeba65e9862d2cc881d072c163c0fb31b511d4d72e93c8", size = 2946248, upload-time = "2025-11-05T13:35:30.406Z" }, + { url = "https://files.pythonhosted.org/packages/89/fe/abe926699fe6c580967e30bc4035da54b5e31355ba9b1f4c0cf574228a84/cython-3.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:02fb4990a83d5d6f780dda18ed8baa8d587cb6523f57b4d72bc0b41ad3766c96", size = 3236384, upload-time = "2025-11-05T13:35:32.233Z" }, + { url = "https://files.pythonhosted.org/packages/1b/36/6b6266549802234286438298d494152deb19922a94928d9dcd256659ebd1/cython-3.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8a98925517819d62ea25d2cf40057df60a9bcf75fdd1d6ed3882e6ae0730d82f", size = 3372915, upload-time = "2025-11-05T13:35:34.082Z" }, + { url = "https://files.pythonhosted.org/packages/29/fa/5cf15466b428f9248e38a28515cf0fd98078ae869aa395cfb300315964c4/cython-3.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:4c959a5d4cd6331e8498822ba47200bd2ff4bf74517c0c91475d5bc21da3b4d5", size = 2762735, upload-time = "2025-11-05T13:35:35.806Z" }, + { url = "https://files.pythonhosted.org/packages/57/d3/2e6f5f2552c860bb9c00653d092103521846114f6a2ae0648ecf84c0816c/cython-3.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:511d823d9f8a1b850178ec355d6df0a1731b9c20b08ee6d1a780f68215e9013f", size = 2959932, upload-time = "2025-11-05T13:35:37.518Z" }, + { url = "https://files.pythonhosted.org/packages/dd/bf/7bdc7f231fff6780f78586f939c1740475adecaa03bf256fcb62b2353952/cython-3.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bbadeedcb2d135655bcce7380fb28c9e2a75b6810426c12b6e5a6fe6106fafb4", size = 3218588, upload-time = "2025-11-05T13:35:39.642Z" }, + { url = "https://files.pythonhosted.org/packages/be/81/7d7a81010897dc5abee59691f5fc85849dcc4c8a7687b22ed01bc8d86a7a/cython-3.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:92d2394a3e3fe704210b5324eb8118333b514af72c98b1e02a6503945825b231", size = 3381940, upload-time = "2025-11-05T13:35:41.886Z" }, + { url = "https://files.pythonhosted.org/packages/4f/9d/35e7fb7b591bd9912685a772fcc773d7bb951a8feb6fb9be20addbc38928/cython-3.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:73435e56654a34ece57d4c3304a4556a8402cc4ae2d0e30f71c237a985dc5246", size = 2750886, upload-time = "2025-11-05T13:35:43.629Z" }, + { url = "https://files.pythonhosted.org/packages/5d/d0/dc4b260e8fde81b23ab4dca56948b3e69617ef470247ec6a3e09370a9849/cython-3.2.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d900e58e826f9a5a27b0e2b50e33473e9986a5bae375c39b0f2e19f2c545fa23", size = 2950437, upload-time = "2025-11-05T13:35:45.427Z" }, + { url = "https://files.pythonhosted.org/packages/c8/53/c322bf0486a938ad954a645866b67e978777d79183cf0a042bda6bea11de/cython-3.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a9d38cd3aab720d21fa6d6ee168228352f69aea0a95bd4fb84e8879c6ed38fbb", size = 3209331, upload-time = "2025-11-05T13:35:47.278Z" }, + { url = "https://files.pythonhosted.org/packages/cd/48/55d02dba0606768d3450afd088e2bbcd6f8a54977dce041c2c3c1894631c/cython-3.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:92b31d0b7b0a49b3d2aa94faaf75d44a03174cff2616b341a8853c919e511d51", size = 3370974, upload-time = "2025-11-05T13:35:49.534Z" }, + { url = "https://files.pythonhosted.org/packages/ce/bd/6dab19652b68464572b7a137d07a91ebe86db2a81c35842ff5e49ef23403/cython-3.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:2847b74e76dbad612f6fc7182c12a5f78cffb0d05808fd2c4b638cf02d1aade6", size = 2746274, upload-time = "2025-11-05T13:35:51.522Z" }, + { url = "https://files.pythonhosted.org/packages/e2/db/de5331ca6489da1761078825709257e1f24e543b4040f86a2502a4b841f9/cython-3.2.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:a0a8274959d538d12f865193dcd67bb5630906e020190c890d2b7c13d31713c6", size = 2961164, upload-time = "2025-11-05T13:35:53.826Z" }, + { url = "https://files.pythonhosted.org/packages/54/3e/64e37e419331f7c4c540ad25c0b3e6d8f44d597f21ab8861afbc66aa7e02/cython-3.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a1c800833c25195833805c7c3626a2c30b3baaaa9ba361a1af3bbc379662a8d", size = 3249627, upload-time = "2025-11-05T13:35:55.524Z" }, + { url = "https://files.pythonhosted.org/packages/9b/fc/9faedfcc2de807f77115d97a4910c260dd4693f4fa9e0e3be0d9ae89e260/cython-3.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:df15af08c21c18a2e848df5954d6fd3310735089b60405132fa4111e2cf7482a", size = 3375458, upload-time = "2025-11-05T13:35:57.279Z" }, + { url = "https://files.pythonhosted.org/packages/31/e0/30d449cd97ee0d6395aba18f2646b61b52ab3dc5a3851a346e2d363a7d85/cython-3.2.0-cp314-cp314-win_amd64.whl", hash = "sha256:9d6876af2132757fff1b42a2f4eaa72482f991863160e3f0dc8f2c812b300ebf", size = 2783210, upload-time = "2025-11-05T13:35:59.54Z" }, + { url = "https://files.pythonhosted.org/packages/dd/6b/9e1e171fe19274465d84dffa4610d46f434b1ae945e946802db396695d67/cython-3.2.0-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:04821ce06598a3aa5c9e0270d98960cfe6556dedbd1418c65e4479162b8ae74a", size = 2869249, upload-time = "2025-11-05T13:36:08.944Z" }, + { url = "https://files.pythonhosted.org/packages/c4/f1/f461726f664668a96072b2a245bdfae566d68e2eb1393ec72780cc59c21e/cython-3.2.0-cp39-abi3-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:54b5b1c72a63da822b3f4739a0e31546c0a19f8e834b174906bf817ed5f9d65f", size = 3204332, upload-time = "2025-11-05T13:36:11.386Z" }, + { url = "https://files.pythonhosted.org/packages/78/d8/73c07ce64cae496e5f5a6dfe3e53574af1a8ef777e2a834d10dae8b67a4e/cython-3.2.0-cp39-abi3-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6155a6c360e32af1aaa16fa10b0119b49deeadff42a1958973324150870af1b5", size = 2851317, upload-time = "2025-11-05T13:36:13.14Z" }, + { url = "https://files.pythonhosted.org/packages/bc/d9/d9f321637b8034b5028fa5fe7d1085ffa9351fea350af6510d5cb924c014/cython-3.2.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:861258ac3878b76c57b9b5a379787d772a0bc47fec9167b43986777de542c474", size = 2987155, upload-time = "2025-11-05T13:36:15.018Z" }, + { url = "https://files.pythonhosted.org/packages/f8/b5/9f9e7d261f083b4066d734b27a7872b0c584fd4c3578196652dbf72b3f62/cython-3.2.0-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:85dbf955e3193893d0288105afa0fa5f4e835ff587061681f240a4f0487c44fb", size = 2884219, upload-time = "2025-11-05T13:36:17.334Z" }, + { url = "https://files.pythonhosted.org/packages/88/64/5aeb6e43e0ded9efedc5a516f87a487fdca8e434491cc352e5a805380459/cython-3.2.0-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:3b3f13822526726bac43275c0e92916bbcc2c30e9f559edc4c1132670b70498d", size = 3218067, upload-time = "2025-11-05T13:36:19.493Z" }, + { url = "https://files.pythonhosted.org/packages/c4/a0/1958f54cd79d8251a330b9c9652b2a5ceba6a3fcec10782dd03e2a23c74f/cython-3.2.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:ab18d09673d219008be5b6174bcbb6dbfd50904e66371f104a8a4698b791472d", size = 3108277, upload-time = "2025-11-05T13:36:21.203Z" }, + { url = "https://files.pythonhosted.org/packages/9c/84/9b8112160cab922b97edef00616ed18771567d88b5ba9d30d1736880c345/cython-3.2.0-cp39-abi3-win32.whl", hash = "sha256:c9fd986413fc52929b916187630a9abab9f876299951488c4b905ad5346afee6", size = 2430852, upload-time = "2025-11-05T13:36:23.049Z" }, + { url = "https://files.pythonhosted.org/packages/8f/57/65d3de140b51c45dd6892846bfabdfaaa032e2418f1cb1a2f46058c1fe42/cython-3.2.0-cp39-abi3-win_arm64.whl", hash = "sha256:ee2ea79ddeb721f912e7efea039b9db059c81767ff04fbf9a995f64e1187df99", size = 2435793, upload-time = "2025-11-05T13:36:25.139Z" }, + { url = "https://files.pythonhosted.org/packages/20/58/1f798ddb7fe6bfddf85f4f97d2d4ad63a491a7b643e85c1e274d0f09138e/cython-3.2.0-py3-none-any.whl", hash = "sha256:73f7f4c75acde5b5b4df05b11fdc2705ec637b99241d1bc2f4ebf345f7a2ea90", size = 1252818, upload-time = "2025-11-05T13:35:00.391Z" }, ] [[package]] @@ -1166,7 +1291,8 @@ name = "deprecated" version = "1.3.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "wrapt" }, + { name = "wrapt", version = "1.17.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev'" }, + { name = "wrapt", version = "2.0.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/49/85/12f0a49a7c4ffb70572b6c2ef13c90c88fd190debda93b23f026b25f9634/deprecated-1.3.1.tar.gz", hash = "sha256:b1b50e0ff0c1fddaa5708a2c6b0a6588bb09b892825ab2b214ac9ea9d92a5223", size = 2932523, upload-time = "2025-10-30T08:19:02.757Z" } wheels = [ @@ -1214,6 +1340,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/8f/d7/9322c609343d929e75e7e5e6255e614fcc67572cfd083959cdef3b7aad79/docutils-0.21.2-py3-none-any.whl", hash = "sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2", size = 587408, upload-time = "2024-04-23T18:57:14.835Z" }, ] +[[package]] +name = "donfig" +version = "0.8.1.post1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyyaml", marker = "python_full_version >= '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/25/71/80cc718ff6d7abfbabacb1f57aaa42e9c1552bfdd01e64ddd704e4a03638/donfig-0.8.1.post1.tar.gz", hash = "sha256:3bef3413a4c1c601b585e8d297256d0c1470ea012afa6e8461dc28bfb7c23f52", size = 19506, upload-time = "2024-05-23T14:14:31.513Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/d5/c5db1ea3394c6e1732fb3286b3bd878b59507a8f77d32a2cebda7d7b7cd4/donfig-0.8.1.post1-py3-none-any.whl", hash = "sha256:2a3175ce74a06109ff9307d90a230f81215cbac9a751f4d1c6194644b8204f9d", size = 21592, upload-time = "2024-05-23T14:13:55.283Z" }, +] + [[package]] name = "ebmlite" version = "3.4.1" @@ -1247,7 +1385,7 @@ name = "exceptiongroup" version = "1.3.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "typing-extensions", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/0b/9f/a65090624ecf468cdca03533906e7c69ed7588582240cfe7cc9e770b50eb/exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88", size = 29749, upload-time = "2025-05-10T17:42:51.123Z" } wheels = [ @@ -1271,15 +1409,26 @@ wheels = [ [[package]] name = "fastapi" -version = "0.1.17" +version = "0.121.0" source = { registry = "https://pypi.org/simple" } dependencies = [ + { name = "annotated-doc" }, { name = "pydantic" }, { name = "starlette" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8c/e3/77a2df0946703973b9905fd0cde6172c15e0781984320123b4f5079e7113/fastapi-0.121.0.tar.gz", hash = "sha256:06663356a0b1ee93e875bbf05a31fb22314f5bed455afaaad2b2dad7f26e98fa", size = 342412, upload-time = "2025-11-03T10:25:54.818Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dd/2c/42277afc1ba1a18f8358561eee40785d27becab8f80a1f945c0a3051c6eb/fastapi-0.121.0-py3-none-any.whl", hash = "sha256:8bdf1b15a55f4e4b0d6201033da9109ea15632cb76cf156e7b8b4019f2172106", size = 109183, upload-time = "2025-11-03T10:25:53.27Z" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/fb/ca/e336cae3818f843392ce9e1e6f8cfc4b8dbdc1c2fcf81b34f7e6255ea05f/fastapi-0.1.17.tar.gz", hash = "sha256:a9a9b6cc32c38bab27a6549b94c44a30c70b485bc789d03de3aa8725f3394be5", size = 2826896, upload-time = "2019-01-05T13:39:54.842Z" } + +[[package]] +name = "fasteners" +version = "0.20" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/18/7881a99ba5244bfc82f06017316ffe93217dbbbcfa52b887caa1d4f2a6d3/fasteners-0.20.tar.gz", hash = "sha256:55dce8792a41b56f727ba6e123fcaee77fd87e638a6863cec00007bfea84c8d8", size = 25087, upload-time = "2025-08-11T10:19:37.785Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/ce/04/3639503a8a1bac37e747597e687997c58b302be92bc633049376f59e7dd7/fastapi-0.1.17-py3-none-any.whl", hash = "sha256:a6aaad2f60684477480ac9d7a1c95e67f4696a722f184db467494bfdd5b8f29d", size = 105578, upload-time = "2019-01-05T13:39:45.597Z" }, + { url = "https://files.pythonhosted.org/packages/51/ac/e5d886f892666d2d1e5cb8c1a41146e1d79ae8896477b1153a21711d3b44/fasteners-0.20-py3-none-any.whl", hash = "sha256:9422c40d1e350e4259f509fb2e608d6bc43c0136f79a00db1b49046029d0b3b7", size = 18702, upload-time = "2025-08-11T10:19:35.716Z" }, ] [[package]] @@ -1364,7 +1513,7 @@ source = { git = "https://github.com/deepseek-ai/FlashMLA?rev=9edee0c022cd093814 [[package]] name = "flashinfer-python" -version = "0.5.2" +version = "0.5.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "apache-tvm-ffi" }, @@ -1381,9 +1530,9 @@ dependencies = [ { name = "torch", marker = "sys_platform == 'never'" }, { name = "tqdm" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/d8/04/e357eaa50238e12c49e66fcf47f83e066e741ef19a117c136782b32eafbb/flashinfer_python-0.5.2.tar.gz", hash = "sha256:99d097a28be1e98c7f85e4a767e9e9a4794374f9318c27db14d21e367149063f", size = 4632657, upload-time = "2025-11-07T02:53:27.261Z" } +sdist = { url = "https://files.pythonhosted.org/packages/6c/bb/897c3b9d683dcf6490f70e468efb585eebcd673970b13a04ed947b491982/flashinfer_python-0.5.1.tar.gz", hash = "sha256:f12b32d88d8cc10a396456df8ab017f1c4661fbf257e14f4d2461961ec0d090e", size = 4627606, upload-time = "2025-11-04T05:55:02.376Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/8d/0c/4a8ffbbc0d85e314f534cf5c32711f2af5d5e6e49225a5a414400a67b684/flashinfer_python-0.5.2-py3-none-any.whl", hash = "sha256:739c27d86d5ff4e3ad1ea41dcb90bda08e44c332549bf696f9c9c5c57f608e63", size = 6936306, upload-time = "2025-11-07T02:53:25.515Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f1/33dedad087a2bc3d66244126bd5d1c79721ea22d1f2124299f9e5bdaf3b1/flashinfer_python-0.5.1-py3-none-any.whl", hash = "sha256:ec8434d21e53a0ec333734a3c61946a0f7d2f972e344aefa99ba5b87e63aa76a", size = 6932706, upload-time = "2025-11-04T05:55:00.335Z" }, ] [[package]] @@ -1764,7 +1913,7 @@ source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "filelock" }, { name = "fsspec" }, - { name = "hf-xet", marker = "platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'" }, + { name = "hf-xet", marker = "platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "packaging" }, { name = "pyyaml" }, { name = "requests" }, @@ -1807,14 +1956,74 @@ wheels = [ name = "importlib-metadata" version = "8.6.1" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", +] dependencies = [ - { name = "zipp" }, + { name = "zipp", marker = "extra == 'extra-13-megatron-core-dev'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/33/08/c1395a292bb23fd03bdf572a1357c5a733d3eecbab877641ceacab23db6e/importlib_metadata-8.6.1.tar.gz", hash = "sha256:310b41d755445d74569f993ccfc22838295d9fe005425094fad953d7f15c8580", size = 55767, upload-time = "2025-01-20T22:21:30.429Z" } wheels = [ { url = "https://files.pythonhosted.org/packages/79/9d/0fb148dc4d6fa4a7dd1d8378168d9b4cd8d4560a6fbf6f0121c5fc34eb68/importlib_metadata-8.6.1-py3-none-any.whl", hash = "sha256:02a89390c1e15fdfdc0d7c6b25cb3e62650d0494005c97d6f148bf5b9787525e", size = 26971, upload-time = "2025-01-20T22:21:29.177Z" }, ] +[[package]] +name = "importlib-metadata" +version = "8.7.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", +] +dependencies = [ + { name = "zipp", marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/76/66/650a33bd90f786193e4de4b3ad86ea60b53c89b669a5c7be931fac31cdb0/importlib_metadata-8.7.0.tar.gz", hash = "sha256:d13b81ad223b890aa16c5471f2ac3056cf76c5f10f82d6f9292f0b415f389000", size = 56641, upload-time = "2025-04-27T15:29:01.736Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/20/b0/36bd937216ec521246249be3bf9855081de4c5e06a0c9b4219dbeda50373/importlib_metadata-8.7.0-py3-none-any.whl", hash = "sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd", size = 27656, upload-time = "2025-04-27T15:29:00.214Z" }, +] + [[package]] name = "iniconfig" version = "2.3.0" @@ -1941,7 +2150,7 @@ wheels = [ [[package]] name = "leptonai" -version = "0.26.7" +version = "0.26.6" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "anyio" }, @@ -1966,7 +2175,7 @@ dependencies = [ { name = "uvicorn" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/c2/4d/2b5ab13294b23326ba1d8ef6ad703b1d9535bf72a0617030ddd6238eb925/leptonai-0.26.7-py3-none-any.whl", hash = "sha256:74996da36bf177d2b148887dd349627ab8cd78b94623d543bc91ed9ad65ba0e2", size = 2452890, upload-time = "2025-11-07T20:07:14.99Z" }, + { url = "https://files.pythonhosted.org/packages/68/b4/e29dfe5a6e63a0e55fc26115a8eef55fbbc004c7677544bbd88798e1c003/leptonai-0.26.6-py3-none-any.whl", hash = "sha256:e76846b52d6ffc186b26a1fa40ebf0432eb1d8108dda1fb2f7785a1f25c803c2", size = 2443372, upload-time = "2025-09-23T08:04:27.984Z" }, ] [[package]] @@ -2229,30 +2438,23 @@ dev = [ { name = "onnxscript", version = "0.5.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "opentelemetry-api" }, { name = "setuptools" }, - { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "tensorstore", version = "0.1.79", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.78", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tqdm" }, { name = "transformer-engine", marker = "extra == 'extra-13-megatron-core-dev'" }, { name = "wget" }, ] lts = [ - { name = "av" }, - { name = "causal-conv1d" }, { name = "einops" }, - { name = "flashinfer-python" }, - { name = "mamba-ssm" }, - { name = "megatron-energon", extra = ["av-decode"], marker = "extra == 'extra-13-megatron-core-lts'" }, - { name = "multi-storage-client" }, - { name = "nv-grouped-gemm" }, { name = "nvtx" }, - { name = "onnxscript", version = "0.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "onnxscript", version = "0.5.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "opentelemetry-api" }, { name = "setuptools" }, - { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "tensorstore", version = "0.1.79", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.74", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "tensorstore", version = "0.1.78", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "tqdm" }, + { name = "transformers" }, { name = "wget" }, + { name = "zarr", version = "2.18.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "zarr", version = "3.1.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] mlm = [ { name = "flask-restful" }, @@ -2310,54 +2512,48 @@ test = [ { name = "pytest-random-order" }, { name = "pyyaml" }, { name = "tensorboard" }, - { name = "wrapt" }, + { name = "wrapt", version = "1.17.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev'" }, + { name = "wrapt", version = "2.0.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, ] [package.metadata] requires-dist = [ { name = "av", marker = "extra == 'dev'", specifier = "<16.0.0" }, - { name = "av", marker = "extra == 'lts'", specifier = "<16.0.0" }, { name = "causal-conv1d", marker = "extra == 'dev'", specifier = "~=1.5" }, - { name = "causal-conv1d", marker = "extra == 'lts'", specifier = "~=1.5" }, { name = "einops", marker = "extra == 'dev'", specifier = "~=0.8" }, - { name = "einops", marker = "extra == 'lts'", specifier = "~=0.8" }, + { name = "einops", marker = "extra == 'lts'" }, { name = "emerging-optimizers", marker = "extra == 'dev'", git = "https://github.com/NVIDIA-NeMo/Emerging-Optimizers.git?rev=cf9909b777ffac18e05b67a6708282cadc000942" }, { name = "flash-linear-attention", marker = "extra == 'dev'", specifier = "~=0.3.2" }, { name = "flashinfer-python", marker = "extra == 'dev'" }, - { name = "flashinfer-python", marker = "extra == 'lts'" }, { name = "flask-restful", marker = "extra == 'mlm'" }, { name = "mamba-ssm", marker = "extra == 'dev'", specifier = "~=2.2" }, - { name = "mamba-ssm", marker = "extra == 'lts'", specifier = "~=2.2" }, { name = "megatron-energon", extras = ["av-decode"], marker = "extra == 'dev'", specifier = "~=6.0" }, - { name = "megatron-energon", extras = ["av-decode"], marker = "extra == 'lts'", specifier = "~=6.0" }, { name = "multi-storage-client", marker = "extra == 'dev'", specifier = "~=0.27" }, - { name = "multi-storage-client", marker = "extra == 'lts'", specifier = "~=0.27" }, { name = "numpy", specifier = "<2.0.0" }, { name = "nv-grouped-gemm", marker = "extra == 'dev'", specifier = "~=1.1" }, - { name = "nv-grouped-gemm", marker = "extra == 'lts'", specifier = "~=1.1" }, { name = "nvidia-modelopt", extras = ["torch"], marker = "sys_platform != 'darwin' and extra == 'dev'", specifier = ">=0.33.0a0,<0.34.0" }, { name = "nvidia-resiliency-ext", marker = "extra == 'dev'", specifier = ">=0.4.0a0,<0.5.0" }, { name = "nvtx", marker = "extra == 'dev'", specifier = "~=0.2" }, - { name = "nvtx", marker = "extra == 'lts'", specifier = "~=0.2" }, + { name = "nvtx", marker = "extra == 'lts'" }, { name = "onnxscript", marker = "extra == 'dev'" }, - { name = "onnxscript", marker = "extra == 'lts'" }, { name = "opentelemetry-api", marker = "extra == 'dev'", specifier = "~=1.33.1" }, - { name = "opentelemetry-api", marker = "extra == 'lts'", specifier = "~=1.33.1" }, { name = "packaging", specifier = ">=24.2" }, { name = "sentencepiece", marker = "extra == 'mlm'" }, { name = "setuptools", marker = "extra == 'dev'", specifier = "<80.0.0" }, { name = "setuptools", marker = "extra == 'lts'", specifier = "<80.0.0" }, { name = "tensorstore", marker = "extra == 'dev'", specifier = "~=0.1,!=0.1.46,!=0.1.72" }, - { name = "tensorstore", marker = "extra == 'lts'", specifier = "~=0.1,!=0.1.46,!=0.1.72" }, + { name = "tensorstore", marker = "extra == 'lts'", specifier = "!=0.1.46,!=0.1.72" }, { name = "tiktoken", marker = "extra == 'mlm'" }, { name = "torch" }, { name = "tqdm", marker = "extra == 'dev'" }, { name = "tqdm", marker = "extra == 'lts'" }, { name = "transformer-engine", extras = ["pytorch"], marker = "extra == 'dev'", git = "https://github.com/NVIDIA/TransformerEngine.git?rev=release_v2.9" }, + { name = "transformers", marker = "extra == 'lts'" }, { name = "transformers", marker = "extra == 'mlm'" }, { name = "wandb", marker = "extra == 'mlm'" }, { name = "wget", marker = "extra == 'dev'" }, { name = "wget", marker = "extra == 'lts'" }, + { name = "zarr", marker = "extra == 'lts'" }, ] provides-extras = ["mlm", "dev", "lts"] @@ -2444,10 +2640,14 @@ name = "ml-dtypes" version = "0.4.1" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", ] dependencies = [ { name = "numpy", marker = "python_full_version >= '3.13'" }, @@ -2589,7 +2789,7 @@ wheels = [ [[package]] name = "multi-storage-client" -version = "0.34.0" +version = "0.33.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "filelock" }, @@ -2602,27 +2802,26 @@ dependencies = [ { name = "python-dateutil" }, { name = "pyyaml" }, { name = "tqdm" }, - { name = "tzdata" }, { name = "wcmatch" }, { name = "xattr" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/46/d9/88f1f3a9d354470216ec9dc7a619b944f4fdde4f28cc17c4090242c4548b/multi_storage_client-0.34.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:53a0597f68c9749c784745c3d58507fede7c018c5d113316beed501027b2a09a", size = 5291250, upload-time = "2025-11-07T23:47:05.434Z" }, - { url = "https://files.pythonhosted.org/packages/4d/79/00135da703e2d865e6379851e1357160f9a417ee62f4d73a507cefb4a36b/multi_storage_client-0.34.0-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:13b778339a05067cf375e99388deda9b78789fa5aa6cfcec9ee86d818c537188", size = 5411078, upload-time = "2025-11-07T23:41:52.668Z" }, - { url = "https://files.pythonhosted.org/packages/84/89/c1ed1ca4566ca953e057c0eea74ec364f6553fb83b2cccb805248885e218/multi_storage_client-0.34.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b1de485d993ac13b7ec2d0a28635da4e2c3c5a4c24305ba8ca2931f1f17985f7", size = 3182416, upload-time = "2025-11-07T23:41:29.088Z" }, - { url = "https://files.pythonhosted.org/packages/ae/ea/2dd5e7d2d9add2da8121609c9a3c7df2c1ce4950fa869f5e1c3a9e220ddd/multi_storage_client-0.34.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:61941fad48c27809ed78d0beb7544d2ed3451468ce54b9b79373a0237a43a5b7", size = 3357014, upload-time = "2025-11-07T23:35:43.587Z" }, - { url = "https://files.pythonhosted.org/packages/1c/04/86a442ef3f7a5a37d88ea3f8a8d921d0935ab49ae8b847f61e5cc2861c77/multi_storage_client-0.34.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c9a56665f1918147081bb591c31073d96c159bc315d91fb50c315e05003a52e1", size = 5291104, upload-time = "2025-11-07T23:47:28.686Z" }, - { url = "https://files.pythonhosted.org/packages/b1/cc/9c91a617d22e5ad0e532b655e3faeace98e6dbc0e69d961eb8bd7f99f4fb/multi_storage_client-0.34.0-cp311-cp311-macosx_11_0_x86_64.whl", hash = "sha256:901fd0f14bf69185e7daa12f72ac8d413216c53bf6a33d3676e423f6720c6a0a", size = 5411597, upload-time = "2025-11-07T23:43:52.954Z" }, - { url = "https://files.pythonhosted.org/packages/a0/3f/71dc4df8db34d9621353d4783f81c6f718da160445781ed4fb79bbb436be/multi_storage_client-0.34.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a03a48121291e898e265a8aac508595d0a856fa7978410b8808a5747ff9839e", size = 3184427, upload-time = "2025-11-07T23:36:07.595Z" }, - { url = "https://files.pythonhosted.org/packages/6c/8e/84b0420c5e26f01133e9503bc7378589da8e9cd4be40b1b94bc19954efbe/multi_storage_client-0.34.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f833d64061e711734ca4f47a9ca598ccc526c55bc4bfa95743b02ab1ef0f0d9a", size = 3355781, upload-time = "2025-11-07T23:37:26.703Z" }, - { url = "https://files.pythonhosted.org/packages/6e/2d/e42a994ba4871bb816d8cd33b01b97c5a48e458883c7ad780f3dfd017263/multi_storage_client-0.34.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:684363c7f1160d276ad5f064ee241de5154767822df8ff30a43790dd94b709f9", size = 5281570, upload-time = "2025-11-07T23:43:04.104Z" }, - { url = "https://files.pythonhosted.org/packages/83/2e/0614b98877642b8c93b0f3a357e0bb50ecee0117cc2ac13bceb51d8212ad/multi_storage_client-0.34.0-cp312-cp312-macosx_11_0_x86_64.whl", hash = "sha256:f06d8313a4aed35b96106d493774366e839275bec2aff922bd89d860ee913128", size = 5407200, upload-time = "2025-11-07T23:43:27.569Z" }, - { url = "https://files.pythonhosted.org/packages/31/b1/feac8e8fb1dd732f1296163afe02658430ba7d86d499fe4dd70c2e3adbe8/multi_storage_client-0.34.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:959a0288727c896ca11ae0fd50b2dc018803e6fc36e09d2a2d939855eeb6dd99", size = 3186714, upload-time = "2025-11-07T23:38:16.647Z" }, - { url = "https://files.pythonhosted.org/packages/7f/25/839a08917e2d24f213b7ba5c8c8f80d95150e4fae796bc47cce410f223ae/multi_storage_client-0.34.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a120c90a4058ab51eda16b2162c98f5210941ba9ff2729c519f6b842404a6c68", size = 3356859, upload-time = "2025-11-07T23:46:42.392Z" }, - { url = "https://files.pythonhosted.org/packages/21/63/4209ae3d4156f09df264a514d9f20e32a9ccdb553e4267fec534ef5f74bf/multi_storage_client-0.34.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7cd82176cb68d8bc1e0074ce93d3623a233562df0628a801c11317d79e9f74e5", size = 5280719, upload-time = "2025-11-07T23:41:05.9Z" }, - { url = "https://files.pythonhosted.org/packages/24/7f/615e21aa9ff254d939c2a86541e27e70eb4e5b83c3d9969efa3014452736/multi_storage_client-0.34.0-cp313-cp313-macosx_11_0_x86_64.whl", hash = "sha256:9e89c5890964f47f58417dc7f3b15e7fa8626987bf447556881a941afebc639f", size = 5406246, upload-time = "2025-11-07T23:45:47.151Z" }, - { url = "https://files.pythonhosted.org/packages/f1/63/d20df6a0857b901480f27a2a9a127a69b92ddb9e6418fcaf0656b7e44897/multi_storage_client-0.34.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:700eb585eed1ed94466d8025f4d05ec44ceb0699e32e44206e00ea53e541c462", size = 3185115, upload-time = "2025-11-07T23:36:31.145Z" }, - { url = "https://files.pythonhosted.org/packages/48/a0/de6e69cb392d51d07c76532bcfa03596516f02c5db6c08a5042a63676d08/multi_storage_client-0.34.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7094cc453e6432da5b1f2e3ade2d2a439cdb447432d2bf1213eab9bb1adf79bc", size = 3355566, upload-time = "2025-11-07T23:44:55.244Z" }, + { url = "https://files.pythonhosted.org/packages/5c/c4/6279fb7d4b8b0a7af060047d592f00f8d49c547adfebe50bcd8d0d2dc8a5/multi_storage_client-0.33.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:df52b3040ef5698c6388fa589bd63812ae0d2f967d358a792abcad5638686590", size = 5282006, upload-time = "2025-10-23T03:45:37.761Z" }, + { url = "https://files.pythonhosted.org/packages/22/3b/23d8beccd73b887c4552bf884275611255b5028388fa3317365cd56c2a93/multi_storage_client-0.33.0-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:370da04b1e56a601ba505a29d42fcabc19b583e10d725a37bc0c11ba3573d211", size = 5403083, upload-time = "2025-10-23T03:53:11.998Z" }, + { url = "https://files.pythonhosted.org/packages/b0/ad/dc355d05fd369da0d800e5f7de24da0393f542c5a6f775f6bcee7edcacb1/multi_storage_client-0.33.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c57749a28ec5d49440f465fd73e4e2feaab18ece9b6e57c73395308b41950f66", size = 3178432, upload-time = "2025-10-23T04:07:00.543Z" }, + { url = "https://files.pythonhosted.org/packages/e0/ad/97b54419d8a58f696b85504568391a627641152f80650d7d2697fc2702ed/multi_storage_client-0.33.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7d95f5fe094aab00a240bf6aa11dfe85bec293b76b3688ec3a9c33d86c751d2", size = 3351102, upload-time = "2025-10-23T03:47:47.622Z" }, + { url = "https://files.pythonhosted.org/packages/52/28/1038a68b9df1b179a61967ce9f7d2e80b9954cdb289801afecde5f7660db/multi_storage_client-0.33.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4b5a0f5a0b7684835be20ae6782070884982a86665e9bab317375a56a20294d1", size = 5281523, upload-time = "2025-10-23T04:06:36.671Z" }, + { url = "https://files.pythonhosted.org/packages/6c/c5/e18de5e2a2671efdc0a12383b8d63f523044ca453525725b3450d0179c0e/multi_storage_client-0.33.0-cp311-cp311-macosx_11_0_x86_64.whl", hash = "sha256:0db694311f90f44ee8f6f7734a14a0857738a467f2ae201649218a3ecf1f6ab2", size = 5403353, upload-time = "2025-10-23T04:07:25.941Z" }, + { url = "https://files.pythonhosted.org/packages/7e/c9/d9f65eb2370151dbbb06925f4216ee017e6cdbf7657263fd98e60944e52b/multi_storage_client-0.33.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cbe3a0b856f0b968f9fc693670a521b5a995b625351241ca008f866fdfff62a", size = 3180052, upload-time = "2025-10-23T03:57:32.797Z" }, + { url = "https://files.pythonhosted.org/packages/e7/38/08b9d84c93b19ae87caf542ae77f17dfa44a85281ba09de660ffcf3a7718/multi_storage_client-0.33.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:018e7e82255feeff973ff02563f11a30f5e507e4cbc87a2167a9568740144ef2", size = 3351389, upload-time = "2025-10-23T04:02:07.348Z" }, + { url = "https://files.pythonhosted.org/packages/6a/31/c95634a27723b5ba9d2d74158444cc5e40b151b51ae59ca196fc9993f039/multi_storage_client-0.33.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:030b3a592c6352605e9ebdb8d9303dd42daf5d171ffa684f3283d4a5c6e2edfe", size = 5273976, upload-time = "2025-10-23T04:04:35.99Z" }, + { url = "https://files.pythonhosted.org/packages/8c/cf/82d1778d73c3baaec331da4ae8d01fa7934bcd73336aa88a08d86d080347/multi_storage_client-0.33.0-cp312-cp312-macosx_11_0_x86_64.whl", hash = "sha256:14dc0ace16d3830917427d6376d14ef62bd053fb2509f893998555ca1e9c4dcb", size = 5400735, upload-time = "2025-10-23T03:58:37.149Z" }, + { url = "https://files.pythonhosted.org/packages/fc/34/a6194ec725ef80c02de58b5ed3520bb1711807df75a27f7214effd22df34/multi_storage_client-0.33.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2821765d5c6de365b5b1dcdc7cf2ebba719ff4061fd02975639629f8aa319f6", size = 3182623, upload-time = "2025-10-23T04:03:29.551Z" }, + { url = "https://files.pythonhosted.org/packages/8f/36/7ec85178fd1dd69c278407a82acaccfb806449deda13f3dbd41f653d73bd/multi_storage_client-0.33.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f92f89480c58067fa53c178785b86e7650e16f277a61a732a8a7019173b16129", size = 3352104, upload-time = "2025-10-23T04:08:51.005Z" }, + { url = "https://files.pythonhosted.org/packages/88/ef/f2eb2efefb0e0588b29ed573b8354ecd72c38e6143da7ed5ecf53e859bf8/multi_storage_client-0.33.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ed9af7e77e3cbac1f614816062b36975dcbc610bd3f8c86741d48aa18c718781", size = 5272154, upload-time = "2025-10-23T04:07:49.572Z" }, + { url = "https://files.pythonhosted.org/packages/1e/49/050aa4fccb2579d2ef5bd0d27169ec98fe85c92bba7a2c31154c491a4f75/multi_storage_client-0.33.0-cp313-cp313-macosx_11_0_x86_64.whl", hash = "sha256:c9d75e95a266ee858cf20c88ed255021552de67a40af9c8884d2fc22037dcd2b", size = 5399474, upload-time = "2025-10-23T04:09:14.545Z" }, + { url = "https://files.pythonhosted.org/packages/f6/4b/70c2df3b60c28360f185188d351e9c3958b702614963a09ffb1dc251c1ca/multi_storage_client-0.33.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48195a2ab9e6e9a2763bde17184cad2bdef82684353e210d0d325f20cea18869", size = 3181788, upload-time = "2025-10-23T04:03:10.404Z" }, + { url = "https://files.pythonhosted.org/packages/9b/96/5008852677fdad10eb9d8dd08a6ea58c6f7e820199a3b2c56607186ac6d5/multi_storage_client-0.33.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bd64403efdcee2a6efcf7bfdb01422dd174c146014563b09f44590346fd835e6", size = 3351269, upload-time = "2025-10-23T04:00:34.714Z" }, ] [[package]] @@ -2853,14 +3052,44 @@ name = "networkx" version = "3.5" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", - "python_full_version == '3.12.*' and sys_platform != 'linux'", - "python_full_version == '3.11.*' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", ] sdist = { url = "https://files.pythonhosted.org/packages/6c/4f/ccdb8ad3a38e583f214547fd2f7ff1fc160c43a75af88e6aec213404b96a/networkx-3.5.tar.gz", hash = "sha256:d4c6f9cf81f52d69230866796b82afbccdec3db7ae4fbd1b65ea750feed50037", size = 2471065, upload-time = "2025-05-29T11:35:07.804Z" } wheels = [ @@ -2908,6 +3137,83 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/60/90/81ac364ef94209c100e12579629dc92bf7a709a84af32f8c551b02c07e94/nltk-3.9.2-py3-none-any.whl", hash = "sha256:1e209d2b3009110635ed9709a67a1a3e33a10f799490fa71cf4bec218c11c88a", size = 1513404, upload-time = "2025-10-01T07:19:21.648Z" }, ] +[[package]] +name = "numcodecs" +version = "0.13.1" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", +] +dependencies = [ + { name = "numpy", marker = "python_full_version < '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/85/56/8895a76abe4ec94ebd01eeb6d74f587bc4cddd46569670e1402852a5da13/numcodecs-0.13.1.tar.gz", hash = "sha256:a3cf37881df0898f3a9c0d4477df88133fe85185bffe57ba31bcc2fa207709bc", size = 5955215, upload-time = "2024-10-09T16:28:00.188Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/14/c0/6d72cde772bcec196b7188731d41282993b2958440f77fdf0db216f722da/numcodecs-0.13.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:96add4f783c5ce57cc7e650b6cac79dd101daf887c479a00a29bc1487ced180b", size = 1580012, upload-time = "2024-10-09T16:27:19.069Z" }, + { url = "https://files.pythonhosted.org/packages/94/1d/f81fc1fa9210bbea97258242393a1f9feab4f6d8fb201f81f76003005e4b/numcodecs-0.13.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:237b7171609e868a20fd313748494444458ccd696062f67e198f7f8f52000c15", size = 1176919, upload-time = "2024-10-09T16:27:21.634Z" }, + { url = "https://files.pythonhosted.org/packages/16/e4/b9ec2f4dfc34ecf724bc1beb96a9f6fa9b91801645688ffadacd485089da/numcodecs-0.13.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:96e42f73c31b8c24259c5fac6adba0c3ebf95536e37749dc6c62ade2989dca28", size = 8625842, upload-time = "2024-10-09T16:27:24.168Z" }, + { url = "https://files.pythonhosted.org/packages/fe/90/299952e1477954ec4f92813fa03e743945e3ff711bb4f6c9aace431cb3da/numcodecs-0.13.1-cp310-cp310-win_amd64.whl", hash = "sha256:eda7d7823c9282e65234731fd6bd3986b1f9e035755f7fed248d7d366bb291ab", size = 828638, upload-time = "2024-10-09T16:27:27.063Z" }, + { url = "https://files.pythonhosted.org/packages/f0/78/34b8e869ef143e88d62e8231f4dbfcad85e5c41302a11fc5bd2228a13df5/numcodecs-0.13.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2eda97dd2f90add98df6d295f2c6ae846043396e3d51a739ca5db6c03b5eb666", size = 1580199, upload-time = "2024-10-09T16:27:29.336Z" }, + { url = "https://files.pythonhosted.org/packages/3b/cf/f70797d86bb585d258d1e6993dced30396f2044725b96ce8bcf87a02be9c/numcodecs-0.13.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2a86f5367af9168e30f99727ff03b27d849c31ad4522060dde0bce2923b3a8bc", size = 1177203, upload-time = "2024-10-09T16:27:31.011Z" }, + { url = "https://files.pythonhosted.org/packages/a8/b5/d14ad69b63fde041153dfd05d7181a49c0d4864de31a7a1093c8370da957/numcodecs-0.13.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:233bc7f26abce24d57e44ea8ebeb5cd17084690b4e7409dd470fdb75528d615f", size = 8868743, upload-time = "2024-10-09T16:27:32.833Z" }, + { url = "https://files.pythonhosted.org/packages/13/d4/27a7b5af0b33f6d61e198faf177fbbf3cb83ff10d9d1a6857b7efc525ad5/numcodecs-0.13.1-cp311-cp311-win_amd64.whl", hash = "sha256:796b3e6740107e4fa624cc636248a1580138b3f1c579160f260f76ff13a4261b", size = 829603, upload-time = "2024-10-09T16:27:35.415Z" }, + { url = "https://files.pythonhosted.org/packages/37/3a/bc09808425e7d3df41e5fc73fc7a802c429ba8c6b05e55f133654ade019d/numcodecs-0.13.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:5195bea384a6428f8afcece793860b1ab0ae28143c853f0b2b20d55a8947c917", size = 1575806, upload-time = "2024-10-09T16:27:37.804Z" }, + { url = "https://files.pythonhosted.org/packages/3a/cc/dc74d0bfdf9ec192332a089d199f1e543e747c556b5659118db7a437dcca/numcodecs-0.13.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3501a848adaddce98a71a262fee15cd3618312692aa419da77acd18af4a6a3f6", size = 1178233, upload-time = "2024-10-09T16:27:40.169Z" }, + { url = "https://files.pythonhosted.org/packages/d4/ce/434e8e3970b8e92ae9ab6d9db16cb9bc7aa1cd02e17c11de6848224100a1/numcodecs-0.13.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da2230484e6102e5fa3cc1a5dd37ca1f92dfbd183d91662074d6f7574e3e8f53", size = 8857827, upload-time = "2024-10-09T16:27:42.743Z" }, + { url = "https://files.pythonhosted.org/packages/83/e7/1d8b1b266a92f9013c755b1c146c5ad71a2bff147ecbc67f86546a2e4d6a/numcodecs-0.13.1-cp312-cp312-win_amd64.whl", hash = "sha256:e5db4824ebd5389ea30e54bc8aeccb82d514d28b6b68da6c536b8fa4596f4bca", size = 826539, upload-time = "2024-10-09T16:27:44.808Z" }, + { url = "https://files.pythonhosted.org/packages/83/8b/06771dead2cc4a8ae1ea9907737cf1c8d37a323392fa28f938a586373468/numcodecs-0.13.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7a60d75179fd6692e301ddfb3b266d51eb598606dcae7b9fc57f986e8d65cb43", size = 1571660, upload-time = "2024-10-09T16:27:47.125Z" }, + { url = "https://files.pythonhosted.org/packages/f9/ea/d925bf85f92dfe4635356018da9fe4bfecb07b1c72f62b01c1bc47f936b1/numcodecs-0.13.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3f593c7506b0ab248961a3b13cb148cc6e8355662ff124ac591822310bc55ecf", size = 1169925, upload-time = "2024-10-09T16:27:49.512Z" }, + { url = "https://files.pythonhosted.org/packages/0f/d6/643a3839d571d8e439a2c77dc4b0b8cab18d96ac808e4a81dbe88e959ab6/numcodecs-0.13.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80d3071465f03522e776a31045ddf2cfee7f52df468b977ed3afdd7fe5869701", size = 8814257, upload-time = "2024-10-09T16:27:52.059Z" }, + { url = "https://files.pythonhosted.org/packages/a6/c5/f3e56bc9b4e438a287fff738993d6d11abef368c0328a612ac2842ba9fca/numcodecs-0.13.1-cp313-cp313-win_amd64.whl", hash = "sha256:90d3065ae74c9342048ae0046006f99dcb1388b7288da5a19b3bddf9c30c3176", size = 821887, upload-time = "2024-10-09T16:27:55.039Z" }, +] + +[[package]] +name = "numcodecs" +version = "0.16.3" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and sys_platform != 'linux'", +] +dependencies = [ + { name = "numpy", marker = "python_full_version >= '3.11'" }, + { name = "typing-extensions", marker = "python_full_version >= '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f6/48/6188e359b90a9d8a1850f2bc888c023e66f4a8b2b496820babbea414f008/numcodecs-0.16.3.tar.gz", hash = "sha256:53d705865faaf0a7927c973af3777532001c8fbb653de119c1e844608614d799", size = 6275704, upload-time = "2025-09-18T18:54:57.221Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d4/cc/917a85972537498f2bbd7914047efc98babc8667587ceb9dcb228378978a/numcodecs-0.16.3-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:95c9f2a49bef10cf91ad614a761cba9bfe96656b60c12540e1080de5d909b4ca", size = 1642356, upload-time = "2025-09-18T18:54:36.402Z" }, + { url = "https://files.pythonhosted.org/packages/3b/6a/64c25a089e8537441fe67c09ecb7f3f7fb5d98cd04faf01f605d43aca41c/numcodecs-0.16.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e2afe73d5ebaf9ca0cd5c83aad945da80d29a33d860a80d43a7248491d8813ff", size = 1169186, upload-time = "2025-09-18T18:54:37.838Z" }, + { url = "https://files.pythonhosted.org/packages/d8/a0/0de627baeb43e2045a3d4b3de99bf8b69af329a33df1ed4cda468d70c1fb/numcodecs-0.16.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:913f08194d82dcb37594e6705e6d4ae6ccd4b6571500b832fb3e4a155de1dfe8", size = 8341668, upload-time = "2025-09-18T18:54:39.444Z" }, + { url = "https://files.pythonhosted.org/packages/b6/0f/49d1f74a216149240c4b9403218111f11670bd11af0919fda357bb056bf2/numcodecs-0.16.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85a7f1cae9eb18b85709af46570bf9c60056e7155c4c8f610e8080c68124d0e5", size = 8866611, upload-time = "2025-09-18T18:54:41.168Z" }, + { url = "https://files.pythonhosted.org/packages/aa/51/03aece765108fe247717105b5131856546e5428f22a56a14ffdebd017424/numcodecs-0.16.3-cp311-cp311-win_amd64.whl", hash = "sha256:f7bb7f2c46eb7ec8a1c5f8d8fe1a72c222256dd6d6df5af9eaac7a6b905f3575", size = 806787, upload-time = "2025-09-18T18:54:42.78Z" }, + { url = "https://files.pythonhosted.org/packages/0d/78/e4b34803a3aa1d0769919695de4b133266c18c80c474d32ebc462fa1a9bd/numcodecs-0.16.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c77454d92941a335d148b0b822f5d4783103f392774d5d76283bbf7f21b49529", size = 1681108, upload-time = "2025-09-18T18:54:43.856Z" }, + { url = "https://files.pythonhosted.org/packages/25/cf/ca36f463b03a4097767d2a1c1b72f31810e8c6384e9449dd9b925203783c/numcodecs-0.16.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:270e7a33ee96bdf5c957acf25a2487002a233811a125a155c400c2f036b69c73", size = 1165589, upload-time = "2025-09-18T18:54:44.954Z" }, + { url = "https://files.pythonhosted.org/packages/ed/ae/670260c3c4b5ed34a0674561355f3d4ce7fcbdf09a667e5bc841526d271c/numcodecs-0.16.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:12f43fa4a347d1dba775c4506a1c9b15b90144c258433b81f79f1c1b1a990db5", size = 8316365, upload-time = "2025-09-18T18:54:46.073Z" }, + { url = "https://files.pythonhosted.org/packages/bb/fa/94e022419c751a60ff0f53642ebae5ef81ed3cc3640f958588e3ad3dc18d/numcodecs-0.16.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44869ef564a50aa545215c6a0d42ba5bbc34e9715523fb2336ada3d1fb2b331d", size = 8846228, upload-time = "2025-09-18T18:54:47.858Z" }, + { url = "https://files.pythonhosted.org/packages/71/60/f23733589f3e059bf8589508acd23ffeec230bdf179f138a54f5ab16e0a6/numcodecs-0.16.3-cp312-cp312-win_amd64.whl", hash = "sha256:9aae6996172ba10c5f5111b2998709071b5aeba6b58b1ee0b26b61ed6aa7f2f4", size = 806260, upload-time = "2025-09-18T18:54:49.41Z" }, + { url = "https://files.pythonhosted.org/packages/3c/d5/d3536d06ac1e5fb848a3186958204082b68b106364c9a3669652dd786731/numcodecs-0.16.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:947406b01c20f2ce7ce2e631e7f21b782e8a9d4b57b374a41c9e7b1341a8f3a2", size = 1677129, upload-time = "2025-09-18T18:54:50.5Z" }, + { url = "https://files.pythonhosted.org/packages/e1/fd/b0513a3428dc2b38ec85eea771703ae69c49f09b9650d6c44c9105c80073/numcodecs-0.16.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7cf50e351398a34b45817974c411527629e88937b7683695e276afd65da6ed6f", size = 1159058, upload-time = "2025-09-18T18:54:51.675Z" }, + { url = "https://files.pythonhosted.org/packages/98/05/b7c127283cfb154a97abb284363825401b69302d71a28608af66f73257cc/numcodecs-0.16.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7938502fcc060ed9543814f38ca67048b33d7bd2667756e36e6b1060455b17e", size = 8260987, upload-time = "2025-09-18T18:54:52.883Z" }, + { url = "https://files.pythonhosted.org/packages/ff/46/320d960aff884bc63abaaf846ffa3de4803e83e8070b6f84c5688464839c/numcodecs-0.16.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:010d628c95be1214536fb22c0df4ced58da954b404b1fcb25ddebf64e4a3f7f3", size = 8805295, upload-time = "2025-09-18T18:54:54.698Z" }, + { url = "https://files.pythonhosted.org/packages/31/ae/acc2e0f1f49ba32afa2174578f170673139248ef86f77e334f2619133867/numcodecs-0.16.3-cp313-cp313-win_amd64.whl", hash = "sha256:e83115e3c32de798c7b7164503e06aae9f9746c1cef564d029616eb44bd6cd90", size = 803204, upload-time = "2025-09-18T18:54:56.192Z" }, +] + +[package.optional-dependencies] +crc32c = [ + { name = "crc32c", marker = "python_full_version >= '3.11'" }, +] + [[package]] name = "numpy" version = "1.26.4" @@ -3006,21 +3312,21 @@ wheels = [ [[package]] name = "nvidia-cudnn-frontend" -version = "1.16.0" +version = "1.15.0" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/fa/cf/3cd3cc682df5488288c6043fc0977090497ff015a082ab160076fecb080a/nvidia_cudnn_frontend-1.16.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:83ecbe6d1145dc208a9ae82aa0b45b2c8f74ed8a43d3a102a13eef2117e2fedd", size = 1835542, upload-time = "2025-11-07T01:28:20.133Z" }, - { url = "https://files.pythonhosted.org/packages/92/45/87f3f2d94a928be21459949b03b0b8bcea13531d30094ad84a8ae4fca761/nvidia_cudnn_frontend-1.16.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:77cb06b91877c8489363867434ba1d9936f3e10bf7ed98d82e98f5f578611920", size = 1950339, upload-time = "2025-11-07T01:31:41.69Z" }, - { url = "https://files.pythonhosted.org/packages/be/f5/1662f18084ef4441bfb3a01383cbf77194905b53474dcb51c0d0f373c74b/nvidia_cudnn_frontend-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:ee3f3886f107919dad48cbc905fa6ae9207c8d7d5a24165e55625ea96f0fe40f", size = 1367883, upload-time = "2025-11-07T01:25:17.791Z" }, - { url = "https://files.pythonhosted.org/packages/10/b7/d0a3a337f5e83f26ff79a7fd63a859181ff2911f1d905d6fbab5fc80170d/nvidia_cudnn_frontend-1.16.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c360d5840d6eb597aade9e9c8780e24aec283b8e6bc97d52881c821a35c92aa9", size = 1837573, upload-time = "2025-11-07T01:29:05.507Z" }, - { url = "https://files.pythonhosted.org/packages/95/dc/465a14f2d235778405f2e84fce336d07ab045bf1c7df6404bdf8033e06a8/nvidia_cudnn_frontend-1.16.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5c4a8fc573d85a86e08b15d9bf37f729e2487298781867a492a59cde6ac295e2", size = 1952630, upload-time = "2025-11-07T01:32:00.242Z" }, - { url = "https://files.pythonhosted.org/packages/3b/89/f14435f616603a999975930c4456d6140127f6acb19a877c752beccad837/nvidia_cudnn_frontend-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:a257f10a932ffde9741f644efd3611acf77e2fd89d493d81bc6a8353c48f1ec2", size = 1368775, upload-time = "2025-11-07T01:25:42.252Z" }, - { url = "https://files.pythonhosted.org/packages/00/39/79b606e805abd67ab4fa72f752a5413a496159f10d94fbdb1d67bb5ae86c/nvidia_cudnn_frontend-1.16.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:dd6fdd71c0896ff2ca1809d914cbd17f2904d55863f8881f47946e1d634c7a88", size = 1839271, upload-time = "2025-11-07T01:29:53.06Z" }, - { url = "https://files.pythonhosted.org/packages/09/21/a0e0d50ba8d7b639fe635500fee0d9c0319561b1ae72176d7024ec04b439/nvidia_cudnn_frontend-1.16.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:16efb069d4bda4d3b99134f59f376cfd4d09558298bd96af778fdc7f2851e696", size = 1954062, upload-time = "2025-11-07T01:32:18.556Z" }, - { url = "https://files.pythonhosted.org/packages/ce/d6/30ae67bb9c010e9459d1211c56d73373eb4e3dd9f57f4c3c1fe0966efcb1/nvidia_cudnn_frontend-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:7b7860db03767c158accbe0b4e9c9553506513cc970ff08ed28c7761681ac466", size = 1368435, upload-time = "2025-11-07T01:26:28.022Z" }, - { url = "https://files.pythonhosted.org/packages/32/2c/b4376afef0a6342c56e82e3465c1f8f5c719f588293a50dd04019a22ae6e/nvidia_cudnn_frontend-1.16.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b6bcb3a2fbff80538958e21e2227520f082a961164865aaeedaac527f61084f9", size = 1839805, upload-time = "2025-11-07T01:30:31.056Z" }, - { url = "https://files.pythonhosted.org/packages/71/13/836b90354036154ab82db3861210e5736983fe1fc44bb39c146ad93b333b/nvidia_cudnn_frontend-1.16.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cbdad88b2bec5dde837f8fa7632022334cddb4756f923b5421c06a712cb59d31", size = 1953953, upload-time = "2025-11-07T01:33:03.781Z" }, - { url = "https://files.pythonhosted.org/packages/e5/30/3025f34f2c86ceef85134dc1f323f8cf2a26d3ffddc5ada48528c80bfae1/nvidia_cudnn_frontend-1.16.0-cp313-cp313-win_amd64.whl", hash = "sha256:138de2bc4697fabb2eb2f0f601a7e31f8fe97874908e26e33d737276f335473c", size = 1368359, upload-time = "2025-11-07T01:26:51.561Z" }, + { url = "https://files.pythonhosted.org/packages/d7/3f/d7bf811f4a76f4e9aa4ef390b11217562bba06f0c77f9e14c765681ccba6/nvidia_cudnn_frontend-1.15.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8b4e8c77e848502ad79f8aef6b6c699613a6b5139572aba1f55f626d7bf31b44", size = 1743761, upload-time = "2025-10-10T18:54:15.142Z" }, + { url = "https://files.pythonhosted.org/packages/3e/b8/286f7fb3f1068acf0014a851f86863ed9fec69aff79a10dcc0dfbffe0523/nvidia_cudnn_frontend-1.15.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:64a926602e52268e09127cf7a227e6b3d7c6e9e2a97fb57eebe88132aec8d9c8", size = 1859188, upload-time = "2025-10-10T18:56:59.386Z" }, + { url = "https://files.pythonhosted.org/packages/e8/f7/6e55b0122ca5924f0cdbd717392d35a92f43c6ed4b6d64c7d378ee01f301/nvidia_cudnn_frontend-1.15.0-cp310-cp310-win_amd64.whl", hash = "sha256:7a21ec041fa4009cc8b76b2d26ad73010ab5e005804e4df8b1c1abdba5e23cd5", size = 1296575, upload-time = "2025-10-10T18:45:45.04Z" }, + { url = "https://files.pythonhosted.org/packages/80/b8/d0f1ab5c309c513fe1e4235e860872fc7ee60876e69b30eb0a20fe8c35d8/nvidia_cudnn_frontend-1.15.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:570c2e028ff9b8293f9625b31484084a638de6fb685802194b8dfe16db5a44b4", size = 1747611, upload-time = "2025-10-10T18:54:51.427Z" }, + { url = "https://files.pythonhosted.org/packages/0e/52/5b77edb810063c10040ac34e1517ee62690c4f030f0cf68298a4608552bc/nvidia_cudnn_frontend-1.15.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:21ac16e4add264839a8db570d5378bb6583bf9539649d80bc8802ded00098a20", size = 1860815, upload-time = "2025-10-10T18:57:17.393Z" }, + { url = "https://files.pythonhosted.org/packages/de/2b/1fa26eee0479ae0b40582679c1bd08eb78a0b49bb5893ec3edce2a606e9f/nvidia_cudnn_frontend-1.15.0-cp311-cp311-win_amd64.whl", hash = "sha256:c1be7480e3200606c2f2f49263cc13adc72c2a38e38f31f18e9b3727d99618b2", size = 1297355, upload-time = "2025-10-10T18:46:10.171Z" }, + { url = "https://files.pythonhosted.org/packages/cb/9c/0c2340454f8c9cc4143fdbccef8218dad1e49042d62b26c1781915617c40/nvidia_cudnn_frontend-1.15.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6c2cfe2a0f94bff71614bd3add0ae077f513f7d14909c223afca01ac8056ff84", size = 1749017, upload-time = "2025-10-10T18:55:29.412Z" }, + { url = "https://files.pythonhosted.org/packages/19/b4/c35104b8fc32986111b611b3080bbcf35fd3fd6794d4aec4e068136ea628/nvidia_cudnn_frontend-1.15.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:aab1098ad4c79935b6e8dc251e9145129a04a8dc6ff75eb30871aacdd1487946", size = 1865629, upload-time = "2025-10-10T18:57:35.941Z" }, + { url = "https://files.pythonhosted.org/packages/a6/d7/6534807d209a27817d101cf86745e335896e96379bf2d207195cfe9f24ab/nvidia_cudnn_frontend-1.15.0-cp312-cp312-win_amd64.whl", hash = "sha256:13e58a5b001154899f0744165716a7ad24cd7567d759a8229a9ada730a1046b2", size = 1297335, upload-time = "2025-10-10T18:46:35.069Z" }, + { url = "https://files.pythonhosted.org/packages/9b/75/5a75942aae2bb3a0c1cc44378e9f80c1213a6d7b952c8df19b8845836a34/nvidia_cudnn_frontend-1.15.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fda240405eba3c04866e30b3c1beae26ea7775af4fa4d555cd598695067d32ac", size = 1750048, upload-time = "2025-10-10T18:56:06.057Z" }, + { url = "https://files.pythonhosted.org/packages/79/70/2ed9802725cb305189dac906a67c799eeb47e4f395b97df0249a750c56fe/nvidia_cudnn_frontend-1.15.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:14941c05a6484d3f05f3089cd290c9b1e6614298f37e07cd01789933932c9f28", size = 1867440, upload-time = "2025-10-10T18:57:53.964Z" }, + { url = "https://files.pythonhosted.org/packages/d1/04/519fd6e3ea12fe7fe98c497c4d51f6c5c87763d02e90ea3102cef32a6ef1/nvidia_cudnn_frontend-1.15.0-cp313-cp313-win_amd64.whl", hash = "sha256:7c8c6f12534b73b0cd55956c5e9419b7840a01e4c260837606112450ce1ca0d9", size = 1297324, upload-time = "2025-10-10T18:46:53.104Z" }, ] [[package]] @@ -3115,10 +3421,10 @@ wheels = [ [[package]] name = "nvidia-mathdx" -version = "25.6.0" +version = "25.1.1" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/20/1a/a418b8c1adc58abd87fd69414c19883af5c1b10514e3dbfcc27cde831b13/nvidia_mathdx-25.6.0-py3-none-any.whl", hash = "sha256:22e6ad5d0d005f836be5cbd14e836cf2e9ea42c82deb602707246ce8198eaa96", size = 23013087, upload-time = "2025-11-13T18:25:11.228Z" }, + { url = "https://files.pythonhosted.org/packages/59/00/f1a73ac224d466b31b6eb09794656112e896185678720b05668777e87db3/nvidia_mathdx-25.1.1-py3-none-any.whl", hash = "sha256:4fb948fe4842d24e679f3d0c140c8a0e8e24c3c7ae5eb6e08584253ad94a198b", size = 39894902, upload-time = "2025-05-06T22:58:32.29Z" }, ] [[package]] @@ -3232,7 +3538,7 @@ wheels = [ [[package]] name = "nvidia-sphinx-theme" -version = "0.0.9.post1" +version = "0.0.8" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "pydata-sphinx-theme" }, @@ -3240,7 +3546,7 @@ dependencies = [ { name = "sphinx", version = "8.2.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/8c/79/017fab2f7167a9a9795665f894d04f77aafceca80821b51589bb4b23ff5c/nvidia_sphinx_theme-0.0.9.post1-py3-none-any.whl", hash = "sha256:21ca60206dff2f380d7783d64bbaf71a5b9cacae53c7d0686f089c16b5a3d45a", size = 143816, upload-time = "2025-11-09T23:16:55.719Z" }, + { url = "https://files.pythonhosted.org/packages/dd/74/996dbc314da8ed670cd5e040d0b4b5be79ff1fc3db3fe25e63134deebe9a/nvidia_sphinx_theme-0.0.8-py3-none-any.whl", hash = "sha256:18f117aa154a3a156251a75647279c541464f3e75f7df2ae283e720cc7d0bc2c", size = 140678, upload-time = "2025-03-24T21:56:25.621Z" }, ] [[package]] @@ -3281,8 +3587,8 @@ name = "onnx" version = "1.19.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "numpy" }, { name = "protobuf" }, { name = "typing-extensions" }, @@ -3324,10 +3630,14 @@ name = "onnx-ir" version = "0.1.8" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", ] dependencies = [ { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.13'" }, @@ -3368,10 +3678,14 @@ name = "onnxscript" version = "0.5.0" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", ] dependencies = [ { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.13'" }, @@ -3417,7 +3731,7 @@ version = "1.33.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "deprecated" }, - { name = "importlib-metadata" }, + { name = "importlib-metadata", version = "8.6.1", source = { registry = "https://pypi.org/simple" } }, ] sdist = { url = "https://files.pythonhosted.org/packages/9a/8d/1f5a45fbcb9a7d87809d460f09dc3399e3fbd31d7f3e14888345e9d29951/opentelemetry_api-1.33.1.tar.gz", hash = "sha256:1c6055fc0a2d3f23a50c7e17e16ef75ad489345fd3df1f8b8af7c0bbf8a109e8", size = 65002, upload-time = "2025-05-16T18:52:41.146Z" } wheels = [ @@ -3805,17 +4119,17 @@ wheels = [ [[package]] name = "protobuf" -version = "6.33.1" +version = "6.33.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/0a/03/a1440979a3f74f16cab3b75b0da1a1a7f922d56a8ddea96092391998edc0/protobuf-6.33.1.tar.gz", hash = "sha256:97f65757e8d09870de6fd973aeddb92f85435607235d20b2dfed93405d00c85b", size = 443432, upload-time = "2025-11-13T16:44:18.895Z" } +sdist = { url = "https://files.pythonhosted.org/packages/19/ff/64a6c8f420818bb873713988ca5492cba3a7946be57e027ac63495157d97/protobuf-6.33.0.tar.gz", hash = "sha256:140303d5c8d2037730c548f8c7b93b20bb1dc301be280c378b82b8894589c954", size = 443463, upload-time = "2025-10-15T20:39:52.159Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/06/f1/446a9bbd2c60772ca36556bac8bfde40eceb28d9cc7838755bc41e001d8f/protobuf-6.33.1-cp310-abi3-win32.whl", hash = "sha256:f8d3fdbc966aaab1d05046d0240dd94d40f2a8c62856d41eaa141ff64a79de6b", size = 425593, upload-time = "2025-11-13T16:44:06.275Z" }, - { url = "https://files.pythonhosted.org/packages/a6/79/8780a378c650e3df849b73de8b13cf5412f521ca2ff9b78a45c247029440/protobuf-6.33.1-cp310-abi3-win_amd64.whl", hash = "sha256:923aa6d27a92bf44394f6abf7ea0500f38769d4b07f4be41cb52bd8b1123b9ed", size = 436883, upload-time = "2025-11-13T16:44:09.222Z" }, - { url = "https://files.pythonhosted.org/packages/cd/93/26213ff72b103ae55bb0d73e7fb91ea570ef407c3ab4fd2f1f27cac16044/protobuf-6.33.1-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:fe34575f2bdde76ac429ec7b570235bf0c788883e70aee90068e9981806f2490", size = 427522, upload-time = "2025-11-13T16:44:10.475Z" }, - { url = "https://files.pythonhosted.org/packages/c2/32/df4a35247923393aa6b887c3b3244a8c941c32a25681775f96e2b418f90e/protobuf-6.33.1-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:f8adba2e44cde2d7618996b3fc02341f03f5bc3f2748be72dc7b063319276178", size = 324445, upload-time = "2025-11-13T16:44:11.869Z" }, - { url = "https://files.pythonhosted.org/packages/8e/d0/d796e419e2ec93d2f3fa44888861c3f88f722cde02b7c3488fcc6a166820/protobuf-6.33.1-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:0f4cf01222c0d959c2b399142deb526de420be8236f22c71356e2a544e153c53", size = 339161, upload-time = "2025-11-13T16:44:12.778Z" }, - { url = "https://files.pythonhosted.org/packages/1d/2a/3c5f05a4af06649547027d288747f68525755de692a26a7720dced3652c0/protobuf-6.33.1-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:8fd7d5e0eb08cd5b87fd3df49bc193f5cfd778701f47e11d127d0afc6c39f1d1", size = 323171, upload-time = "2025-11-13T16:44:14.035Z" }, - { url = "https://files.pythonhosted.org/packages/08/b4/46310463b4f6ceef310f8348786f3cff181cea671578e3d9743ba61a459e/protobuf-6.33.1-py3-none-any.whl", hash = "sha256:d595a9fd694fdeb061a62fbe10eb039cc1e444df81ec9bb70c7fc59ebcb1eafa", size = 170477, upload-time = "2025-11-13T16:44:17.633Z" }, + { url = "https://files.pythonhosted.org/packages/7e/ee/52b3fa8feb6db4a833dfea4943e175ce645144532e8a90f72571ad85df4e/protobuf-6.33.0-cp310-abi3-win32.whl", hash = "sha256:d6101ded078042a8f17959eccd9236fb7a9ca20d3b0098bbcb91533a5680d035", size = 425593, upload-time = "2025-10-15T20:39:40.29Z" }, + { url = "https://files.pythonhosted.org/packages/7b/c6/7a465f1825872c55e0341ff4a80198743f73b69ce5d43ab18043699d1d81/protobuf-6.33.0-cp310-abi3-win_amd64.whl", hash = "sha256:9a031d10f703f03768f2743a1c403af050b6ae1f3480e9c140f39c45f81b13ee", size = 436882, upload-time = "2025-10-15T20:39:42.841Z" }, + { url = "https://files.pythonhosted.org/packages/e1/a9/b6eee662a6951b9c3640e8e452ab3e09f117d99fc10baa32d1581a0d4099/protobuf-6.33.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:905b07a65f1a4b72412314082c7dbfae91a9e8b68a0cc1577515f8df58ecf455", size = 427521, upload-time = "2025-10-15T20:39:43.803Z" }, + { url = "https://files.pythonhosted.org/packages/10/35/16d31e0f92c6d2f0e77c2a3ba93185130ea13053dd16200a57434c882f2b/protobuf-6.33.0-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:e0697ece353e6239b90ee43a9231318302ad8353c70e6e45499fa52396debf90", size = 324445, upload-time = "2025-10-15T20:39:44.932Z" }, + { url = "https://files.pythonhosted.org/packages/e6/eb/2a981a13e35cda8b75b5585aaffae2eb904f8f351bdd3870769692acbd8a/protobuf-6.33.0-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:e0a1715e4f27355afd9570f3ea369735afc853a6c3951a6afe1f80d8569ad298", size = 339159, upload-time = "2025-10-15T20:39:46.186Z" }, + { url = "https://files.pythonhosted.org/packages/21/51/0b1cbad62074439b867b4e04cc09b93f6699d78fd191bed2bbb44562e077/protobuf-6.33.0-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:35be49fd3f4fefa4e6e2aacc35e8b837d6703c37a2168a55ac21e9b1bc7559ef", size = 323172, upload-time = "2025-10-15T20:39:47.465Z" }, + { url = "https://files.pythonhosted.org/packages/07/d1/0a28c21707807c6aacd5dc9c3704b2aa1effbf37adebd8caeaf68b17a636/protobuf-6.33.0-py3-none-any.whl", hash = "sha256:25c9e1963c6734448ea2d308cfa610e692b801304ba0908d7bfa564ac5132995", size = 170477, upload-time = "2025-10-15T20:39:51.311Z" }, ] [[package]] @@ -4158,39 +4472,39 @@ wheels = [ [[package]] name = "pynacl" -version = "1.6.1" +version = "1.6.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "cffi", marker = "platform_python_implementation != 'PyPy' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/b2/46/aeca065d227e2265125aea590c9c47fbf5786128c9400ee0eb7c88931f06/pynacl-1.6.1.tar.gz", hash = "sha256:8d361dac0309f2b6ad33b349a56cd163c98430d409fa503b10b70b3ad66eaa1d", size = 3506616, upload-time = "2025-11-10T16:02:13.195Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/75/d6/4b2dca33ed512de8f54e5c6074aa06eaeb225bfbcd9b16f33a414389d6bd/pynacl-1.6.1-cp314-cp314t-macosx_10_10_universal2.whl", hash = "sha256:7d7c09749450c385301a3c20dca967a525152ae4608c0a096fe8464bfc3df93d", size = 389109, upload-time = "2025-11-10T16:01:28.79Z" }, - { url = "https://files.pythonhosted.org/packages/3c/30/e8dbb8ff4fa2559bbbb2187ba0d0d7faf728d17cb8396ecf4a898b22d3da/pynacl-1.6.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fc734c1696ffd49b40f7c1779c89ba908157c57345cf626be2e0719488a076d3", size = 808254, upload-time = "2025-11-10T16:01:37.839Z" }, - { url = "https://files.pythonhosted.org/packages/44/f9/f5449c652f31da00249638dbab065ad4969c635119094b79b17c3a4da2ab/pynacl-1.6.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3cd787ec1f5c155dc8ecf39b1333cfef41415dc96d392f1ce288b4fe970df489", size = 1407365, upload-time = "2025-11-10T16:01:40.454Z" }, - { url = "https://files.pythonhosted.org/packages/eb/2f/9aa5605f473b712065c0a193ebf4ad4725d7a245533f0cd7e5dcdbc78f35/pynacl-1.6.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b35d93ab2df03ecb3aa506be0d3c73609a51449ae0855c2e89c7ed44abde40b", size = 843842, upload-time = "2025-11-10T16:01:30.524Z" }, - { url = "https://files.pythonhosted.org/packages/32/8d/748f0f6956e207453da8f5f21a70885fbbb2e060d5c9d78e0a4a06781451/pynacl-1.6.1-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:dece79aecbb8f4640a1adbb81e4aa3bfb0e98e99834884a80eb3f33c7c30e708", size = 1445559, upload-time = "2025-11-10T16:01:33.663Z" }, - { url = "https://files.pythonhosted.org/packages/78/d0/2387f0dcb0e9816f38373999e48db4728ed724d31accdd4e737473319d35/pynacl-1.6.1-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:c2228054f04bf32d558fb89bb99f163a8197d5a9bf4efa13069a7fa8d4b93fc3", size = 825791, upload-time = "2025-11-10T16:01:34.823Z" }, - { url = "https://files.pythonhosted.org/packages/18/3d/ef6fb7eb072aaf15f280bc66f26ab97e7fc9efa50fb1927683013ef47473/pynacl-1.6.1-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:2b12f1b97346f177affcdfdc78875ff42637cb40dcf79484a97dae3448083a78", size = 1410843, upload-time = "2025-11-10T16:01:36.401Z" }, - { url = "https://files.pythonhosted.org/packages/e3/fb/23824a017526850ee7d8a1cc4cd1e3e5082800522c10832edbbca8619537/pynacl-1.6.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e735c3a1bdfde3834503baf1a6d74d4a143920281cb724ba29fb84c9f49b9c48", size = 801140, upload-time = "2025-11-10T16:01:42.013Z" }, - { url = "https://files.pythonhosted.org/packages/5d/d1/ebc6b182cb98603a35635b727d62f094bc201bf610f97a3bb6357fe688d2/pynacl-1.6.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:3384a454adf5d716a9fadcb5eb2e3e72cd49302d1374a60edc531c9957a9b014", size = 1371966, upload-time = "2025-11-10T16:01:43.297Z" }, - { url = "https://files.pythonhosted.org/packages/64/f4/c9d7b6f02924b1f31db546c7bd2a83a2421c6b4a8e6a2e53425c9f2802e0/pynacl-1.6.1-cp314-cp314t-win32.whl", hash = "sha256:d8615ee34d01c8e0ab3f302dcdd7b32e2bcf698ba5f4809e7cc407c8cdea7717", size = 230482, upload-time = "2025-11-10T16:01:47.688Z" }, - { url = "https://files.pythonhosted.org/packages/c4/2c/942477957fba22da7bf99131850e5ebdff66623418ab48964e78a7a8293e/pynacl-1.6.1-cp314-cp314t-win_amd64.whl", hash = "sha256:5f5b35c1a266f8a9ad22525049280a600b19edd1f785bccd01ae838437dcf935", size = 243232, upload-time = "2025-11-10T16:01:45.208Z" }, - { url = "https://files.pythonhosted.org/packages/7a/0c/bdbc0d04a53b96a765ab03aa2cf9a76ad8653d70bf1665459b9a0dedaa1c/pynacl-1.6.1-cp314-cp314t-win_arm64.whl", hash = "sha256:d984c91fe3494793b2a1fb1e91429539c6c28e9ec8209d26d25041ec599ccf63", size = 187907, upload-time = "2025-11-10T16:01:46.328Z" }, - { url = "https://files.pythonhosted.org/packages/49/41/3cfb3b4f3519f6ff62bf71bf1722547644bcfb1b05b8fdbdc300249ba113/pynacl-1.6.1-cp38-abi3-macosx_10_10_universal2.whl", hash = "sha256:a6f9fd6d6639b1e81115c7f8ff16b8dedba1e8098d2756275d63d208b0e32021", size = 387591, upload-time = "2025-11-10T16:01:49.1Z" }, - { url = "https://files.pythonhosted.org/packages/18/21/b8a6563637799f617a3960f659513eccb3fcc655d5fc2be6e9dc6416826f/pynacl-1.6.1-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e49a3f3d0da9f79c1bec2aa013261ab9fa651c7da045d376bd306cf7c1792993", size = 798866, upload-time = "2025-11-10T16:01:55.688Z" }, - { url = "https://files.pythonhosted.org/packages/e8/6c/dc38033bc3ea461e05ae8f15a81e0e67ab9a01861d352ae971c99de23e7c/pynacl-1.6.1-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7713f8977b5d25f54a811ec9efa2738ac592e846dd6e8a4d3f7578346a841078", size = 1398001, upload-time = "2025-11-10T16:01:57.101Z" }, - { url = "https://files.pythonhosted.org/packages/9f/05/3ec0796a9917100a62c5073b20c4bce7bf0fea49e99b7906d1699cc7b61b/pynacl-1.6.1-cp38-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5a3becafc1ee2e5ea7f9abc642f56b82dcf5be69b961e782a96ea52b55d8a9fc", size = 834024, upload-time = "2025-11-10T16:01:50.228Z" }, - { url = "https://files.pythonhosted.org/packages/f0/b7/ae9982be0f344f58d9c64a1c25d1f0125c79201634efe3c87305ac7cb3e3/pynacl-1.6.1-cp38-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4ce50d19f1566c391fedc8dc2f2f5be265ae214112ebe55315e41d1f36a7f0a9", size = 1436766, upload-time = "2025-11-10T16:01:51.886Z" }, - { url = "https://files.pythonhosted.org/packages/b4/51/b2ccbf89cf3025a02e044dd68a365cad593ebf70f532299f2c047d2b7714/pynacl-1.6.1-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:543f869140f67d42b9b8d47f922552d7a967e6c116aad028c9bfc5f3f3b3a7b7", size = 817275, upload-time = "2025-11-10T16:01:53.351Z" }, - { url = "https://files.pythonhosted.org/packages/a8/6c/dd9ee8214edf63ac563b08a9b30f98d116942b621d39a751ac3256694536/pynacl-1.6.1-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:a2bb472458c7ca959aeeff8401b8efef329b0fc44a89d3775cffe8fad3398ad8", size = 1401891, upload-time = "2025-11-10T16:01:54.587Z" }, - { url = "https://files.pythonhosted.org/packages/0f/c1/97d3e1c83772d78ee1db3053fd674bc6c524afbace2bfe8d419fd55d7ed1/pynacl-1.6.1-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:3206fa98737fdc66d59b8782cecc3d37d30aeec4593d1c8c145825a345bba0f0", size = 772291, upload-time = "2025-11-10T16:01:58.111Z" }, - { url = "https://files.pythonhosted.org/packages/4d/ca/691ff2fe12f3bb3e43e8e8df4b806f6384593d427f635104d337b8e00291/pynacl-1.6.1-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:53543b4f3d8acb344f75fd4d49f75e6572fce139f4bfb4815a9282296ff9f4c0", size = 1370839, upload-time = "2025-11-10T16:01:59.252Z" }, - { url = "https://files.pythonhosted.org/packages/30/27/06fe5389d30391fce006442246062cc35773c84fbcad0209fbbf5e173734/pynacl-1.6.1-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:319de653ef84c4f04e045eb250e6101d23132372b0a61a7acf91bac0fda8e58c", size = 791371, upload-time = "2025-11-10T16:02:01.075Z" }, - { url = "https://files.pythonhosted.org/packages/2c/7a/e2bde8c9d39074a5aa046c7d7953401608d1f16f71e237f4bef3fb9d7e49/pynacl-1.6.1-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:262a8de6bba4aee8a66f5edf62c214b06647461c9b6b641f8cd0cb1e3b3196fe", size = 1363031, upload-time = "2025-11-10T16:02:02.656Z" }, - { url = "https://files.pythonhosted.org/packages/dd/b6/63fd77264dae1087770a1bb414bc604470f58fbc21d83822fc9c76248076/pynacl-1.6.1-cp38-abi3-win32.whl", hash = "sha256:9fd1a4eb03caf8a2fe27b515a998d26923adb9ddb68db78e35ca2875a3830dde", size = 226585, upload-time = "2025-11-10T16:02:07.116Z" }, - { url = "https://files.pythonhosted.org/packages/12/c8/b419180f3fdb72ab4d45e1d88580761c267c7ca6eda9a20dcbcba254efe6/pynacl-1.6.1-cp38-abi3-win_amd64.whl", hash = "sha256:a569a4069a7855f963940040f35e87d8bc084cb2d6347428d5ad20550a0a1a21", size = 238923, upload-time = "2025-11-10T16:02:04.401Z" }, - { url = "https://files.pythonhosted.org/packages/35/76/c34426d532e4dce7ff36e4d92cb20f4cbbd94b619964b93d24e8f5b5510f/pynacl-1.6.1-cp38-abi3-win_arm64.whl", hash = "sha256:5953e8b8cfadb10889a6e7bd0f53041a745d1b3d30111386a1bb37af171e6daf", size = 183970, upload-time = "2025-11-10T16:02:05.786Z" }, +sdist = { url = "https://files.pythonhosted.org/packages/06/c6/a3124dee667a423f2c637cfd262a54d67d8ccf3e160f3c50f622a85b7723/pynacl-1.6.0.tar.gz", hash = "sha256:cb36deafe6e2bce3b286e5d1f3e1c246e0ccdb8808ddb4550bb2792f2df298f2", size = 3505641, upload-time = "2025-09-10T23:39:22.308Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/70/24/1b639176401255605ba7c2b93a7b1eb1e379e0710eca62613633eb204201/pynacl-1.6.0-cp314-cp314t-macosx_10_10_universal2.whl", hash = "sha256:f46386c24a65383a9081d68e9c2de909b1834ec74ff3013271f1bca9c2d233eb", size = 384141, upload-time = "2025-09-10T23:38:28.675Z" }, + { url = "https://files.pythonhosted.org/packages/5e/7b/874efdf57d6bf172db0df111b479a553c3d9e8bb4f1f69eb3ffff772d6e8/pynacl-1.6.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:dea103a1afcbc333bc0e992e64233d360d393d1e63d0bc88554f572365664348", size = 808132, upload-time = "2025-09-10T23:38:38.995Z" }, + { url = "https://files.pythonhosted.org/packages/f3/61/9b53f5913f3b75ac3d53170cdb897101b2b98afc76f4d9d3c8de5aa3ac05/pynacl-1.6.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:04f20784083014e265ad58c1b2dd562c3e35864b5394a14ab54f5d150ee9e53e", size = 1407253, upload-time = "2025-09-10T23:38:40.492Z" }, + { url = "https://files.pythonhosted.org/packages/7c/0a/b138916b22bbf03a1bdbafecec37d714e7489dd7bcaf80cd17852f8b67be/pynacl-1.6.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bbcc4452a1eb10cd5217318c822fde4be279c9de8567f78bad24c773c21254f8", size = 843719, upload-time = "2025-09-10T23:38:30.87Z" }, + { url = "https://files.pythonhosted.org/packages/01/3b/17c368197dfb2c817ce033f94605a47d0cc27901542109e640cef263f0af/pynacl-1.6.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:51fed9fe1bec9e7ff9af31cd0abba179d0e984a2960c77e8e5292c7e9b7f7b5d", size = 1445441, upload-time = "2025-09-10T23:38:33.078Z" }, + { url = "https://files.pythonhosted.org/packages/35/3c/f79b185365ab9be80cd3cd01dacf30bf5895f9b7b001e683b369e0bb6d3d/pynacl-1.6.0-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:10d755cf2a455d8c0f8c767a43d68f24d163b8fe93ccfaabfa7bafd26be58d73", size = 825691, upload-time = "2025-09-10T23:38:34.832Z" }, + { url = "https://files.pythonhosted.org/packages/f7/1f/8b37d25e95b8f2a434a19499a601d4d272b9839ab8c32f6b0fc1e40c383f/pynacl-1.6.0-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:536703b8f90e911294831a7fbcd0c062b837f3ccaa923d92a6254e11178aaf42", size = 1410726, upload-time = "2025-09-10T23:38:36.893Z" }, + { url = "https://files.pythonhosted.org/packages/bd/93/5a4a4cf9913014f83d615ad6a2df9187330f764f606246b3a744c0788c03/pynacl-1.6.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:6b08eab48c9669d515a344fb0ef27e2cbde847721e34bba94a343baa0f33f1f4", size = 801035, upload-time = "2025-09-10T23:38:42.109Z" }, + { url = "https://files.pythonhosted.org/packages/bf/60/40da6b0fe6a4d5fd88f608389eb1df06492ba2edca93fca0b3bebff9b948/pynacl-1.6.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5789f016e08e5606803161ba24de01b5a345d24590a80323379fc4408832d290", size = 1371854, upload-time = "2025-09-10T23:38:44.16Z" }, + { url = "https://files.pythonhosted.org/packages/44/b2/37ac1d65008f824cba6b5bf68d18b76d97d0f62d7a032367ea69d4a187c8/pynacl-1.6.0-cp314-cp314t-win32.whl", hash = "sha256:4853c154dc16ea12f8f3ee4b7e763331876316cc3a9f06aeedf39bcdca8f9995", size = 230345, upload-time = "2025-09-10T23:38:48.276Z" }, + { url = "https://files.pythonhosted.org/packages/f4/5a/9234b7b45af890d02ebee9aae41859b9b5f15fb4a5a56d88e3b4d1659834/pynacl-1.6.0-cp314-cp314t-win_amd64.whl", hash = "sha256:347dcddce0b4d83ed3f32fd00379c83c425abee5a9d2cd0a2c84871334eaff64", size = 243103, upload-time = "2025-09-10T23:38:45.503Z" }, + { url = "https://files.pythonhosted.org/packages/c9/2c/c1a0f19d720ab0af3bc4241af2bdf4d813c3ecdcb96392b5e1ddf2d8f24f/pynacl-1.6.0-cp314-cp314t-win_arm64.whl", hash = "sha256:2d6cd56ce4998cb66a6c112fda7b1fdce5266c9f05044fa72972613bef376d15", size = 187778, upload-time = "2025-09-10T23:38:46.731Z" }, + { url = "https://files.pythonhosted.org/packages/63/37/87c72df19857c5b3b47ace6f211a26eb862ada495cc96daa372d96048fca/pynacl-1.6.0-cp38-abi3-macosx_10_10_universal2.whl", hash = "sha256:f4b3824920e206b4f52abd7de621ea7a44fd3cb5c8daceb7c3612345dfc54f2e", size = 382610, upload-time = "2025-09-10T23:38:49.459Z" }, + { url = "https://files.pythonhosted.org/packages/0c/64/3ce958a5817fd3cc6df4ec14441c43fd9854405668d73babccf77f9597a3/pynacl-1.6.0-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:16dd347cdc8ae0b0f6187a2608c0af1c8b7ecbbe6b4a06bff8253c192f696990", size = 798744, upload-time = "2025-09-10T23:38:58.531Z" }, + { url = "https://files.pythonhosted.org/packages/e4/8a/3f0dd297a0a33fa3739c255feebd0206bb1df0b44c52fbe2caf8e8bc4425/pynacl-1.6.0-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:16c60daceee88d04f8d41d0a4004a7ed8d9a5126b997efd2933e08e93a3bd850", size = 1397879, upload-time = "2025-09-10T23:39:00.44Z" }, + { url = "https://files.pythonhosted.org/packages/41/94/028ff0434a69448f61348d50d2c147dda51aabdd4fbc93ec61343332174d/pynacl-1.6.0-cp38-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:25720bad35dfac34a2bcdd61d9e08d6bfc6041bebc7751d9c9f2446cf1e77d64", size = 833907, upload-time = "2025-09-10T23:38:50.936Z" }, + { url = "https://files.pythonhosted.org/packages/52/bc/a5cff7f8c30d5f4c26a07dfb0bcda1176ab8b2de86dda3106c00a02ad787/pynacl-1.6.0-cp38-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8bfaa0a28a1ab718bad6239979a5a57a8d1506d0caf2fba17e524dbb409441cf", size = 1436649, upload-time = "2025-09-10T23:38:52.783Z" }, + { url = "https://files.pythonhosted.org/packages/7a/20/c397be374fd5d84295046e398de4ba5f0722dc14450f65db76a43c121471/pynacl-1.6.0-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:ef214b90556bb46a485b7da8258e59204c244b1b5b576fb71848819b468c44a7", size = 817142, upload-time = "2025-09-10T23:38:54.4Z" }, + { url = "https://files.pythonhosted.org/packages/12/30/5efcef3406940cda75296c6d884090b8a9aad2dcc0c304daebb5ae99fb4a/pynacl-1.6.0-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:49c336dd80ea54780bcff6a03ee1a476be1612423010472e60af83452aa0f442", size = 1401794, upload-time = "2025-09-10T23:38:56.614Z" }, + { url = "https://files.pythonhosted.org/packages/be/e1/a8fe1248cc17ccb03b676d80fa90763760a6d1247da434844ea388d0816c/pynacl-1.6.0-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:f3482abf0f9815e7246d461fab597aa179b7524628a4bc36f86a7dc418d2608d", size = 772161, upload-time = "2025-09-10T23:39:01.93Z" }, + { url = "https://files.pythonhosted.org/packages/a3/76/8a62702fb657d6d9104ce13449db221a345665d05e6a3fdefb5a7cafd2ad/pynacl-1.6.0-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:140373378e34a1f6977e573033d1dd1de88d2a5d90ec6958c9485b2fd9f3eb90", size = 1370720, upload-time = "2025-09-10T23:39:03.531Z" }, + { url = "https://files.pythonhosted.org/packages/6d/38/9e9e9b777a1c4c8204053733e1a0269672c0bd40852908c9ad6b6eaba82c/pynacl-1.6.0-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:6b393bc5e5a0eb86bb85b533deb2d2c815666665f840a09e0aa3362bb6088736", size = 791252, upload-time = "2025-09-10T23:39:05.058Z" }, + { url = "https://files.pythonhosted.org/packages/63/ef/d972ce3d92ae05c9091363cf185e8646933f91c376e97b8be79ea6e96c22/pynacl-1.6.0-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:4a25cfede801f01e54179b8ff9514bd7b5944da560b7040939732d1804d25419", size = 1362910, upload-time = "2025-09-10T23:39:06.924Z" }, + { url = "https://files.pythonhosted.org/packages/35/2c/ee0b373a1861f66a7ca8bdb999331525615061320dd628527a50ba8e8a60/pynacl-1.6.0-cp38-abi3-win32.whl", hash = "sha256:dcdeb41c22ff3c66eef5e63049abf7639e0db4edee57ba70531fc1b6b133185d", size = 226461, upload-time = "2025-09-10T23:39:11.894Z" }, + { url = "https://files.pythonhosted.org/packages/75/f7/41b6c0b9dd9970173b6acc026bab7b4c187e4e5beef2756d419ad65482da/pynacl-1.6.0-cp38-abi3-win_amd64.whl", hash = "sha256:cf831615cc16ba324240de79d925eacae8265b7691412ac6b24221db157f6bd1", size = 238802, upload-time = "2025-09-10T23:39:08.966Z" }, + { url = "https://files.pythonhosted.org/packages/8e/0f/462326910c6172fa2c6ed07922b22ffc8e77432b3affffd9e18f444dbfbb/pynacl-1.6.0-cp38-abi3-win_arm64.whl", hash = "sha256:84709cea8f888e618c21ed9a0efdb1a59cc63141c403db8bf56c469b71ad56f2", size = 183846, upload-time = "2025-09-10T23:39:10.552Z" }, ] [[package]] @@ -4223,12 +4537,12 @@ name = "pytest" version = "8.3.5" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, - { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, + { name = "colorama", marker = "sys_platform == 'win32' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "exceptiongroup", marker = "python_full_version < '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "iniconfig" }, { name = "packaging" }, { name = "pluggy" }, - { name = "tomli", marker = "python_full_version < '3.11'" }, + { name = "tomli", marker = "python_full_version < '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ae/3c/c9d525a414d506893f0cd8a8d0de7706446213181570cdbd766691164e40/pytest-8.3.5.tar.gz", hash = "sha256:f4efe70cc14e511565ac476b57c279e12a855b11f48f212af1080ef2263d3845", size = 1450891, upload-time = "2025-03-02T12:54:54.503Z" } wheels = [ @@ -4237,16 +4551,16 @@ wheels = [ [[package]] name = "pytest-asyncio" -version = "1.3.0" +version = "1.2.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "backports-asyncio-runner", marker = "python_full_version < '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "pytest" }, { name = "typing-extensions", marker = "python_full_version < '3.13' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/90/2c/8af215c0f776415f3590cac4f9086ccefd6fd463befeae41cd4d3f193e5a/pytest_asyncio-1.3.0.tar.gz", hash = "sha256:d7f52f36d231b80ee124cd216ffb19369aa168fc10095013c6b014a34d3ee9e5", size = 50087, upload-time = "2025-11-10T16:07:47.256Z" } +sdist = { url = "https://files.pythonhosted.org/packages/42/86/9e3c5f48f7b7b638b216e4b9e645f54d199d7abbbab7a64a13b4e12ba10f/pytest_asyncio-1.2.0.tar.gz", hash = "sha256:c609a64a2a8768462d0c99811ddb8bd2583c33fd33cf7f21af1c142e824ffb57", size = 50119, upload-time = "2025-09-12T07:33:53.816Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl", hash = "sha256:611e26147c7f77640e6d0a92a38ed17c3e9848063698d5c93d5aa7aa11cebff5", size = 15075, upload-time = "2025-11-10T16:07:45.537Z" }, + { url = "https://files.pythonhosted.org/packages/04/93/2fa34714b7a4ae72f2f8dad66ba17dd9a2c793220719e736dda28b7aec27/pytest_asyncio-1.2.0-py3-none-any.whl", hash = "sha256:8e17ae5e46d8e7efe51ab6494dd2010f4ca8dae51652aa3c8d55acf50bfb2e99", size = 15095, upload-time = "2025-09-12T07:33:52.639Z" }, ] [[package]] @@ -4483,7 +4797,7 @@ source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "attrs" }, { name = "rpds-py" }, - { name = "typing-extensions", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/22/f5/df4e9027acead3ecc63e50fe1e36aca1523e1719559c499951bb4b53188f/referencing-0.37.0.tar.gz", hash = "sha256:44aefc3142c5b842538163acb373e24cce6632bd54bdb01b21ad5863489f50d8", size = 78036, upload-time = "2025-10-13T15:30:48.871Z" } wheels = [ @@ -4894,11 +5208,15 @@ name = "scipy" version = "1.16.3" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", "python_full_version == '3.12.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", "python_full_version == '3.12.*' and sys_platform != 'linux'", "python_full_version == '3.11.*' and sys_platform == 'linux'", "python_full_version == '3.11.*' and sys_platform != 'linux'", @@ -5036,15 +5354,15 @@ wheels = [ [[package]] name = "sentry-sdk" -version = "2.44.0" +version = "2.43.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "certifi" }, { name = "urllib3" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/62/26/ff7d93a14a0ec309021dca2fb7c62669d4f6f5654aa1baf60797a16681e0/sentry_sdk-2.44.0.tar.gz", hash = "sha256:5b1fe54dfafa332e900b07dd8f4dfe35753b64e78e7d9b1655a28fd3065e2493", size = 371464, upload-time = "2025-11-11T09:35:56.075Z" } +sdist = { url = "https://files.pythonhosted.org/packages/b3/18/09875b4323b03ca9025bae7e6539797b27e4fc032998a466b4b9c3d24653/sentry_sdk-2.43.0.tar.gz", hash = "sha256:52ed6e251c5d2c084224d73efee56b007ef5c2d408a4a071270e82131d336e20", size = 368953, upload-time = "2025-10-29T11:26:08.156Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/a8/56/c16bda4d53012c71fa1b588edde603c6b455bc8206bf6de7b83388fcce75/sentry_sdk-2.44.0-py2.py3-none-any.whl", hash = "sha256:9e36a0372b881e8f92fdbff4564764ce6cec4b7f25424d0a3a8d609c9e4651a7", size = 402352, upload-time = "2025-11-11T09:35:54.1Z" }, + { url = "https://files.pythonhosted.org/packages/69/31/8228fa962f7fd8814d634e4ebece8780e2cdcfbdf0cd2e14d4a6861a7cd5/sentry_sdk-2.43.0-py2.py3-none-any.whl", hash = "sha256:4aacafcf1756ef066d359ae35030881917160ba7f6fc3ae11e0e58b09edc2d5d", size = 400997, upload-time = "2025-10-29T11:26:05.77Z" }, ] [[package]] @@ -5076,11 +5394,11 @@ wheels = [ [[package]] name = "slack-sdk" -version = "3.38.0" +version = "3.37.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/69/90/8c830172b1847bd3084a2cf39aee9d522e2a55d1c3d4e2b066001e9765ee/slack_sdk-3.38.0.tar.gz", hash = "sha256:73f43ef535929c6034982434aba4d5fd04db3b40f4e0cd14c3abfd56419d181d", size = 240091, upload-time = "2025-11-13T16:05:20.905Z" } +sdist = { url = "https://files.pythonhosted.org/packages/8e/c2/0a174a155623d7dc3ed4d1360cdf755590acdc2c3fc9ce0d2340f468909f/slack_sdk-3.37.0.tar.gz", hash = "sha256:242d6cffbd9e843af807487ff04853189b812081aeaa22f90a8f159f20220ed9", size = 241612, upload-time = "2025-10-06T23:07:20.856Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/3d/fc/0563891d3d1f7c503b2daf0b5b9ae9e605ea112272661897c150fd3d69cb/slack_sdk-3.38.0-py2.py3-none-any.whl", hash = "sha256:6c5e908abd68e97373a88437ef2fa3ff7a4c356807bbc41fcd7d6cbbfa2034d6", size = 302796, upload-time = "2025-11-13T16:05:18.856Z" }, + { url = "https://files.pythonhosted.org/packages/07/fd/a502ee24d8c7d12a8f749878ae0949b8eeb50aeac22dc5a613d417a256d0/slack_sdk-3.37.0-py2.py3-none-any.whl", hash = "sha256:e108a0836eafda74d8a95e76c12c2bcb010e645d504d8497451e4c7ebb229c87", size = 302751, upload-time = "2025-10-06T23:07:19.542Z" }, ] [[package]] @@ -5184,14 +5502,44 @@ name = "sphinx" version = "8.2.3" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", - "python_full_version == '3.12.*' and sys_platform != 'linux'", - "python_full_version == '3.11.*' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", ] dependencies = [ { name = "alabaster", marker = "python_full_version >= '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, @@ -5243,14 +5591,44 @@ name = "sphinx-autobuild" version = "2025.8.25" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", - "python_full_version == '3.12.*' and sys_platform != 'linux'", - "python_full_version == '3.11.*' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", ] dependencies = [ { name = "colorama", marker = "python_full_version >= '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, @@ -5348,15 +5726,15 @@ wheels = [ [[package]] name = "starlette" -version = "0.50.0" +version = "0.49.3" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "anyio" }, { name = "typing-extensions", marker = "python_full_version < '3.13' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/ba/b8/73a0e6a6e079a9d9cfa64113d771e421640b6f679a52eeb9b32f72d871a1/starlette-0.50.0.tar.gz", hash = "sha256:a2a17b22203254bcbc2e1f926d2d55f3f9497f769416b3190768befe598fa3ca", size = 2646985, upload-time = "2025-11-01T15:25:27.516Z" } +sdist = { url = "https://files.pythonhosted.org/packages/de/1a/608df0b10b53b0beb96a37854ee05864d182ddd4b1156a22f1ad3860425a/starlette-0.49.3.tar.gz", hash = "sha256:1c14546f299b5901a1ea0e34410575bc33bbd741377a10484a54445588d00284", size = 2655031, upload-time = "2025-11-01T15:12:26.13Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/d9/52/1064f510b141bd54025f9b55105e26d1fa970b9be67ad766380a3c9b74b0/starlette-0.50.0-py3-none-any.whl", hash = "sha256:9e5391843ec9b6e472eed1365a78c8098cfceb7a74bfd4d6b1c0c0095efb3bca", size = 74033, upload-time = "2025-11-01T15:25:25.461Z" }, + { url = "https://files.pythonhosted.org/packages/a3/e0/021c772d6a662f43b63044ab481dc6ac7592447605b5b35a957785363122/starlette-0.49.3-py3-none-any.whl", hash = "sha256:b579b99715fdc2980cf88c8ec96d3bf1ce16f5a8051a7c2b84ef9b1cdecaea2f", size = 74340, upload-time = "2025-11-01T15:12:24.387Z" }, ] [[package]] @@ -5415,17 +5793,18 @@ name = "tensorstore" version = "0.1.74" source = { registry = "https://pypi.org/simple" } resolution-markers = [ - "python_full_version >= '3.14' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and sys_platform == 'linux'", - "python_full_version >= '3.14' and sys_platform != 'linux'", - "python_full_version == '3.13.*' and sys_platform != 'linux'", - "python_full_version < '3.11' and sys_platform == 'linux'", - "python_full_version < '3.11' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", ] dependencies = [ - { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (python_full_version >= '3.13' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'extra-13-megatron-core-dev') or (python_full_version < '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "numpy", marker = "python_full_version < '3.11' or python_full_version >= '3.13'" }, + { name = "ml-dtypes", version = "0.4.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.13'" }, + { name = "numpy", marker = "python_full_version >= '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/3c/b9/ea25aba62c688a87d7d7d9cc5926d602e2f9e84fa72586825486fb180b7e/tensorstore-0.1.74.tar.gz", hash = "sha256:a062875f27283d30ce4959c408c253ecb336fce8e3f9837c064e3d30cda79203", size = 6795605, upload-time = "2025-04-24T15:42:18.829Z" } wheels = [ @@ -5453,40 +5832,42 @@ wheels = [ [[package]] name = "tensorstore" -version = "0.1.79" +version = "0.1.78" source = { registry = "https://pypi.org/simple" } resolution-markers = [ "python_full_version == '3.12.*' and sys_platform == 'linux'", "python_full_version == '3.12.*' and sys_platform != 'linux'", "python_full_version == '3.11.*' and sys_platform == 'linux'", "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", ] dependencies = [ - { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' and python_full_version < '3.13'" }, - { name = "numpy", marker = "python_full_version >= '3.11' and python_full_version < '3.13'" }, + { name = "ml-dtypes", version = "0.5.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/26/2c/50ab489a0862ca88d2d766130a6fec45ccd5174f0e04081d8b7b07a8aedd/tensorstore-0.1.79.tar.gz", hash = "sha256:8dad44a8a7f2952a5d0030a8bd868b3cfdff048bd40ab53e7226f3d8b0881c5e", size = 7075782, upload-time = "2025-11-11T22:05:23.824Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/68/a9/1695d7ea197c4568c2f02f34b203eef702ec8080422331f00a65c6fb2a37/tensorstore-0.1.79-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:11a2c62694ea9c21770bc5a09938d3d15c4b9662b738ae6e1e513c26ed96251a", size = 16466511, upload-time = "2025-11-11T22:04:18.614Z" }, - { url = "https://files.pythonhosted.org/packages/db/0e/5ce8a615c7f9ad7cf8ed4ac6e182fe0ef46fd06fef89757e49ba84a6ba9e/tensorstore-0.1.79-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5e152d334bf34fbabdfe8e5bc35b87d1f9947065924ff83c29e659308b36e948", size = 14499810, upload-time = "2025-11-11T22:04:21.725Z" }, - { url = "https://files.pythonhosted.org/packages/c0/29/2cb9552138fe84ab29421489121350e4af0502eafff31ccd9017490be0d8/tensorstore-0.1.79-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c4230b8fd29795e88e441f749d881973eca8dadf33c5262b367839fb8891f79b", size = 18937510, upload-time = "2025-11-11T22:04:24.221Z" }, - { url = "https://files.pythonhosted.org/packages/42/70/d2a672a93faebdd176cd8541405cd5614b14d3d8dc812fbeaf2cf46d390a/tensorstore-0.1.79-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:83072ee0e551d6dca582e154b64c8b8066d276ec0759784e3149c28212a61f18", size = 20910324, upload-time = "2025-11-11T22:04:26.769Z" }, - { url = "https://files.pythonhosted.org/packages/91/d5/7958cbfb614c4ffa5070ae9575874d46937067c0d81a7739e67fb1d62de5/tensorstore-0.1.79-cp311-cp311-win_amd64.whl", hash = "sha256:6c98c6b74c00e00eba7969292144e471d5c45d67088f0dc08e3a4c60a15ee191", size = 13206191, upload-time = "2025-11-11T22:04:29.254Z" }, - { url = "https://files.pythonhosted.org/packages/f1/a2/a77be16b4a882ace36da0748305795f35306bdad568472f208bd89b96b9d/tensorstore-0.1.79-cp312-cp312-macosx_10_14_x86_64.whl", hash = "sha256:71aa9b45436d888c37b965f7b71195916d15438119b7dccb66a3b0776bfba367", size = 16485740, upload-time = "2025-11-11T22:04:33.478Z" }, - { url = "https://files.pythonhosted.org/packages/7a/e4/7fe268ec41aa70b71a1c56b1ec83346fbcbf12f4bfbefc79d14fb9c03408/tensorstore-0.1.79-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:108c0e867aa2c87d4982cc6325a2de0c4f5bd63c2bea18adb193a370c40594ce", size = 14508736, upload-time = "2025-11-11T22:04:38.613Z" }, - { url = "https://files.pythonhosted.org/packages/5a/f1/b1248dae02598ce534834413e841f915a32ab185c36ecd05e4c67bdc8d19/tensorstore-0.1.79-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:debd435042c00be68ba1fb3cf59325a7babb3f4a3cf4744c87dde346802cbbb4", size = 18947817, upload-time = "2025-11-11T22:04:40.768Z" }, - { url = "https://files.pythonhosted.org/packages/87/4a/60e234147570e21bbab4ac70ab79dd794a5ef9a4945d36c34c1914a73205/tensorstore-0.1.79-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:608f7178ec6e4e4a3c26545b0a44f44bf83438d04bf2d960cd0e7699eaa99ef6", size = 20929832, upload-time = "2025-11-11T22:04:43.613Z" }, - { url = "https://files.pythonhosted.org/packages/f8/48/0531868bce12a2f520002e810d4200ec6f01ba33a2f27b6bd7289fbc197b/tensorstore-0.1.79-cp312-cp312-win_amd64.whl", hash = "sha256:a071c6c255b7e412957a6aa563bc4250242c7894edad06ae6358e3d30b7d88ce", size = 13211970, upload-time = "2025-11-11T22:04:46.179Z" }, - { url = "https://files.pythonhosted.org/packages/fa/0b/54a44e55836d8e8f576343134c0e3db71c6c837d39a0ac44699aba5b01df/tensorstore-0.1.79-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:1e8e2d098829919caac6a62cf568902e34789069ceddb28497d6e36ebcb95c0b", size = 16485855, upload-time = "2025-11-11T22:04:48.734Z" }, - { url = "https://files.pythonhosted.org/packages/04/59/cadb9a45896d480882476df4759cda1659c70669aff87a4d5a4a07ded084/tensorstore-0.1.79-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:29cf4336153af136ac8ac528e2ed46df19367edae7e14e37bca1a8b7c4848ef2", size = 14508277, upload-time = "2025-11-11T22:04:50.775Z" }, - { url = "https://files.pythonhosted.org/packages/e6/cb/3647bdd03c7692882ebc10c19df9ede49f290c216b2906f785edbdb53ef1/tensorstore-0.1.79-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:94d8fc9df1721b0287046aca7209fd5040889cad4202e7b73a1fdb77cd9b71c6", size = 18949307, upload-time = "2025-11-11T22:04:53.145Z" }, - { url = "https://files.pythonhosted.org/packages/20/a0/f91ac492cf2ee9f7541aefaaed4ad1258e73e33f3cd3e06cdce5859431db/tensorstore-0.1.79-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9f2dc3342e4686af98f6e259dc9fb377f1bf657b649c247bf6647bbe4f98090", size = 20930427, upload-time = "2025-11-11T22:04:55.353Z" }, - { url = "https://files.pythonhosted.org/packages/69/a6/752fd11747eb9fead715b02d389da7fb180a56172b885de0b48b20237d1e/tensorstore-0.1.79-cp313-cp313-win_amd64.whl", hash = "sha256:0fd6165f3df49abc7c9de029b2b72d74bebd2ff2481a5ced003607eb61c56d3e", size = 13212196, upload-time = "2025-11-11T22:05:00.451Z" }, - { url = "https://files.pythonhosted.org/packages/46/57/1649019893accb3f195780fec55b8bf6793343faf140040bc73f1c28d6a5/tensorstore-0.1.79-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:6f8f5a940eab434a951c2dadcc7c0516c7bef6d8b7a7144054f7a0c56152b5f5", size = 16488849, upload-time = "2025-11-11T22:05:03.014Z" }, - { url = "https://files.pythonhosted.org/packages/bf/23/2668cb120e855a6a7a8a5eb0eba30e2e7020da932a4d3fa13c6ee3c41f9f/tensorstore-0.1.79-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:97756d2cba3c5ce21e15602c2af5a02521cc0ecda7f9fb6d18da2f3bd51827f4", size = 14511448, upload-time = "2025-11-11T22:05:05.58Z" }, - { url = "https://files.pythonhosted.org/packages/6a/0e/c38f079f3933cc284aab53d52976f6cb4f1ad43bb6a704ac27e0b710f176/tensorstore-0.1.79-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:847982652273fb7b2d694b789205747aaf3e50ae64738c5cb7b5eb03d86a9947", size = 18949282, upload-time = "2025-11-11T22:05:07.562Z" }, - { url = "https://files.pythonhosted.org/packages/6f/99/03479deea5bfd27a0d8a8c75d5f1d85417a7bbc9c6c7a90fb85b4a4e347a/tensorstore-0.1.79-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7af9422269c2bfcdecf9dd55309060665ab9c2d7f6c892377ed32c032400feea", size = 20931601, upload-time = "2025-11-11T22:05:10.098Z" }, - { url = "https://files.pythonhosted.org/packages/26/36/2617edf6c6d6fc73b3ff96d9d0b97332adf0d0c56fa2014a226bf4f7dfa6/tensorstore-0.1.79-cp314-cp314-win_amd64.whl", hash = "sha256:bbd8c1ab7d2e3c03ded3d40bb373ee9a67668e33a564484927865ce43b210386", size = 13599766, upload-time = "2025-11-11T22:05:12.265Z" }, +sdist = { url = "https://files.pythonhosted.org/packages/9f/ee/05eb424437f4db63331c90e4605025eedc0f71da3faff97161d5d7b405af/tensorstore-0.1.78.tar.gz", hash = "sha256:e26074ffe462394cf54197eb76d6569b500f347573cd74da3f4dd5f510a4ad7c", size = 6913502, upload-time = "2025-10-06T17:44:29.649Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7a/1e/77eff7bb320f72a9cb6e9a19eee4d78bee4a6ac1c28ceef60df28b4ab670/tensorstore-0.1.78-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:f1bc58164ad964d9cc298d20b62ca704ab6241639a21015e47ce6ea5b5cae27f", size = 15710776, upload-time = "2025-10-06T17:43:47.469Z" }, + { url = "https://files.pythonhosted.org/packages/55/df/f74f8004b246006ae03c90c28e32d71eb8a86a5b325d2d84dda327babdcc/tensorstore-0.1.78-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1910101ea85b6507958da28628ef53712c5311df19a795f449604f82bae6a24b", size = 13771121, upload-time = "2025-10-06T17:43:49.88Z" }, + { url = "https://files.pythonhosted.org/packages/be/b8/ab0d0b2afc53f47fbfd95c10d9ae21d393019aca45c8513657b8d7002f1f/tensorstore-0.1.78-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e92195db0c8c3ca749f24b1e930ab93382ac27430ac4ad2e3f53fc8f739323f", size = 18154513, upload-time = "2025-10-06T17:43:51.694Z" }, + { url = "https://files.pythonhosted.org/packages/f7/ea/c1b4cc6a089a39f63e8d189a55c715e393995628b12b4c8560b3ae4874ba/tensorstore-0.1.78-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:90570b867f9100f7405e4116c73910d0bd283a101500ea5680c5a8a881ea05c6", size = 20048971, upload-time = "2025-10-06T17:43:54.358Z" }, + { url = "https://files.pythonhosted.org/packages/58/2a/7167087885b12473f20ae4fddb9a8feeed6bd44ea8d42c73ae29ad3d1591/tensorstore-0.1.78-cp310-cp310-win_amd64.whl", hash = "sha256:4de9d4ee93d712cb665890af0738f4d74cac3b9b9a0492d477a3ee63fbbf445b", size = 12707793, upload-time = "2025-10-06T17:43:56.405Z" }, + { url = "https://files.pythonhosted.org/packages/33/b1/45070c393586306cef44c7bfc47ed2eddfb8930e648aaa847f615e3ae797/tensorstore-0.1.78-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:1c91e7ff93561612bd9868f3ee56702b0e4fecb45079a4c152dff9a6aa751913", size = 15712387, upload-time = "2025-10-06T17:43:58.458Z" }, + { url = "https://files.pythonhosted.org/packages/a0/d8/c045da71460301f37704e1ab1eec9e7e480dc711dbd281d86dc3d792c50e/tensorstore-0.1.78-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:781e123d392b2d9115e94b01849797a4540f54cd6d34c6ee32b9491f2f2a399c", size = 13773158, upload-time = "2025-10-06T17:44:00.285Z" }, + { url = "https://files.pythonhosted.org/packages/5b/e8/2b0d48100816649ec516fca31d02ad8028c090324e77b1c309c09a172350/tensorstore-0.1.78-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e650d363ad43754626a828a242785e6359a59fedb171276e9a0c66c0bd963cd4", size = 18154388, upload-time = "2025-10-06T17:44:02.428Z" }, + { url = "https://files.pythonhosted.org/packages/3e/a1/d9be82de18afe764c0fc7fb21b3d3bb0ad12845d202861fff7189afdb99d/tensorstore-0.1.78-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:33fed0ffa7a42ad24ce203486cf039f81b211723b45bd54859ba237a9d3aedb9", size = 20050304, upload-time = "2025-10-06T17:44:04.673Z" }, + { url = "https://files.pythonhosted.org/packages/d1/fc/b980958f91a9780e4dbc1038da723d2ad91307dbe30563359606f78926e5/tensorstore-0.1.78-cp311-cp311-win_amd64.whl", hash = "sha256:c02df3d8de4703d9ee42c8f620b2288f41c19a0fd5ffa907b72a736678e22188", size = 12708115, upload-time = "2025-10-06T17:44:06.574Z" }, + { url = "https://files.pythonhosted.org/packages/d0/5f/5853c04bebaed2d3c0ada9245328ffe3fff8b0f0f1c64f4776f67b42033f/tensorstore-0.1.78-cp312-cp312-macosx_10_14_x86_64.whl", hash = "sha256:ce375a8f6621cdb94638b9cdc5266519db16a58353d4c6920e8b9d6bdd419e21", size = 15727539, upload-time = "2025-10-06T17:44:08.631Z" }, + { url = "https://files.pythonhosted.org/packages/a2/e2/f67fcca8f90258c1cf1326aa366fe10f559f4c60102f53fdcc6614159c45/tensorstore-0.1.78-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:82f68fa5a3b4c84365a667ea0a7465a53d5d969c4d3909ac990f314d1569ffc3", size = 13780753, upload-time = "2025-10-06T17:44:10.488Z" }, + { url = "https://files.pythonhosted.org/packages/57/de/95013db6ef3b6a14b4237b95184c21becdf56d16605bf42903bb141f729e/tensorstore-0.1.78-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5dc0bd6361d73e3f67d70980f96f4e8bcbd8e810b5475a01333ca9c37f0785a5", size = 18157446, upload-time = "2025-10-06T17:44:12.831Z" }, + { url = "https://files.pythonhosted.org/packages/e2/75/6e7cef68cab3a672c6668cc80c399ae6626a498a3ef04b35b3704b41e9cc/tensorstore-0.1.78-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:75a17cef99f05fad9cc6fda37f1a1868d5f1502fd577af13174382931481c948", size = 20060211, upload-time = "2025-10-06T17:44:15.189Z" }, + { url = "https://files.pythonhosted.org/packages/1e/46/4ff3e395c44348c7442523c8ddd8ccc72d9ac81838e7a8f6afdd92131c3e/tensorstore-0.1.78-cp312-cp312-win_amd64.whl", hash = "sha256:56271d4652a7cb445879089f620af47801c091765d35a005505d6bfb8d00c535", size = 12711274, upload-time = "2025-10-06T17:44:17.586Z" }, + { url = "https://files.pythonhosted.org/packages/18/36/cfb5a2acf9005896c88f80b93c2aee42f00fab9d0045369fef6e1b297242/tensorstore-0.1.78-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:8a1d0ae7996c80f2e623be5b8cfbc32a307d08dfef3d2dcb455f592908ecd46d", size = 15727334, upload-time = "2025-10-06T17:44:19.93Z" }, + { url = "https://files.pythonhosted.org/packages/54/cd/d1bcc3aab5be4298616dbc060b5aa2012b686270aaa16a9579c7945d0a1c/tensorstore-0.1.78-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:311846cfb2d644cd4a7861005e521a79816093e76d7924c83de5d06ca323067e", size = 13780722, upload-time = "2025-10-06T17:44:21.822Z" }, + { url = "https://files.pythonhosted.org/packages/e2/3b/b0bb4440a9d67859b1abb367e436c62b0a27991dd7109f20be9dabff488f/tensorstore-0.1.78-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:630538a66eb9964bd2975c4e09ae83be9984f2e4ebd5f7969983137bfda92071", size = 18157269, upload-time = "2025-10-06T17:44:23.743Z" }, + { url = "https://files.pythonhosted.org/packages/68/d6/d95cde18ca2475bf317051b2be168cc963c5cfcd67e9c59786326ccdca53/tensorstore-0.1.78-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6886bec93b8ba22f83c4dc9e7c1ee20b11025ea9a5a839de21d0cbf7fd7aada2", size = 20060053, upload-time = "2025-10-06T17:44:25.942Z" }, + { url = "https://files.pythonhosted.org/packages/db/a2/dbd1af0e97d5d549051309d72c6e3f2fe81fae636f9db3692d21adc9c731/tensorstore-0.1.78-cp313-cp313-win_amd64.whl", hash = "sha256:e0073de8fa3074bc4cc92ced0210310fd89851899faf42a5ba256f0ba87d095c", size = 12711250, upload-time = "2025-10-06T17:44:27.926Z" }, ] [[package]] @@ -5644,7 +6025,7 @@ wheels = [ [[package]] name = "torch" -version = "2.9.1" +version = "2.9.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "filelock" }, @@ -5652,55 +6033,55 @@ dependencies = [ { name = "jinja2" }, { name = "networkx", version = "3.4.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "networkx", version = "3.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, - { name = "nvidia-cublas-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cuda-cupti-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cuda-nvrtc-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cuda-runtime-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cudnn-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cufft-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cufile-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-curand-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cusolver-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cusparse-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-cusparselt-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nccl-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nvjitlink-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nvshmem-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "nvidia-nvtx-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, - { name = "setuptools", marker = "python_full_version >= '3.12'" }, + { name = "nvidia-cublas-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cuda-cupti-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cuda-nvrtc-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cuda-runtime-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cudnn-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cufft-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cufile-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-curand-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cusolver-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cusparse-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-cusparselt-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-nccl-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-nvjitlink-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-nvshmem-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "nvidia-nvtx-cu12", marker = "(platform_machine == 'x86_64' and sys_platform == 'linux') or (platform_machine != 'x86_64' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts') or (sys_platform != 'linux' and extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "setuptools", marker = "python_full_version >= '3.12' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "sympy" }, - { name = "triton", marker = "sys_platform == 'never'" }, + { name = "triton", marker = "sys_platform == 'never' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "typing-extensions" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/5f/56/9577683b23072075ed2e40d725c52c2019d71a972fab8e083763da8e707e/torch-2.9.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:1cc208435f6c379f9b8fdfd5ceb5be1e3b72a6bdf1cb46c0d2812aa73472db9e", size = 104207681, upload-time = "2025-11-12T15:19:56.48Z" }, - { url = "https://files.pythonhosted.org/packages/38/45/be5a74f221df8f4b609b78ff79dc789b0cc9017624544ac4dd1c03973150/torch-2.9.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:9fd35c68b3679378c11f5eb73220fdcb4e6f4592295277fbb657d31fd053237c", size = 899794036, upload-time = "2025-11-12T15:21:01.886Z" }, - { url = "https://files.pythonhosted.org/packages/67/95/a581e8a382596b69385a44bab2733f1273d45c842f5d4a504c0edc3133b6/torch-2.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:2af70e3be4a13becba4655d6cc07dcfec7ae844db6ac38d6c1dafeb245d17d65", size = 110969861, upload-time = "2025-11-12T15:21:30.145Z" }, - { url = "https://files.pythonhosted.org/packages/ad/51/1756dc128d2bf6ea4e0a915cb89ea5e730315ff33d60c1ff56fd626ba3eb/torch-2.9.1-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:a83b0e84cc375e3318a808d032510dde99d696a85fe9473fc8575612b63ae951", size = 74452222, upload-time = "2025-11-12T15:20:46.223Z" }, - { url = "https://files.pythonhosted.org/packages/15/db/c064112ac0089af3d2f7a2b5bfbabf4aa407a78b74f87889e524b91c5402/torch-2.9.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:62b3fd888277946918cba4478cf849303da5359f0fb4e3bfb86b0533ba2eaf8d", size = 104220430, upload-time = "2025-11-12T15:20:31.705Z" }, - { url = "https://files.pythonhosted.org/packages/56/be/76eaa36c9cd032d3b01b001e2c5a05943df75f26211f68fae79e62f87734/torch-2.9.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d033ff0ac3f5400df862a51bdde9bad83561f3739ea0046e68f5401ebfa67c1b", size = 899821446, upload-time = "2025-11-12T15:20:15.544Z" }, - { url = "https://files.pythonhosted.org/packages/47/cc/7a2949e38dfe3244c4df21f0e1c27bce8aedd6c604a587dd44fc21017cb4/torch-2.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:0d06b30a9207b7c3516a9e0102114024755a07045f0c1d2f2a56b1819ac06bcb", size = 110973074, upload-time = "2025-11-12T15:21:39.958Z" }, - { url = "https://files.pythonhosted.org/packages/1e/ce/7d251155a783fb2c1bb6837b2b7023c622a2070a0a72726ca1df47e7ea34/torch-2.9.1-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:52347912d868653e1528b47cafaf79b285b98be3f4f35d5955389b1b95224475", size = 74463887, upload-time = "2025-11-12T15:20:36.611Z" }, - { url = "https://files.pythonhosted.org/packages/0f/27/07c645c7673e73e53ded71705045d6cb5bae94c4b021b03aa8d03eee90ab/torch-2.9.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:da5f6f4d7f4940a173e5572791af238cb0b9e21b1aab592bd8b26da4c99f1cd6", size = 104126592, upload-time = "2025-11-12T15:20:41.62Z" }, - { url = "https://files.pythonhosted.org/packages/19/17/e377a460603132b00760511299fceba4102bd95db1a0ee788da21298ccff/torch-2.9.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:27331cd902fb4322252657f3902adf1c4f6acad9dcad81d8df3ae14c7c4f07c4", size = 899742281, upload-time = "2025-11-12T15:22:17.602Z" }, - { url = "https://files.pythonhosted.org/packages/b1/1a/64f5769025db846a82567fa5b7d21dba4558a7234ee631712ee4771c436c/torch-2.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:81a285002d7b8cfd3fdf1b98aa8df138d41f1a8334fd9ea37511517cedf43083", size = 110940568, upload-time = "2025-11-12T15:21:18.689Z" }, - { url = "https://files.pythonhosted.org/packages/6e/ab/07739fd776618e5882661d04c43f5b5586323e2f6a2d7d84aac20d8f20bd/torch-2.9.1-cp312-none-macosx_11_0_arm64.whl", hash = "sha256:c0d25d1d8e531b8343bea0ed811d5d528958f1dcbd37e7245bc686273177ad7e", size = 74479191, upload-time = "2025-11-12T15:21:25.816Z" }, - { url = "https://files.pythonhosted.org/packages/20/60/8fc5e828d050bddfab469b3fe78e5ab9a7e53dda9c3bdc6a43d17ce99e63/torch-2.9.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:c29455d2b910b98738131990394da3e50eea8291dfeb4b12de71ecf1fdeb21cb", size = 104135743, upload-time = "2025-11-12T15:21:34.936Z" }, - { url = "https://files.pythonhosted.org/packages/f2/b7/6d3f80e6918213babddb2a37b46dbb14c15b14c5f473e347869a51f40e1f/torch-2.9.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:524de44cd13931208ba2c4bde9ec7741fd4ae6bfd06409a604fc32f6520c2bc9", size = 899749493, upload-time = "2025-11-12T15:24:36.356Z" }, - { url = "https://files.pythonhosted.org/packages/a6/47/c7843d69d6de8938c1cbb1eba426b1d48ddf375f101473d3e31a5fc52b74/torch-2.9.1-cp313-cp313-win_amd64.whl", hash = "sha256:545844cc16b3f91e08ce3b40e9c2d77012dd33a48d505aed34b7740ed627a1b2", size = 110944162, upload-time = "2025-11-12T15:21:53.151Z" }, - { url = "https://files.pythonhosted.org/packages/28/0e/2a37247957e72c12151b33a01e4df651d9d155dd74d8cfcbfad15a79b44a/torch-2.9.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5be4bf7496f1e3ffb1dd44b672adb1ac3f081f204c5ca81eba6442f5f634df8e", size = 74830751, upload-time = "2025-11-12T15:21:43.792Z" }, - { url = "https://files.pythonhosted.org/packages/4b/f7/7a18745edcd7b9ca2381aa03353647bca8aace91683c4975f19ac233809d/torch-2.9.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:30a3e170a84894f3652434b56d59a64a2c11366b0ed5776fab33c2439396bf9a", size = 104142929, upload-time = "2025-11-12T15:21:48.319Z" }, - { url = "https://files.pythonhosted.org/packages/f4/dd/f1c0d879f2863ef209e18823a988dc7a1bf40470750e3ebe927efdb9407f/torch-2.9.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:8301a7b431e51764629208d0edaa4f9e4c33e6df0f2f90b90e261d623df6a4e2", size = 899748978, upload-time = "2025-11-12T15:23:04.568Z" }, - { url = "https://files.pythonhosted.org/packages/1f/9f/6986b83a53b4d043e36f3f898b798ab51f7f20fdf1a9b01a2720f445043d/torch-2.9.1-cp313-cp313t-win_amd64.whl", hash = "sha256:2e1c42c0ae92bf803a4b2409fdfed85e30f9027a66887f5e7dcdbc014c7531db", size = 111176995, upload-time = "2025-11-12T15:22:01.618Z" }, - { url = "https://files.pythonhosted.org/packages/40/60/71c698b466dd01e65d0e9514b5405faae200c52a76901baf6906856f17e4/torch-2.9.1-cp313-none-macosx_11_0_arm64.whl", hash = "sha256:2c14b3da5df416cf9cb5efab83aa3056f5b8cd8620b8fde81b4987ecab730587", size = 74480347, upload-time = "2025-11-12T15:21:57.648Z" }, - { url = "https://files.pythonhosted.org/packages/48/50/c4b5112546d0d13cc9eaa1c732b823d676a9f49ae8b6f97772f795874a03/torch-2.9.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1edee27a7c9897f4e0b7c14cfc2f3008c571921134522d5b9b5ec4ebbc69041a", size = 74433245, upload-time = "2025-11-12T15:22:39.027Z" }, - { url = "https://files.pythonhosted.org/packages/81/c9/2628f408f0518b3bae49c95f5af3728b6ab498c8624ab1e03a43dd53d650/torch-2.9.1-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:19d144d6b3e29921f1fc70503e9f2fc572cde6a5115c0c0de2f7ca8b1483e8b6", size = 104134804, upload-time = "2025-11-12T15:22:35.222Z" }, - { url = "https://files.pythonhosted.org/packages/28/fc/5bc91d6d831ae41bf6e9e6da6468f25330522e92347c9156eb3f1cb95956/torch-2.9.1-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:c432d04376f6d9767a9852ea0def7b47a7bbc8e7af3b16ac9cf9ce02b12851c9", size = 899747132, upload-time = "2025-11-12T15:23:36.068Z" }, - { url = "https://files.pythonhosted.org/packages/63/5d/e8d4e009e52b6b2cf1684bde2a6be157b96fb873732542fb2a9a99e85a83/torch-2.9.1-cp314-cp314-win_amd64.whl", hash = "sha256:d187566a2cdc726fc80138c3cdb260970fab1c27e99f85452721f7759bbd554d", size = 110934845, upload-time = "2025-11-12T15:22:48.367Z" }, - { url = "https://files.pythonhosted.org/packages/bd/b2/2d15a52516b2ea3f414643b8de68fa4cb220d3877ac8b1028c83dc8ca1c4/torch-2.9.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:cb10896a1f7fedaddbccc2017ce6ca9ecaaf990f0973bdfcf405439750118d2c", size = 74823558, upload-time = "2025-11-12T15:22:43.392Z" }, - { url = "https://files.pythonhosted.org/packages/86/5c/5b2e5d84f5b9850cd1e71af07524d8cbb74cba19379800f1f9f7c997fc70/torch-2.9.1-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:0a2bd769944991c74acf0c4ef23603b9c777fdf7637f115605a4b2d8023110c7", size = 104145788, upload-time = "2025-11-12T15:23:52.109Z" }, - { url = "https://files.pythonhosted.org/packages/a9/8c/3da60787bcf70add986c4ad485993026ac0ca74f2fc21410bc4eb1bb7695/torch-2.9.1-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:07c8a9660bc9414c39cac530ac83b1fb1b679d7155824144a40a54f4a47bfa73", size = 899735500, upload-time = "2025-11-12T15:24:08.788Z" }, - { url = "https://files.pythonhosted.org/packages/db/2b/f7818f6ec88758dfd21da46b6cd46af9d1b3433e53ddbb19ad1e0da17f9b/torch-2.9.1-cp314-cp314t-win_amd64.whl", hash = "sha256:c88d3299ddeb2b35dcc31753305612db485ab6f1823e37fb29451c8b2732b87e", size = 111163659, upload-time = "2025-11-12T15:23:20.009Z" }, + { url = "https://files.pythonhosted.org/packages/bb/86/245c240d2138c17ed572c943c289056c2721abab70810d772c6bf5495b28/torch-2.9.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:030bbfe367379ae6a4ae4042b6c44da25383343b8b3c68abaa9c7231efbaf2dd", size = 104213554, upload-time = "2025-10-15T15:45:59.798Z" }, + { url = "https://files.pythonhosted.org/packages/58/1d/fd1e88ae0948825efcab7dd66d12bec23f05d4d38ed81573c8d453c14c06/torch-2.9.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:51cb63902182a78e90886e8068befd8ea102af4b00e420263591a3d70c7d3c6c", size = 899795167, upload-time = "2025-10-15T15:47:12.695Z" }, + { url = "https://files.pythonhosted.org/packages/63/5a/496197b45c14982bef4e079b24c61dc108e3ab0d0cc9718dba9f54f45a46/torch-2.9.0-cp310-cp310-win_amd64.whl", hash = "sha256:3f6aad4d2f0ee2248bac25339d74858ff846c3969b27d14ac235821f055af83d", size = 109310314, upload-time = "2025-10-15T15:46:16.633Z" }, + { url = "https://files.pythonhosted.org/packages/58/b0/2b4e647b0fc706e88eb6c253d05511865578f5f67b55fad639bf3272a4a1/torch-2.9.0-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:413e1654c9203733138858780e184d9fc59442f0b3b209e16f39354eb893db9b", size = 74452019, upload-time = "2025-10-15T15:46:04.296Z" }, + { url = "https://files.pythonhosted.org/packages/58/fe/334225e6330e672b36aef23d77451fa906ea12881570c08638a91331a212/torch-2.9.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:c596708b5105d0b199215acf0c9be7c1db5f1680d88eddadf4b75a299259a677", size = 104230578, upload-time = "2025-10-15T15:46:08.182Z" }, + { url = "https://files.pythonhosted.org/packages/05/cc/49566caaa218872ec9a2912456f470ff92649894a4bc2e5274aa9ef87c4a/torch-2.9.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:51de31219c97c51cf4bf2be94d622e3deb5dcc526c6dc00e97c17eaec0fc1d67", size = 899815990, upload-time = "2025-10-15T15:48:03.336Z" }, + { url = "https://files.pythonhosted.org/packages/74/25/e9ab21d5925b642d008f139d4a3c9664fc9ee1faafca22913c080cc4c0a5/torch-2.9.0-cp311-cp311-win_amd64.whl", hash = "sha256:dd515c70059afd95f48b8192733764c08ca37a1d19803af6401b5ecad7c8676e", size = 109313698, upload-time = "2025-10-15T15:46:12.425Z" }, + { url = "https://files.pythonhosted.org/packages/b3/b7/205ef3e94de636feffd64b28bb59a0dfac0771221201b9871acf9236f5ca/torch-2.9.0-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:614a185e4986326d526a91210c8fc1397e76e8cfafa78baf6296a790e53a9eec", size = 74463678, upload-time = "2025-10-15T15:46:29.779Z" }, + { url = "https://files.pythonhosted.org/packages/d1/d3/3985739f3b8e88675127bf70f82b3a48ae083e39cda56305dbd90398fec0/torch-2.9.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:e5f7af1dc4c0a7c4a260c2534f41ddaf209714f7c89145e644c44712fbd6b642", size = 104107898, upload-time = "2025-10-15T15:46:20.883Z" }, + { url = "https://files.pythonhosted.org/packages/a5/4b/f4bb2e6c25d0272f798cd6d7a04ed315da76cec68c602d87040c7847287f/torch-2.9.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:01cff95ecd9a212ea2f141db28acccdceb6a4c54f64e6c51091146f5e2a772c6", size = 899738273, upload-time = "2025-10-15T15:50:04.188Z" }, + { url = "https://files.pythonhosted.org/packages/66/11/c1c5ba6691cda6279087c35bd626536e4fd29521fe740abf5008377a9a02/torch-2.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:4582b162f541651f0cb184d3e291c05c2f556c7117c64a9873e2ee158d40062b", size = 109280887, upload-time = "2025-10-15T15:46:26.228Z" }, + { url = "https://files.pythonhosted.org/packages/dd/5f/b85bd8c05312d71de9402bf5868d217c38827cfd09d8f8514e5be128a52b/torch-2.9.0-cp312-none-macosx_11_0_arm64.whl", hash = "sha256:33f58e9a102a91259af289d50525c30323b5c9ae1d31322b6447c0814da68695", size = 74478983, upload-time = "2025-10-15T15:46:39.406Z" }, + { url = "https://files.pythonhosted.org/packages/c2/1c/90eb13833cdf4969ea9707586d7b57095c3b6e2b223a7256bf111689bcb8/torch-2.9.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:c30a17fc83eeab346913e237c64b15b5ba6407fff812f6c541e322e19bc9ea0e", size = 104111330, upload-time = "2025-10-15T15:46:35.238Z" }, + { url = "https://files.pythonhosted.org/packages/0e/21/2254c54b8d523592c25ef4434769aa23e29b1e6bf5f4c0ad9e27bf442927/torch-2.9.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:8f25033b8667b57857dfd01458fbf2a9e6a6df1f8def23aef0dc46292f6aa642", size = 899750243, upload-time = "2025-10-15T15:48:57.459Z" }, + { url = "https://files.pythonhosted.org/packages/b7/a5/5cb94fa4fd1e78223455c23c200f30f6dc10c6d4a2bcc8f6e7f2a2588370/torch-2.9.0-cp313-cp313-win_amd64.whl", hash = "sha256:d037f1b4ffd25013be4a7bf3651a0a910c68554956c7b2c92ebe87c76475dece", size = 109284513, upload-time = "2025-10-15T15:46:45.061Z" }, + { url = "https://files.pythonhosted.org/packages/66/e8/fc414d8656250ee46120b44836ffbb3266343db424b3e18ca79ebbf69d4f/torch-2.9.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e4e5b5cba837a2a8d1a497ba9a58dae46fa392593eaa13b871c42f71847503a5", size = 74830362, upload-time = "2025-10-15T15:46:48.983Z" }, + { url = "https://files.pythonhosted.org/packages/ed/5f/9474c98fc5ae0cd04b9466035428cd360e6611a86b8352a0fc2fa504acdc/torch-2.9.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:64693568f5dc4dbd5f880a478b1cea0201cc6b510d91d1bc54fea86ac5d1a637", size = 104144940, upload-time = "2025-10-15T15:47:29.076Z" }, + { url = "https://files.pythonhosted.org/packages/2d/5a/8e0c1cf57830172c109d4bd6be2708cabeaf550983eee7029291322447a0/torch-2.9.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:f8ed31ddd7d10bfb3fbe0b9fe01b1243577f13d75e6f4a0839a283915ce3791e", size = 899744054, upload-time = "2025-10-15T15:48:29.864Z" }, + { url = "https://files.pythonhosted.org/packages/6d/28/82c28b30fcb4b7c9cdd995763d18bbb830d6521356712faebbad92ffa61d/torch-2.9.0-cp313-cp313t-win_amd64.whl", hash = "sha256:eff527d4e4846e6f70d2afd8058b73825761203d66576a7e04ea2ecfebcb4ab8", size = 109517546, upload-time = "2025-10-15T15:47:33.395Z" }, + { url = "https://files.pythonhosted.org/packages/ff/c3/a91f96ec74347fa5fd24453fa514bc61c61ecc79196fa760b012a1873d96/torch-2.9.0-cp313-none-macosx_11_0_arm64.whl", hash = "sha256:f8877779cf56d1ce431a7636703bdb13307f5960bb1af49716d8b179225e0e6a", size = 74480732, upload-time = "2025-10-15T15:47:38.002Z" }, + { url = "https://files.pythonhosted.org/packages/5c/73/9f70af34b334a7e0ef496ceec96b7ec767bd778ea35385ce6f77557534d1/torch-2.9.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:7e614fae699838038d888729f82b687c03413c5989ce2a9481f9a7e7a396e0bb", size = 74433037, upload-time = "2025-10-15T15:47:41.894Z" }, + { url = "https://files.pythonhosted.org/packages/b7/84/37cf88625901934c97109e583ecc21777d21c6f54cda97a7e5bbad1ee2f2/torch-2.9.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:dfb5b8cd310ba3436c7e14e8b7833ef658cf3045e50d2bdaed23c8fc517065eb", size = 104116482, upload-time = "2025-10-15T15:47:46.266Z" }, + { url = "https://files.pythonhosted.org/packages/56/8e/ca8b17866943a8d4f4664d402ea84210aa274588b4c5d89918f5caa24eec/torch-2.9.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:b3d29524993a478e46f5d598b249cd824b7ed98d7fba538bd9c4cde6c803948f", size = 899746916, upload-time = "2025-10-15T15:50:40.294Z" }, + { url = "https://files.pythonhosted.org/packages/43/65/3b17c0fbbdab6501c5b320a52a648628d0d44e7379f64e27d9eef701b6bf/torch-2.9.0-cp314-cp314-win_amd64.whl", hash = "sha256:71c7578984f5ec0eb645eb4816ac8435fcf3e3e2ae1901bcd2f519a9cafb5125", size = 109275151, upload-time = "2025-10-15T15:49:20.715Z" }, + { url = "https://files.pythonhosted.org/packages/83/36/74f8c051f785500396e42f93542422422dfd874a174f21f8d955d36e5d64/torch-2.9.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:71d9309aee457bbe0b164bce2111cd911c4ed4e847e65d5077dbbcd3aba6befc", size = 74823353, upload-time = "2025-10-15T15:49:16.59Z" }, + { url = "https://files.pythonhosted.org/packages/62/51/dc3b4e2f9ba98ae27238f0153ca098bf9340b2dafcc67fde645d496dfc2a/torch-2.9.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:c08fb654d783899e204a32cca758a7ce8a45b2d78eeb89517cc937088316f78e", size = 104140340, upload-time = "2025-10-15T15:50:19.67Z" }, + { url = "https://files.pythonhosted.org/packages/c0/8d/b00657f8141ac16af7bb6cda2e67de18499a3263b78d516b9a93fcbc98e3/torch-2.9.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:ec8feb0099b2daa5728fbc7abb0b05730fd97e0f359ff8bda09865aaa7bd7d4b", size = 899731750, upload-time = "2025-10-15T15:49:36.673Z" }, + { url = "https://files.pythonhosted.org/packages/fc/29/bd361e0cbb2c79ce6450f42643aaf6919956f89923a50571b0ebfe92d142/torch-2.9.0-cp314-cp314t-win_amd64.whl", hash = "sha256:695ba920f234ad4170c9c50e28d56c848432f8f530e6bc7f88fcb15ddf338e75", size = 109503850, upload-time = "2025-10-15T15:50:24.118Z" }, ] [[package]] @@ -5719,7 +6100,7 @@ wheels = [ [[package]] name = "torchvision" -version = "0.24.1" +version = "0.24.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "numpy" }, @@ -5727,34 +6108,34 @@ dependencies = [ { name = "torch", marker = "sys_platform == 'never'" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/f7/09/d51aadf8591138e08b74c64a6eb783630c7a31ca2634416277115a9c3a2b/torchvision-0.24.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ded5e625788572e4e1c4d155d1bbc48805c113794100d70e19c76e39e4d53465", size = 1891441, upload-time = "2025-11-12T15:25:01.687Z" }, - { url = "https://files.pythonhosted.org/packages/6b/49/a35df863e7c153aad82af7505abd8264a5b510306689712ef86bea862822/torchvision-0.24.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:54ed17c3d30e718e08d8da3fd5b30ea44b0311317e55647cb97077a29ecbc25b", size = 2386226, upload-time = "2025-11-12T15:25:05.449Z" }, - { url = "https://files.pythonhosted.org/packages/49/20/f2d7cd1eea052887c1083afff0b8df5228ec93b53e03759f20b1a3c6d22a/torchvision-0.24.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:f476da4e085b7307aaab6f540219617d46d5926aeda24be33e1359771c83778f", size = 8046093, upload-time = "2025-11-12T15:25:09.425Z" }, - { url = "https://files.pythonhosted.org/packages/d8/cf/0ff4007c09903199307da5f53a192ff5d62b45447069e9ef3a19bdc5ff12/torchvision-0.24.1-cp310-cp310-win_amd64.whl", hash = "sha256:fbdbdae5e540b868a681240b7dbd6473986c862445ee8a138680a6a97d6c34ff", size = 3696202, upload-time = "2025-11-12T15:25:10.657Z" }, - { url = "https://files.pythonhosted.org/packages/e7/69/30f5f03752aa1a7c23931d2519b31e557f3f10af5089d787cddf3b903ecf/torchvision-0.24.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:056c525dc875f18fe8e9c27079ada166a7b2755cea5a2199b0bc7f1f8364e600", size = 1891436, upload-time = "2025-11-12T15:25:04.3Z" }, - { url = "https://files.pythonhosted.org/packages/0c/69/49aae86edb75fe16460b59a191fcc0f568c2378f780bb063850db0fe007a/torchvision-0.24.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:1e39619de698e2821d71976c92c8a9e50cdfd1e993507dfb340f2688bfdd8283", size = 2387757, upload-time = "2025-11-12T15:25:06.795Z" }, - { url = "https://files.pythonhosted.org/packages/11/c9/1dfc3db98797b326f1d0c3f3bb61c83b167a813fc7eab6fcd2edb8c7eb9d/torchvision-0.24.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a0f106663e60332aa4fcb1ca2159ef8c3f2ed266b0e6df88de261048a840e0df", size = 8047682, upload-time = "2025-11-12T15:25:21.125Z" }, - { url = "https://files.pythonhosted.org/packages/fa/bb/cfc6a6f6ccc84a534ed1fdf029ae5716dd6ff04e57ed9dc2dab38bf652d5/torchvision-0.24.1-cp311-cp311-win_amd64.whl", hash = "sha256:a9308cdd37d8a42e14a3e7fd9d271830c7fecb150dd929b642f3c1460514599a", size = 4037588, upload-time = "2025-11-12T15:25:14.402Z" }, - { url = "https://files.pythonhosted.org/packages/f0/af/18e2c6b9538a045f60718a0c5a058908ccb24f88fde8e6f0fc12d5ff7bd3/torchvision-0.24.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e48bf6a8ec95872eb45763f06499f87bd2fb246b9b96cb00aae260fda2f96193", size = 1891433, upload-time = "2025-11-12T15:25:03.232Z" }, - { url = "https://files.pythonhosted.org/packages/9d/43/600e5cfb0643d10d633124f5982d7abc2170dfd7ce985584ff16edab3e76/torchvision-0.24.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:7fb7590c737ebe3e1c077ad60c0e5e2e56bb26e7bccc3b9d04dbfc34fd09f050", size = 2386737, upload-time = "2025-11-12T15:25:08.288Z" }, - { url = "https://files.pythonhosted.org/packages/93/b1/db2941526ecddd84884132e2742a55c9311296a6a38627f9e2627f5ac889/torchvision-0.24.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:66a98471fc18cad9064123106d810a75f57f0838eee20edc56233fd8484b0cc7", size = 8049868, upload-time = "2025-11-12T15:25:13.058Z" }, - { url = "https://files.pythonhosted.org/packages/69/98/16e583f59f86cd59949f59d52bfa8fc286f86341a229a9d15cbe7a694f0c/torchvision-0.24.1-cp312-cp312-win_amd64.whl", hash = "sha256:4aa6cb806eb8541e92c9b313e96192c6b826e9eb0042720e2fa250d021079952", size = 4302006, upload-time = "2025-11-12T15:25:16.184Z" }, - { url = "https://files.pythonhosted.org/packages/e4/97/ab40550f482577f2788304c27220e8ba02c63313bd74cf2f8920526aac20/torchvision-0.24.1-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:8a6696db7fb71eadb2c6a48602106e136c785642e598eb1533e0b27744f2cce6", size = 1891435, upload-time = "2025-11-12T15:25:28.642Z" }, - { url = "https://files.pythonhosted.org/packages/30/65/ac0a3f9be6abdbe4e1d82c915d7e20de97e7fd0e9a277970508b015309f3/torchvision-0.24.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:db2125c46f9cb25dc740be831ce3ce99303cfe60439249a41b04fd9f373be671", size = 2338718, upload-time = "2025-11-12T15:25:26.19Z" }, - { url = "https://files.pythonhosted.org/packages/10/b5/5bba24ff9d325181508501ed7f0c3de8ed3dd2edca0784d48b144b6c5252/torchvision-0.24.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:f035f0cacd1f44a8ff6cb7ca3627d84c54d685055961d73a1a9fb9827a5414c8", size = 8049661, upload-time = "2025-11-12T15:25:22.558Z" }, - { url = "https://files.pythonhosted.org/packages/5c/ec/54a96ae9ab6a0dd66d4bba27771f892e36478a9c3489fa56e51c70abcc4d/torchvision-0.24.1-cp313-cp313-win_amd64.whl", hash = "sha256:16274823b93048e0a29d83415166a2e9e0bf4e1b432668357b657612a4802864", size = 4319808, upload-time = "2025-11-12T15:25:17.318Z" }, - { url = "https://files.pythonhosted.org/packages/d5/f3/a90a389a7e547f3eb8821b13f96ea7c0563cdefbbbb60a10e08dda9720ff/torchvision-0.24.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e3f96208b4bef54cd60e415545f5200346a65024e04f29a26cd0006dbf9e8e66", size = 2005342, upload-time = "2025-11-12T15:25:11.871Z" }, - { url = "https://files.pythonhosted.org/packages/a9/fe/ff27d2ed1b524078164bea1062f23d2618a5fc3208e247d6153c18c91a76/torchvision-0.24.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:f231f6a4f2aa6522713326d0d2563538fa72d613741ae364f9913027fa52ea35", size = 2341708, upload-time = "2025-11-12T15:25:25.08Z" }, - { url = "https://files.pythonhosted.org/packages/b1/b9/d6c903495cbdfd2533b3ef6f7b5643ff589ea062f8feb5c206ee79b9d9e5/torchvision-0.24.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:1540a9e7f8cf55fe17554482f5a125a7e426347b71de07327d5de6bfd8d17caa", size = 8177239, upload-time = "2025-11-12T15:25:18.554Z" }, - { url = "https://files.pythonhosted.org/packages/4f/2b/ba02e4261369c3798310483028495cf507e6cb3f394f42e4796981ecf3a7/torchvision-0.24.1-cp313-cp313t-win_amd64.whl", hash = "sha256:d83e16d70ea85d2f196d678bfb702c36be7a655b003abed84e465988b6128938", size = 4251604, upload-time = "2025-11-12T15:25:34.069Z" }, - { url = "https://files.pythonhosted.org/packages/42/84/577b2cef8f32094add5f52887867da4c2a3e6b4261538447e9b48eb25812/torchvision-0.24.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:cccf4b4fec7fdfcd3431b9ea75d1588c0a8596d0333245dafebee0462abe3388", size = 2005319, upload-time = "2025-11-12T15:25:23.827Z" }, - { url = "https://files.pythonhosted.org/packages/5f/34/ecb786bffe0159a3b49941a61caaae089853132f3cd1e8f555e3621f7e6f/torchvision-0.24.1-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:1b495edd3a8f9911292424117544f0b4ab780452e998649425d1f4b2bed6695f", size = 2338844, upload-time = "2025-11-12T15:25:32.625Z" }, - { url = "https://files.pythonhosted.org/packages/51/99/a84623786a6969504c87f2dc3892200f586ee13503f519d282faab0bb4f0/torchvision-0.24.1-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:ab211e1807dc3e53acf8f6638df9a7444c80c0ad050466e8d652b3e83776987b", size = 8175144, upload-time = "2025-11-12T15:25:31.355Z" }, - { url = "https://files.pythonhosted.org/packages/6d/ba/8fae3525b233e109317ce6a9c1de922ab2881737b029a7e88021f81e068f/torchvision-0.24.1-cp314-cp314-win_amd64.whl", hash = "sha256:18f9cb60e64b37b551cd605a3d62c15730c086362b40682d23e24b616a697d41", size = 4234459, upload-time = "2025-11-12T15:25:19.859Z" }, - { url = "https://files.pythonhosted.org/packages/50/33/481602c1c72d0485d4b3a6b48c9534b71c2957c9d83bf860eb837bf5a620/torchvision-0.24.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ec9d7379c519428395e4ffda4dbb99ec56be64b0a75b95989e00f9ec7ae0b2d7", size = 2005336, upload-time = "2025-11-12T15:25:27.225Z" }, - { url = "https://files.pythonhosted.org/packages/d0/7f/372de60bf3dd8f5593bd0d03f4aecf0d1fd58f5bc6943618d9d913f5e6d5/torchvision-0.24.1-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:af9201184c2712d808bd4eb656899011afdfce1e83721c7cb08000034df353fe", size = 2341704, upload-time = "2025-11-12T15:25:29.857Z" }, - { url = "https://files.pythonhosted.org/packages/36/9b/0f3b9ff3d0225ee2324ec663de0e7fb3eb855615ca958ac1875f22f1f8e5/torchvision-0.24.1-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:9ef95d819fd6df81bc7cc97b8f21a15d2c0d3ac5dbfaab5cbc2d2ce57114b19e", size = 8177422, upload-time = "2025-11-12T15:25:37.357Z" }, - { url = "https://files.pythonhosted.org/packages/d6/ab/e2bcc7c2f13d882a58f8b30ff86f794210b075736587ea50f8c545834f8a/torchvision-0.24.1-cp314-cp314t-win_amd64.whl", hash = "sha256:480b271d6edff83ac2e8d69bbb4cf2073f93366516a50d48f140ccfceedb002e", size = 4335190, upload-time = "2025-11-12T15:25:35.745Z" }, + { url = "https://files.pythonhosted.org/packages/63/5b/1404eeab00819df71a30e916c2081654366741f7838fcc4fff86b7bd9e7e/torchvision-0.24.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5e8d5e667deff87bd66d26df6d225f46224bb0782d4f3f8f5d2f3068b5fd4492", size = 1891723, upload-time = "2025-10-15T15:51:08.5Z" }, + { url = "https://files.pythonhosted.org/packages/88/e3/1b003ecd52bd721f8304aeb66691edfbc2002747ec83d36188ad6abab506/torchvision-0.24.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:a110a51c75e89807a8382b0d8034f5e180fb9319570be3389ffd3d4ac4fd57a9", size = 2418988, upload-time = "2025-10-15T15:51:25.195Z" }, + { url = "https://files.pythonhosted.org/packages/56/2e/3c19a35e62da0f606baf8f6e2ceeab1eb66aaa2f84c6528538b06b416d54/torchvision-0.24.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:81d5b12a6df1bb2cc8bdbad837b637d6ea446f2866e6d94f1b5d478856331be3", size = 8046769, upload-time = "2025-10-15T15:51:15.221Z" }, + { url = "https://files.pythonhosted.org/packages/e0/1d/e7ab614a1ace820a2366eab1532679fbe81bd9501ffd6a1b7be14936366d/torchvision-0.24.0-cp310-cp310-win_amd64.whl", hash = "sha256:0839dbb305d34671f5a64f558782095134b04bbeff8b90f11eb80515d7d50092", size = 3686529, upload-time = "2025-10-15T15:51:20.982Z" }, + { url = "https://files.pythonhosted.org/packages/a3/17/54ed2ec6944ea972b461a86424c8c7f98835982c90cbc45bf59bd962863a/torchvision-0.24.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f771cf918351ad509a28488be475f3e9cc71a750d6b1467842bfb64863a5e986", size = 1891719, upload-time = "2025-10-15T15:51:10.384Z" }, + { url = "https://files.pythonhosted.org/packages/f8/07/0cd6776eee784742ad3cb2bfd3295383d84cb2f9e87386119333d1587f0f/torchvision-0.24.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:bbd63bf4ebff84c48c50123eba90526cc9f794fe45bc9f5dd07cec19e8c62bce", size = 2420513, upload-time = "2025-10-15T15:51:18.087Z" }, + { url = "https://files.pythonhosted.org/packages/1a/f4/6026c08011ddcefcbc14161c5aa9dce55c35c6b045e04ef0952e88bf4594/torchvision-0.24.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:78fe414b3bb6dbf7e6f6da6f733ba96881f6b29a9b997228de7c5f603e5ed940", size = 8048018, upload-time = "2025-10-15T15:51:13.579Z" }, + { url = "https://files.pythonhosted.org/packages/2f/b4/362b4e67ed87cee0fb4f8f0363a852eaeef527968bf62c07ed56f764d729/torchvision-0.24.0-cp311-cp311-win_amd64.whl", hash = "sha256:629584b94e52f32a6278f2a35d85eeaae95fcc38730fcb765064f26c3c96df5d", size = 4027686, upload-time = "2025-10-15T15:51:19.189Z" }, + { url = "https://files.pythonhosted.org/packages/47/ef/81e4e69e02e2c4650b30e8c11c8974f946682a30e0ab7e9803a831beff76/torchvision-0.24.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c61d40bcd2e2451e932902a702ad495ba1ec6f279e90b1e15cef2bb55dc911e2", size = 1891726, upload-time = "2025-10-15T15:51:16.977Z" }, + { url = "https://files.pythonhosted.org/packages/00/7b/e3809b3302caea9a12c13f3adebe4fef127188438e719fd6c8dc93db1da6/torchvision-0.24.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:b0531d1483fc322d7da0d83be52f0df860a75114ab87dbeeb9de765feaeda843", size = 2419495, upload-time = "2025-10-15T15:51:11.885Z" }, + { url = "https://files.pythonhosted.org/packages/7e/e6/7324ead6793075a8c75c56abeed1236d1750de16a5613cfe2ddad164a92a/torchvision-0.24.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:26b9dd9c083f8e5f7ac827de6d5b88c615d9c582dc87666770fbdf16887e4c25", size = 8050480, upload-time = "2025-10-15T15:51:24.012Z" }, + { url = "https://files.pythonhosted.org/packages/3e/ad/3c56fcd2a0d6e8afa80e115b5ade4302232ec99655220a51d05709819523/torchvision-0.24.0-cp312-cp312-win_amd64.whl", hash = "sha256:060b7c50ed4b3fb0316b08e2e31bfd874ec2f63ef5ae02f81e54341ca4e88703", size = 4292225, upload-time = "2025-10-15T15:51:27.699Z" }, + { url = "https://files.pythonhosted.org/packages/4f/b5/b2008e4b77a8d6aada828dd0f6a438d8f94befa23fdd2d62fa0ac6e60113/torchvision-0.24.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:84d79cfc6457310107ce4d712de7a3d388b24484bc9aeded4a76d8f8e3a2813d", size = 1891722, upload-time = "2025-10-15T15:51:28.854Z" }, + { url = "https://files.pythonhosted.org/packages/8f/02/e2f6b0ff93ca4db5751ac9c5be43f13d5e53d9e9412324f464dca1775027/torchvision-0.24.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:fec12a269cf80f6b0b71471c8d498cd3bdd9d8e892c425bf39fecb604852c3b0", size = 2371478, upload-time = "2025-10-15T15:51:37.842Z" }, + { url = "https://files.pythonhosted.org/packages/77/85/42e5fc4f716ec7b73cf1f32eeb5c77961be4d4054b26cd6a5ff97f20c966/torchvision-0.24.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:7323a9be5e3da695605753f501cdc87824888c5655d27735cdeaa9986b45884c", size = 8050200, upload-time = "2025-10-15T15:51:46.276Z" }, + { url = "https://files.pythonhosted.org/packages/93/c2/48cb0b6b26276d2120b1e0dbc877579a748eae02b4091a7522ce54f6d5e1/torchvision-0.24.0-cp313-cp313-win_amd64.whl", hash = "sha256:08cad8b204196e945f0b2d73adee952d433db1c03645851d52b22a45f1015b13", size = 4309939, upload-time = "2025-10-15T15:51:39.002Z" }, + { url = "https://files.pythonhosted.org/packages/7d/d7/3dd10830b047eeb46ae6b465474258d7b4fbb7d8872dca69bd42449f5c82/torchvision-0.24.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:6ab956a6e588623353e0f20d4b03eb1656cb4a3c75ca4dd8b4e32e01bc43271a", size = 2028355, upload-time = "2025-10-15T15:51:22.384Z" }, + { url = "https://files.pythonhosted.org/packages/f7/cf/2d7e43409089ce7070f5336161f9216d58653ee1cb26bcb5d6c84cc2de36/torchvision-0.24.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:b1b3db80609c32a088554e8e94b4fc31f1033fe5bb4ac0673ec49c3eb03fb4da", size = 2374466, upload-time = "2025-10-15T15:51:35.382Z" }, + { url = "https://files.pythonhosted.org/packages/e9/30/8f7c328fd7e0a9665da4b6b56b1c627665c18470bfe62f3729ad3eda9aec/torchvision-0.24.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:e6635f100d455c80b43f297df4b8585a76c6a2e114802f6567ddd28d7b5479b0", size = 8217068, upload-time = "2025-10-15T15:51:36.623Z" }, + { url = "https://files.pythonhosted.org/packages/55/a2/b6f9e40e2904574c80b3bb872c66af20bbd642053e7c8e1b9e99ab396535/torchvision-0.24.0-cp313-cp313t-win_amd64.whl", hash = "sha256:4ce158bbdc3a9086034bced0b5212888bd5b251fee6d08a9eff151d30b4b228a", size = 4273912, upload-time = "2025-10-15T15:51:33.866Z" }, + { url = "https://files.pythonhosted.org/packages/1b/24/790a39645cc8c71bf442d54a76da9bda5caeb2a44c5f7e02498649cd99d4/torchvision-0.24.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:4bdfc85a5ed706421555f32cdc5e3ddb6d40bf65ef03a274ce3c176393e2904b", size = 2028335, upload-time = "2025-10-15T15:51:26.252Z" }, + { url = "https://files.pythonhosted.org/packages/b0/d7/69479a066ea773653e88eda99031e38681e9094046f87cb957af5036db0e/torchvision-0.24.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:73576a9c4a593223fbae85a64e8bbd77049abd1101893ecf3c5e981284fd58b4", size = 2371609, upload-time = "2025-10-15T15:51:29.859Z" }, + { url = "https://files.pythonhosted.org/packages/46/64/3c7fdb3771ec992b9445a1f7a969466b23ce2cdb14e09303b3db351a0655/torchvision-0.24.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:dd565b1b06666ff399d0801d4d1824fa570c0167a179ca700a5be232527b3c62", size = 8214918, upload-time = "2025-10-15T15:51:41.465Z" }, + { url = "https://files.pythonhosted.org/packages/58/51/abc416bc34d574ad479af738e413d9ebf93027ee92d0f4ae38f966b818f7/torchvision-0.24.0-cp314-cp314-win_amd64.whl", hash = "sha256:eb45d12ac48d757738788fd3fb8e88e647d6b2ab2424134ca87556efc72d81b5", size = 4257776, upload-time = "2025-10-15T15:51:42.642Z" }, + { url = "https://files.pythonhosted.org/packages/08/f7/261d1353c611820541ecd43046b89da3f1ae998dc786e4288b890a009883/torchvision-0.24.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:68120e7e03c31900e499a10bb7fdd63cfd67f0054c9fa108e7e27f9cd372f315", size = 2028359, upload-time = "2025-10-15T15:51:32.119Z" }, + { url = "https://files.pythonhosted.org/packages/a2/fd/615d8a86db1578345de7fa1edaf476fbcf4f057bf7e4fd898306b620c487/torchvision-0.24.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:64e54494043eecf9f57a9881c6fdea49c62282782e737c002ae8b1639e6ea80e", size = 2374469, upload-time = "2025-10-15T15:51:40.19Z" }, + { url = "https://files.pythonhosted.org/packages/04/98/bac11e8fdbf00d6c398246ff2781370aa72c99f2ac685c01ce79354c9a32/torchvision-0.24.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:75ef9546323b321a451239d886f0cb528f7e98bb294da47a3200effd4e572064", size = 8217060, upload-time = "2025-10-15T15:51:45.033Z" }, + { url = "https://files.pythonhosted.org/packages/47/6f/9fba8abc468c904570699eceeb51588f9622172b8fffa4ab11bcf15598c2/torchvision-0.24.0-cp314-cp314t-win_amd64.whl", hash = "sha256:2efb617667950814fc8bb9437e5893861b3616e214285be33cbc364a3f42c599", size = 4358490, upload-time = "2025-10-15T15:51:43.884Z" }, ] [[package]] @@ -5766,7 +6147,8 @@ dependencies = [ { name = "docstring-parser" }, { name = "filelock" }, { name = "fsspec" }, - { name = "importlib-metadata" }, + { name = "importlib-metadata", version = "8.6.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-dev'" }, + { name = "importlib-metadata", version = "8.7.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'extra-13-megatron-core-lts' or extra != 'extra-13-megatron-core-dev'" }, { name = "pyre-extensions" }, { name = "pyyaml" }, { name = "tabulate" }, @@ -5782,7 +6164,7 @@ name = "tqdm" version = "4.67.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "colorama", marker = "sys_platform == 'win32'" }, + { name = "colorama", marker = "sys_platform == 'win32' or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/a8/4b/29b4ef32e036bb34e4ab51796dd745cdba7ed47ad142a9f4a1eb8e0c744d/tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2", size = 169737, upload-time = "2024-11-24T20:12:22.481Z" } wheels = [ @@ -5795,7 +6177,7 @@ version = "2.9.0+70f53666" source = { git = "https://github.com/NVIDIA/TransformerEngine.git?rev=release_v2.9#70f536662ae10a62a54f4ed1ba92e3314c5cfd69" } dependencies = [ { name = "einops" }, - { name = "importlib-metadata" }, + { name = "importlib-metadata", version = "8.6.1", source = { registry = "https://pypi.org/simple" } }, { name = "onnx" }, { name = "onnxscript", version = "0.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, { name = "onnxscript", version = "0.5.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.13' and extra == 'extra-13-megatron-core-dev') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, @@ -5827,23 +6209,23 @@ wheels = [ [[package]] name = "triton" -version = "3.5.1" +version = "3.5.0" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/d9/2e/f95e673222afa2c7f0c687d8913e98fcf2589ef0b1405de76894e37fe18f/triton-3.5.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f63e34dcb32d7bd3a1d0195f60f30d2aee8b08a69a0424189b71017e23dfc3d2", size = 159821655, upload-time = "2025-11-11T17:51:44.09Z" }, - { url = "https://files.pythonhosted.org/packages/fd/6e/676ab5019b4dde8b9b7bab71245102fc02778ef3df48218b298686b9ffd6/triton-3.5.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5fc53d849f879911ea13f4a877243afc513187bc7ee92d1f2c0f1ba3169e3c94", size = 170320692, upload-time = "2025-11-11T17:40:46.074Z" }, - { url = "https://files.pythonhosted.org/packages/dc/dc/6ce44d055f2fc2403c4ec6b3cfd3a9b25f57b7d95efadccdea91497f8e81/triton-3.5.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:da47169e30a779bade679ce78df4810fca6d78a955843d2ddb11f226adc517dc", size = 159928005, upload-time = "2025-11-11T17:51:50.008Z" }, - { url = "https://files.pythonhosted.org/packages/b0/72/ec90c3519eaf168f22cb1757ad412f3a2add4782ad3a92861c9ad135d886/triton-3.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:61413522a48add32302353fdbaaf92daaaab06f6b5e3229940d21b5207f47579", size = 170425802, upload-time = "2025-11-11T17:40:53.209Z" }, - { url = "https://files.pythonhosted.org/packages/db/53/2bcc46879910991f09c063eea07627baef2bc62fe725302ba8f46a2c1ae5/triton-3.5.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:275a045b6ed670dd1bd005c3e6c2d61846c74c66f4512d6f33cc027b11de8fd4", size = 159940689, upload-time = "2025-11-11T17:51:55.938Z" }, - { url = "https://files.pythonhosted.org/packages/f2/50/9a8358d3ef58162c0a415d173cfb45b67de60176e1024f71fbc4d24c0b6d/triton-3.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d2c6b915a03888ab931a9fd3e55ba36785e1fe70cbea0b40c6ef93b20fc85232", size = 170470207, upload-time = "2025-11-11T17:41:00.253Z" }, - { url = "https://files.pythonhosted.org/packages/f1/ba/805684a992ee32d486b7948d36aed2f5e3c643fc63883bf8bdca1c3f3980/triton-3.5.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:56765ffe12c554cd560698398b8a268db1f616c120007bfd8829d27139abd24a", size = 159955460, upload-time = "2025-11-11T17:52:01.861Z" }, - { url = "https://files.pythonhosted.org/packages/27/46/8c3bbb5b0a19313f50edcaa363b599e5a1a5ac9683ead82b9b80fe497c8d/triton-3.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f3f4346b6ebbd4fad18773f5ba839114f4826037c9f2f34e0148894cd5dd3dba", size = 170470410, upload-time = "2025-11-11T17:41:06.319Z" }, - { url = "https://files.pythonhosted.org/packages/84/1e/7df59baef41931e21159371c481c31a517ff4c2517343b62503d0cd2be99/triton-3.5.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:02c770856f5e407d24d28ddc66e33cf026e6f4d360dcb8b2fabe6ea1fc758621", size = 160072799, upload-time = "2025-11-11T17:52:07.293Z" }, - { url = "https://files.pythonhosted.org/packages/37/92/e97fcc6b2c27cdb87ce5ee063d77f8f26f19f06916aa680464c8104ef0f6/triton-3.5.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0b4d2c70127fca6a23e247f9348b8adde979d2e7a20391bfbabaac6aebc7e6a8", size = 170579924, upload-time = "2025-11-11T17:41:12.455Z" }, - { url = "https://files.pythonhosted.org/packages/14/f9/0430e879c1e63a1016cb843261528fd3187c872c3a9539132efc39514753/triton-3.5.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f617aa7925f9ea9968ec2e1adaf93e87864ff51549c8f04ce658f29bbdb71e2d", size = 159956163, upload-time = "2025-11-11T17:52:12.999Z" }, - { url = "https://files.pythonhosted.org/packages/a4/e6/c595c35e5c50c4bc56a7bac96493dad321e9e29b953b526bbbe20f9911d0/triton-3.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d0637b1efb1db599a8e9dc960d53ab6e4637db7d4ab6630a0974705d77b14b60", size = 170480488, upload-time = "2025-11-11T17:41:18.222Z" }, - { url = "https://files.pythonhosted.org/packages/41/1e/63d367c576c75919e268e4fbc33c1cb33b6dc12bb85e8bfe531c2a8bd5d3/triton-3.5.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8932391d7f93698dfe5bc9bead77c47a24f97329e9f20c10786bb230a9083f56", size = 160073620, upload-time = "2025-11-11T17:52:18.403Z" }, - { url = "https://files.pythonhosted.org/packages/16/b5/b0d3d8b901b6a04ca38df5e24c27e53afb15b93624d7fd7d658c7cd9352a/triton-3.5.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bac7f7d959ad0f48c0e97d6643a1cc0fd5786fe61cb1f83b537c6b2d54776478", size = 170582192, upload-time = "2025-11-11T17:41:23.963Z" }, + { url = "https://files.pythonhosted.org/packages/dd/22/507b6f58a35e05e84381630b2dc2a3cee1a7a2a7eaf4cba857c638a18a24/triton-3.5.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6f90de6a6566bb619b4c0adc9855729e1b1b5e26533fca1bf6206e96b6d277a3", size = 159827599, upload-time = "2025-10-15T19:15:43.87Z" }, + { url = "https://files.pythonhosted.org/packages/0b/eb/09e31d107a5d00eb281aa7e6635ca463e9bca86515944e399480eadb71f8/triton-3.5.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d5d3b3d480debf24eaa739623c9a42446b0b77f95593d30eb1f64cd2278cc1f0", size = 170333110, upload-time = "2025-10-13T16:37:49.588Z" }, + { url = "https://files.pythonhosted.org/packages/79/f9/b6f60f978397c616fd8dacca2305759fe4f80d397b20ef72534803244bd5/triton-3.5.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8457b22148defefdcb7fa8144b05ce211b9faefad650a1ce85b23df488d5549c", size = 159926731, upload-time = "2025-10-15T19:15:49.682Z" }, + { url = "https://files.pythonhosted.org/packages/3d/78/949a04391c21956c816523678f0e5fa308eb5b1e7622d88c4e4ef5fceca0/triton-3.5.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f34bfa21c5b3a203c0f0eab28dcc1e49bd1f67d22724e77fb6665a659200a4ec", size = 170433488, upload-time = "2025-10-13T16:37:57.132Z" }, + { url = "https://files.pythonhosted.org/packages/87/9b/30988039e1e84df7554fba24e6a734d2d0e847af33cabdf9b532b3c51456/triton-3.5.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7da21fccceafc163e3a5e857abe34351ef76345af06cabf9637a914742671f0b", size = 159946647, upload-time = "2025-10-15T19:15:56.325Z" }, + { url = "https://files.pythonhosted.org/packages/f5/3a/e991574f3102147b642e49637e0281e9bb7c4ba254edb2bab78247c85e01/triton-3.5.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9e71db82261c4ffa3921cd050cd5faa18322d2d405c30eb56084afaff3b0833", size = 170476535, upload-time = "2025-10-13T16:38:05.18Z" }, + { url = "https://files.pythonhosted.org/packages/cd/85/e37f1197acb04c8f3d83851d23d5d6ed5060ef74580668b112e23fdfa203/triton-3.5.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:188da5b81fa2f8322c27fec1627703eac24cb9bb7ab0dfbe9925973bc1b070d3", size = 159958970, upload-time = "2025-10-15T19:16:01.717Z" }, + { url = "https://files.pythonhosted.org/packages/6c/29/10728de8a6e932e517c10773486b8e99f85d1b1d9dd87d9a9616e1fef4a1/triton-3.5.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e6bb9aa5519c084a333acdba443789e50012a4b851cd486c54f0b8dc2a8d3a12", size = 170487289, upload-time = "2025-10-13T16:38:11.662Z" }, + { url = "https://files.pythonhosted.org/packages/b8/1d/38258f05010ac17a7b058c022911c9cae6526e149b7397134a048cf5a6c2/triton-3.5.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:03127d9b33aaf979c856676b394bc059ec1d68cb6da68ae03f62dd8ad77a04ae", size = 160073012, upload-time = "2025-10-15T19:16:07.477Z" }, + { url = "https://files.pythonhosted.org/packages/5c/38/db80e48b9220c9bce872b0f616ad0446cdf554a40b85c7865cbca99ab3c2/triton-3.5.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c83f2343e1a220a716c7b3ab9fccfcbe3ad4020d189549200e2d2e8d5868bed9", size = 170577179, upload-time = "2025-10-13T16:38:17.865Z" }, + { url = "https://files.pythonhosted.org/packages/91/fe/8f5771d00227f4eb1ee034f218ed427102b989366d2275fe3b3c105a3921/triton-3.5.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:468936651d383f4a6d10068d34a627505e13af55be5d002b9f27b987e7a5f0ac", size = 159957460, upload-time = "2025-10-15T19:16:12.626Z" }, + { url = "https://files.pythonhosted.org/packages/ff/60/1810655d1d856c9a4fcc90ee8966d85f552d98c53a6589f95ab2cbe27bb8/triton-3.5.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:da0fa67ccd76c3dcfb0bffe1b1c57c685136a6bd33d141c24d9655d4185b1289", size = 170487949, upload-time = "2025-10-13T16:38:24.881Z" }, + { url = "https://files.pythonhosted.org/packages/78/59/99edd103958fe6e42b50b9ad8ce4f223ddf4ccf475259cf7d2b53381dc6c/triton-3.5.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c7ceef21410229ac23173a28eee5cfc0e37c1dfdb8b4bc11ecda2e3ecec7c686", size = 160075629, upload-time = "2025-10-15T19:16:18.746Z" }, + { url = "https://files.pythonhosted.org/packages/fb/b7/1dec8433ac604c061173d0589d99217fe7bf90a70bdc375e745d044b8aad/triton-3.5.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:317fe477ea8fd4524a6a8c499fb0a36984a56d0b75bf9c9cb6133a1c56d5a6e7", size = 170580176, upload-time = "2025-10-13T16:38:31.14Z" }, ] [[package]] @@ -5938,7 +6320,7 @@ wheels = [ [[package]] name = "wandb" -version = "0.23.0" +version = "0.22.3" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "click" }, @@ -5952,17 +6334,17 @@ dependencies = [ { name = "sentry-sdk" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/ef/8b/db2d44395c967cd452517311fd6ede5d1e07310769f448358d4874248512/wandb-0.23.0.tar.gz", hash = "sha256:e5f98c61a8acc3ee84583ca78057f64344162ce026b9f71cb06eea44aec27c93", size = 44413921, upload-time = "2025-11-11T21:06:30.737Z" } +sdist = { url = "https://files.pythonhosted.org/packages/c1/d1/6b70f365ed86bd69debba8ad55dec8606fc21006e7ca703a5a091bd3b719/wandb-0.22.3.tar.gz", hash = "sha256:04468a8ab2769a46f5e384c9c4ada5da0dced005ca689a8424e4b8b5cb2a0291", size = 44337368, upload-time = "2025-10-28T23:59:10.275Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/41/61/a3220c7fa4cadfb2b2a5c09e3fa401787326584ade86d7c1f58bf1cd43bd/wandb-0.23.0-py3-none-macosx_12_0_arm64.whl", hash = "sha256:b682ec5e38fc97bd2e868ac7615a0ab4fc6a15220ee1159e87270a5ebb7a816d", size = 18992250, upload-time = "2025-11-11T21:06:03.412Z" }, - { url = "https://files.pythonhosted.org/packages/90/16/e69333cf3d11e7847f424afc6c8ae325e1f6061b2e5118d7a17f41b6525d/wandb-0.23.0-py3-none-macosx_12_0_x86_64.whl", hash = "sha256:ec094eb71b778e77db8c188da19e52c4f96cb9d5b4421d7dc05028afc66fd7e7", size = 20045616, upload-time = "2025-11-11T21:06:07.109Z" }, - { url = "https://files.pythonhosted.org/packages/62/79/42dc6c7bb0b425775fe77f1a3f1a22d75d392841a06b43e150a3a7f2553a/wandb-0.23.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e43f1f04b98c34f407dcd2744cec0a590abce39bed14a61358287f817514a7b", size = 18758848, upload-time = "2025-11-11T21:06:09.832Z" }, - { url = "https://files.pythonhosted.org/packages/b8/94/d6ddb78334996ccfc1179444bfcfc0f37ffd07ee79bb98940466da6f68f8/wandb-0.23.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e5847f98cbb3175caf5291932374410141f5bb3b7c25f9c5e562c1988ce0bf5", size = 20231493, upload-time = "2025-11-11T21:06:12.323Z" }, - { url = "https://files.pythonhosted.org/packages/52/4d/0ad6df0e750c19dabd24d2cecad0938964f69a072f05fbdab7281bec2b64/wandb-0.23.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:6151355fd922539926e870be811474238c9614b96541773b990f1ce53368aef6", size = 18793473, upload-time = "2025-11-11T21:06:14.967Z" }, - { url = "https://files.pythonhosted.org/packages/f8/da/c2ba49c5573dff93dafc0acce691bb1c3d57361bf834b2f2c58e6193439b/wandb-0.23.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:df62e426e448ebc44269140deb7240df474e743b12d4b1f53b753afde4aa06d4", size = 20332882, upload-time = "2025-11-11T21:06:17.865Z" }, - { url = "https://files.pythonhosted.org/packages/40/65/21bfb10ee5cd93fbcaf794958863c7e05bac4bbeb1cc1b652094aa3743a5/wandb-0.23.0-py3-none-win32.whl", hash = "sha256:6c21d3eadda17aef7df6febdffdddfb0b4835c7754435fc4fe27631724269f5c", size = 19433198, upload-time = "2025-11-11T21:06:21.913Z" }, - { url = "https://files.pythonhosted.org/packages/f1/33/cbe79e66c171204e32cf940c7fdfb8b5f7d2af7a00f301c632f3a38aa84b/wandb-0.23.0-py3-none-win_amd64.whl", hash = "sha256:b50635fa0e16e528bde25715bf446e9153368428634ca7a5dbd7a22c8ae4e915", size = 19433201, upload-time = "2025-11-11T21:06:24.607Z" }, - { url = "https://files.pythonhosted.org/packages/1c/a0/5ecfae12d78ea036a746c071e4c13b54b28d641efbba61d2947c73b3e6f9/wandb-0.23.0-py3-none-win_arm64.whl", hash = "sha256:fa0181b02ce4d1993588f4a728d8b73ae487eb3cb341e6ce01c156be7a98ec72", size = 17678649, upload-time = "2025-11-11T21:06:27.289Z" }, + { url = "https://files.pythonhosted.org/packages/23/02/87fb60f587ec249f784a40bd91c30de1b2b24d691ee72675d5b66c3d0728/wandb-0.22.3-py3-none-macosx_12_0_arm64.whl", hash = "sha256:81b3b6e405f38342b0a080898b7d00c5b9375432f5ba358942a09e65cdcfe781", size = 18758047, upload-time = "2025-10-28T23:58:46.56Z" }, + { url = "https://files.pythonhosted.org/packages/26/88/64081740ef2b2efc7fbcb2139a07a849e42bcb09ae0c56ae50c41bd0ad63/wandb-0.22.3-py3-none-macosx_12_0_x86_64.whl", hash = "sha256:d29c16817cca6401b4919069ec7570c781eacb67dc0b1ff2e0096a9a59581720", size = 19798011, upload-time = "2025-10-28T23:58:49.718Z" }, + { url = "https://files.pythonhosted.org/packages/19/72/c4f922b33dbb84d1c81ee045ff8791dd14e26d79e1e9bbafff964b7043e2/wandb-0.22.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb955d73a4ba55df9adc61fafbabef5556784d33fc39c7b5c8165d2694ddeb3b", size = 18542713, upload-time = "2025-10-28T23:58:51.927Z" }, + { url = "https://files.pythonhosted.org/packages/ad/98/3ce5f6e2086d91b0c51b38ae7ff591109e7da2bb25fe1a12eec0cdbaa494/wandb-0.22.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:23f3ebe41a26506117a098fdfd2706ed0e50b37899bfbefe3a0628fcbd70c69d", size = 19984910, upload-time = "2025-10-28T23:58:54.641Z" }, + { url = "https://files.pythonhosted.org/packages/5e/57/e68cb38427b60490d6ddf1b992e6c7f36be83be1079d291ce87a8d347f48/wandb-0.22.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:2973462bed5d4a653b1a97cf9fc350673bb200fb356a2f4eba34beae9b87e0aa", size = 18581776, upload-time = "2025-10-28T23:58:56.975Z" }, + { url = "https://files.pythonhosted.org/packages/66/6d/543f907ce0c6b6da13628b23d19ca7282c559fd73eb47b04977b9a61d0c6/wandb-0.22.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:c5c2bd18f95c1639863c527da0a5818ac6b0e5194f9c691426b265908ddd8b2c", size = 20078800, upload-time = "2025-10-28T23:58:59.217Z" }, + { url = "https://files.pythonhosted.org/packages/da/91/1decaf1a6ac2017481c782e0fad7f90bc9ae4057f3d76d478cb6527f3dd3/wandb-0.22.3-py3-none-win32.whl", hash = "sha256:09ca1edfe0fd6dc30447d368acddb825668e60ee705c98594a6bbfd30d34d47e", size = 19160297, upload-time = "2025-10-28T23:59:01.536Z" }, + { url = "https://files.pythonhosted.org/packages/4c/ba/3b092634279994b0c79fe05220532822be09f3a353ae95c54e7142769db8/wandb-0.22.3-py3-none-win_amd64.whl", hash = "sha256:55403bf93872c9978433d101324f51e43e78c70c809bf6d06ca7b2760e39f497", size = 19160300, upload-time = "2025-10-28T23:59:04.06Z" }, + { url = "https://files.pythonhosted.org/packages/7f/80/4662fce9eebcc8c71f5083e9152ccaf7d43d4ca9c446e1422f9aa784a51c/wandb-0.22.3-py3-none-win_arm64.whl", hash = "sha256:49f66b05882abfa53816cc8d01b3c2435a89c5a090176802fa6928b5979d34d9", size = 17461959, upload-time = "2025-10-28T23:59:07.059Z" }, ] [[package]] @@ -6193,6 +6575,22 @@ wheels = [ name = "wrapt" version = "1.17.3" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and sys_platform != 'linux'", + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", +] sdist = { url = "https://files.pythonhosted.org/packages/95/8f/aeb76c5b46e273670962298c23e7ddde79916cb74db802131d49a85e4b7d/wrapt-1.17.3.tar.gz", hash = "sha256:f66eb08feaa410fe4eebd17f2a2c8e2e46d3476e9f8c783daa8e09e0faa666d0", size = 55547, upload-time = "2025-08-12T05:53:21.714Z" } wheels = [ { url = "https://files.pythonhosted.org/packages/3f/23/bb82321b86411eb51e5a5db3fb8f8032fd30bd7c2d74bfe936136b2fa1d6/wrapt-1.17.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:88bbae4d40d5a46142e70d58bf664a89b6b4befaea7b2ecc14e03cedb8e06c04", size = 53482, upload-time = "2025-08-12T05:51:44.467Z" }, @@ -6258,6 +6656,131 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/1f/f6/a933bd70f98e9cf3e08167fc5cd7aaaca49147e48411c0bd5ae701bb2194/wrapt-1.17.3-py3-none-any.whl", hash = "sha256:7171ae35d2c33d326ac19dd8facb1e82e5fd04ef8c6c0e394d7af55a55051c22", size = 23591, upload-time = "2025-08-12T05:53:20.674Z" }, ] +[[package]] +name = "wrapt" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version == '3.11.*' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform == 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", + "python_full_version < '3.11' and sys_platform != 'linux' and extra != 'extra-13-megatron-core-dev' and extra != 'extra-13-megatron-core-lts'", +] +sdist = { url = "https://files.pythonhosted.org/packages/49/19/5e5bcd855d808892fe02d49219f97a50f64cd6d8313d75df3494ee97b1a3/wrapt-2.0.0.tar.gz", hash = "sha256:35a542cc7a962331d0279735c30995b024e852cf40481e384fd63caaa391cbb9", size = 81722, upload-time = "2025-10-19T23:47:54.07Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ee/db/ac9546e89b645e525686727f8749847485e3b45ffc4507b61c4669358638/wrapt-2.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a7cebcee61f21b1e46aa32db8d9d93826d0fbf1ad85defc2ccfb93b4adef1435", size = 77431, upload-time = "2025-10-19T23:45:25.177Z" }, + { url = "https://files.pythonhosted.org/packages/74/bc/3b57c8012bbd0d02eec5ae838681c1a819df6c5e765ebc897f52623b5eb1/wrapt-2.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:827e6e3a3a560f6ec1f5ee92d4319c21a0549384f896ec692f3201eda31ebd11", size = 60644, upload-time = "2025-10-19T23:45:27.511Z" }, + { url = "https://files.pythonhosted.org/packages/b8/6e/b5e7d47713e3d46c30ec6ae83fafd369bc34de8148668c6e3168d9301863/wrapt-2.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1a91075a5383a7cbfe46aed1845ef7c3f027e8e20e7d9a8a75e36ebc9b0dd15e", size = 61526, upload-time = "2025-10-19T23:45:28.789Z" }, + { url = "https://files.pythonhosted.org/packages/28/8d/d5df2af58ae479785473607a3b25726c295640cdcaee830847cee339eff9/wrapt-2.0.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b6a18c813196e18146b8d041e20875bdb0cb09b94ac1d1e1146e0fa87b2deb0d", size = 113638, upload-time = "2025-10-19T23:45:31.977Z" }, + { url = "https://files.pythonhosted.org/packages/f9/b7/9501c45ab93b4d6ba396ef02fcfb55867866bc8579fff045bb54cae58423/wrapt-2.0.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ec5028d26011a53c76bd91bb6198b30b438c6e0f7adb45f2ad84fe2655b6a104", size = 115651, upload-time = "2025-10-19T23:45:33.257Z" }, + { url = "https://files.pythonhosted.org/packages/5e/3a/bfebe2ba51cf98ae80c5dbb6fa5892ae75d1acf1a4c404eda88e28f5ab06/wrapt-2.0.0-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:bed9b04900204721a24bcefc652ca267b01c1e8ad8bc8c0cff81558a45a3aadc", size = 112060, upload-time = "2025-10-19T23:45:30.298Z" }, + { url = "https://files.pythonhosted.org/packages/00/e7/cd50a32bed022d98f61a90e57faf782aa063f7930f57eb67eb105d3189be/wrapt-2.0.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:03442f2b45fa3f2b98a94a1917f52fb34670de8f96c0a009c02dbd512d855a3d", size = 114829, upload-time = "2025-10-19T23:45:34.23Z" }, + { url = "https://files.pythonhosted.org/packages/9d/2c/c709578271df0c70a27ab8f797c44c258650f24a32b452f03d7afedc070d/wrapt-2.0.0-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:17d0b5c42495ba142a1cee52b76414f9210591c84aae94dffda70240753bfb3c", size = 111249, upload-time = "2025-10-19T23:45:35.554Z" }, + { url = "https://files.pythonhosted.org/packages/60/ef/cb58f6eea41f129600bda68d1ae4c80b14d4e0663eec1d5220cbffe50be5/wrapt-2.0.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ee44215e7d13e112a8fc74e12ed1a1f41cab2bc07b11cc703f2398cd114b261c", size = 113312, upload-time = "2025-10-19T23:45:36.66Z" }, + { url = "https://files.pythonhosted.org/packages/59/55/97e6c4e1c175fb27f8dec717a3e36493ff0c4e50173a95f439496556910f/wrapt-2.0.0-cp310-cp310-win32.whl", hash = "sha256:fe6eafac3bc3c957ab6597a0c0654a0a308868458d00d218743e5b5fae51951c", size = 57961, upload-time = "2025-10-19T23:45:40.958Z" }, + { url = "https://files.pythonhosted.org/packages/3b/0a/898b1d81ae1f3dd9a79fd2e0330a7c8dd793982f815a318548777cb21ee5/wrapt-2.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:9e070c3491397fba0445b8977900271eca9656570cca7c900d9b9352186703a0", size = 60311, upload-time = "2025-10-19T23:45:38.033Z" }, + { url = "https://files.pythonhosted.org/packages/44/f1/e7e92f9535f5624ee22879f09456df9d1f1ae9bb338eef711077b48e456a/wrapt-2.0.0-cp310-cp310-win_arm64.whl", hash = "sha256:806e2e73186eb5e3546f39fb5d0405040e0088db0fc8b2f667fd1863de2b3c99", size = 58822, upload-time = "2025-10-19T23:45:39.785Z" }, + { url = "https://files.pythonhosted.org/packages/12/8f/8e4c8b6da60b4205191d588cbac448fb9ff4f5ed89f4e555dc4813ab30cf/wrapt-2.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:b7e221abb6c5387819db9323dac3c875b459695057449634f1111955d753c621", size = 77433, upload-time = "2025-10-19T23:45:42.543Z" }, + { url = "https://files.pythonhosted.org/packages/22/9a/01a29ccb029aa8e78241f8b53cb89ae8826c240129abbbb6ebba3416eff9/wrapt-2.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1147a84c8fc852426580af8b6e33138461ddbc65aa459a25ea539374d32069fa", size = 60641, upload-time = "2025-10-19T23:45:43.866Z" }, + { url = "https://files.pythonhosted.org/packages/3d/ec/e058997971428b7665b5c3665a55b18bb251ea7e08d002925e3ca017c020/wrapt-2.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5d6691d4a711504a0bc10de789842ad6ac627bed22937b10f37a1211a8ab7bb3", size = 61526, upload-time = "2025-10-19T23:45:44.839Z" }, + { url = "https://files.pythonhosted.org/packages/70/c3/c82263503f554715aa1847e85dc75a69631a54e9d7ab0f1a55e34a22d44a/wrapt-2.0.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:f460e1eb8e75a17c3918c8e35ba57625721eef2439ef0bcf05304ac278a65e1d", size = 114069, upload-time = "2025-10-19T23:45:47.223Z" }, + { url = "https://files.pythonhosted.org/packages/dc/97/d95e88a3a1bc2890a1aa47880c2762cf0eb6d231b5a64048e351cec6f071/wrapt-2.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:12c37784b77bf043bf65cc96c7195a5db474b8e54173208af076bdbb61df7b3e", size = 116109, upload-time = "2025-10-19T23:45:48.252Z" }, + { url = "https://files.pythonhosted.org/packages/dc/36/cba0bf954f2303897b80fa5342499b43f8c5201110dddf0d578d6841b149/wrapt-2.0.0-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:75e5c049eb583835f7a0e0e311d9dde9bfbaac723a6dd89d052540f9b2809977", size = 112500, upload-time = "2025-10-19T23:45:45.838Z" }, + { url = "https://files.pythonhosted.org/packages/d7/2b/8cb88e63bec989f641d208acb3fd198bfdbbb4ef7dfb71f0cac3c90b07a9/wrapt-2.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:e50bcbd5b65dac21b82319fcf18486e6ac439947e9305034b00704eb7405f553", size = 115356, upload-time = "2025-10-19T23:45:49.249Z" }, + { url = "https://files.pythonhosted.org/packages/bb/60/a6d5fb94648cd430648705bef9f4241bd22ead123ead552b6d2873ad5240/wrapt-2.0.0-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:06b78cb6b9320f57737a52fede882640d93cface98332d1a3df0c5696ec9ae9f", size = 111754, upload-time = "2025-10-19T23:45:51.21Z" }, + { url = "https://files.pythonhosted.org/packages/d0/44/1963854edf0592ae806307899dc7bf891e76cec19e598f55845c94603a65/wrapt-2.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:8c8349ebfc3cd98bc9105e0112dd8c8ac1f3c7cb5601f9d02248cae83a63f748", size = 113789, upload-time = "2025-10-19T23:45:52.473Z" }, + { url = "https://files.pythonhosted.org/packages/62/ec/4b1d76cb6d96ac511aaaa92efc57f528e57f06082a595b8b2663fcdb0f20/wrapt-2.0.0-cp311-cp311-win32.whl", hash = "sha256:028f19ec29e204fe725139d4a8b09f77ecfb64f8f02b7ab5ee822c85e330b68b", size = 57954, upload-time = "2025-10-19T23:45:57.03Z" }, + { url = "https://files.pythonhosted.org/packages/d4/cf/df8ff9bd64d4a75f9a9f6c1c93480a51904d0c9bd71c11994301c47d8a33/wrapt-2.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:c6961f05e58d919153ba311b397b7b904b907132b7b8344dde47865d4bb5ec89", size = 60308, upload-time = "2025-10-19T23:45:54.314Z" }, + { url = "https://files.pythonhosted.org/packages/69/d8/61e245fe387d58d84b3f913d5da9d909c4f239b887db692a05105aaf2a1b/wrapt-2.0.0-cp311-cp311-win_arm64.whl", hash = "sha256:be7e316c2accd5a31dbcc230de19e2a846a325f8967fdea72704d00e38e6af06", size = 58822, upload-time = "2025-10-19T23:45:55.772Z" }, + { url = "https://files.pythonhosted.org/packages/3c/28/7f266b5bf50c3ad0c99c524d99faa0f7d6eecb045d950e7d2c9e1f0e1338/wrapt-2.0.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:73c6f734aecb1a030d9a265c13a425897e1ea821b73249bb14471445467ca71c", size = 78078, upload-time = "2025-10-19T23:45:58.855Z" }, + { url = "https://files.pythonhosted.org/packages/06/0c/bbdcad7eb535fae9d6b0fcfa3995c364797cd8e2b423bba5559ab2d88dcf/wrapt-2.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b4a7f8023b8ce8a36370154733c747f8d65c8697cb977d8b6efeb89291fff23e", size = 61158, upload-time = "2025-10-19T23:46:00.096Z" }, + { url = "https://files.pythonhosted.org/packages/d3/8a/bba3e7a4ebf4d1624103ee59d97b78a1fbb08fb5753ff5d1b69f5ef5e863/wrapt-2.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a1cb62f686c50e9dab5983c68f6c8e9cbf14a6007935e683662898a7d892fa69", size = 61646, upload-time = "2025-10-19T23:46:01.279Z" }, + { url = "https://files.pythonhosted.org/packages/ff/0c/0f565294897a72493dbafe7b46229b5f09f3776795a894d6b737e98387de/wrapt-2.0.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:43dc0550ae15e33e6bb45a82a5e1b5495be2587fbaa996244b509921810ee49f", size = 121442, upload-time = "2025-10-19T23:46:04.287Z" }, + { url = "https://files.pythonhosted.org/packages/da/80/7f03501a8a078ad79b19b1a888f9192a9494e62ddf8985267902766a4f30/wrapt-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:39c5b45b056d630545e40674d1f5e1b51864b3546f25ab6a4a331943de96262e", size = 123018, upload-time = "2025-10-19T23:46:06.052Z" }, + { url = "https://files.pythonhosted.org/packages/37/6b/ad0e1ff98359f13b4b0c2c52848e792841146fe79ac5f56899b9a028fc0d/wrapt-2.0.0-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:804e88f824b76240a1b670330637ccfd2d18b9efa3bb4f02eb20b2f64880b324", size = 117369, upload-time = "2025-10-19T23:46:02.53Z" }, + { url = "https://files.pythonhosted.org/packages/ac/6c/a90437bba8cb1ce2ed639af979515e09784678c2a7f4ffc79f2cf7de809e/wrapt-2.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:c2c476aa3fc2b9899c3f7b20963fac4f952e7edb74a31fc92f7745389a2e3618", size = 121453, upload-time = "2025-10-19T23:46:07.747Z" }, + { url = "https://files.pythonhosted.org/packages/2c/a9/b3982f9bd15bd45857a23c48b7c36e47d05db4a4dcc5061c31f169238845/wrapt-2.0.0-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:8d851e526891216f89fcb7a1820dad9bd503ba3468fb9635ee28e93c781aa98e", size = 116250, upload-time = "2025-10-19T23:46:09.385Z" }, + { url = "https://files.pythonhosted.org/packages/73/e2/b7a8b1afac9f791d8f5eac0d9726559f1d7ec4a2b5a6b4e67ac145b007a5/wrapt-2.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b95733c2360c4a8656ee93c7af78e84c0bd617da04a236d7a456c8faa34e7a2d", size = 120575, upload-time = "2025-10-19T23:46:11.882Z" }, + { url = "https://files.pythonhosted.org/packages/a2/0f/37920eeea96094f450ae35505d39f1135df951a2cdee0d4e01d4f843396a/wrapt-2.0.0-cp312-cp312-win32.whl", hash = "sha256:ea56817176834edf143df1109ae8fdaa087be82fdad3492648de0baa8ae82bf2", size = 58175, upload-time = "2025-10-19T23:46:15.678Z" }, + { url = "https://files.pythonhosted.org/packages/f0/db/b395f3b0c7f2c60d9219afacc54ceb699801ccf2d3d969ba556dc6d3af20/wrapt-2.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:3c7d3bee7be7a2665286103f4d1f15405c8074e6e1f89dac5774f9357c9a3809", size = 60415, upload-time = "2025-10-19T23:46:12.913Z" }, + { url = "https://files.pythonhosted.org/packages/86/22/33d660214548af47fc59d9eec8c0e0693bcedc5b3a0b52e8cbdd61f3b646/wrapt-2.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:680f707e1d26acbc60926659799b15659f077df5897a6791c7c598a5d4a211c4", size = 58911, upload-time = "2025-10-19T23:46:13.889Z" }, + { url = "https://files.pythonhosted.org/packages/18/0a/dd88abfe756b1aa79f0777e5ee4ce9e4b5dc4999bd805e9b04b52efc7b18/wrapt-2.0.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:e2ea096db28d5eb64d381af0e93464621ace38a7003a364b6b5ffb7dd713aabe", size = 78083, upload-time = "2025-10-19T23:46:16.937Z" }, + { url = "https://files.pythonhosted.org/packages/7f/b9/8afebc1655a863bb2178b23c2d699b8743f3a7dab466904adc6155f3c858/wrapt-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c92b5a82d28491e3f14f037e1aae99a27a5e6e0bb161e65f52c0445a3fa7c940", size = 61156, upload-time = "2025-10-19T23:46:17.927Z" }, + { url = "https://files.pythonhosted.org/packages/bb/8b/f710a6528ccc52e21943f42c8cf64814cde90f9adbd3bcd58c7c274b4f75/wrapt-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:81d234718aabe632d179fac52c7f69f0f99fbaac4d4bcd670e62462bbcbfcad7", size = 61641, upload-time = "2025-10-19T23:46:19.229Z" }, + { url = "https://files.pythonhosted.org/packages/e4/5f/e4eabd0cc6684c5b208c2abc5c3459449c4d15be1694a9bbcf51e0e135fd/wrapt-2.0.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:db2eea83c43f84e4e41dbbb4c1de371a53166e55f900a6b130c3ef51c6345c1a", size = 121454, upload-time = "2025-10-19T23:46:21.808Z" }, + { url = "https://files.pythonhosted.org/packages/6f/c4/ec31ee17cc7866960d323609ba7402be786d211a6d713a59f776c4270bb3/wrapt-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:65f50e356c425c061e1e17fe687ff30e294fed9bf3441dc1f13ef73859c2a817", size = 123063, upload-time = "2025-10-19T23:46:23.545Z" }, + { url = "https://files.pythonhosted.org/packages/b0/2b/a4b10c3c0022e40aeae9bec009bafb049f440493f0575ebb27ecf61c32f8/wrapt-2.0.0-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:887f2a667e3cbfb19e204032d42ad7dedaa43972e4861dc7a3d51ae951d9b578", size = 117401, upload-time = "2025-10-19T23:46:20.433Z" }, + { url = "https://files.pythonhosted.org/packages/2a/4a/ade23a76967e1f148e461076a4d0e24a7950a5f18b394c9107fe60224ae2/wrapt-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9054829da4be461e3ad3192e4b6bbf1fc18af64c9975ce613aec191924e004dc", size = 121485, upload-time = "2025-10-19T23:46:24.85Z" }, + { url = "https://files.pythonhosted.org/packages/cb/ba/33b5f3e2edede4e1cfd259f0d9c203cf370f259bb9b215dd58fc6cbb94e9/wrapt-2.0.0-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:b952ffd77133a5a2798ee3feb18e51b0a299d2f440961e5bb7737dbb02e57289", size = 116276, upload-time = "2025-10-19T23:46:27.006Z" }, + { url = "https://files.pythonhosted.org/packages/eb/bf/b7f95bb4529a35ca11eb95d48f9d1a563b495471f7cf404c644566fb4293/wrapt-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e25fde03c480061b8234d8ee4863eb5f40a9be4fb258ce105b364de38fc6bcf9", size = 120578, upload-time = "2025-10-19T23:46:28.679Z" }, + { url = "https://files.pythonhosted.org/packages/f8/71/984849df6f052592474a44aafd6b847e1cffad39b0debc5390a04aa46331/wrapt-2.0.0-cp313-cp313-win32.whl", hash = "sha256:49e982b7860d325094978292a49e0418833fc7fc42c0dc7cd0b7524d7d06ee74", size = 58178, upload-time = "2025-10-19T23:46:32.372Z" }, + { url = "https://files.pythonhosted.org/packages/f9/3b/4e1fc0f2e1355fbc55ab248311bf4c958dbbd96bd9183b9e96882cc16213/wrapt-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:6e5c86389d9964050ce50babe247d172a5e3911d59a64023b90db2b4fa00ae7c", size = 60423, upload-time = "2025-10-19T23:46:30.041Z" }, + { url = "https://files.pythonhosted.org/packages/20/0a/9384e0551f56fe361f41bb8f209a13bb9ef689c3a18264225b249849b12c/wrapt-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:b96fdaa4611e05c7231937930567d3c16782be9dbcf03eb9f60d83e57dd2f129", size = 58918, upload-time = "2025-10-19T23:46:31.056Z" }, + { url = "https://files.pythonhosted.org/packages/68/70/37b90d3ee5bf0d0dc4859306383da08b685c9a51abff6fd6b0a7c052e117/wrapt-2.0.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:f2c7b7fead096dbf1dcc455b7f59facb05de3f5bfb04f60a69f98cdfe6049e5f", size = 81980, upload-time = "2025-10-19T23:46:33.368Z" }, + { url = "https://files.pythonhosted.org/packages/95/23/0ce69cc90806b90b3ee4cfd9ad8d2ee9becc3a1aab7df3c3bfc7d0904cb6/wrapt-2.0.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:04c7c8393f25b11c0faa5d907dd9eb462e87e4e7ba55e308a046d7ed37f4bbe2", size = 62900, upload-time = "2025-10-19T23:46:34.415Z" }, + { url = "https://files.pythonhosted.org/packages/54/76/03ec08170c02f38f3be3646977920976b968e0b704a0693a98f95d02f4d2/wrapt-2.0.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a93e0f8b376c0735b2f4daf58018b4823614d2b896cb72b6641c4d3dbdca1d75", size = 63636, upload-time = "2025-10-19T23:46:35.643Z" }, + { url = "https://files.pythonhosted.org/packages/75/c1/04ce0511e504cdcd84cdb6980bc7d4efa38ac358e8103d6dd0cd278bfc6d/wrapt-2.0.0-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b42d13603da4416c43c430dbc6313c8d7ff745c40942f146ed4f6dd02c7d2547", size = 152650, upload-time = "2025-10-19T23:46:38.717Z" }, + { url = "https://files.pythonhosted.org/packages/17/06/cd2e32b5f744701189c954f9ab5eee449c86695b13f414bb8ea7a83f6d48/wrapt-2.0.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c8bbd2472abf8c33480ad2314b1f8fac45d592aba6cc093e8839a7b2045660e6", size = 158811, upload-time = "2025-10-19T23:46:40.875Z" }, + { url = "https://files.pythonhosted.org/packages/7d/a2/a6d920695cca62563c1b969064e5cd2051344a6e330c184b6f80383d87e4/wrapt-2.0.0-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e64a3a1fd9a308ab9b815a2ad7a65b679730629dbf85f8fc3f7f970d634ee5df", size = 146033, upload-time = "2025-10-19T23:46:37.351Z" }, + { url = "https://files.pythonhosted.org/packages/c6/90/7fd2abe4ec646bc43cb6b0d05086be6fcf15e64f06f51fc4198804396d68/wrapt-2.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:d61214525eaf88e0d0edf3d1ad5b5889863c6f88e588c6cdc6aa4ee5d1f10a4a", size = 155673, upload-time = "2025-10-19T23:46:42.582Z" }, + { url = "https://files.pythonhosted.org/packages/5f/8d/6cce7f8c41633e677ac8aa34e84b53a22a645ec2a680deb991785ca2798d/wrapt-2.0.0-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:04f7a5f92c5f7324a1735043cc467b1295a1c5b4e0c1395472b7c44706e3dc61", size = 144364, upload-time = "2025-10-19T23:46:44.381Z" }, + { url = "https://files.pythonhosted.org/packages/72/42/9570349e03afa9d83daf7f33ffb17e8cdc62d7e84c0d09005d0f51912efa/wrapt-2.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2356f76cb99b3de5b4e5b8210367fbbb81c7309fe39b622f5d199dd88eb7f765", size = 150275, upload-time = "2025-10-19T23:46:45.662Z" }, + { url = "https://files.pythonhosted.org/packages/f2/d8/448728e6fe030e5c4f1022c82cd3af1de1c672fa53d2d5b36b32a55ce7bf/wrapt-2.0.0-cp313-cp313t-win32.whl", hash = "sha256:0a921b657a224e40e4bc161b5d33934583b34f0c9c5bdda4e6ac66f9d2fcb849", size = 59867, upload-time = "2025-10-19T23:46:49.593Z" }, + { url = "https://files.pythonhosted.org/packages/8f/b1/ad812b1fe1cd85f6498dc3a3c9809a1e880d6108283b1735119bec217041/wrapt-2.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:c16f6d4eea98080f6659a8a7fc559d4a0a337ee66960659265cad2c8a40f7c0f", size = 63170, upload-time = "2025-10-19T23:46:46.87Z" }, + { url = "https://files.pythonhosted.org/packages/7f/29/c105b1e76650c82823c491952a7a8eafe09b78944f7a43f22d37ed860229/wrapt-2.0.0-cp313-cp313t-win_arm64.whl", hash = "sha256:52878edc13dc151c58a9966621d67163a80654bc6cff4b2e1c79fa62d0352b26", size = 60339, upload-time = "2025-10-19T23:46:47.862Z" }, + { url = "https://files.pythonhosted.org/packages/f8/38/0dd39f83163fd28326afba84e3e416656938df07e60a924ac4d992b30220/wrapt-2.0.0-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:79a53d86c2aff7b32cc77267e3a308365d1fcb881e74bc9cbe26f63ee90e37f0", size = 78242, upload-time = "2025-10-19T23:46:51.096Z" }, + { url = "https://files.pythonhosted.org/packages/08/ef/fa7a5c1d73f8690c712f9d2e4615700c6809942536dd3f441b9ba650a310/wrapt-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d731a4f22ed6ffa4cb551b4d2b0c24ff940c27a88edaf8e3490a5ee3a05aef71", size = 61207, upload-time = "2025-10-19T23:46:52.558Z" }, + { url = "https://files.pythonhosted.org/packages/23/d9/67cb93da492eb0a1cb17b7ed18220d059e58f00467ce6728b674d3441b3d/wrapt-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:3e02ab8c0ac766a5a6e81cd3b6cc39200c69051826243182175555872522bd5a", size = 61748, upload-time = "2025-10-19T23:46:54.468Z" }, + { url = "https://files.pythonhosted.org/packages/e5/be/912bbd70cc614f491b526a1d7fe85695b283deed19287b9f32460178c54d/wrapt-2.0.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:895870602d65d7338edb3b6a717d856632ad9f14f7ff566214e4fb11f0816649", size = 120424, upload-time = "2025-10-19T23:46:57.575Z" }, + { url = "https://files.pythonhosted.org/packages/b2/e1/10df8937e7da2aa9bc3662a4b623e51a323c68f42cad7b13f0e61a700ce2/wrapt-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0b9ad4fab76a0086dc364c4f17f39ad289600e73ef5c6e9ab529aff22cac1ac3", size = 122804, upload-time = "2025-10-19T23:46:59.308Z" }, + { url = "https://files.pythonhosted.org/packages/f3/60/576751b1919adab9f63168e3b5fd46c0d1565871b1cc4c2569503ccf4be6/wrapt-2.0.0-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e7ca0562606d7bad2736b2c18f61295d61f50cd3f4bfc51753df13614dbcce1b", size = 117398, upload-time = "2025-10-19T23:46:55.814Z" }, + { url = "https://files.pythonhosted.org/packages/ec/55/243411f360cc27bae5f8e21c16f1a8d87674c5534f4558e8a97c1e0d1c6f/wrapt-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:fe089d9f5a4a3dea0108a8ae34bced114d0c4cca417bada1c5e8f42d98af9050", size = 121230, upload-time = "2025-10-19T23:47:01.347Z" }, + { url = "https://files.pythonhosted.org/packages/d6/23/2f21f692c3b3f0857cb82708ce0c341fbac55a489d4025ae4e3fd5d5de8c/wrapt-2.0.0-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:e761f2d2f8dbc80384af3d547b522a80e67db3e319c7b02e7fd97aded0a8a678", size = 116296, upload-time = "2025-10-19T23:47:02.659Z" }, + { url = "https://files.pythonhosted.org/packages/bd/ed/678957fad212cfb1b65b2359d62f5619f5087d1d1cf296c6a996be45171c/wrapt-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:17ba1bdc52d0c783481850996aa26cea5237720769197335abea2ae6b4c23bc0", size = 119602, upload-time = "2025-10-19T23:47:03.775Z" }, + { url = "https://files.pythonhosted.org/packages/dc/e3/aeb4c3b052d3eed95e61babc20dcb1a512651e098cca4b84a6896585c06a/wrapt-2.0.0-cp314-cp314-win32.whl", hash = "sha256:f73318741b141223a4674ba96992aa2291b1b3f7a5e85cb3c2c964f86171eb45", size = 58649, upload-time = "2025-10-19T23:47:07.382Z" }, + { url = "https://files.pythonhosted.org/packages/aa/2a/a71c51cb211798405b59172c7df5789a5b934b18317223cf22e0c6f852de/wrapt-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:8e08d4edb13cafe7b3260f31d4de033f73d3205774540cf583bffaa4bec97db9", size = 60897, upload-time = "2025-10-19T23:47:04.862Z" }, + { url = "https://files.pythonhosted.org/packages/f8/a5/acc5628035d06f69e9144cca543ca54c33b42a5a23b6f1e8fa131026db89/wrapt-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:af01695c2b7bbd8d67b869d8e3de2b123a7bfbee0185bdd138c2775f75373b83", size = 59306, upload-time = "2025-10-19T23:47:05.883Z" }, + { url = "https://files.pythonhosted.org/packages/a7/e6/1318ca07d7fcee57e4592a78dacd9d5493b8ddd971c553a62904fb2c0cf2/wrapt-2.0.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:057f02c13cce7b26c79624c06a3e1c2353e6dc9708525232232f6768118042ca", size = 81987, upload-time = "2025-10-19T23:47:08.7Z" }, + { url = "https://files.pythonhosted.org/packages/e7/bf/ffac358ddf61c3923d94a8b0e7620f2af1cd1b637a0fe4963a3919aa62b7/wrapt-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:79bdd84570267f3f43d609c892ae2d30b91ee4b8614c2cbfd311a2965f1c9bdb", size = 62902, upload-time = "2025-10-19T23:47:10.248Z" }, + { url = "https://files.pythonhosted.org/packages/b5/af/387c51f9e7b544fe95d852fc94f9f3866e3f7d7d39c2ee65041752f90bc2/wrapt-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:93c8b4f4d54fd401a817abbfc9bf482aa72fd447f8adf19ce81d035b3f5c762c", size = 63635, upload-time = "2025-10-19T23:47:11.746Z" }, + { url = "https://files.pythonhosted.org/packages/7c/99/d38d8c80b9cc352531d4d539a17e3674169a5cc25a7e6e5e3c27bc29893e/wrapt-2.0.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:5e09ffd31001dce71c2c2a4fc201bdba9a2f9f62b23700cf24af42266e784741", size = 152659, upload-time = "2025-10-19T23:47:15.344Z" }, + { url = "https://files.pythonhosted.org/packages/5a/2a/e154432f274e22ecf2465583386c5ceffa5e0bab3947c1c5b26cc8e7b275/wrapt-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d87c285ff04e26083c4b03546e7b74df7ba4f1f32f1dcb92e9ac13c2dbb4c379", size = 158818, upload-time = "2025-10-19T23:47:17.569Z" }, + { url = "https://files.pythonhosted.org/packages/c5/7a/3a40c453300e2898e99c27495b8109ff7cd526997d12cfb8ebd1843199a4/wrapt-2.0.0-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e52e50ea0a72ea48d1291cf8b8aaedcc99072d9dc5baba6b820486dcf4c67da8", size = 146113, upload-time = "2025-10-19T23:47:13.026Z" }, + { url = "https://files.pythonhosted.org/packages/9e/e2/3116a9eade8bea2bf5eedba3fa420e3c7d193d4b047440330d8eaf1098de/wrapt-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:1fd4c95536975895f32571073446e614d5e2810b666b64955586dcddfd438fd3", size = 155689, upload-time = "2025-10-19T23:47:19.397Z" }, + { url = "https://files.pythonhosted.org/packages/43/1c/277d3fbe9d177830ab9e54fe9253f38455b75a22d639a4bd9fa092d55ae5/wrapt-2.0.0-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:d6ebfe9283209220ed9de80a3e9442aab8fc2be5a9bbf8491b99e02ca9349a89", size = 144403, upload-time = "2025-10-19T23:47:20.779Z" }, + { url = "https://files.pythonhosted.org/packages/d8/37/ab6ddaf182248aac5ed925725ef4c69a510594764665ecbd95bdd4481f16/wrapt-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5d3ebd784804f146b7ea55359beb138e23cc18e5a5cc2cf26ad438723c00ce3a", size = 150307, upload-time = "2025-10-19T23:47:22.604Z" }, + { url = "https://files.pythonhosted.org/packages/f6/d7/df9e2d8040a3af618ff9496261cf90ca4f886fd226af0f4a69ac0c020c3b/wrapt-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:9b15940ae9debc8b40b15dc57e1ce4433f7fb9d3f8761c7fab1ddd94cb999d99", size = 60557, upload-time = "2025-10-19T23:47:26.73Z" }, + { url = "https://files.pythonhosted.org/packages/b4/c2/502bd4557a3a9199ea73cc5932cf83354bd362682162f0b14164d2e90216/wrapt-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:7a0efbbc06d3e2077476a04f55859819d23206600b4c33f791359a8e6fa3c362", size = 63988, upload-time = "2025-10-19T23:47:23.826Z" }, + { url = "https://files.pythonhosted.org/packages/1f/f2/632b13942f45db7af709f346ff38b8992c8c21b004e61ab320b0dec525fe/wrapt-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:7fec8a9455c029c8cf4ff143a53b6e7c463268d42be6c17efa847ebd2f809965", size = 60584, upload-time = "2025-10-19T23:47:25.396Z" }, + { url = "https://files.pythonhosted.org/packages/00/5c/c34575f96a0a038579683c7f10fca943c15c7946037d1d254ab9db1536ec/wrapt-2.0.0-py3-none-any.whl", hash = "sha256:02482fb0df89857e35427dfb844319417e14fae05878f295ee43fa3bf3b15502", size = 43998, upload-time = "2025-10-19T23:47:52.858Z" }, +] + [[package]] name = "xattr" version = "1.3.0" @@ -6555,6 +7078,55 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/73/ae/b48f95715333080afb75a4504487cbe142cae1268afc482d06692d605ae6/yarl-1.22.0-py3-none-any.whl", hash = "sha256:1380560bdba02b6b6c90de54133c81c9f2a453dee9912fe58c1dcced1edb7cff", size = 46814, upload-time = "2025-10-06T14:12:53.872Z" }, ] +[[package]] +name = "zarr" +version = "2.18.3" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.11' and sys_platform == 'linux'", + "python_full_version < '3.11' and sys_platform != 'linux'", +] +dependencies = [ + { name = "asciitree", marker = "python_full_version < '3.11'" }, + { name = "fasteners", marker = "python_full_version < '3.11' and sys_platform != 'emscripten'" }, + { name = "numcodecs", version = "0.13.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" }, + { name = "numpy", marker = "python_full_version < '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/23/c4/187a21ce7cf7c8f00c060dd0e04c2a81139bb7b1ab178bba83f2e1134ce2/zarr-2.18.3.tar.gz", hash = "sha256:2580d8cb6dd84621771a10d31c4d777dca8a27706a1a89b29f42d2d37e2df5ce", size = 3603224, upload-time = "2024-09-04T23:20:16.595Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ed/c9/142095e654c2b97133ff71df60979422717b29738b08bc8a1709a5d5e0d0/zarr-2.18.3-py3-none-any.whl", hash = "sha256:b1f7dfd2496f436745cdd4c7bcf8d3b4bc1dceef5fdd0d589c87130d842496dd", size = 210723, upload-time = "2024-09-04T23:20:14.491Z" }, +] + +[[package]] +name = "zarr" +version = "3.1.3" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation != 'PyPy' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_python_implementation == 'PyPy' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and sys_platform != 'linux'", +] +dependencies = [ + { name = "donfig", marker = "python_full_version >= '3.11'" }, + { name = "numcodecs", version = "0.16.3", source = { registry = "https://pypi.org/simple" }, extra = ["crc32c"], marker = "(python_full_version >= '3.11' and extra == 'extra-13-megatron-core-lts') or (extra == 'extra-13-megatron-core-dev' and extra == 'extra-13-megatron-core-lts')" }, + { name = "numpy", marker = "python_full_version >= '3.11'" }, + { name = "packaging", marker = "python_full_version >= '3.11'" }, + { name = "typing-extensions", marker = "python_full_version >= '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d6/67/14be68a7bad15eecda09b1e81fca2420f7533645fe187bf4d6104c1aad52/zarr-3.1.3.tar.gz", hash = "sha256:01342f3e26a02ed5670db608a5576fbdb8d76acb5c280bd2d0082454b1ba6f79", size = 349125, upload-time = "2025-09-18T19:32:41.688Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1a/71/9de7229515a53d1cc5705ca9c411530f711a2242f962214d9dbfe2741aa4/zarr-3.1.3-py3-none-any.whl", hash = "sha256:45f67f87f65f14fa453f99dd8110a5936b7ac69f3a21981d33e90407c80c302a", size = 276427, upload-time = "2025-09-18T19:32:40.042Z" }, +] + [[package]] name = "zipp" version = "3.23.0"