Skip to content

Commit 6f060c8

Browse files
Add section about the impact of "--skip-references"
1 parent 76c9489 commit 6f060c8

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

UnityDataTool/Commands/analyze.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,3 +112,25 @@ These errors occur when the same serialized file name appears in multiple source
112112

113113
See [Comparing Builds](../../Documentation/comparing-builds.md) for strategies to compare different versions of builds.
114114

115+
### Slow Analyze times, large output database
116+
117+
Consider using the `--skip-references` argument.
118+
119+
A real life analyze of a big Addressables build shows how large a difference this can make:
120+
121+
* 208 seconds and producted a 500MB database (not specifying --skip-reference)
122+
* 9 seconds and produced a 68 MB file (with --skip-reference)
123+
124+
The references are not needed for core asset inventory and size information.
125+
126+
Note: When specifying `--skip-reference` some functionality is lost:
127+
128+
* the `find-refs` command will not work
129+
* `view_material_shader_refs` and `view_material_texture_refs` will be empty
130+
* Queries that look at the relationship between objects will not work. For example the refs table is required to link between a `MonoBehaviour` and its `MonoScript`.
131+
* The `objects.crc32` column will be NULL/0 for all objects. This means:
132+
* No detection of identical objects by content hash (See [Comparing Builds](../../Documentation/comparing-builds.md))
133+
* The `view_potential_duplicates` view relies partially on CRC32 to distinguish true duplicates
134+
135+
Future work: The refs table contains a lot of repeated strings and could be made smaller and more efficient. It might also be prudent to control the CRC32 calculation using an independent flag.
136+

0 commit comments

Comments
 (0)