[SYSTEMDS-3835] Improve efficiency of Representations in Scuro #2600

Merged
christinadionysio opened 9:03am on August 31, 2026 wanted to merge 5586 Δ into apache/systemds main from
text_rep_efficiency

Pull request #2600 quality checks

Code files and functions touched by this pull request are analyzed below.

Quality targets

How does this pull request compare to chosen code quality targets? Read more about code quality targets.

Target name Target value This PR
Maximum Diff Delta per PR 500 5586
Maximum comment count per PR 10 0
Pull request maximum business days between activity 3 14
Pull request maximum business days open 5 15

Coupled files

Are there any files from this commit that are always committed alongside another file? This often suggests that there exists code coupling to potentially remove. Read more about code coupling

Committed together % Code file
Coupled code file
Commits in PR with both
100 src/main/python/systemds/scuro/representations/x3d.py
src/main/python/systemds/scuro/representations/vgg.py
1
100 src/main/python/systemds/scuro/representations/image_bind.py
src/main/python/systemds/scuro/representations/resnet.py
1
100 src/main/python/systemds/scuro/representations/image_bind.py
src/main/python/systemds/scuro/dataloader/base_loader.py
2
100 src/main/python/systemds/scuro/representations/image_bind.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
3
100 src/main/python/systemds/scuro/representations/image_bind.py
src/main/python/systemds/scuro/representations/swin_video_transformer.py
1
100 src/main/python/systemds/scuro/representations/image_bind.py
src/main/python/systemds/scuro/representations/x3d.py
2
100 src/main/python/systemds/scuro/representations/image_bind.py
src/main/python/systemds/scuro/representations/clip.py
1
100 src/main/python/systemds/scuro/representations/image_bind.py
src/main/python/systemds/scuro/representations/vgg.py
2
100 src/main/python/systemds/scuro/drsearch/representation_dag.py
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
1
100 src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
1
100 src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
src/main/python/systemds/scuro/drsearch/node_executor.py
1
100 src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
src/main/python/systemds/scuro/drsearch/node_scheduler.py
1
100 src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
src/main/python/systemds/scuro/representations/vgg.py
1
100 src/main/python/systemds/scuro/drsearch/multimodal_optimizer.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
1
100 src/main/python/systemds/scuro/drsearch/multimodal_optimizer.py
src/main/python/systemds/scuro/drsearch/representation_dag.py
1
100 src/main/python/systemds/scuro/drsearch/multimodal_optimizer.py
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
1
100 src/main/python/systemds/scuro/drsearch/multimodal_optimizer.py
src/main/python/systemds/scuro/representations/timeseries_representations.py
1
100 src/main/python/systemds/scuro/representations/clip.py
src/main/python/systemds/scuro/representations/bert.py
2
100 src/main/python/systemds/scuro/representations/utils.py
src/main/python/systemds/scuro/representations/bert.py
1
100 src/main/python/systemds/scuro/representations/bow.py
src/main/python/systemds/scuro/representations/tfidf.py
1
100 src/main/python/systemds/scuro/modality/joined.py
src/main/python/tests/scuro/data_generator.py
1
100 src/main/python/systemds/scuro/representations/optical_flow.py
src/main/python/systemds/scuro/representations/resnet.py
1
100 src/main/python/systemds/scuro/representations/optical_flow.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
1
100 src/main/python/systemds/scuro/representations/optical_flow.py
src/main/python/systemds/scuro/representations/swin_video_transformer.py
1
100 src/main/python/systemds/scuro/representations/optical_flow.py
src/main/python/systemds/scuro/representations/x3d.py
1
100 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/bert.py
1
100 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/resnet.py
2
100 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/wav2vec.py
1
100 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/x3d.py
1
100 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/clip.py
2
100 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/vgg.py
2
100 src/main/python/systemds/scuro/representations/wav2vec.py
src/main/python/systemds/scuro/representations/bert.py
1
100 src/main/python/systemds/scuro/representations/wav2vec.py
src/main/python/systemds/scuro/representations/resnet.py
1
100 src/main/python/systemds/scuro/representations/wav2vec.py
src/main/python/systemds/scuro/representations/swin_video_transformer.py
1
100 src/main/python/systemds/scuro/representations/x3d.py
src/main/python/systemds/scuro/representations/resnet.py
1
100 src/main/python/systemds/scuro/representations/x3d.py
src/main/python/systemds/scuro/representations/swin_video_transformer.py
1
100 src/main/python/systemds/scuro/drsearch/worker_pool.py
src/main/python/systemds/scuro/utils/memory_utility.py
1
100 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
2
100 src/main/python/systemds/scuro/drsearch/worker_pool.py
src/main/python/systemds/scuro/drsearch/node_scheduler.py
1
100 src/main/python/systemds/scuro/representations/color_histogram.py
src/main/python/systemds/scuro/representations/vgg.py
1
100 src/main/python/systemds/scuro/representations/color_histogram.py
src/main/python/systemds/scuro/representations/clip.py
1
100 src/main/python/systemds/scuro/representations/color_histogram.py
src/main/python/systemds/scuro/representations/x3d.py
1
100 src/main/python/systemds/scuro/representations/color_histogram.py
src/main/python/systemds/scuro/representations/swin_video_transformer.py
1
100 src/main/python/systemds/scuro/representations/color_histogram.py
src/main/python/systemds/scuro/representations/resnet.py
1
100 src/main/python/systemds/scuro/drsearch/worker_pool.py
src/main/python/systemds/scuro/drsearch/node_executor.py
2
100 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/color_histogram.py
1
100 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/representations/clip.py
1
100 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/clip.py
2
100 src/main/python/systemds/scuro/drsearch/worker_pool.py
src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
1
100 src/main/python/systemds/scuro/drsearch/worker_pool.py
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
1
100 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/dataloader/image_loader.py
1
100 src/main/python/systemds/scuro/drsearch/worker_pool.py
src/main/python/systemds/scuro/representations/image_bind.py
2
100 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/x3d.py
1
100 src/main/python/systemds/scuro/drsearch/worker_pool.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
2
100 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/swin_video_transformer.py
2
100 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/resnet.py
2
100 src/main/python/systemds/scuro/drsearch/dag_group_executor.py
src/main/python/systemds/scuro/drsearch/representation_dag.py
1
100 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/bert.py
1
100 src/main/python/systemds/scuro/representations/openface.py
src/main/python/systemds/scuro/representations/image_bind.py
1
100 src/main/python/systemds/scuro/representations/openface.py
src/main/python/systemds/scuro/representations/vgg.py
1
100 src/main/python/systemds/scuro/drsearch/dag_group_executor.py
src/main/python/systemds/scuro/drsearch/node_executor.py
1
96 src/main/python/systemds/scuro/representations/word2vec.py
src/main/python/systemds/scuro/representations/tfidf.py
1
92 src/main/python/systemds/scuro/representations/tfidf.py
src/main/python/systemds/scuro/representations/bow.py
1
90 src/main/python/systemds/scuro/representations/mfcc.py
src/main/python/systemds/scuro/representations/mel_spectrogram.py
1
89 src/main/python/systemds/scuro/representations/tfidf.py
src/main/python/systemds/scuro/representations/word2vec.py
1
88 src/main/python/systemds/scuro/representations/bow.py
src/main/python/systemds/scuro/representations/word2vec.py
1
88 src/main/python/systemds/scuro/dataloader/base_loader.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
2
88 src/main/python/systemds/scuro/representations/x3d.py
src/main/python/systemds/scuro/representations/clip.py
1
88 src/main/python/systemds/scuro/representations/x3d.py
src/main/python/systemds/scuro/representations/image_bind.py
2
88 src/main/python/systemds/scuro/representations/wav2vec.py
src/main/python/systemds/scuro/representations/clip.py
1
87 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/wav2vec.py
1
87 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/representations/image_bind.py
2
87 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/color_histogram.py
1
87 src/main/python/systemds/scuro/representations/vgg.py
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
1
85 src/main/python/tests/scuro/test_operator_registry.py
src/main/python/tests/scuro/test_unimodal_optimizer.py
1
84 src/main/python/systemds/scuro/representations/word2vec.py
src/main/python/systemds/scuro/representations/bow.py
1
84 src/main/python/systemds/scuro/drsearch/node_scheduler.py
src/main/python/systemds/scuro/drsearch/node_executor.py
1
83 src/main/python/tests/scuro/test_window_operations.py
src/main/python/tests/scuro/test_unimodal_representations.py
1
82 src/main/python/systemds/scuro/dataloader/base_loader.py
src/main/python/systemds/scuro/representations/resnet.py
1
81 src/main/python/systemds/scuro/representations/mfcc.py
src/main/python/systemds/scuro/representations/window_aggregation.py
1
81 src/main/python/systemds/scuro/modality/unimodal_modality.py
src/main/python/systemds/scuro/modality/modality.py
1
80 src/main/python/systemds/scuro/modality/modality.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
1
78 src/main/python/systemds/scuro/representations/clip.py
src/main/python/systemds/scuro/representations/vgg.py
2
78 src/main/python/systemds/scuro/representations/clip.py
src/main/python/systemds/scuro/representations/resnet.py
2
77 src/main/python/systemds/scuro/representations/x3d.py
src/main/python/systemds/scuro/representations/color_histogram.py
1
77 src/main/python/systemds/scuro/representations/wav2vec.py
src/main/python/systemds/scuro/representations/vgg.py
1
76 src/main/python/systemds/scuro/modality/unimodal_modality.py
src/main/python/systemds/scuro/representations/resnet.py
1
76 src/main/python/tests/scuro/test_unimodal_representations.py
src/main/python/tests/scuro/test_window_operations.py
1
75 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/representations/image_bind.py
1
75 src/main/python/systemds/scuro/representations/resnet.py
src/main/python/systemds/scuro/representations/bert.py
1
75 src/main/python/systemds/scuro/representations/swin_video_transformer.py
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
1
75 src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
src/main/python/systemds/scuro/drsearch/worker_pool.py
1
75 src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
src/main/python/systemds/scuro/utils/memory_utility.py
1
75 src/main/python/systemds/scuro/drsearch/modality_shared_memory.py
src/main/python/systemds/scuro/drsearch/task.py
1
75 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/representations/color_histogram.py
1
75 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/dataloader/base_loader.py
1
75 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/representations/vgg.py
1
75 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/representations/resnet.py
1
75 src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py
src/main/python/systemds/scuro/drsearch/node_executor.py
1
72 src/main/python/systemds/scuro/dataloader/video_loader.py
src/main/python/systemds/scuro/dataloader/base_loader.py
1
72 src/main/python/systemds/scuro/dataloader/video_loader.py
src/main/python/systemds/scuro/representations/resnet.py
1
71 src/main/python/systemds/scuro/representations/clip.py
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
1
71 src/main/python/systemds/scuro/representations/bert.py
src/main/python/systemds/scuro/representations/resnet.py
1
71 src/main/python/systemds/scuro/drsearch/task.py
src/main/python/systemds/scuro/drsearch/node_executor.py
1
71 src/main/python/systemds/scuro/drsearch/task.py
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
1
71 src/main/python/systemds/scuro/drsearch/task.py
src/main/python/systemds/scuro/modality/unimodal_modality.py
1
71 src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py
src/main/python/systemds/scuro/drsearch/representation_dag.py
1
71 src/main/python/systemds/scuro/dataloader/image_loader.py
src/main/python/systemds/scuro/dataloader/video_loader.py
1
71 src/main/python/systemds/scuro/dataloader/image_loader.py
src/main/python/systemds/scuro/representations/clip.py
1
71 src/main/python/systemds/scuro/utils/memory_utility.py
src/main/python/systemds/scuro/drsearch/node_scheduler.py
1
71 src/main/python/tests/scuro/test_operator_registry.py
src/main/python/tests/scuro/test_window_operations.py
1
71 src/main/python/systemds/scuro/modality/unimodal_modality.py
src/main/python/systemds/scuro/dataloader/base_loader.py
2
71 src/main/python/tests/scuro/test_operator_registry.py
src/main/python/tests/scuro/data_generator.py
1
70 src/main/python/systemds/scuro/dataloader/base_loader.py
src/main/python/systemds/scuro/dataloader/video_loader.py
1

Biggest files changes in pull request

Estimated line counts are shown. Values may change once change summary has finished building.

Path View whole file Lines removed Lines added Final line count
src/main/python/systemds/scuro/representations/utils.py 0 287 ---
src/main/python/systemds/scuro/representations/image_bind.py 46 285 ---
src/main/python/systemds/scuro/dataloader/video_loader.py 38 119 ---
src/main/python/tests/scuro/test_unimodal_representations.py 15 495 ---
src/main/python/systemds/scuro/representations/clip.py 95 147 ---
src/main/python/tests/scuro/test_window_operations.py 0 398 ---
src/main/python/tests/scuro/test_chunked_leaf_execution.py 0 352 ---
src/main/python/tests/scuro/test_transformer_text_aggregation.py 0 353 ---
src/main/python/systemds/scuro/representations/x3d.py 68 178 ---
src/main/python/systemds/scuro/drsearch/multimodal_ga_optimizer.py 0 1103 ---
src/main/python/systemds/scuro/representations/window_aggregation.py 12 68 ---
src/main/python/systemds/scuro/representations/bert.py 59 105 ---
src/main/python/tests/scuro/test_lazy_visual_loading.py 0 177 ---
src/main/python/tests/scuro/test_window_representation_batching.py 0 141 ---
src/main/python/systemds/scuro/representations/resnet.py 60 68 ---
src/main/python/systemds/scuro/representations/vgg.py 74 74 ---
src/main/python/systemds/scuro/drsearch/representation_dag.py 36 8 ---
src/main/python/tests/scuro/test_unimodal_optimizer.py 0 222 ---
src/main/python/tests/scuro/test_neural_encoder_batching.py 0 156 ---
src/main/python/systemds/scuro/representations/swin_video_transformer.py 37 55 ---
src/main/python/systemds/scuro/modality/joined.py 0 52 ---
src/main/python/systemds/scuro/drsearch/unimodal_optimizer.py 3 75 ---
src/main/python/systemds/scuro/representations/wav2vec.py 14 79 ---
src/main/python/systemds/scuro/modality/unimodal_modality.py 16 76 ---
src/main/python/systemds/scuro/dataloader/image_loader.py 11 34 ---
src/main/python/tests/scuro/test_modality_pad.py 0 105 ---
src/main/python/tests/scuro/data_generator.py 0 37 ---
src/main/python/tests/scuro/test_multimodal_ga_optimizer.py 0 1220 ---
src/main/python/systemds/scuro/dataloader/base_loader.py 10 46 ---
src/main/python/systemds/scuro/modality/modality.py 0 24 ---
src/main/python/systemds/scuro/__init__.py 0 63 ---
src/main/python/systemds/scuro/drsearch/multimodal_optimizer.py 2 0 ---
src/main/python/systemds/scuro/representations/mfcc.py 1 4 ---
src/main/python/systemds/scuro/representations/optical_flow.py 0 4 ---
src/main/python/systemds/scuro/representations/word2vec.py 1 1 ---
src/main/python/systemds/scuro/representations/mel_spectrogram.py 1 4 ---
src/main/python/systemds/scuro/representations/color_histogram.py 0 5 ---
src/main/python/tests/scuro/test_operator_registry.py 0 7 ---
.github/workflows/python.yml 0 2 ---
src/main/python/systemds/scuro/drsearch/node_executor.py 16 103 ---
src/main/python/systemds/scuro/representations/bow.py 0 1 ---
src/main/python/systemds/scuro/representations/tfidf.py 0 1 ---
src/main/python/systemds/scuro/drsearch/dag_group_executor.py 0 0 ---
src/main/python/systemds/scuro/drsearch/worker_pool.py 7 123 ---
src/main/python/systemds/scuro/drsearch/dag_group_scheduler.py 0 0 ---
src/main/python/systemds/scuro/representations/timeseries_representations.py 1 4 ---
src/main/python/systemds/scuro/drsearch/operator_registry.py 0 0 ---
src/main/python/systemds/scuro/drsearch/task.py 1 135 ---
src/main/python/systemds/scuro/drsearch/modality_shared_memory.py 0 6 ---
src/main/python/systemds/scuro/representations/openface.py 0 577 ---
src/main/python/systemds/scuro/utils/memory_utility.py 0 20 ---
src/main/python/systemds/scuro/utils/checkpointing.py 0 0 ---
src/main/python/systemds/scuro/drsearch/ranking.py 0 126 ---
src/main/python/systemds/scuro/drsearch/node_scheduler.py 15 138 ---
src/main/python/systemds/scuro/models/model.py 0 2 ---
src/main/python/systemds/scuro/drsearch/test_set_evaluation.py 0 121 ---
src/main/python/systemds/scuro/dataloader/timeseries_loader.py 0 2 ---

️ Biggest functions grown or shrunk by pull request

Which functions had their line count change as part of this pull request?

Estimated line counts are shown. Values may change once change summary has finished building.

Qualified function name View whole function Lines removed Lines added Final line count
UnimodalModality::apply_representations 10 10 111
VideoLoader::_decode_file 2 2 37
Representation::UnimodalRepresentation::VGG19::estimate_peak_memory_bytes 3 3 35
UnimodalModality::subset 4 4 18
Representation::UnimodalRepresentation::VGG19::estimate_output_memory_bytes 1 1 5
VideoLoader::extract 4 4 4