Startup Time Loading Data Asset Tool can be used to partition an asset for a startup scene in a faster flash memory. An another option would be to load a small startup scene and use asynchronous asset loading to load next scene in background. Loading a lot of data at startup is generally a bad idea. Distribute loading tasks over time. Also avoid to copy the whole asset from NAND flash to RAM. A better solution would be to implement a paging and caching mechanism using a custom Asset Repository. Persist Pre-compiled Shaders Use this feature by enabling CANDERA_SHADER_PROGRAM_PERSIST_INTERFACE_ENABLED flag in the CMake project. Scope Masks Upload data to VRAM using Scope Masks as presented in the documentation and in the example . Startup Animation Here are some hints for the startup animation: Avoid large images Use image compression Restrict the frame rate (e.g. 30 fps) Realize a flipbook startup animation with asynchronous image fetching