facebookresearch / phyre-fwd
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
  • 43% duplication:
    • 20,553 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 8,941 duplicated lines
  • 331 duplicates
system43% (8,941 lines)
Duplication per Extension
py52% (8,814 lines)
cpp5% (90 lines)
h6% (21 lines)
yaml3% (16 lines)
Duplication per Component (primary)
src/python54% (4,086 lines)
data/task_scripts100% (4,023 lines)
agents13% (693 lines)
src/simulator5% (111 lines)
agents/conf3% (16 lines)
scripts/offline_simulation9% (12 lines)
ROOT0% (0 lines)
scripts0% (0 lines)
src/if0% (0 lines)
src/viz0% (0 lines)

Duplication Between Components (50+ lines)

G data/task_scripts data/task_scripts src/python src/python data/task_scripts--src/python 8046

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 331 duplicates...
Size#FoldersFilesLinesCode
99 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00016.py
task00016.py
20:136 (100%)
20:136 (100%)
view
99 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00361.py
task00361.py
19:135 (100%)
19:135 (100%)
view
86 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00360.py
task00360.py
19:116 (100%)
19:116 (100%)
view
71 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00274.py
task00274.py
21:109 (100%)
21:109 (100%)
view
69 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00121.py
task00121.py
18:110 (100%)
18:110 (100%)
view
69 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00604.py
task00604.py
18:96 (100%)
18:96 (100%)
view
67 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00023.py
task00023.py
18:92 (100%)
18:92 (100%)
view
67 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00116.py
task00116.py
19:109 (100%)
19:109 (100%)
view
66 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00021.py
task00021.py
21:104 (100%)
21:104 (100%)
view
66 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00600.py
task00600.py
18:94 (100%)
18:94 (100%)
view
66 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00123.py
task00123.py
19:104 (100%)
19:104 (100%)
view
64 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00273.py
task00273.py
20:92 (100%)
20:92 (100%)
view
64 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00111.py
task00111.py
18:96 (100%)
18:96 (100%)
view
63 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00008.py
task00008.py
20:93 (100%)
20:93 (100%)
view
63 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00010.py
task00010.py
19:89 (100%)
19:89 (100%)
view
62 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00013.py
task00013.py
20:94 (100%)
20:94 (100%)
view
61 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00119.py
task00119.py
18:87 (100%)
18:87 (100%)
view
59 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00022.py
task00022.py
18:89 (100%)
18:89 (100%)
view
58 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00114.py
task00114.py
20:93 (100%)
20:93 (100%)
view
58 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00251.py
task00251.py
21:91 (100%)
21:91 (100%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 109 unit duplicates...
Size#FoldersFilesLinesCode
88 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00016.py
task00016.py
0:0 
0:0 
view
77 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00360.py
task00360.py
0:0 
0:0 
view
67 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00274.py
task00274.py
0:0 
0:0 
view
60 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00604.py
task00604.py
0:0 
0:0 
view
66 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00116.py
task00116.py
0:0 
0:0 
view
57 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00600.py
task00600.py
0:0 
0:0 
view
55 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00013.py
task00013.py
0:0 
0:0 
view
57 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00111.py
task00111.py
0:0 
0:0 
view
50 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00273.py
task00273.py
0:0 
0:0 
view
58 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00021.py
task00021.py
0:0 
0:0 
view
51 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00010.py
task00010.py
0:0 
0:0 
view
52 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00020.py
task00020.py
0:0 
0:0 
view
50 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00398.py
task00398.py
0:0 
0:0 
view
47 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00023.py
task00023.py
0:0 
0:0 
view
48 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00008.py
task00008.py
0:0 
0:0 
view
49 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00113.py
task00113.py
0:0 
0:0 
view
49 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00120.py
task00120.py
0:0 
0:0 
view
47 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00108.py
task00108.py
0:0 
0:0 
view
45 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00361.py
task00361.py
0:0 
0:0 
view
45 x 2 data/task_scripts/main
src/python/phyre/data/task_scripts/main
task00119.py
task00119.py
0:0 
0:0 
view