opensearch-project / k-NN
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 155 files with 10,576 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 7 medium size files (2,293 lines of codeclsfd_ftr_w_mp_ins)
    • 25 small files (3,597 lines of code)
    • 123 very small files (4,686 lines of code)
0% | 0% | 21% | 34% | 44%
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
java0% | 0% | 19% | 33% | 46%
cpp0% | 0% | 62% | 30% | 6%
py0% | 0% | 0% | 43% | 56%
h0% | 0% | 0% | 51% | 48%
yml0% | 0% | 0% | 0% | 100%
in0% | 0% | 0% | 0% | 100%
policy0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/main/java/org0% | 0% | 19% | 33% | 46%
jni/src0% | 0% | 62% | 30% | 6%
benchmarks/perf-tool/okpt/io0% | 0% | 0% | 54% | 45%
jni/include0% | 0% | 0% | 51% | 48%
benchmarks/perf-tool/okpt/diff0% | 0% | 0% | 0% | 100%
benchmarks/perf-tool/sample-configs/faiss-sift-ivf0% | 0% | 0% | 0% | 100%
benchmarks/perf-tool/sample-configs/nmslib-sift-hnsw0% | 0% | 0% | 0% | 100%
benchmarks/perf-tool/okpt0% | 0% | 0% | 0% | 100%
jni0% | 0% | 0% | 0% | 100%
benchmarks/perf-tool0% | 0% | 0% | 0% | 100%
src/main/plugin-metadata0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
KNNVectorFieldMapper.java
in src/main/java/org/opensearch/knn/index
463 31
jni_util.cpp
in jni/src
354 30
KNNLibrary.java
in src/main/java/org/opensearch/knn/index/util
344 20
ModelDao.java
in src/main/java/org/opensearch/knn/indices
322 17
KNNSettings.java
in src/main/java/org/opensearch/knn/index
318 20
NativeMemoryAllocation.java
in src/main/java/org/opensearch/knn/index/memory
248 31
faiss_wrapper.cpp
in jni/src
244 10
KNNPlugin.java
in src/main/java/org/opensearch/knn/plugin
193 6
KNN80DocValuesConsumer.java
in src/main/java/org/opensearch/knn/index/codec/KNN80Codec
186 10
NativeMemoryCacheManager.java
in src/main/java/org/opensearch/knn/index/memory
183 22
KNNQueryBuilder.java
in src/main/java/org/opensearch/knn/index
182 13
nmslib_wrapper.cpp
in jni/src
181 6
ModelMetadata.java
in src/main/java/org/opensearch/knn/indices
171 20
TrainingModelRequest.java
in src/main/java/org/opensearch/knn/plugin/transport
163 18
KNNMethodContext.java
in src/main/java/org/opensearch/knn/index
160 14
MethodComponent.java
in src/main/java/org/opensearch/knn/index
158 14
KNNWeight.java
in src/main/java/org/opensearch/knn/index
157 7
MethodComponentContext.java
in src/main/java/org/opensearch/knn/index
143 13
KNNScoringSpace.java
in src/main/java/org/opensearch/knn/plugin/script
141 11
NativeMemoryLoadStrategy.java
in src/main/java/org/opensearch/knn/index/memory
136 11
VectorReader.java
in src/main/java/org/opensearch/knn/training
133 7
RestTrainModelHandler.java
in src/main/java/org/opensearch/knn/plugin/rest
129 8
TrainingJob.java
in src/main/java/org/opensearch/knn/training
128 4
dataset.py
in benchmarks/perf-tool/okpt/io
126 19
NativeMemoryEntryContext.java
in src/main/java/org/opensearch/knn/index/memory
125 17
TrainingJobRunner.java
in src/main/java/org/opensearch/knn/training
123 7
KNNScoringUtil.java
in src/main/java/org/opensearch/knn/plugin/script
121 15
Model.java
in src/main/java/org/opensearch/knn/indices
115 13
org_opensearch_knn_jni_FaissService.cpp
in jni/src
115 11
UpdateModelMetadataTransportAction.java
in src/main/java/org/opensearch/knn/plugin/transport
112 6
args.py
in benchmarks/perf-tool/okpt/io
111 6
jni_util.h
in jni/include
105 -
RestKNNStatsHandler.java
in src/main/java/org/opensearch/knn/plugin/rest
96 8
diff.py
in benchmarks/perf-tool/okpt/diff
93 7
ModelCache.java
in src/main/java/org/opensearch/knn/indices
91 14
TrainingJobRouterTransportAction.java
in src/main/java/org/opensearch/knn/plugin/transport
91 6
IndexUtil.java
in src/main/java/org/opensearch/knn/index
91 2
KNNEngine.java
in src/main/java/org/opensearch/knn/index/util
90 15
KNN86Codec.java
in src/main/java/org/opensearch/knn/index/codec/KNN86Codec
89 13
KNN87Codec.java
in src/main/java/org/opensearch/knn/index/codec/KNN87Codec
89 13
KNNIndexShard.java
in src/main/java/org/opensearch/knn/index
88 6
RestSearchModelHandler.java
in src/main/java/org/opensearch/knn/plugin/rest
82 4
KNN84Codec.java
in src/main/java/org/opensearch/knn/index/codec/KNN84Codec
82 12
util.py
in benchmarks/perf-tool/okpt/io/config/parsers
82 6
KNNStatsConfig.java
in src/main/java/org/opensearch/knn/plugin/stats
81 -
KNN80Codec.java
in src/main/java/org/opensearch/knn/index/codec/KNN80Codec
80 12
KNNCircuitBreaker.java
in src/main/java/org/opensearch/knn/index
78 4
Parameter.java
in src/main/java/org/opensearch/knn/index
77 8
RestKNNWarmupHandler.java
in src/main/java/org/opensearch/knn/plugin/rest
74 6
KNNMethod.java
in src/main/java/org/opensearch/knn/index
73 12
Files With Most Units (Top 20)
File# lines# units
NativeMemoryAllocation.java
in src/main/java/org/opensearch/knn/index/memory
248 31
KNNVectorFieldMapper.java
in src/main/java/org/opensearch/knn/index
463 31
jni_util.cpp
in jni/src
354 30
NativeMemoryCacheManager.java
in src/main/java/org/opensearch/knn/index/memory
183 22
ModelMetadata.java
in src/main/java/org/opensearch/knn/indices
171 20
KNNLibrary.java
in src/main/java/org/opensearch/knn/index/util
344 20
KNNSettings.java
in src/main/java/org/opensearch/knn/index
318 20
dataset.py
in benchmarks/perf-tool/okpt/io
126 19
TrainingModelRequest.java
in src/main/java/org/opensearch/knn/plugin/transport
163 18
ModelDao.java
in src/main/java/org/opensearch/knn/indices
322 17
NativeMemoryEntryContext.java
in src/main/java/org/opensearch/knn/index/memory
125 17
KNNScoringUtil.java
in src/main/java/org/opensearch/knn/plugin/script
121 15
KNNEngine.java
in src/main/java/org/opensearch/knn/index/util
90 15
ModelCache.java
in src/main/java/org/opensearch/knn/indices
91 14
MethodComponent.java
in src/main/java/org/opensearch/knn/index
158 14
KNNMethodContext.java
in src/main/java/org/opensearch/knn/index
160 14
Model.java
in src/main/java/org/opensearch/knn/indices
115 13
KNNQueryBuilder.java
in src/main/java/org/opensearch/knn/index
182 13
KNN86Codec.java
in src/main/java/org/opensearch/knn/index/codec/KNN86Codec
89 13
KNN87Codec.java
in src/main/java/org/opensearch/knn/index/codec/KNN87Codec
89 13
Files With Long Lines (Top 20)

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

File# lines# units# long lines
KNNLibrary.java
in src/main/java/org/opensearch/knn/index/util
344 20 8
KNNSettings.java
in src/main/java/org/opensearch/knn/index
318 20 8
MethodComponent.java
in src/main/java/org/opensearch/knn/index
158 14 6
jni_util.cpp
in jni/src
354 30 6
KNNPlugin.java
in src/main/java/org/opensearch/knn/plugin
193 6 4
KNN80DocValuesConsumer.java
in src/main/java/org/opensearch/knn/index/codec/KNN80Codec
186 10 4
KNNVectorFieldMapper.java
in src/main/java/org/opensearch/knn/index
463 31 4
KNNWarmupTransportAction.java
in src/main/java/org/opensearch/knn/plugin/transport
67 8 3
KNNCodecUtil.java
in src/main/java/org/opensearch/knn/index/codec/util
37 2 3
NativeMemoryCacheManager.java
in src/main/java/org/opensearch/knn/index/memory
183 22 3
nmslib_wrapper.cpp
in jni/src
181 6 3
KNNScoringSpace.java
in src/main/java/org/opensearch/knn/plugin/script
141 11 2
TrainingJobRouteDecisionInfoResponse.java
in src/main/java/org/opensearch/knn/plugin/transport
50 6 2
UpdateModelMetadataTransportAction.java
in src/main/java/org/opensearch/knn/plugin/transport
112 6 2
TrainingJobRouterTransportAction.java
in src/main/java/org/opensearch/knn/plugin/transport
91 6 2
KNNQueryBuilder.java
in src/main/java/org/opensearch/knn/index
182 13 2
KNNVectorSerializerFactory.java
in src/main/java/org/opensearch/knn/index/codec/util
61 7 2
KNNMethodContext.java
in src/main/java/org/opensearch/knn/index
160 14 2
NativeMemoryLoadStrategy.java
in src/main/java/org/opensearch/knn/index/memory
136 11 2
NativeMemoryEntryContext.java
in src/main/java/org/opensearch/knn/index/memory
125 17 2