Results 1  10
of
12
FOXBOX: A System for Manipulating Symbolic Objects in Black Box Representation
, 1998
"... The FOXBOX system puts in practice the black box representation of symbolic objects and provides algorithms for performing the symbolic calculus with such representations. Black box objects are stored as functions. For instance: a black box polynomial is a procedure that takes values for the variabl ..."
Abstract

Cited by 30 (12 self)
 Add to MetaCart
The FOXBOX system puts in practice the black box representation of symbolic objects and provides algorithms for performing the symbolic calculus with such representations. Black box objects are stored as functions. For instance: a black box polynomial is a procedure that takes values for the variables as input and evaluates the polynomial at that given point. FOXBOX can compute the greatest common divisor and factorize polynomials in black box representation, producing as output new black boxes. It also can compute the standard sparse distributed representation of a black box polynomial, for example, one which was computed for an irreducible factor. We establish that the black box representation of objects can push the size of symbolic expressions far beyond what standard data structures could handle before. Furthermore, FOXBOX demonstrates the generic program design methodology. The FOXBOX system is written in C++. C++ template arguments provide for abstract domain types. Currently, F...
Distributed Maple: Parallel Computer Algebra in . . .
 JOURNAL OF SYMBOLIC COMPUTATION
, 2002
"... We describe the design and use of Distributed Maple, an environment for executing parallel computer algebra programs on multiprocessors and heterogeneous clusters. The system embeds kernels of the computer algebra system Maple as computational engines into a networked coordination layer implemen ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
We describe the design and use of Distributed Maple, an environment for executing parallel computer algebra programs on multiprocessors and heterogeneous clusters. The system embeds kernels of the computer algebra system Maple as computational engines into a networked coordination layer implemented in the programming language Java. On the basis of a comparatively highlevel programming model, one may write parallel Maple programs that show good speedups in mediumscaled environments. We report
A ParaFunctional Programming Interface for a Parallel Computer Algebra Package
 Journal of Symbolic Computation
, 1994
"... : We describe the design and implementation of pD, a parallel variant of a small functional language that serves as a programming interface for the parallel computer algebra package PACLIB. pD provides several facilities to express parallel algorithms in a flexible way on different levels of abstrac ..."
Abstract

Cited by 9 (7 self)
 Add to MetaCart
: We describe the design and implementation of pD, a parallel variant of a small functional language that serves as a programming interface for the parallel computer algebra package PACLIB. pD provides several facilities to express parallel algorithms in a flexible way on different levels of abstraction. The compiler translates a pD module into statically typed parallel C code with explicit task creation and synchronization constructs. This target code can be linked with the PACLIB kernel, the multiprocessor runtime system of the computer algebra library SACLIB. The parallelization of several computer algebra algorithms on a shared memory multiprocessor demonstrates the elegance and efficiency of this approach. Keywords: ParaFunctional Programming, Computer Algebra, Compilation. 1 Introduction We present in this paper a small functional language D and its parafunctional variant pD that is used as a parallel programming interface for the computer algebra package PACLIB. Parallelism...
Parsac2: Parallel Computer Algebra On The DeskTop
, 1995
"... We give an introduction to programming methods, software systems, and algorithms, suitable for parallelizing Computer Algebra on modern multiprocessor workstations. As concrete examples we present multithreaded programming and its use in the PARSAC2 system for parallel symbolic computation, and we ..."
Abstract

Cited by 7 (6 self)
 Add to MetaCart
We give an introduction to programming methods, software systems, and algorithms, suitable for parallelizing Computer Algebra on modern multiprocessor workstations. As concrete examples we present multithreaded programming and its use in the PARSAC2 system for parallel symbolic computation, and we present some examples of parallel algorithms useful for solving systems of polynomial equations.
Virtual Tasks for the PACLIB Kernel
 Parallel Processing: CONPAR 94  VAPP VI International Conference on Parallel and Vector Processing
, 1994
"... . We have extended the task management scheme for the parallel computer algebra package PACLIB. This extension supports "virtual tasks" (tasks that are not yet executable) which are created more efficiently than "real tasks" (tasks that are immediately scheduled for execution). V ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
. We have extended the task management scheme for the parallel computer algebra package PACLIB. This extension supports "virtual tasks" (tasks that are not yet executable) which are created more efficiently than "real tasks" (tasks that are immediately scheduled for execution). Virtual tasks become real only when the system is idling or existing real tasks can be recycled. Consequently, the overhead for task creation and synchronization but also the memory requirements of a parallel program may be reduced. We analyze the system theoretically and experimentally and compare it with another virtual task package. 1 Introduction The purpose of this paper is twofold: first it reports the extension of the task management scheme for a parallel programming package developed at our institute. Second it carefully investigates the semantic and performance consequences of this modification and compares them with the results reported for a system that was developed elsewhere with similar objectives...
RT++  Higher Order Threads for C++: Tutorial and Reference Manual (Version 1.0)
, 1996
"... This report presents RT , a software package that provides higherorder threads in the programming language C . Its features include a typesafe functional thread interface, lazy thread creation, garbagecollected types (lists, arrays, pointer structures) and controlled nondeterminism (thread bags). ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
This report presents RT , a software package that provides higherorder threads in the programming language C . Its features include a typesafe functional thread interface, lazy thread creation, garbagecollected types (lists, arrays, pointer structures) and controlled nondeterminism (thread bags). Threads are firstorder objects that can be used like any other objects and that are automatically reclaimed when they are not referenced any more. The package has been ported to numerous types of monoprocessors and shared memory multiprocessors and can be easily embedded into existing application frameworks. Supported by the Austrian Science Foundation (FWF) grant S5302PHY "Parallel Symbolic Computation" and by the Advanced Information Technology Program (AITP) of Informationtechnology Promotion Agency(IPA), Japan, in the frame of the project "Coordination Programming in Open Computing Environment". The online version of this document and the source code of the described syste...
Parallel Implementation
"... of some characteristics of softwares for parallel computer algebra. SBSH means Sugarbush. PCLBSTM means PACLIB/STURM and PCGVR PAC/GIVARO. Conclusions. Major problems that appears in the design and implementation of parallel computer algebra systems (online scheduling of tasks, distributed garbag ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
of some characteristics of softwares for parallel computer algebra. SBSH means Sugarbush. PCLBSTM means PACLIB/STURM and PCGVR PAC/GIVARO. Conclusions. Major problems that appears in the design and implementation of parallel computer algebra systems (online scheduling of tasks, distributed garbage collection) are studied in the more general context of modern parallel programming languages. Also, parallel computer algebra focus nowdays on two directions. First, a development effort has to be done to integrate a modern parallel language in a general purpose computer algebra system with its huge libraries of complex algorithms. Second, active research should be done in the design of efficient and portable parallel algorithms for more complex problems. Thierry Gautier (INRIA, LMCIMAG), Hoon Hong (NCSU), JeanLouis Roch (LMCIMAG), Gilles Villard (CNRS, LMCIMAG), Wolfgang Schreiner (RISCLinz) References ...
Compilerenforced memory semantics in the SACLIB computer algebra library
 International Workshop on Computer Algebra in Scientific Computing
, 2005
"... ..."
COMPUTERALGEBRA ON A KSR1 PARALLEL COMPUTER
"... Abstract: We give a preliminary report on the implementation of the MAS computer algebra system on a KSR1 virtual shared memory parallel computer with 32 processors. The first topics discussed are dynamic memory management with garbage collection, a parallel integer product, and a parallel version o ..."
Abstract
 Add to MetaCart
Abstract: We give a preliminary report on the implementation of the MAS computer algebra system on a KSR1 virtual shared memory parallel computer with 32 processors. The first topics discussed are dynamic memory management with garbage collection, a parallel integer product, and a parallel version of Buchbergers Gröbner Basis algorithm. 1. Computer Algebra. Computer algebra software is concerned with exact and symbolic computation. E.g. with the computation of the following expressions. The computation of large numbers (e.g. 1000!), the expansion of polynomial expressions (e.g. (x+y)^20), the symbolic integration of functions (e.g. int(sin(x),x)) or the determination of all solutions to systems of algebraic equations (e.g. solve({x+2*y = 2, x^23*y = 10},{x,y})). Prominent products in this class of software are Maple, Mathematica, Reduce and Derive. With the availability of parallel computing hardware several attempts have been made to port computer algebra software to this machines. For an overview see the conference proceedings [3, 12] and the report [11]. It turned out that shared memory multiprocessor machines [7, 6] and also workstation clusters [10] are well suited for the implementation of computer algebra software.