我使用不同的场景运行协同基准测试来测量ARM皮质R5f处理器的性能。一种情况是在ATCM内存上设置堆栈。
在没有inline标志的情况下编译时,对TCM的叠加得到了较好的效果。而使用inline标志编译时,堆叠在内存中的效果更好。
考虑到TCM更快、更接近处理器,这怎么解释呢?
在对TCM设置堆栈时,我的程序中没有堆栈溢出。
发布于 2015-07-29 10:10:20
考虑到TCM更快、更接近处理器,这怎么解释呢?
您的TCM比L1数据缓存更快吗?它并不总是(许多设计都有单周期L1 D缓存,但是有两个循环访问TCM)。
TCM的通常目的不是性能(尽管它很好),而是可预见性--在TCM中您无法获得缓存错误,所以实时系统使用它来计时关键代码和数据部分。
https://stackoverflow.com/questions/31693805
复制相似问题