International audienceMemoization is the technique of saving result of executions so that future executions can be omitted when the input set repeats. Memoization has been proposed in previous literature at the instruction level, basic block level and function level using hardware as well as pure software level approaches including changes to programming language.In this paper, we focus on software memoization for procedural languages like C and Fortran, at the granularity of a function. We propose a simple linker based technique for enabling software memoization of any dynamically linked pure function by function interception and we illustrate our framework using a set of computationally expensive pure functions – the transcendental functi...
International audienceReal life C programs are often written using C dialects which, for the ISO C s...
Programs written in C and C++ are susceptible to memory errors, including buffer overflows and dangl...
We present a framework for applying memoization selectively. The framework provides programmer contr...
International audienceMemoization is the technique of saving result of executions so that future exe...
International audienceMemoization is the technique of saving the results of computations so that fut...
We have proposed mechanisms to implement function memoization at a software level as part of our eff...
International audienceImproving execution time and energy efficiency is needed for many applications...
Many functions perform redundant calculations. Within a single function invocation, several sub-func...
This paper describes the design and evaluation of an auto-memoization processor. The major point of ...
It is shown that a process similar to Earley's algorithm can be generated by a simple top-down ...
AbstractLanguage processors may be implemented directly as functions. In a programming language that...
Redundant computations appear during the execution of real programs. Multiple factors contribute to ...
Memoization has attracted considerable interest because it speeds up programs by reducing instructio...
Abstract. Memoization is a well-known technique for improving the performance of a program, but it h...
Processing-in-memory (PIM) promises to alleviate the data movement bottleneck in modern computing sy...
International audienceReal life C programs are often written using C dialects which, for the ISO C s...
Programs written in C and C++ are susceptible to memory errors, including buffer overflows and dangl...
We present a framework for applying memoization selectively. The framework provides programmer contr...
International audienceMemoization is the technique of saving result of executions so that future exe...
International audienceMemoization is the technique of saving the results of computations so that fut...
We have proposed mechanisms to implement function memoization at a software level as part of our eff...
International audienceImproving execution time and energy efficiency is needed for many applications...
Many functions perform redundant calculations. Within a single function invocation, several sub-func...
This paper describes the design and evaluation of an auto-memoization processor. The major point of ...
It is shown that a process similar to Earley's algorithm can be generated by a simple top-down ...
AbstractLanguage processors may be implemented directly as functions. In a programming language that...
Redundant computations appear during the execution of real programs. Multiple factors contribute to ...
Memoization has attracted considerable interest because it speeds up programs by reducing instructio...
Abstract. Memoization is a well-known technique for improving the performance of a program, but it h...
Processing-in-memory (PIM) promises to alleviate the data movement bottleneck in modern computing sy...
International audienceReal life C programs are often written using C dialects which, for the ISO C s...
Programs written in C and C++ are susceptible to memory errors, including buffer overflows and dangl...
We present a framework for applying memoization selectively. The framework provides programmer contr...