@@ -46,52 +46,3 @@ Standard syntax x86-64 disassembly can be generated using:
4646``` shell
4747objdump -C -M intel --no-show-raw -d -S < binary> > dis.txt
4848```
49-
50- ## Struct sizes
51-
52- Optimizing structures for size and spatial locality is important, so we keep
53- half an eye on the sizes of the structures to make sure we're not exploding the
54- sizes a lot!
55-
56- Useful snippet for dumping the main structure sizes:
57-
58- ``` c++
59- printf ("partition_info: %zu\n", sizeof(partition_info));
60- printf("decimation_table: %zu\n", sizeof(decimation_table));
61- printf("block_size_descriptor: %zu\n", sizeof(block_size_descriptor));
62- printf("imageblock: %zu\n", sizeof(imageblock));
63- printf("error_weight_block: %zu\n", sizeof(error_weight_block));
64- printf("symbolic_compressed_block: %zu\n", sizeof(symbolic_compressed_block));
65- printf("compress_fixed_partition_buffers: %zu\n", sizeof(compress_fixed_partition_buffers));
66- printf("compress_symbolic_block_buffers: %zu\n", sizeof(compress_symbolic_block_buffers));
67- ```
68-
69- Released builds return the following sizes of things (in bytes)
70-
71- | Structure | v2.1 |
72- | -------------------------------- | ------- |
73- | partition_info | 1120 |
74- | decimation_table | 364896 |
75- | block_size_descriptor | 3473152 |
76- | imageblock | 4176 |
77- | error_weight_block | 14704 |
78- | symbolic_compressed_block | 380 |
79- | compress_fixed_partition_buffers | 1729280 |
80- | compress_symbolic_block_buffers | 1745504 |
81-
82- A lot things are allocated with worst-case `MAX_TEXELS_PER_BLOCK` counts, as
83- this avoids indirect loads. Setting this to 36 (i.e. enough for 6x6 blocks)
84- improves overall performance by ~5%. Dynamic sizing would be interesting to
85- explore, but we really want to avoid indirect pointer-chasing loads on critical
86- paths.
87-
88- | Structure | v2.1 |
89- | -------------------------------- | ------- |
90- | partition_info | 224 |
91- | decimation_table | 60876 |
92- | block_size_descriptor | 718704 |
93- | imageblock | 752 |
94- | error_weight_block | 2464 |
95- | symbolic_compressed_block | 380 |
96- | compress_fixed_partition_buffers | 1475840 |
97- | compress_symbolic_block_buffers | 1479840 |
0 commit comments