FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Static prediction of heap space usage for first-order functional programs
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Measuring empirical computational complexity
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
ISSTA '08 Proceedings of the 2008 international symposium on Software testing and analysis
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
SPEED: precise and efficient static estimation of program computational complexity
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Software Performance and Scalability: A Quantitative Approach
Software Performance and Scalability: A Quantitative Approach
"Carbon Credits" for Resource-Bounded Computations Using Amortised Analysis
FM '09 Proceedings of the 2nd World Congress on Formal Methods
Measuring empirical computational complexity
Measuring empirical computational complexity
Knowledge based automatic scalability analysis and extrapolation for MPI programs
Euro-Par'05 Proceedings of the 11th international Euro-Par conference on Parallel Processing
Type-Based amortised heap-space analysis
ESOP'06 Proceedings of the 15th European conference on Programming Languages and Systems
Hi-index | 0.00 |
In the era of information explosion, a program is necessary to be scalable. Therefore, scalability analysis becomes very important in software verification and validation. However, current approaches to empirical scalability analysis remain limitations related to the number of supported models and performance. In this paper, we propose a runtime approach for estimating the program resource usage with two aims: evaluating the program scalability and revealing potential errors. In this approach, the resource usage of a program is first observed when it is executed on inputs with different scales, the observed results are then fitted on a model of the usage according to the program's input. Comparing to other approaches, ours supports diverse models to illustrate the resource usage, i.e., linear-log, power-law, polynomial, etc. We currently focus on the computation cost and stack frames usage as two representatives of resource usage, but the approach can be extended to other kinds of resource. The experimental result shows that our approach achieves more precise estimation and better performance than other state-of-the-art approaches.