facebookresearch / vissl
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 52% duplication:
    • 43,839 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 22,899 duplicated lines
  • 34,398 duplicates
system52% (22,899 lines)
Duplication per Extension
yaml90% (19,825 lines)
py14% (3,062 lines)
js2% (12 lines)
Duplication per Component (primary)
configs/config92% (19,717 lines)
vissl/models26% (822 lines)
extra_scripts/datasets33% (789 lines)
vissl/meters58% (285 lines)
vissl/data9% (276 lines)
vissl/hooks17% (254 lines)
extra_scripts14% (170 lines)
vissl/engines55% (157 lines)
vissl/utils3% (148 lines)
vissl/config18% (108 lines)
vissl/trainer5% (66 lines)
tools10% (54 lines)
vissl/losses2% (41 lines)
website/core5% (12 lines)
tools/perf_measurement0% (0 lines)
vissl0% (0 lines)
vissl/optimizers0% (0 lines)
website0% (0 lines)
website/static0% (0 lines)
website/pages0% (0 lines)
ROOT0% (0 lines)
hydra_plugins/vissl_plugin0% (0 lines)
configs0% (0 lines)
dev/packaging0% (0 lines)
dev0% (0 lines)
dev/website_docs0% (0 lines)

Duplication Between Components (50+ lines)

G extra_scripts/datasets extra_scripts/datasets vissl/data vissl/data extra_scripts/datasets--vissl/data 166 extra_scripts extra_scripts extra_scripts--extra_scripts/datasets 150 configs/config configs/config vissl/config vissl/config configs/config--vissl/config 149

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 34,398 duplicates...
Size#FoldersFilesLinesCode
131 x 2 configs/config/debugging/pretrain/dino
configs/config/pretrain/dino
sanity.yaml
dino_16gpus_deits16.yaml
5:135 (95%)
5:135 (93%)
view
83 x 2 configs/config/pretrain/..._transformer/supervised
configs/config/pretrain/..._transformer/supervised
16gpu_convit_b.yaml
1gpu_convit_b_example.yaml
46:135 (59%)
45:135 (60%)
view
75 x 2 configs/config/pretrain/dino
configs/config/pretrain/dino
dino_16gpus_deits16.yaml
dino_16gpus_xcit_small_12_p16.yaml
65:139 (53%)
66:140 (53%)
view
71 x 2 configs/config/debugging/pretrain/dino
configs/config/pretrain/dino
sanity.yaml
dino_16gpus_xcit_small_12_p16.yaml
65:135 (51%)
66:136 (51%)
view
66 x 2 configs/config/benchmark...distribution/imagenet_a
configs/config/benchmark...distribution/imagenet_r
eval_resnet_8gpu_robustness_in1k_line...
eval_resnet_8gpu_robustness_in1k_line...
48:115 (58%)
48:115 (58%)
view
66 x 2 configs/config/benchmark...classification/euro_sat
configs/config/benchmark...age_classification/svhn
eval_resnet_8gpu_transfer_euro_sat_li...
eval_resnet_8gpu_transfer_svhn_linear...
46:112 (60%)
45:111 (60%)
view
64 x 2 configs/config/benchmark..._classification/cifar10
configs/config/benchmark...ge_classification/mnist
eval_resnet_8gpu_transfer_cifar10_lin...
eval_resnet_8gpu_transfer_mnist_linea...
46:111 (59%)
51:116 (56%)
view
64 x 2 configs/config/benchmark...assification/caltech101
configs/config/benchmark...fication/oxford_flowers
eval_resnet_8gpu_transfer_caltech101_...
eval_resnet_8gpu_transfer_oxford_flow...
48:113 (58%)
48:113 (58%)
view
64 x 2 configs/config/benchmark...classification/dsprites
configs/config/benchmark...classification/dsprites
eval_resnet_8gpu_transfer_dsprites_lo...
eval_resnet_8gpu_transfer_dsprites_or...
45:109 (59%)
45:109 (59%)
view
64 x 2 configs/config/benchmark...ge_classification/mnist
configs/config/benchmark...ge_classification/stl10
eval_resnet_8gpu_transfer_mnist_linea...
eval_resnet_8gpu_transfer_stl10_linea...
51:116 (56%)
46:111 (59%)
view
64 x 2 configs/config/benchmark..._classification/cifar10
configs/config/benchmark...ge_classification/stl10
eval_resnet_8gpu_transfer_cifar10_lin...
eval_resnet_8gpu_transfer_stl10_linea...
46:111 (59%)
46:111 (59%)
view
63 x 2 configs/config/benchmark...ation/imagenet1k/models
configs/config/benchmark...ation/imagenet1k/models
vit_b16.yaml
vit_b32.yaml
62:125 (51%)
62:125 (51%)
view
61 x 2 configs/config/benchmark...ation/imagenet1k/models
configs/config/benchmark...ation/imagenet1k/models
deit_s16.yaml
vit_b16.yaml
2:62 (48%)
2:62 (49%)
view
60 x 2 vissl/meters
vissl/meters
accuracy_list_meter.py
precision_at_k_list_meter.py
73:166 (56%)
73:167 (65%)
view
59 x 2 configs/config/benchmark...lassification/aircrafts
configs/config/benchmark...classification/cifar100
eval_resnet_8gpu_transfer_aircrafts_l...
eval_resnet_8gpu_transfer_cifar100_li...
53:113 (53%)
51:111 (54%)
view
58 x 2 configs/config/benchmark...imagenet1k/other_styles
configs/config/benchmark...imagenet1k/other_styles
eval_resnet_final_output_8gpu_transfe...
eval_resnet_res5_avgpool_output_8gpu_...
2:59 (53%)
2:59 (53%)
view
57 x 2 configs/config/benchmark/fulltune/imagenet1k
configs/config/benchmark...distribution/imagenet_a
eval_resnet_8gpu_transfer_in1k_fulltu...
eval_resnet_8gpu_robustness_in1k_full...
48:104 (55%)
48:104 (55%)
view
57 x 2 configs/config/benchmark...hot_transfer/caltech101
configs/config/benchmark...transfer/oxford_flowers
eval_resnet_8gpu_transfer_caltech101_...
eval_resnet_8gpu_transfer_oxford_flow...
49:105 (54%)
49:105 (54%)
view
57 x 2 configs/config/benchmark/fulltune/imagenet1k
configs/config/benchmark...distribution/imagenet_r
eval_resnet_8gpu_transfer_in1k_fulltu...
eval_resnet_8gpu_robustness_in1k_full...
48:104 (55%)
48:104 (55%)
view
57 x 2 configs/config/benchmark...t_transfer/dsprites_loc
configs/config/benchmark...ransfer/dsprites_orient
eval_resnet_8gpu_transfer_dsprites_lo...
eval_resnet_8gpu_transfer_dsprites_or...
48:104 (55%)
48:104 (55%)
view
Duplicated Units
The list of top 19 duplicated units.
See data for all 19 unit duplicates...
Size#FoldersFilesLinesCode
33 x 2 vissl/meters
vissl/meters
precision_at_k_list_meter.py
accuracy_list_meter.py
0:0 
0:0 
view
22 x 2 vissl/models/trunks
vissl/models/trunks
regnet.py
regnet_fsdp.py
0:0 
0:0 
view
25 x 3 extra_scripts/datasets
extra_scripts/datasets
extra_scripts/datasets
create_imagenet_sketch_data_files.py
create_imagenet_r_data_files.py
create_imagenet_a_data_files.py
0:0 
0:0 
0:0 
view
25 x 2 extra_scripts/datasets
extra_scripts/datasets
create_roxford_dataset.py
create_rparis_dataset.py
0:0 
0:0 
view
25 x 3 extra_scripts/datasets
extra_scripts/datasets
extra_scripts/datasets
create_iwilds_cam_data_files.py
create_kitti_dist_data_files.py
create_clevr_count_data_files.py
0:0 
0:0 
0:0 
view
15 x 2 vissl/data/datasets
extra_scripts/datasets
coco.py
create_coco_data_files.py
0:0 
0:0 
view
11 x 2 vissl/models/trunks
vissl/models/trunks
regnet_fsdp.py
regnet_fsdp.py
0:0 
0:0 
view
10 x 2 vissl/models/trunks
vissl/models/trunks
vision_transformer.py
convit.py
0:0 
0:0 
view
8 x 5 vissl/engines
vissl/engines
vissl/engines
vissl/engines
vissl/engines
extract_label_predictions.py
extract_features.py
extract_cluster.py
train.py
engine_registry.py
0:0 
0:0 
0:0 
0:0 
0:0 
view
8 x 2 vissl/utils/instance_retrieval_utils
vissl/utils/instance_retrieval_utils
data_util.py
data_util.py
0:0 
0:0 
view
7 x 3 vissl/models/trunks
vissl/models/trunks
vissl/models/trunks
xcit.py
xcit.py
vision_transformer.py
0:0 
0:0 
0:0 
view
7 x 3 vissl/models/trunks
vissl/models/trunks
vissl/models/trunks
xcit.py
vision_transformer.py
convit.py
0:0 
0:0 
0:0 
view
7 x 2 vissl/models/trunks
vissl/models/trunks
regnet_fsdp.py
regnet_fsdp.py
0:0 
0:0 
view
8 x 3 vissl/meters
vissl/meters
vissl/meters
precision_at_k_list_meter.py
recall_at_k_list_meter.py
accuracy_list_meter.py
0:0 
0:0 
0:0 
view
7 x 2 extra_scripts
extra_scripts
convert_caffe2_to_vissl_alexnet.py
convert_caffe2_to_torchvision_resnet.py
0:0 
0:0 
view
9 x 3 vissl/meters
vissl/meters
vissl/meters
precision_at_k_list_meter.py
recall_at_k_list_meter.py
accuracy_list_meter.py
0:0 
0:0 
0:0 
view
6 x 2 vissl/data/datasets
extra_scripts/datasets
coco.py
create_coco_data_files.py
0:0 
0:0 
view
9 x 2 vissl/data/datasets
extra_scripts/datasets
pascal_voc.py
create_voc_data_files.py
0:0 
0:0 
view
6 x 4 vissl/meters
vissl/meters
vissl/meters
vissl/meters
precision_at_k_list_meter.py
mean_ap_list_meter.py
recall_at_k_list_meter.py
accuracy_list_meter.py
0:0 
0:0 
0:0 
0:0 
view