changa@unc.UUCP (Allan Chang) (01/24/85)
As a software engineering project, we are working on a C program preprocesor to enable programmers to take advan- tage of the computing power of the Masscomp Arrary Processor (AP-501). Use of the existing Array Processor Run-Time Library requires very detailed and laborious management by the pro- grammer. It is entirely the user's responsibility to allo- cate and free the temporary array storage associated with array processor operations. Among the notable deficiencies of the library from the user's standpoint are a lack of rou- tines for managing the memory of the AP-501 and for sequenc- ing vectors that are too large to fit in the available AP- 501 memory space. Also, the cryptic subroutine call sequences necessary to perform useful operations are gen- erally unreadable. The preprocessor under development will provide means of accessing the array processor from within the C language at a level of abstraction in conformity with the rest of C. At the present stage, we do not aim at recognizing portions of code where it is appropriate to replace conventional element-by-element operations with vector operations, e.g., eliminating loops. Rather, we assume user's responsibility to write program segments that explicitly require use of the array processor. In terms of data structures, the goal is to have arrays appear to the user as elemental data structures that can be manipulated much as they can be in APL. Other important tasks for the project will be management of the AP-501 memory and sequencing of large vectors through the processor. The project will be developed with the following two long-range goals: extension of the preprocessor to provide output for Fortran or other compilers, and a simple software simulation of the array processor on machines not other- wise having that capability. It is one of our goals to fit into an existing syntax or usage framework if such exists. We would appreciate any information on existing similar systems (or publications) that would provide guidelines for our work. We would welcome any concrete suggestions on syntax of array operation statements for the C language. At the initial design stage, any enlightening information will be a big help, and will be thankfully so acknowledged. If you can provide help, please contact Robert Weir, Project Director Department of Computer Science UNC at Chapel Hill Chapel Hill, NC 27514 or at (919)-962-5698