Optimising code generation with haggies |
| |
Authors: | T Reiter |
| |
Affiliation: | Nikhef, Science Park 105, 1098 XG Amsterdam, The Netherlands |
| |
Abstract: | This article describes haggies, a program for the generation of optimised programs for the efficient numerical evaluation of mathematical expressions. It uses a multivariate Horner-scheme and Common Subexpression Elimination to reduce the overall number of operations.The package can serve as a back-end for virtually any general purpose computer algebra program. Built-in type inference that allows to deal with non-standard data types in strongly typed languages and a very flexible, pattern-based output specification ensure that haggies can produce code for a large variety of programming languages.We currently use haggies as part of an automated package for the calculation of one-loop scattering amplitudes in quantum field theories. The examples in this articles, however, demonstrate that its use is not restricted to the field of high energy physics.Program summaryProgram title: haggiesCatalogue identifier: AEGF_v1_0Program summary: URL: http://cpc.cs.qub.ac.uk/summaries/AEGF_v1_0.htmlProgram obtainable from: CPC Program Library, Queen's University, Belfast, N. IrelandLicensing provisions: GNU GPL v3No. of lines in distributed program, including test data, etc.: 56 220No. of bytes in distributed program, including test data, etc.: 579 010Distribution format: tar.gzProgramming language: Java, JavaCCComputer: Any system that runs the Java Virtual MachineOperating system: Any system that runs the Java Virtual MachineRAM: Determined by the size of the problemClassification: 4.14, 5, 6.2, 6.5, 11.1Nature of problem: Generation of optimised programs for the evaluation of possibly large algebraic expressionsSolution method: Java implementationRunning time: Determined by the size of the problem |
| |
Keywords: | Computer algebra Code generation Automation of perturbative calculations |
本文献已被 ScienceDirect 等数据库收录! |
|