amazon-research / embert
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
  • 33% duplication:
    • 32,645 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 11,092 duplicated lines
  • 1,301 duplicates
system33% (11,092 lines)
Duplication per Extension
py35% (5,942 lines)
c24% (2,914 lines)
jsonnet94% (1,197 lines)
y52% (901 lines)
l54% (98 lines)
h4% (40 lines)
Duplication per Component (primary)
grolp/gen28% (5,863 lines)
scripts71% (1,204 lines)
training_configs/embert94% (1,197 lines)
grolp/readers62% (1,156 lines)
grolp/utils71% (630 lines)
grolp/models14% (380 lines)
grolp/eval34% (350 lines)
grolp/envs27% (284 lines)
vision2% (28 lines)
ROOT0% (0 lines)
grolp0% (0 lines)
grolp/training0% (0 lines)
grolp/predictor0% (0 lines)
grolp/data0% (0 lines)

Duplication Between Components (50+ lines)

G grolp/gen grolp/gen grolp/utils grolp/utils grolp/gen--grolp/utils 1208

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 1,301 duplicates...
Size#FoldersFilesLinesCode
301 x 2 grolp/gen/utils
grolp/utils
game_util.py
game_util.py
9:375 (100%)
11:377 (100%)
view
198 x 2 scripts
scripts
generate_maskrcnn.py
generate_maskrcnn_horizon0.py
17:381 (44%)
17:382 (44%)
view
124 x 2 grolp/gen/utils
grolp/utils
bb_util.py
bb_util.py
4:139 (100%)
4:140 (100%)
view
123 x 2 grolp/gen/ff_planner
grolp/gen/ff_planner
y
scan-fct_pddl.y
scan-ops_pddl.y
290:441 (15%)
537:674 (13%)
view
99 x 2 training_configs/embert
training_configs/embert
embert_wide_no_objnav.jsonnet
embert_widest_no_objnav.jsonnet
18:116 (85%)
18:116 (85%)
view
98 x 2 training_configs/embert
training_configs/embert
embert_horizon0.jsonnet
embert_wide.jsonnet
18:115 (85%)
18:115 (85%)
view
98 x 2 training_configs/embert
training_configs/embert
embert_wide.jsonnet
embert_widest.jsonnet
18:115 (85%)
18:115 (85%)
view
98 x 2 training_configs/embert
training_configs/embert
embert_horizon0.jsonnet
embert_widest.jsonnet
18:115 (85%)
18:115 (85%)
view
94 x 2 training_configs/embert
training_configs/embert
embert_horizon0.jsonnet
embert_wide_no_objnav.jsonnet
22:115 (81%)
23:116 (81%)
view
94 x 2 training_configs/embert
training_configs/embert
embert_widest.jsonnet
embert_widest_no_objnav.jsonnet
22:115 (81%)
23:116 (81%)
view
94 x 2 training_configs/embert
training_configs/embert
embert_wide.jsonnet
embert_wide_no_objnav.jsonnet
22:115 (81%)
23:116 (81%)
view
94 x 2 training_configs/embert
training_configs/embert
embert_horizon0.jsonnet
embert_widest_no_objnav.jsonnet
22:115 (81%)
23:116 (81%)
view
94 x 2 scripts
scripts
generate_maskrcnn.py
generate_maskrcnn_horizon0.py
596:718 (21%)
594:716 (21%)
view
94 x 2 training_configs/embert
training_configs/embert
embert_wide.jsonnet
embert_widest_no_objnav.jsonnet
22:115 (81%)
23:116 (81%)
view
94 x 2 training_configs/embert
training_configs/embert
embert_wide_no_objnav.jsonnet
embert_widest.jsonnet
23:116 (81%)
22:115 (81%)
view
86 x 2 scripts
scripts
generate_maskrcnn.py
generate_maskrcnn_horizon0.py
435:562 (19%)
432:559 (19%)
view
83 x 2 training_configs/embert
training_configs/embert
embert_oscar_split.jsonnet
embert_oscar_split_next.jsonnet
17:99 (83%)
17:99 (83%)
view
80 x 2 grolp/gen/ff_planner
grolp/gen/ff_planner
y
scan-fct_pddl.y
scan-ops_pddl.y
702:783 (10%)
942:1024 (8%)
view
79 x 2 grolp/readers
grolp/readers
alfred.py
alfred.py
1312:1428 (4%)
1526:1642 (4%)
view
62 x 2 training_configs/embert
training_configs/embert
embert_wide_ac.jsonnet
embert_widest.jsonnet
53:114 (54%)
54:115 (53%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 45 unit duplicates...
Size#FoldersFilesLinesCode
77 x 2 scripts
scripts
generate_maskrcnn.py
generate_maskrcnn_horizon0.py
0:0 
0:0 
view
52 x 2 grolp/utils
grolp/gen/utils
game_util.py
game_util.py
0:0 
0:0 
view
44 x 2 grolp/utils
grolp/gen/utils
dataset_management_util.py
dataset_management_util.py
0:0 
0:0 
view
46 x 2 scripts
scripts
generate_maskrcnn.py
generate_maskrcnn_horizon0.py
0:0 
0:0 
view
38 x 2 grolp/utils
grolp/gen/utils
game_util.py
game_util.py
0:0 
0:0 
view
36 x 2 grolp/utils
grolp/gen/utils
bb_util.py
bb_util.py
0:0 
0:0 
view
39 x 2 grolp/utils
grolp/gen/utils
replay_json.py
replay_json.py
0:0 
0:0 
view
27 x 2 grolp/utils
grolp/gen/utils
game_util.py
game_util.py
0:0 
0:0 
view
27 x 2 grolp/utils
grolp/gen/utils
bb_util.py
bb_util.py
0:0 
0:0 
view
27 x 2 grolp/utils
grolp/gen/utils
bb_util.py
bb_util.py
0:0 
0:0 
view
29 x 2 scripts
scripts
generate_maskrcnn.py
generate_maskrcnn_horizon0.py
0:0 
0:0 
view
22 x 2 grolp/utils
grolp/gen/utils
image_util.py
image_util.py
0:0 
0:0 
view
23 x 2 scripts
scripts
compute_manip_ambiguity.py
generate_landmarks.py
0:0 
0:0 
view
18 x 2 grolp/utils
grolp/gen/utils
game_util.py
game_util.py
0:0 
0:0 
view
19 x 2 scripts
scripts
generate_maskrcnn.py
generate_maskrcnn_horizon0.py
0:0 
0:0 
view
15 x 2 grolp/utils
grolp/gen/utils
game_util.py
game_util.py
0:0 
0:0 
view
15 x 2 grolp/utils
grolp/gen/utils
game_util.py
game_util.py
0:0 
0:0 
view
15 x 2 grolp/utils
grolp/gen/utils
bb_util.py
bb_util.py
0:0 
0:0 
view
15 x 2 grolp/utils
grolp/gen/utils
dataset_management_util.py
dataset_management_util.py
0:0 
0:0 
view
13 x 2 grolp/utils
grolp/gen/utils
bb_util.py
bb_util.py
0:0 
0:0 
view