pytorch / opacus
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
  • 4% duplication:
    • 5,195 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 235 duplicated lines
  • 20 duplicates
system4% (235 lines)
Duplication per Extension
py6% (223 lines)
css<1% (12 lines)
Duplication per Component (primary)
opacus/layers12% (94 lines)
opacus/optimizers16% (63 lines)
opacus/grad_sample8% (32 lines)
opacus/validators8% (20 lines)
opacus3% (14 lines)
website/static<1% (12 lines)
opacus/accountants0% (0 lines)
opacus/utils0% (0 lines)
opacus/scripts0% (0 lines)
ROOT0% (0 lines)
website/core0% (0 lines)
website0% (0 lines)
website/sphinx0% (0 lines)
website/scripts0% (0 lines)
website/pages0% (0 lines)
scripts0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 20 duplicates...
Size#FoldersFilesLinesCode
12 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
667:678 (2%)
701:712 (2%)
view
11 x 2 opacus/optimizers
opacus/optimizers
ddpoptimizer.py
optimizer.py
17:27 (25%)
219:229 (5%)
view
10 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
632:641 (2%)
701:710 (2%)
view
10 x 2 opacus/validators
opacus/validators
utils.py
utils.py
13:36 (34%)
44:67 (34%)
view
10 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
85:94 (2%)
119:128 (2%)
view
10 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
632:641 (2%)
667:676 (2%)
view
10 x 2 opacus/optimizers
opacus/optimizers
ddp_perlayeroptimizer.py
perlayeroptimizer.py
44:53 (12%)
31:40 (27%)
view
9 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
680:688 (1%)
714:722 (1%)
view
9 x 2 opacus/optimizers
opacus/optimizers
ddp_perlayeroptimizer.py
ddpoptimizer.py
45:53 (11%)
28:36 (20%)
view
9 x 2 opacus/optimizers
opacus/optimizers
ddpoptimizer.py
perlayeroptimizer.py
28:36 (20%)
32:40 (24%)
view
8 x 2 opacus/grad_sample
opacus/validators
utils.py
utils.py
13:32 (61%)
15:36 (27%)
view
8 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
646:653 (1%)
714:721 (1%)
view
8 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
646:653 (1%)
680:687 (1%)
view
8 x 2 opacus/grad_sample
opacus/validators
utils.py
utils.py
13:32 (61%)
46:67 (27%)
view
7 x 2 opacus
opacus
data_loader.py
data_loader.py
177:183 (5%)
235:241 (5%)
view
7 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
363:369 (1%)
375:381 (1%)
view
6 x 2 opacus/optimizers
opacus/optimizers
optimizer.py
optimizer.py
137:142 (2%)
146:151 (2%)
view
6 x 2 opacus/grad_sample
opacus/grad_sample
dp_rnn.py
linear.py
17:36 (66%)
15:29 (66%)
view
6 x 2 opacus/grad_sample
opacus/grad_sample
conv.py
conv.py
32:37 (12%)
50:55 (12%)
view
6 x 2 website/static/css
website/static/css
alabaster.css
alabaster.css
297:302 (1%)
305:310 (1%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
9 x 2 opacus/layers
opacus/layers
dp_rnn.py
dp_rnn.py
0:0 
0:0 
view
9 x 2 opacus/optimizers
opacus/optimizers
ddpoptimizer.py
optimizer.py
0:0 
0:0 
view