Duplication Overall
- 21% duplication:
- 23,483 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
- 5,027 duplicated lines
- 700 duplicates
Duplication per Extension
Duplication per Component (primary)
Longest Duplicates
The list of 50 longest duplicates.
| Size | # | Folders | Files | Lines | Code |
|---|---|---|---|---|---|
| 181 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 287:491 (15%)332:536 (13%) | view | |
| 119 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 1179:1316 (10%)1391:1528 (8%) | view | |
| 85 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 192:284 (7%)237:329 (6%) | view | |
| 74 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 547:628 (6%)611:692 (5%) | view | |
| 39 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 799:843 (3%)922:966 (2%) | view | |
| 39 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 1130:1175 (3%)1343:1388 (2%) | view | |
| 29 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 754:787 (2%)860:893 (2%) | view | |
| 29 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 1007:1037 (2%)1232:1262 (2%) | view | |
| 26 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 29:57 (32%)31:59 (32%) | view | |
| 22 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 1:26 (1%)1:26 (1%) | view | |
| 21 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 68:92 (1%)80:104 (1%) | view | |
| 20 | x 2 | deep_gemm/legacydeep_gemm/legacy | 13:32 (29%)13:32 (30%) | view | |
| 20 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 498:519 (1%)542:563 (1%) | view | |
| 19 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 147:166 (3%)461:480 (3%) | view | |
| 19 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 384:402 (3%)542:560 (3%) | view | |
| 19 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 130:153 (5%)148:171 (4%) | view | |
| 18 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 161:179 (4%)193:212 (3%) | view | |
| 18 | x 2 | deep_gemm/include/deep_gemm/epiloguedeep_gemm/include/deep_gemm/epilogue | 1:22 (9%)1:22 (7%) | view | |
| 18 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 172:190 (1%)208:226 (1%) | view | |
| 18 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 952:970 (1%)1115:1133 (1%) | view | |
| 17 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 120:136 (5%)335:351 (5%) | view | |
| 17 | x 2 | deep_gemm/legacydeep_gemm/legacy | 14:30 (25%)14:30 (27%) | view | |
| 17 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 853:873 (1%)974:994 (1%) | view | |
| 17 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 352:372 (4%)496:516 (3%) | view | |
| 17 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 411:432 (4%)558:579 (3%) | view | |
| 16 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 340:357 (3%)499:515 (3%) | view | |
| 16 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 300:315 (4%)360:375 (3%) | view | |
| 16 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 736:753 (1%)840:858 (1%) | view | |
| 16 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 910:927 (1%)1089:1106 (1%) | view | |
| 15 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 222:237 (3%)267:283 (3%) | view | |
| 15 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 78:94 (4%)73:89 (6%) | view | |
| 15 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 282:299 (4%)355:372 (3%) | view | |
| 15 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 104:118 (3%)99:113 (4%) | view | |
| 15 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 149:168 (3%)145:162 (4%) | view | |
| 15 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 176:190 (3%)170:184 (4%) | view | |
| 15 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 234:248 (3%)231:245 (4%) | view | |
| 15 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 1097:1114 (1%)1310:1327 (1%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 122:135 (3%)371:384 (3%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 122:135 (3%)423:436 (3%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 194:207 (3%)319:332 (3%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 371:384 (3%)423:436 (3%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 93:107 (3%)113:127 (2%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 22:35 (11%)26:39 (7%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 86:99 (17%)89:102 (17%) | view | |
| 14 | x 2 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 36:49 (1%)39:52 (1%) | view | |
| 14 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 90:106 (7%)87:102 (4%) | view | |
| 13 | x 2 | csrc/apiscsrc/apis | 266:282 (4%)373:389 (4%) | view | |
| 13 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 117:129 (3%)371:383 (3%) | view | |
| 13 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 117:129 (3%)425:437 (3%) | view | |
| 13 | x 2 | csrc/jit_kernels/implscsrc/jit_kernels/impls | 371:383 (3%)425:437 (3%) | view |
Most Frequent Duplicates
The list of 50 most frequently found duplicates.
| Size | # | Folders | Files | Lines | Code |
|---|---|---|---|---|---|
| 6 | x 24 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls... | 117:122 (1%)121:126 (2%)125:130 (3%)122:127 (1%)147:152 (1%)198:203 (2%)265:270 (2%)336:341 (2%)188:193 (1%)249:254 (1%)... | view | |
| 6 | x 24 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls... | 118:123 (1%)122:127 (2%)126:131 (3%)123:128 (1%)148:153 (1%)199:204 (2%)266:271 (2%)337:342 (2%)189:194 (1%)250:255 (1%)... | view | |
| 6 | x 24 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls... | 119:124 (1%)123:128 (2%)127:132 (3%)124:129 (1%)149:154 (1%)200:205 (2%)267:272 (2%)338:343 (2%)190:195 (1%)251:256 (1%)... | view | |
| 6 | x 12 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls... | 88:93 (1%)88:93 (2%)91:96 (3%)94:99 (1%)114:119 (1%)297:302 (2%)287:292 (1%)173:178 (3%)287:292 (1%)346:351 (1%)... | view | |
| 6 | x 8 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 156:161 (1%)162:167 (2%)162:167 (1%)194:199 (1%)231:236 (2%)219:224 (1%)223:228 (1%)268:273 (1%) | view | |
| 6 | x 8 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 155:160 (1%)161:166 (2%)161:166 (1%)193:198 (1%)230:235 (2%)218:223 (1%)222:227 (1%)267:272 (1%) | view | |
| 6 | x 8 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 157:162 (1%)163:168 (2%)163:168 (1%)195:200 (1%)232:237 (2%)220:225 (1%)224:229 (1%)269:274 (1%) | view | |
| 6 | x 7 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 89:94 (1%)89:94 (2%)92:97 (3%)95:100 (1%)115:120 (1%)298:303 (2%)419:424 (1%) | view | |
| 6 | x 7 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 7:12 (3%)11:16 (2%)10:15 (2%)16:21 (1%)14:19 (1%)15:20 (1%)8:13 (2%) | view | |
| 6 | x 7 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 90:95 (1%)90:95 (2%)93:98 (3%)96:101 (1%)116:121 (1%)299:304 (2%)420:425 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 161:166 (1%)246:251 (1%)317:322 (1%)397:402 (1%)475:480 (1%)555:560 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 125:130 (1%)120:125 (1%)374:379 (1%)428:433 (1%)374:379 (1%)426:431 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 127:132 (1%)122:127 (1%)376:381 (1%)430:435 (1%)376:381 (1%)428:433 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 126:131 (1%)121:126 (1%)375:380 (1%)429:434 (1%)375:380 (1%)427:432 (1%) | view | |
| 6 | x 6 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 9:14 (3%)13:18 (2%)12:17 (2%)17:22 (1%)10:15 (2%)16:21 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 128:133 (1%)123:128 (1%)377:382 (1%)431:436 (1%)377:382 (1%)429:434 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 174:179 (1%)182:187 (2%)180:185 (1%)249:254 (2%)235:240 (1%)238:243 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 101:106 (1%)103:108 (2%)106:111 (1%)180:185 (2%)172:177 (1%)178:183 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 150:155 (1%)235:240 (1%)306:311 (1%)387:392 (1%)464:469 (1%)545:550 (1%) | view | |
| 6 | x 6 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 8:13 (3%)12:17 (2%)11:16 (2%)16:21 (1%)9:14 (2%)15:20 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 100:105 (1%)102:107 (2%)105:110 (1%)179:184 (2%)171:176 (1%)177:182 (1%) | view | |
| 6 | x 6 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 99:104 (1%)101:106 (2%)104:109 (1%)178:183 (2%)170:175 (1%)176:181 (1%) | view | |
| 6 | x 5 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 288:293 (1%)174:179 (3%)288:293 (1%)347:352 (1%)506:511 (1%) | view | |
| 6 | x 5 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 87:92 (1%)87:92 (2%)90:95 (3%)93:98 (1%)113:118 (1%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 389:394 (1%)284:289 (2%)352:357 (1%)442:447 (1%)174:179 (3%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 349:354 (1%)439:444 (1%)1305:1310 (<1%)386:391 (1%)1517:1522 (<1%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 123:129 (3%)204:210 (2%)246:252 (1%)211:217 (1%)208:214 (1%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 263:269 (<1%)139:145 (1%)204:210 (1%)308:314 (<1%)157:163 (1%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 262:268 (<1%)138:144 (1%)203:209 (1%)307:313 (<1%)156:162 (1%) | view | |
| 6 | x 5 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 286:291 (1%)172:177 (3%)286:291 (1%)345:350 (1%)504:509 (1%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptx | 13:18 (2%)30:35 (2%)89:94 (2%)107:112 (2%)173:178 (2%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 390:395 (1%)285:290 (2%)353:358 (1%)443:448 (1%)175:180 (3%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 350:355 (1%)440:445 (1%)1306:1311 (<1%)387:392 (1%)1518:1523 (<1%) | view | |
| 6 | x 5 | deep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptx | 14:19 (2%)31:36 (2%)90:95 (2%)108:113 (2%)174:179 (2%) | view | |
| 6 | x 4 | deep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptx | 48:53 (2%)69:74 (2%)126:131 (2%)150:155 (2%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 181:186 (1%)175:180 (1%)236:241 (1%)239:244 (1%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 124:129 (2%)201:206 (2%)268:273 (2%)339:344 (2%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 91:96 (1%)91:96 (2%)94:99 (3%)300:305 (2%) | view | |
| 6 | x 4 | deep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptxdeep_gemm/include/deep_gemm/ptx | 49:54 (2%)70:75 (2%)127:132 (2%)151:156 (2%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 101:107 (1%)121:127 (1%)173:179 (1%)205:212 (1%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 160:165 (1%)154:159 (1%)217:222 (1%)221:226 (1%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 145:153 (1%)151:159 (2%)149:159 (1%)181:191 (1%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 182:187 (1%)176:181 (1%)237:242 (1%)240:245 (1%) | view | |
| 6 | x 4 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 439:445 (1%)343:349 (1%)1310:1316 (<1%)1522:1528 (<1%) | view | |
| 6 | x 4 | deep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/implsdeep_gemm/include/deep_gemm/impls | 247:253 (1%)212:218 (1%)209:215 (1%)124:130 (3%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 152:157 (1%)237:242 (1%)308:313 (1%)466:471 (1%) | view | |
| 6 | x 4 | csrc/apiscsrc/apiscsrc/apiscsrc/apis | 489:494 (<1%)538:543 (<1%)548:553 (<1%)558:563 (<1%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 183:188 (1%)177:182 (1%)238:243 (1%)241:246 (1%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 264:269 (2%)42:47 (1%)66:71 (3%)208:213 (3%) | view | |
| 6 | x 4 | csrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/implscsrc/jit_kernels/impls | 153:159 (1%)238:244 (1%)309:315 (1%)467:473 (1%) | view |
About This Analysis
- 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...
- To learn more about duplications and techniques for eliminating duplication, Sokrates recommends the following resources:
- Avoid Repetition, MartinFlower.com (IEEE Software article)
- Refactoring duplicated code, sourcemaking.com
- Beck Design Rules, MartinFowler.com
- DRY (Don't Repeat Yourself) Principle, Wikipedia
- The Cut-and-Paste Programming Software Development Anti-Pattern, sourcemaking.com
- Code Smells / Duplicated Code, Jeff Atwood, codinghorror.com:
- "Duplicated code is the bane of software development. Stamp out duplication whenever possible. You should always be on the lookout for more subtle cases of near-duplication, too. Don't Repeat Yourself!"
- Reducing Coupling, MartinFlower.com (IEEE Software article):
- "There are several ways to describe coupling, but it boils down to this: If changing one module in a program requires changing another module, then coupling exists. ... Duplication always implies coupling, because changing one piece of duplicate code implies changing the other."