Skip to content

Support tiling#6955

Open
A-Artemis wants to merge 46 commits into
developfrom
aurelien/support-tiling
Open

Support tiling#6955
A-Artemis wants to merge 46 commits into
developfrom
aurelien/support-tiling

Conversation

@A-Artemis

@A-Artemis A-Artemis commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Summary

Added TilingDatasetFactory for wrapping the dataset subsets if tiling is enabled.
Created tiling config yamls for algorithms which were missing it.
Added basic tiling support across data module and training pipeline.

Checklist

  • The PR title and description are clear and descriptive
  • I have manually tested the changes
  • All changes are covered by automated tests
  • All related issues are linked to this PR (if applicable)
  • Documentation has been updated (if applicable)

@A-Artemis A-Artemis self-assigned this Jul 1, 2026
@A-Artemis A-Artemis linked an issue Jul 1, 2026 that may be closed by this pull request
@github-actions github-actions Bot added Geti Backend Issues related to the Geti application server Geti Library Issues related to Geti Library (OTX) labels Jul 1, 2026
@A-Artemis A-Artemis linked an issue Jul 1, 2026 that may be closed by this pull request
@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

⏱️ Backend import time — app.main

Accelerator Cumulative (s) Self (s)
cpu 4.901 0.002
xpu 3.777 0.002
cuda 4.945 0.002

@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

📊 Test coverage report

Metric Coverage
Lines 60.5%
Functions 57.0%
Branches 52.4%
Statements 60.1%

@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

🐳 Docker image sizes

Device Size
cpu 4023.4 MB (3.93 GB)
cuda 10208.4 MB (9.97 GB)
xpu 10689.1 MB (10.44 GB)

Comment thread library/src/getitune/recipe/detection/deim_dfine_l_tile.yaml
@github-actions github-actions Bot added the TEST Any changes in tests label Jul 1, 2026
Comment thread application/backend/app/execution/training/getitune_trainer.py
@A-Artemis
A-Artemis marked this pull request as ready for review July 6, 2026 13:19
@A-Artemis
A-Artemis requested a review from a team as a code owner July 6, 2026 13:19
Copilot AI review requested due to automatic review settings July 6, 2026 13:19
@A-Artemis
A-Artemis requested a review from a team as a code owner July 6, 2026 13:19
Comment thread application/backend/app/models/training_configuration/augmentation.py Outdated
Comment thread application/backend/app/models/training_configuration/augmentation.py Outdated
Comment thread application/backend/app/models/training_configuration/augmentation.py Outdated
Comment thread application/backend/tests/unit/api/schemas/test_training_configuration_view.py Outdated
Comment thread application/backend/tests/unit/api/schemas/test_training_configuration_view.py Outdated
Comment thread application/backend/app/execution/common/geti_config_converter.py Outdated
Comment thread application/backend/app/execution/common/geti_config_converter.py
Comment thread application/backend/app/execution/common/geti_config_converter.py Outdated
@A-Artemis
A-Artemis requested a review from Copilot July 16, 2026 08:36

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 67 out of 67 changed files in this pull request and generated 5 comments.

Comments suppressed due to low confidence (1)

library/src/getitune/data/dataset/tile.py:1

  • Calling patch_instance_mask_tiler() at import time introduces global side effects (mutating Datumaro's TilerRegistry) whenever this module is imported, even in non-tiling runs/tests. Consider moving the patch behind an explicit initialization point (e.g., inside TileDatasetFactory.create(...) or just before creating tiling transforms) while keeping idempotency—this reduces surprising behavior and makes the patch easier to reason about and test.

Comment thread application/backend/app/execution/training/diagnostics.py Outdated
Comment thread application/backend/app/execution/training/diagnostics.py Outdated
Comment thread application/backend/app/execution/base.py Outdated
Comment thread application/backend/tests/unit/execution/common/test_geti_config_converter.py Outdated
Comment thread application/backend/app/core/logging/utils.py Outdated
A-Artemis and others added 2 commits July 17, 2026 09:21
…into aurelien/support-tiling

# Conflicts:
#	application/backend/app/execution/training/getitune_trainer.py
#	library/src/getitune/backend/lightning/models/detection/base.py
#	library/src/getitune/backend/lightning/models/instance_segmentation/base.py
# Copyright (C) 2026 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

"""Runtime patches for Datumaro's experimental tiling.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be addressed on the Datumaro side. Can you create a PR there?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment thread library/src/getitune/data/module.py Outdated
Comment thread library/src/getitune/data/module.py Outdated
Comment thread library/src/getitune/data/entity/tile.py Outdated
Comment thread library/src/getitune/data/augmentation/pipeline.py Outdated
compute_kwargs = {"best_confidence_threshold": best_confidence_threshold}
return super()._compute_metrics(metric, **compute_kwargs)

def forward_tiles(self, inputs: TileBatchData) -> PredictionBatch:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment thread library/src/getitune/backend/openvino/models/base.py
Comment thread application/backend/app/execution/training/getitune_trainer.py Outdated
Comment thread application/backend/app/execution/common/geti_config_converter.py Outdated
Comment thread library/benchmark_manifest.yaml
Comment thread application/backend/app/execution/training/getitune_trainer.py Outdated
Comment thread application/backend/app/execution/training/getitune_trainer.py Outdated
@kprokofi

Copy link
Copy Markdown
Contributor

@A-Artemis can you add tiling recipes for the new edge crafter model? In the same way as for DEIMV1/V2. They share similar code base

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Geti Backend Issues related to the Geti application server Geti Library Issues related to Geti Library (OTX) TEST Any changes in tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support tiling for new models (RF-DETR, D-FINE, DINOv3 DETR) Tiling in application takes no effect during training

5 participants