Numerical recipes: the art of scientific computing
Numerical recipes: the art of scientific computing
Avoiding unconditional jumps by code replication
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
The Polaris internal representation
International Journal of Parallel Programming
Avoiding conditional branches by code replication
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
The Maple handbook: Maple V Release 4
The Maple handbook: Maple V Release 4
CTADEL: a generator of multi-platform high performance codes for PDE-based scientific applications
ICS '96 Proceedings of the 10th international conference on Supercomputing
An introduction to partial evaluation
ACM Computing Surveys (CSUR)
Automatic synthesis of numerical codes for solving partial differential equations
Selected papers from the 1996 or 1997 IMACS-ACA conference on Non-standard applications of computer algebra
The Mathematica book (4th edition)
The Mathematica book (4th edition)
New recurrent algorithm for a matrix inversion
Journal of Computational and Applied Mathematics
IEEE Computational Science & Engineering
Tomorrow's Weather Forecast: Automatic Code Generation for Atmospheric Modeling
IEEE Computational Science & Engineering
SciNapse: A Problem-Solving Environment for Partial Differential Equations
IEEE Computational Science & Engineering
Using computer algebra systems in the development of scientific computer codes
Future Generation Computer Systems - Special section: Selected papers from the TERENA networking conference 2002
Simple object oriented designed computer algebra system
Journal of Computational Methods in Sciences and Engineering - Intelligent Systems and Knowledge Management
Algorithm engineering: bridging the gap between algorithm theory and practice
Algorithm engineering: bridging the gap between algorithm theory and practice
Hi-index | 0.00 |
The role of computer algebra systems (CASs) is not limited to analyzing and solving mathematical and physical problems. They have also been used as tools in the development process of computer programs, starting from the specification and ending with the coding and testing phases. In this way one can exploit their powerful mathematical capacity during the development phases and, by the other way, take advantage of the speed performance of languages such as FORTRAN or C in the implementation. Among the mathematical features of CASs there are transformations allowing one to optimize the final code instructions. In this paper we show some kind of optimizations that can be done on new or existing algorithms, by extending some techniques that compilers apply currently to optimize the machine code. The results show that the CPU time taken by the optimized code is reduced by a factor that can reach 5. The optimizations are performed with a package built on a well known CAS: Mathematica.