google-gemini/genai-processors
File Size The distribution of size of files (measured in lines of code). |
File Size Overall
- There are 60 files with 15,071 lines of code.
- 2 very long files (3,732 lines of code)
- 5 long files (3,551 lines of code)
- 12 medium size files (3,767 lines of code)
- 21 small files (3,039 lines of code)
- 20 very small files (982 lines of code)
Legend:
1001+
501-1000
201-500
101-200
1-100
explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
File Size per Logical Decomposition
primary
Longest Files (Top 50)
| File | # lines | # units |
|---|---|---|
| 2451 | - | |
| 1281 | - | |
| 899 | 81 | |
| 719 | - | |
| 693 | - | |
| 686 | 66 | |
| 554 | - | |
| 458 | 12 | |
| 420 | - | |
| 337 | - | |
| 335 | - | |
| 327 | - | |
| 324 | 8 | |
| 318 | 8 | |
| 280 | 4 | |
| 265 | - | |
| 248 | 6 | |
| 238 | 15 | |
| 217 | 4 | |
| 192 | 5 | |
| 190 | 5 | |
| 185 | 2 | |
| 175 | 6 | |
| 169 | 2 | |
| 167 | 5 | |
| 167 | 17 | |
| 166 | 5 | |
| 159 | 9 | |
| 155 | 5 | |
| 153 | 8 | |
| 135 | 3 | |
| 134 | 2 | |
| 125 | 9 | |
| 124 | 8 | |
| 113 | 11 | |
| 113 | 5 | |
| 110 | 6 | |
| 104 | 9 | |
| 102 | 4 | |
| 101 | 3 | |
| 90 | 1 | |
| 87 | 1 | |
| 85 | 8 | |
| 78 | 4 | |
| 75 | 2 | |
| 75 | 5 | |
| 68 | 5 | |
| 63 | 3 | |
| 62 | 2 | |
| 54 | 3 |
Large Files That Change Often (Top 20)
To change a file, an AI coding agent (or a person) has to read it: these files are read the most for the changes in the past year (lines × changes).
| File | # lines | ≈ tokens to read | # changes (1y) | ≈ lines edited per change | lines read per line changed |
|---|---|---|---|---|---|
| 2451 | ~15k–50k | 15 | ~300 | ~10 | |
| 686 | ~3k–10k | 32 | ~50 | ~15 | |
| 899 | ~5k–15k | 16 | ~70 | ~10 | |
| 458 | ~3k–7k | 30 | ~70 | ~7 | |
| 719 | ~5k–15k | 5 | ~150 | ~5 | |
| 238 | ~1.5k–5k | 15 | ~30 | ~7 | |
| 318 | ~2k–5k | 9 | ~70 | ~5 | |
| 1281 | ~7k–20k | 2 | ~200 | ~7 | |
| 324 | ~2k–5k | 7 | ~50 | ~7 | |
| 217 | ~1.5k–5k | 10 | ~50 | ~5 | |
| 693 | ~3k–10k | 3 | ~100 | ~7 | |
| 554 | ~3k–10k | 3 | ~150 | ~3 | |
| 155 | ~1k–3k | 9 | ~30 | ~5 | |
| 420 | ~2k–7k | 3 | ~150 | ~3 | |
| 169 | ~1k–3k | 6 | ~30 | ~5 | |
| 335 | ~2k–5k | 3 | ~30 | ~7 | |
| 167 | ~1k–3k | 6 | ~30 | ~5 | |
| 166 | ~1k–3k | 6 | ~50 | ~3 | |
| 280 | ~1.5k–5k | 3 | ~100 | ~2 | |
| 185 | ~1k–3k | 4 | ~50 | ~3 |
Tokens are lines × 7 to 14 (analysis.fileReadsForChanges). Lines edited per change are the file's lines added and deleted divided by its commits over the whole history. Agents read about 2,000 lines at a time: when a 17,000-line file was split into modules, the tokens an agent read for the same change fell by 83% (The Economic Benefit of Refactoring, 2026).
Files With Most Units (Top 46)
| File | # lines | # units |
|---|---|---|
| 899 | 81 | |
| 686 | 66 | |
| 167 | 17 | |
| 238 | 15 | |
| 458 | 12 | |
| 113 | 11 | |
| 159 | 9 | |
| 125 | 9 | |
| 104 | 9 | |
| 153 | 8 | |
| 324 | 8 | |
| 318 | 8 | |
| 124 | 8 | |
| 85 | 8 | |
| 175 | 6 | |
| 248 | 6 | |
| 110 | 6 | |
| 155 | 5 | |
| 68 | 5 | |
| 192 | 5 | |
| 166 | 5 | |
| 75 | 5 | |
| 190 | 5 | |
| 113 | 5 | |
| 167 | 5 | |
| 102 | 4 | |
| 217 | 4 | |
| 280 | 4 | |
| 78 | 4 | |
| 135 | 3 | |
| 54 | 3 | |
| 101 | 3 | |
| 63 | 3 | |
| 33 | 2 | |
| 75 | 2 | |
| 134 | 2 | |
| 185 | 2 | |
| 62 | 2 | |
| 43 | 2 | |
| 169 | 2 | |
| 19 | 2 | |
| 32 | 2 | |
| 42 | 1 | |
| 49 | 1 | |
| 90 | 1 | |
| 87 | 1 |
Files With Long Lines (Top 10)
There are 10 files with lines longer than 120 characters. In total, there are 52 long lines.
| File | # lines | # units | # long lines |
|---|---|---|---|
| 2451 | - | 22 | |
| 337 | - | 4 | |
| 335 | - | 4 | |
| 554 | - | 4 | |
| 719 | - | 4 | |
| 1281 | - | 3 | |
| 420 | - | 3 | |
| 327 | - | 3 | |
| 693 | - | 3 | |
| 265 | - | 2 |
Correlations
File Size vs. Commits (all time): 60 points
|
|
2451.0 | lines of code min: 1.0average: 251.18 25th percentile: 75.0 median: 144.0 75th percentile: 276.25 max: 2451.0 |
|
| 0 | 40.0 | ||
|
commits (all time) min: 1.0 | average: 7.28 | 25th percentile: 3.0 | median: 5.0 | 75th percentile: 9.0 | max: 40.0
|
|||
File Size vs. Contributors (all time): 60 points
|
|
2451.0 | lines of code min: 1.0average: 251.18 25th percentile: 75.0 median: 144.0 75th percentile: 276.25 max: 2451.0 |
|
| 0 | 5.0 | ||
|
contributors (all time) min: 1.0 | average: 2.48 | 25th percentile: 2.0 | median: 3.0 | 75th percentile: 3.0 | max: 5.0
|
|||
File Size vs. Commits (30 days): 1 points
|
|
78.0 | lines of code min: 78.0average: 78.0 25th percentile: 78.0 median: 78.0 75th percentile: 78.0 max: 78.0 |
|
| 0 | 1.0 | ||
|
commits (30d) min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0
|
|||
File Size vs. Contributors (30 days): 1 points
|
|
78.0 | lines of code min: 78.0average: 78.0 25th percentile: 78.0 median: 78.0 75th percentile: 78.0 max: 78.0 |
|
| 0 | 1.0 | ||
|
contributors (30d) min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0
|
|||
File Size vs. Commits (90 days): 19 points
|
|
686.0 | lines of code min: 43.0average: 197.63 25th percentile: 101.0 median: 166.0 75th percentile: 238.0 max: 686.0 |
|
| 0 | 1.0 | ||
|
commits (90d) min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0
|
|||
File Size vs. Contributors (90 days): 19 points
|
|
686.0 | lines of code min: 43.0average: 197.63 25th percentile: 101.0 median: 166.0 75th percentile: 238.0 max: 686.0 |
|
| 0 | 1.0 | ||
|
contributors (90d) min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0
|
|||
About This Analysis
- 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...
- To learn more about bloaters and how to deal with long code structures, Sokrates recommends the following resources:
- Refactoring bloaters, sourcemaking.com
- The Blob Software Development Anti-Pattern, sourcemaking.com