tensorflow / recommenders-addons
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
  • 42% duplication:
    • 62,979 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 26,494 duplicated lines
  • 9,107 duplicates
system42% (26,494 lines)
Duplication per Extension
cuh47% (19,441 lines)
tpl67% (2,266 lines)
bzl55% (1,541 lines)
hpp52% (1,340 lines)
cc20% (878 lines)
py12% (548 lines)
h8% (245 lines)
Dockerfile31% (149 lines)
hh5% (86 lines)
Duplication per Component (primary)
tensorflow_recommenders_addons/dynamic_embedding/core42% (21,920 lines)
build_deps/toolchains/gpu48% (2,352 lines)
build_deps/toolchains/gcc7_manylinux2010-nvcc-cuda11100% (1,411 lines)
tensorflow_recommenders_addons/dynamic_embedding/python15% (344 lines)
tensorflow_recommenders_addons/embedding_variable/python17% (166 lines)
tools/docker31% (149 lines)
tensorflow_recommenders_addons/embedding_variable/core8% (70 lines)
tools63% (38 lines)
build_deps/tf_dependency13% (30 lines)
tensorflow_recommenders_addons8% (14 lines)
tensorflow_recommenders_addons/dynamic_embedding0% (0 lines)
tensorflow_recommenders_addons/utils0% (0 lines)
tensorflow_recommenders_addons/embedding_variable0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G build_deps/toolchains/gcc7_manylinux2010-nvcc-cuda11 build_deps/toolchains/gcc7_manylinux2010-nvcc-cuda11 build_deps/toolchains/gpu build_deps/toolchains/gpu build_deps/toolchains/gcc7_manylinux2010-nvcc-cuda11--build_deps/toolchains/gpu 2822 build_deps/tf_dependency build_deps/tf_dependency build_deps/tf_dependency--build_deps/toolchains/gpu 60 tensorflow_recommenders_addons/dynamic_embedding/python tensorflow_recommenders_addons/dynamic_embedding/python tensorflow_recommenders_addons/embedding_variable/python tensorflow_recommenders_addons/embedding_variable/python tensorflow_recommenders_addons/dynamic_embedding/python--tensorflow_recommenders_addons/embedding_variable/python 60

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 9,107 duplicates...
Size#FoldersFilesLinesCode
1411 x 2 build_deps/toolchains/gc...nylinux2010-nvcc-cuda11
build_deps/toolchains/gpu/crosstool
cc_toolchain_config.bzl
cc_toolchain_config.bzl.tpl
1:1493 (100%)
1:1493 (100%)
view
252 x 2 tensorflow_recommenders_...core/kernels/redis_impl
tensorflow_recommenders_...core/kernels/redis_impl
redis_cluster_connection_pool.hpp
redis_connection_pool.hpp
590:942 (25%)
448:800 (31%)
view
97 x 2 tensorflow_recommenders_...b/block/specializations
tensorflow_recommenders_...b/block/specializations
block_scan_warp_scans.cuh
block_scan_warp_scans2.cuh
274:391 (30%)
318:435 (27%)
view
90 x 2 tensorflow_recommenders_...ib/nvhash/cub/cub/block
tensorflow_recommenders_...ib/nvhash/cub/cub/block
block_adjacent_difference.cuh
block_discontinuity.cuh
107:214 (18%)
163:270 (8%)
view
76 x 2 tensorflow_recommenders_...b/block/specializations
tensorflow_recommenders_...b/block/specializations
block_scan_warp_scans.cuh
block_scan_warp_scans2.cuh
147:240 (23%)
147:240 (21%)
view
68 x 2 tensorflow_recommenders_..._embedding/core/kernels
tensorflow_recommenders_..._embedding/core/kernels
cuckoo_hashtable_op.h
redis_table_op.h
41:129 (97%)
64:152 (89%)
view
67 x 2 tensorflow_recommenders_...b/block/specializations
tensorflow_recommenders_...b/block/specializations
block_scan_warp_scans.cuh
block_scan_warp_scans2.cuh
1:78 (21%)
1:78 (18%)
view
60 x 2 tensorflow_recommenders_...ib/nvhash/cub/cub/block
tensorflow_recommenders_...ib/nvhash/cub/cub/block
block_adjacent_difference.cuh
block_discontinuity.cuh
226:299 (12%)
282:355 (5%)
view
57 x 2 tensorflow_recommenders_...b/block/specializations
tensorflow_recommenders_...b/block/specializations
block_scan_warp_scans.cuh
block_scan_warp_scans3.cuh
1:64 (17%)
1:64 (17%)
view
57 x 2 tensorflow_recommenders_...b/block/specializations
tensorflow_recommenders_...b/block/specializations
block_scan_warp_scans2.cuh
block_scan_warp_scans3.cuh
1:64 (16%)
1:64 (17%)
view
52 x 2 tensorflow_recommenders_...nvhash/cub/cub/iterator
tensorflow_recommenders_...nvhash/cub/cub/iterator
cache_modified_input_iterator.cuh
cache_modified_output_iterator.cuh
1:65 (25%)
1:64 (24%)
view
52 x 2 tensorflow_recommenders_...nvhash/cub/cub/iterator
tensorflow_recommenders_...nvhash/cub/cub/iterator
cache_modified_output_iterator.cuh
counting_input_iterator.cuh
1:64 (24%)
1:62 (26%)
view
52 x 2 tensorflow_recommenders_...ib/nvhash/cub/cub/block
tensorflow_recommenders_...ib/nvhash/cub/cub/block
block_scan.cuh
block_scan.cuh
599:650 (2%)
1569:1620 (2%)
view
52 x 2 tensorflow_recommenders_...nvhash/cub/cub/iterator
tensorflow_recommenders_...nvhash/cub/cub/iterator
cache_modified_input_iterator.cuh
transform_input_iterator.cuh
1:65 (25%)
1:63 (23%)
view
52 x 2 tensorflow_recommenders_...nvhash/cub/cub/iterator
tensorflow_recommenders_...nvhash/cub/cub/iterator
counting_input_iterator.cuh
transform_input_iterator.cuh
1:62 (26%)
1:63 (23%)
view
52 x 2 tensorflow_recommenders_...nvhash/cub/cub/iterator
tensorflow_recommenders_...nvhash/cub/cub/iterator
cache_modified_output_iterator.cuh
transform_input_iterator.cuh
1:64 (24%)
1:63 (23%)
view
52 x 2 tensorflow_recommenders_...nvhash/cub/cub/iterator
tensorflow_recommenders_...nvhash/cub/cub/iterator
cache_modified_input_iterator.cuh
counting_input_iterator.cuh
1:65 (25%)
1:62 (26%)
view
51 x 2 tensorflow_recommenders_...ib/nvhash/cub/cub/block
tensorflow_recommenders_...ib/nvhash/cub/cub/block
block_scan.cuh
block_scan.cuh
1025:1075 (2%)
2018:2068 (2%)
view
48 x 2 tensorflow_recommenders_...ib/nvhash/cub/cub/block
tensorflow_recommenders_...ib/nvhash/cub/cub/block
block_load.cuh
block_load.cuh
885:940 (4%)
960:1015 (4%)
view
47 x 2 tensorflow_recommenders_...ib/nvhash/cub/cub/block
tensorflow_recommenders_...ib/nvhash/cub/cub/block
block_discontinuity.cuh
block_discontinuity.cuh
918:964 (4%)
1037:1083 (4%)
view
Duplicated Units
The list of top 15 duplicated units.
See data for all 15 unit duplicates...
Size#FoldersFilesLinesCode
129 x 2 tensorflow_recommenders_...core/kernels/redis_impl
tensorflow_recommenders_...core/kernels/redis_impl
redis_cluster_connection_pool.hpp
redis_connection_pool.hpp
673:818 
531:676 
view
62 x 2 tensorflow_recommenders_...core/kernels/redis_impl
tensorflow_recommenders_...core/kernels/redis_impl
redis_cluster_connection_pool.hpp
redis_connection_pool.hpp
603:671 
461:529 
view
61 x 2 tensorflow_recommenders_...core/kernels/redis_impl
tensorflow_recommenders_...core/kernels/redis_impl
redis_cluster_connection_pool.hpp
redis_connection_pool.hpp
820:888 
678:746 
view
45 x 2 tensorflow_recommenders_..._embedding/core/kernels
tensorflow_recommenders_..._embedding/core/kernels
cuckoo_hashtable_op.h
redis_table_op.h
59:109 
82:132 
view
21 x 2 tensorflow_recommenders_...ore/kernels/lookup_impl
tensorflow_recommenders_...ore/kernels/lookup_impl
lookup_table_op_cpu.h
lookup_table_op_cpu.h
209:233 
315:339 
view
19 x 2 tensorflow_recommenders_...core/kernels/redis_impl
tensorflow_recommenders_...core/kernels/redis_impl
redis_cluster_connection_pool.hpp
redis_connection_pool.hpp
890:909 
748:767 
view
15 x 2 tensorflow_recommenders_...ore/kernels/lookup_impl
tensorflow_recommenders_...ore/kernels/lookup_impl
lookup_table_op_cpu.h
lookup_table_op_cpu.h
186:201 
292:307 
view
14 x 2 tensorflow_recommenders_...ore/kernels/lookup_impl
tensorflow_recommenders_...ore/kernels/lookup_impl
lookup_table_op_cpu.h
lookup_table_op_cpu.h
170:184 
276:290 
view
13 x 2 tensorflow_recommenders_..._embedding/core/kernels
tensorflow_recommenders_..._embedding/core/kernels
cuckoo_hashtable_op.h
redis_table_op.h
44:57 
67:80 
view
13 x 2 tensorflow_recommenders_...core/kernels/redis_impl
tensorflow_recommenders_...core/kernels/redis_impl
redis_cluster_connection_pool.hpp
redis_connection_pool.hpp
1019:1032 
857:870 
view
12 x 2 tensorflow_recommenders_...amic_embedding/core/ops
tensorflow_recommenders_...amic_embedding/core/ops
cuckoo_hashtable_ops.cc
redis_table_ops.cc
31:43 
31:43 
view
10 x 2 tensorflow_recommenders_...bedding/core/lib/cuckoo
tensorflow_recommenders_...bedding/core/lib/cuckoo
cuckoohash_map.hh
cuckoohash_map.hh
492:502 
516:526 
view
8 x 2 tensorflow_recommenders_...bedding/core/lib/cuckoo
tensorflow_recommenders_...bedding/core/lib/cuckoo
cuckoohash_map.hh
cuckoohash_map.hh
2699:2707 
2710:2718 
view
8 x 2 tensorflow_recommenders_...ic_embedding/python/ops
tensorflow_recommenders_...ic_embedding/python/ops
dynamic_embedding_creator.py
dynamic_embedding_creator.py
0:0 
0:0 
view
6 x 2 tensorflow_recommenders_..._embedding/core/kernels
tensorflow_recommenders_..._embedding/core/kernels
redis_table_op.cc
cuckoo_hashtable_op.cc
1027:1033 
381:387 
view