MemExplorer: From C code to Memory Allocation
Résumé
In this paper, we propose to address the memory mapping problems in the software development context. Indeed, the software designers do not have both efficient methodology and tools that allow us to determine the optimum memory mapping for their applications directly from their C code program. Here, we propose mathematical model that is able to represent both all the memory conflicts generated by a given application and the memory constraints due to the memory hierarchy. Indeed in this paper, only the sub problem of optimum memory mapping for a given hierarchy is treated and not the whole problem of optimum mapping and hierarchy one. Our results, on classical digital signal processing applications, show that our methodology always generates the optimum mapping memory in reasonable time (less than 30 seconds) and that these mappings are always optimum in energy consumption point of view (energy improvement up to 75%). Our methodology is automatic since we have developed a too, MemExplorer, that generates the optimum mapping from C code and that this tool can be used by SoftExplorer (power/energy consumption estimation tool) so, this work is very user friendly for non expert engineers.