facebookresearch / beanmachine
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 332 files with 35,083 lines of code.
    • 2 very long files (2,581 lines of code)
    • 8 long files (5,294 lines of code)
    • 38 medium size files (11,035 lines of codeclsfd_ftr_w_mp_ins)
    • 51 small files (7,424 lines of code)
    • 233 very small files (8,749 lines of code)
7% | 15% | 31% | 21% | 24%
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
py6% | 20% | 30% | 21% | 21%
cpp12% | 0% | 41% | 24% | 20%
h0% | 21% | 9% | 3% | 65%
pyi0% | 0% | 100% | 0% | 0%
js0% | 0% | 0% | 79% | 20%
jsx0% | 0% | 0% | 0% | 100%
toml0% | 0% | 0% | 0% | 100%
cfg0% | 0% | 0% | 0% | 100%
css0% | 0% | 0% | 0% | 100%
in0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/beanmachine/ppl8% | 15% | 30% | 20% | 24%
src/beanmachine/graph9% | 5% | 35% | 18% | 30%
src/beanmachine/tutorials0% | 74% | 16% | 7% | 1%
src/beanmachine/applications0% | 0% | 32% | 49% | 17%
scripts0% | 0% | 100% | 0% | 0%
sphinx/source0% | 0% | 0% | 87% | 12%
ROOT0% | 0% | 0% | 61% | 38%
website/src/pages0% | 0% | 0% | 79% | 20%
website0% | 0% | 0% | 53% | 46%
website/src/components0% | 0% | 0% | 0% | 100%
website/src/css0% | 0% | 0% | 0% | 100%
src/beanmachine0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
single_assignment.py
in src/beanmachine/ppl/compiler
1528 90
graph.cpp
in src/beanmachine/graph
1053 55
runtime.py
in src/beanmachine/ppl/compiler
990 96
bm_graph_builder.py
in src/beanmachine/ppl/compiler
705 105
rules.py
in src/beanmachine/ppl/compiler
679 132
baseball.py
in src/beanmachine/tutorials/utils
615 11
bmg_nodes.py
in src/beanmachine/ppl/compiler
611 206
graph.h
in src/beanmachine/graph
595 27
hearts.py
in src/beanmachine/tutorials/utils
580 30
radon.py
in src/beanmachine/tutorials/utils
519 15
unaryop.cpp
in src/beanmachine/graph/operator
495 17
abstract_model.py
in src/beanmachine/applications/hme
453 17
world.py
in src/beanmachine/ppl/legacy/world
439 43
single_site_no_u_turn_sampler_proposer.py
in src/beanmachine/ppl/legacy/inference/proposer
428 16
bm_to_bmg.py
in src/beanmachine/ppl/compiler
411 17
ic_infer.py
in src/beanmachine/ppl/experimental/inference_compilation
399 13
bmg_types.py
in src/beanmachine/ppl/compiler
391 46
patterns.py
in src/beanmachine/ppl/compiler
375 75
nba.py
in src/beanmachine/tutorials/utils
374 15
pyi
graph.pyi
in src/beanmachine/graph
368 147
pybindings.cpp
in src/beanmachine/graph
367 -
ast_patterns.py
in src/beanmachine/ppl/compiler
346 57
convert_ipynb_to_mdx.py
in scripts
331 6
abstract_conjugate.py
in src/beanmachine/ppl/testlib
324 19
abstract_mh_infer.py
in src/beanmachine/ppl/legacy/inference
288 10
nuts_proposer.cpp
in src/beanmachine/graph/global/proposer
283 10
unaryop.h
in src/beanmachine/graph/operator
265 20
student_t.cpp
in src/beanmachine/graph/distribution
262 13
single_site_hamiltonian_monte_carlo_proposer.py
in src/beanmachine/ppl/legacy/inference/proposer
257 10
lattice_typer.py
in src/beanmachine/ppl/compiler
256 26
gradient.cpp
in src/beanmachine/graph/operator
248 27
linalgop.cpp
in src/beanmachine/graph/operator
244 6
nuts_proposer.py
in src/beanmachine/ppl/inference/proposer
232 6
mh.cpp
in src/beanmachine/graph
229 23
to_dot.cpp
in src/beanmachine/graph
228 17
perf_report.cpp
in src/beanmachine/graph
226 22
graph_labels.py
in src/beanmachine/ppl/compiler
220 9
hmc_proposer.py
in src/beanmachine/ppl/inference/proposer
217 14
graph.py
in src/beanmachine/ppl/utils
215 25
bmg_inference.py
in src/beanmachine/ppl/inference
211 13
multiaryop.cpp
in src/beanmachine/graph/operator
211 5
fix_requirements.py
in src/beanmachine/ppl/compiler
209 12
diagnostics.py
in src/beanmachine/ppl/diagnostics
208 17
bimixture.cpp
in src/beanmachine/graph/distribution
208 13
dotbuilder.py
in src/beanmachine/ppl/utils
207 17
variational_infer.py
in src/beanmachine/ppl/experimental/vi
205 6
backward.cpp
in src/beanmachine/graph/operator
203 23
beta.cpp
in src/beanmachine/graph/distribution
202 13
fix_unsupported.py
in src/beanmachine/ppl/compiler
199 18
bmg_requirements.py
in src/beanmachine/ppl/compiler
193 20
Files With Most Units (Top 20)
File# lines# units
bmg_nodes.py
in src/beanmachine/ppl/compiler
611 206
pyi
graph.pyi
in src/beanmachine/graph
368 147
rules.py
in src/beanmachine/ppl/compiler
679 132
bm_graph_builder.py
in src/beanmachine/ppl/compiler
705 105
runtime.py
in src/beanmachine/ppl/compiler
990 96
single_assignment.py
in src/beanmachine/ppl/compiler
1528 90
patterns.py
in src/beanmachine/ppl/compiler
375 75
ast_patterns.py
in src/beanmachine/ppl/compiler
346 57
graph.cpp
in src/beanmachine/graph
1053 55
bmg_types.py
in src/beanmachine/ppl/compiler
391 46
world.py
in src/beanmachine/ppl/legacy/world
439 43
hearts.py
in src/beanmachine/tutorials/utils
580 30
kernels.py
in src/beanmachine/ppl/experimental/gp
157 28
graph.h
in src/beanmachine/graph
595 27
gradient.cpp
in src/beanmachine/graph/operator
248 27
lattice_typer.py
in src/beanmachine/ppl/compiler
256 26
graph.py
in src/beanmachine/ppl/utils
215 25
mh.cpp
in src/beanmachine/graph
229 23
backward.cpp
in src/beanmachine/graph/operator
203 23
perf_report.cpp
in src/beanmachine/graph
226 22
Files With Long Lines (Top 4)

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

File# lines# units# long lines
abstract_model.py
in src/beanmachine/applications/hme
453 17 2
toml
documentation.toml
in website
40 - 1
world.py
in src/beanmachine/ppl/legacy/world
439 43 1
fix_requirements.py
in src/beanmachine/ppl/compiler
209 12 1