Describe the optimization:
Struct padding can take up a lot of space, and the ChunkFeature struct for example has 25% of its memory footprint taken up by padding due to alignment requirements under the default C layout.
Explain why this feature is necessary:
The ESP32 family of CPUs incur no performance penalty for unaligned accesses, so this feature will reduce memory usage with (theoretically) no negative impact on performance.
Are you planning on implementing this yourself? If so, explain the approach you intend to take:
I can implement this myself, which would amount to surrounding the common struct definitions with #pragma pack directives.
Describe the optimization:
Struct padding can take up a lot of space, and the ChunkFeature struct for example has 25% of its memory footprint taken up by padding due to alignment requirements under the default C layout.
Explain why this feature is necessary:
The ESP32 family of CPUs incur no performance penalty for unaligned accesses, so this feature will reduce memory usage with (theoretically) no negative impact on performance.
Are you planning on implementing this yourself? If so, explain the approach you intend to take:
I can implement this myself, which would amount to surrounding the common struct definitions with
#pragma packdirectives.