awslabs / homomorphic-implementors-toolkit
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 56 files with 4,412 lines of code.
    • 0 very long files (0 lines of code)
    • 1 long files (794 lines of code)
    • 5 medium size files (1,372 lines of codeclsfd_ftr_w_mp_ins)
    • 5 small files (781 lines of code)
    • 45 very small files (1,465 lines of code)
0% | 17% | 31% | 17% | 33%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
cpp0% | 25% | 33% | 25% | 15%
h0% | 0% | 31% | 0% | 68%
cmake0% | 0% | 0% | 0% | 100%
proto0% | 0% | 0% | 0% | 100%
yml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/hit/api/linearalgebra0% | 42% | 30% | 16% | 10%
src/hit/api/evaluator0% | 0% | 35% | 24% | 40%
src/hit/api0% | 0% | 44% | 0% | 55%
src/hit0% | 0% | 0% | 71% | 28%
cmake0% | 0% | 0% | 0% | 100%
cmake/modules0% | 0% | 0% | 0% | 100%
protobuf0% | 0% | 0% | 0% | 100%
scripts/codebuild0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
linearalgebra.cpp
in src/hit/api/linearalgebra
794 51
linearalgebra.h
in src/hit/api/linearalgebra
348 30
evaluator.cpp
in src/hit/api
335 57
debug.cpp
in src/hit/api/evaluator
242 26
homomorphic.cpp
in src/hit/api/evaluator
224 25
encryptedmatrix.cpp
in src/hit/api/linearalgebra
223 17
scaleestimator.cpp
in src/hit/api/evaluator
186 24
encryptedrowvector.cpp
in src/hit/api/linearalgebra
152 16
encryptedcolvector.cpp
in src/hit/api/linearalgebra
151 16
common.cpp
in src/hit
150 13
plaintext.cpp
in src/hit/api/evaluator
142 21
context.cpp
in src/hit/api
96 12
opcount.cpp
in src/hit/api/evaluator
95 20
evaluator.h
in src/hit/api
77 -
ciphertext.cpp
in src/hit/api
77 9
homomorphic.h
in src/hit/api/evaluator
62 -
opcount.h
in src/hit/api/evaluator
59 3
ciphertext.h
in src/hit/api
55 1
encodingunit.cpp
in src/hit/api/linearalgebra
55 6
debug.h
in src/hit/api/evaluator
51 -
scaleestimator.h
in src/hit/api/evaluator
48 -
common.h
in src/hit
44 -
encryptedmatrix.h
in src/hit/api/linearalgebra
43 -
params.cpp
in src/hit/api
42 5
encryptedrowvector.h
in src/hit/api/linearalgebra
40 -
encryptedcolvector.h
in src/hit/api/linearalgebra
40 -
explicitdepthfinder.cpp
in src/hit/api/evaluator
39 6
plaintext.h
in src/hit/api/evaluator
38 -
cmake
download-external-project.cmake
in cmake
34 -
rotations.cpp
in src/hit/api/evaluator
33 6
implicitdepthfinder.cpp
in src/hit/api/evaluator
31 6
cmake
FindBoostLib.cmake
in cmake/modules
28 -
context.h
in src/hit/api
28 -
explicitdepthfinder.h
in src/hit/api/evaluator
27 -
implicitdepthfinder.h
in src/hit/api/evaluator
27 -
encodingunit.h
in src/hit/api/linearalgebra
27 -
rotations.h
in src/hit/api/evaluator
26 -
params.h
in src/hit/api
22 -
cmake
enable-clang-tidy.cmake
in cmake
21 -
cmake
enable-hit-code-format.cmake
in cmake
21 -
cmake
FindProtobufLib.cmake
in cmake/modules
20 -
hit.h
in src/hit
17 -
metadata.h
in src/hit/api
14 -
cmake
set-common-flags.cmake
in cmake
13 -
cmake
FindTbbLib.cmake
in cmake/modules
13 -
cmake
FindGoogleTestLib.cmake
in cmake/modules
12 -
proto
encrypted_matrix.proto
in protobuf
12 -
proto
encrypted_row_vector.proto
in protobuf
11 -
proto
encrypted_col_vector.proto
in protobuf
11 -
cmake
FindGlogLib.cmake
in cmake/modules
10 -
Files With Most Units (Top 20)
File# lines# units
evaluator.cpp
in src/hit/api
335 57
linearalgebra.cpp
in src/hit/api/linearalgebra
794 51
linearalgebra.h
in src/hit/api/linearalgebra
348 30
debug.cpp
in src/hit/api/evaluator
242 26
homomorphic.cpp
in src/hit/api/evaluator
224 25
scaleestimator.cpp
in src/hit/api/evaluator
186 24
plaintext.cpp
in src/hit/api/evaluator
142 21
opcount.cpp
in src/hit/api/evaluator
95 20
encryptedmatrix.cpp
in src/hit/api/linearalgebra
223 17
encryptedcolvector.cpp
in src/hit/api/linearalgebra
151 16
encryptedrowvector.cpp
in src/hit/api/linearalgebra
152 16
common.cpp
in src/hit
150 13
context.cpp
in src/hit/api
96 12
ciphertext.cpp
in src/hit/api
77 9
implicitdepthfinder.cpp
in src/hit/api/evaluator
31 6
rotations.cpp
in src/hit/api/evaluator
33 6
explicitdepthfinder.cpp
in src/hit/api/evaluator
39 6
encodingunit.cpp
in src/hit/api/linearalgebra
55 6
params.cpp
in src/hit/api
42 5
opcount.h
in src/hit/api/evaluator
59 3
Files With Long Lines (Top 3)

There are 3 files with lines longer than 120 characters. In total, there are 3 long lines.

File# lines# units# long lines
cmake
enable-hit-code-format.cmake
in cmake
21 - 1
cmake
FindBoostLib.cmake
in cmake/modules
28 - 1
cmake
download-external-project.cmake
in cmake
34 - 1