Formal Linear Algebra Methods Environment (FLAME)
Computing & Wireless : Computing Methods
Available for non-exclusive licensing
- Robert Van de Geijn, Ph.D. , Computer Science
- John Gunnels, Ph.D. , University of Texas at Austin
The development and maintenance of libraries for high-performance distributed-memory parallel computers is simply too complex to be amenable to conventional approaches to implementation. Attempts to employ traditional methodology have led to the production of an abundance of anfractuous code that is difficult and costly to maintain and upgrade. Moreover, it typically attains suboptimal performance.
FLAME provides a method of formal derivation for the implementation of linear algebra operations. The syntax of the related FLAME API closely resembles that of the mathematical language of linear algebra, reducing implementation errors and increasing the readability of the algorithm. In addition, the derivation model allows quick and rigorous formal proving of the correctness of the code. FLAME provides a rapid development path of sequential implementations to implementations for multiprocessor (SMP) systems and massively parallel distributed memory architectures. The resulting implementations achieve best-in-class performance.
- Achieves best-in-class performance for operations included in standard libraries
- Decreases development time for custom linear algebra algorithms
- Reduces QA time because of the formal derivation model
- Creates highly reusable and stable code
- Reduces costs to user
Best-in-class performancePlatform independentLanguage closely mirrors natural mathematical notationAllows for formal proofs of correctness on new algorithms
FLAME benefits single CPU, SMP, and massively parallel systems. As a design tool, FLAME benefits computational methods that rely heavily on large-scale matrix operations where correctness is required. These types of problems are encountered, for example, in the aerospace industry as part of the design of stealth technology, and in the automobile industry when analyzing vibration in structures. FLAME has additional applications as a teaching tool for linear algebra classes.