我有以下代码:对齐或不对齐堆栈上的char数组?
char stats[109]; /* !LINE UNDER QUESTION! */
sprintf(stats,
"OBJECTS:\n%u/256\n" \
"BLOCKS:\n%u/" GP_ConstantExpand(Map_MaxLightmaps) "\n" \
"QUADS:\n%u/" GP_ConstantExpand(Map_MaxLightmaps) "\n" \
"LIGHTMAPS:\n%u/" GP_ConstantExpand(Map_MaxLightmaps) "\n" \
"CHECKPOINTS:\n%u/256\n" \
"HINTS:\n%u/256",
Map_This_Header.objects, Map_This_Header.blocks, Map_This_QuadCount,
lmapcount, Map_This_Header.checkpoints, Map_This_Header.hints);
是否细到静态分配的109个字符(109就够了我的文字)阵列,或对准阵列128个字节会提高性能?
我不关心文件大小和内存使用情况,性能对我来说很重要,我的代码必须在旧计算机上以60 FPS运行。
由于性能对您至关重要。唯一的方法就是测试两种方法并在您的环境中对它们进行配置。这将为您提供比您明智的猜测更准确的评估结果,您将得到此处。 –
如果您关心性能,为什么要做一些文本格式的加载? – Rook
此外,不关心内存使用也可能会损害性能,如果你开始获取缓存未命中,因为你有太多的数据不适合缓存空间... – Rook