microsoft / FASTER
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 295 files with 42,082 lines of code.
    • 3 very long files (5,398 lines of code)
    • 11 long files (7,643 lines of code)
    • 45 medium size files (14,421 lines of codeclsfd_ftr_w_mp_ins)
    • 50 small files (7,239 lines of code)
    • 186 very small files (7,381 lines of code)
12% | 18% | 34% | 17% | 17%
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
cs9% | 20% | 33% | 16% | 20%
h26% | 16% | 30% | 17% | 9%
cc0% | 0% | 81% | 10% | 8%
ps10% | 0% | 62% | 37% | 0%
js0% | 0% | 60% | 0% | 39%
yml0% | 0% | 0% | 100% | 0%
vcxproj0% | 0% | 0% | 100% | 0%
filters0% | 0% | 0% | 0% | 100%
in0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
cs/src/core14% | 23% | 29% | 16% | 16%
cc/src/core35% | 11% | 20% | 22% | 9%
cs/remote/src0% | 26% | 28% | 10% | 34%
cc/src/device0% | 42% | 50% | 0% | 6%
cs/benchmark0% | 0% | 71% | 0% | 28%
cc/src/environment0% | 0% | 96% | 0% | 3%
cs/src/devices0% | 0% | 78% | 0% | 21%
cc/benchmark-dir0% | 0% | 63% | 22% | 14%
cs/playground/AsyncStress0% | 0% | 68% | 21% | 9%
cs/remote/benchmark0% | 0% | 65% | 0% | 34%
cs/benchmark/scripts0% | 0% | 62% | 37% | 0%
cs/playground/SumStore0% | 0% | 0% | 71% | 28%
cs/playground/ClassRecoveryDurability0% | 0% | 0% | 83% | 16%
ROOT0% | 0% | 0% | 100% | 0%
cs/playground/CacheStoreConcurrent0% | 0% | 0% | 63% | 36%
cc/playground/sum_store-dir0% | 0% | 0% | 66% | 33%
cs/playground/FasterLogMLSDTest0% | 0% | 0% | 100% | 0%
cc/src/common0% | 0% | 0% | 0% | 100%
cs/playground/TstRunner0% | 0% | 0% | 0% | 100%
cc0% | 0% | 0% | 0% | 100%
cs/benchmark/Properties0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
faster.h
in cc/src/core
2427 64
FASTERImpl.cs
in cs/src/core/Index/FASTER
1832 35
AllocatorBase.cs
in cs/src/core/Allocator
1139 49
FasterLog.cs
in cs/src/core/Index/FasterLog
989 56
persistent_memory_malloc.h
in cc/src/core
804 37
GenericAllocator.cs
in cs/src/core/Allocator
762 41
Recovery.cs
in cs/src/core/Index/Recovery
757 34
ClientSession.cs
in cs/remote/src/FASTER.client
686 21
storage.h
in cc/src/device
654 32
ClientSession.cs
in cs/src/core/ClientSession
651 57
AdvancedClientSession.cs
in cs/src/core/ClientSession
619 53
FASTER.cs
in cs/src/core/Index/FASTER
607 25
Contexts.cs
in cs/src/core/Index/Common
569 31
WebsocketServerSession.cs
in cs/remote/src/FASTER.server
545 13
FASTERBase.cs
in cs/src/core/Index/FASTER
495 17
benchmark.cc
in cc/benchmark-dir
485 26
malloc_fixed_page_size.h
in cc/src/core
474 19
file_system_disk.h
in cc/src/device
464 31
MallocFixedPageSize.cs
in cs/src/core/Allocator
444 22
FasterYcsbBenchmark.cs
in cs/remote/benchmark/FASTER.benchmark
443 8
ManagedLocalStorageDevice.cs
in cs/src/core/Device
431 13
internal_contexts.h
in cc/src/core
424 37
VarLenBlittableAllocator.cs
in cs/src/core/Allocator
389 42
LocalStorageDevice.cs
in cs/src/core/Device
386 17
FasterSpanByteYcsbBenchmark.cs
in cs/benchmark
384 8
FasterYcsbBenchmark.cs
in cs/benchmark
376 7
BinaryServerSession.cs
in cs/remote/src/FASTER.server
355 13
AzureStorageDevice.cs
in cs/src/devices/AzureStorageDevice
350 19
FASTERThread.cs
in cs/src/core/Index/FASTER
348 11
DeviceLogCommitCheckpointManager.cs
in cs/src/core/Index/CheckpointManagement
346 23
FasterLogIterator.cs
in cs/src/core/Index/FasterLog
339 16
ConcurrentDictionaryBenchmark.cs
in cs/benchmark
323 7
Native32.cs
in cs/src/core/Utilities
323 10
file_windows.cc
in cc/src/environment
315 18
SubscribeBroker.cs
in cs/remote/src/FASTER.server/PubSub
314 13
TestLoader.cs
in cs/benchmark
309 8
azure.h
in cc/src/device
307 9
LightEpoch.cs
in cs/src/core/Epochs
307 19
file_linux.h
in cc/src/environment
305 7
HybridLogCheckpointTask.cs
in cs/src/core/Index/Synchronization
302 13
FASTERLegacy.cs
in cs/src/core/Index/FASTER
295 17
file_windows.h
in cc/src/environment
293 9
DeltaLog.cs
in cs/src/core/Index/Recovery
293 15
BlittableAllocator.cs
in cs/src/core/Allocator
291 30
file_linux.cc
in cc/src/environment
267 16
compare_runs.ps1
in cs/benchmark/scripts
262 -
SpanByte.cs
in cs/src/core/VarLen
258 23
DefaultBlobManager.cs
in cs/src/devices/AzureStorageDevice
257 16
hash_table.h
in cc/src/core
253 9
light_epoch.h
in cc/src/core
253 23
Files With Most Units (Top 20)
File# lines# units
faster.h
in cc/src/core
2427 64
ClientSession.cs
in cs/src/core/ClientSession
651 57
FasterLog.cs
in cs/src/core/Index/FasterLog
989 56
AdvancedClientSession.cs
in cs/src/core/ClientSession
619 53
AllocatorBase.cs
in cs/src/core/Allocator
1139 49
VarLenBlittableAllocator.cs
in cs/src/core/Allocator
389 42
GenericAllocator.cs
in cs/src/core/Allocator
762 41
FunctionsBase.cs
in cs/src/core/Index/Interfaces
111 39
internal_contexts.h
in cc/src/core
424 37
persistent_memory_malloc.h
in cc/src/core
804 37
FASTERImpl.cs
in cs/src/core/Index/FASTER
1832 35
Recovery.cs
in cs/src/core/Index/Recovery
757 34
storage.h
in cc/src/device
654 32
file_system_disk.h
in cc/src/device
464 31
Contexts.cs
in cs/src/core/Index/Common
569 31
BlittableAllocator.cs
in cs/src/core/Allocator
291 30
benchmark.cc
in cc/benchmark-dir
485 26
FASTER.cs
in cs/src/core/Index/FASTER
607 25
light_epoch.h
in cc/src/core
253 23
DeviceLogCommitCheckpointManager.cs
in cs/src/core/Index/CheckpointManagement
346 23
Files With Long Lines (Top 20)

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

File# lines# units# long lines
FASTERImpl.cs
in cs/src/core/Index/FASTER
1832 35 75
AdvancedClientSession.cs
in cs/src/core/ClientSession
619 53 69
ClientSession.cs
in cs/src/core/ClientSession
651 57 65
Recovery.cs
in cs/src/core/Index/Recovery
757 34 63
FASTERClientSession.cs
in cs/src/core/ClientSession
185 18 48
AllocatorBase.cs
in cs/src/core/Allocator
1139 49 46
FASTER.cs
in cs/src/core/Index/FASTER
607 25 39
AzureStorageDevice.cs
in cs/src/devices/AzureStorageDevice
350 19 35
GenericAllocator.cs
in cs/src/core/Allocator
762 41 33
FasterLog.cs
in cs/src/core/Index/FasterLog
989 56 31
FunctionsBase.cs
in cs/src/core/Index/Interfaces
111 39 30
RMWAsync.cs
in cs/src/core/Async
164 6 29
ClientSession.cs
in cs/remote/src/FASTER.client
686 21 28
UpsertAsync.cs
in cs/src/core/Async
97 4 27
FASTERLegacy.cs
in cs/src/core/Index/FASTER
295 17 26
DeleteAsync.cs
in cs/src/core/Async
97 4 25
Program.cs
in cs/playground/AsyncStress
250 3 21
TestLoader.cs
in cs/benchmark
309 8 19
FasterKVClient.cs
in cs/remote/src/FASTER.client
67 3 17
SerializedFasterWrapper.cs
in cs/playground/AsyncStress
208 10 16