skip to main content
10.1145/166197.166201acmconferencesArticle/Chapter ViewAbstractPublication PagesaplConference Proceedingsconference-collections
Article
Free Access

The role of APL and J in high-performance computation

Published:01 September 1993Publication History

ABSTRACT

Although multicomputers are becoming feasible for solving large problems, they are difficult to program: Extraction of parallelism from scalar languages is possible, but limited. Parallelism in algorithm design is difficult for those who think in von Neumann terms. Portability of programs and programming skills can only be achieved by hiding the underlying machine architecture from the user, yet this may impact performance on a specific host.APL, J, and other applicative array languages with adequately rich semantics can do much to solve these problems. The paper discusses the value of abstraction and semantic richness, performance issues, portability, potential degree of parallelism, data distribution, process creation, communication and synchronization, frequency of program faults, and clarity of expression. The BLAS are used as a basis for comparison with traditional supercomputing languages.

References

  1. Abr70.Philip Abrams. An APL Machine. PhD thesis, Stanford University, 1970. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. AKPW83.j.R. Allen, K. Kennedy, C. Porterfield, and J. Warren. Conversion of control dependence; to data dependence. In Proceedings of the Principles of Programming Languages Conference, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. APL87.APL2 Programming: Language Reference. 1987. SH20-9227.Google ScholarGoogle Scholar
  4. Ben83a.Jon Bentley. Programming pearls. Communications of the ACM, 20(8), July 1983.Google ScholarGoogle Scholar
  5. Ben83b.Jon Bentley. Programming pearls. Communications of the A CM, 20(9), August 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Ber84.Robert Bernecky. Function arrays. ACM SIGAPL Quote Quad, 14(4), June 1984. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Ber86.Robert Bernecky. APL: a prototyping language. A CM SIGAPL Quote Quad, 16(4), July 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Ber87.Robert Bernecky. An introduction to function rank. A CM SIGAPL Quote Quad, 18(2), December 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Ber91a.Robert Bernecky. Fortran 90 arrays. ACM SIGPLAN Notices, 26(2), February 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Ber91b.Robert Bernecky. Fortran 90 arrays. APL- CAM Journal, 13(4), October 1991. Originally appeared in ACM SIGPLAN Notices, 26(2), February 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Ber93.Robert Bernecky. Array morphology. ACM SIGAPL Quote Quad, 24(1), August 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. BH91.Robert Bernecky and R.K.W. Hui. Gerunds and representations. ACM SIGAPL Quote Quad, 21(4), July 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. BI80.Robert Bernecky and Kenneth E. Iverson. Operators and enclosed arrays. In APL Users Meeting 1980, I.P. Sharp Associates Limited, 1980.Google ScholarGoogle Scholar
  14. Cam89.Lloyd W. Campbell, editor. Fortran 88: A Proposed Revision of FORTRAN 77. ISO/IEC JTCI/SC22/WG5-N357, March 1989.Google ScholarGoogle Scholar
  15. Can92.David Cann. Retire Fortran? A debate rekindled. Communications of the A CM, 35(8), August 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. DD90.M.J. Dayd6 and I.S. Duff. Use of parallel level 3 BLAS in LU factorization on three vector multiprocessors- the Alliant FX/80, the CRAY-2, and the IBM 3090VF. 1990 h~ternational Conference on Supercomputing, June 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. DDHD90.J.J. Dongarra, Jeremy Decroz, Sven Hammarlung, and Ian Duff. A set of level 3 basic linear algebra subprograms. A CM Transactions on Mathematical Software, 16(1 ), March 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. HIM91.Roger K.W. Hui, Kenneth E. Iverson, and Eugene E. McDonnell. Tacit programming. ACM SIGAPL Quote Quad, 21 (4), August 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. HP90.John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach. Morgan Kauffman, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. HSF92.Susan Flynn Hummel, Edith Schonberg, and Lawrence E. Flynn. Factoring: a method for scheduling parallel loops. Communications of the A CM, 35(8), August 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Ive62.Kenneth E. Iverson. A Programming Language. Wiley, 1962. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Ive91.Kenneth E. Iverson. Programming in J. 1991.Google ScholarGoogle Scholar
  23. Ive92.Kenneth E. Iverson. A Dictionary of J. J version 5 edition, 1992.Google ScholarGoogle Scholar
  24. JSA*85.McGraw J.R, S.K. Skedzielewski, S.J. Allen, R.R. Oldehoeft, J. Glauert, C. Kirkham, W. Noyce, and R. Thomas. SISAL: Streams and Iterations in a Single-Assignment Language, Language Reference Manual. Technical Report M-146, Revision 1, Lawrence Livermore National Laboratory, March 1985.Google ScholarGoogle Scholar
  25. Lei92.F. Thomson Leighton. Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes. Morgan Kaufmann, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. LHKK79.C.L. Lawson, R.J. Hanson, D.R. Kincaid, and F.T. Krogh. Basic linear algebra subroutines for FORTRAN usage. A CM Transactions on Mathematical Software, 5(3), September 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. McI91.D.B. McIntyre. Language as an intellectual tool: from hieroglyphics to APL. IBM Systems Journal, 30(4), 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. MI89.Eugene E. McDonnell and Kenneth E. Iverson. Phrasal forms. A CM SIGAPL Quote Quad, 19(4), August 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. MM89.M.V. Morreale and M. Van Der Meulen. Primitive Function Performance of APL2 Version 1 Release 3 (with SPE PL34409) on the IBM 3090/S Vector Facility. Technical Report Technical Bulletin No. GG66-3130-00, IBM Washington Systems Center, IBM Corporation, May 1989.Google ScholarGoogle Scholar
  30. Per79.Alan J. Perlis. Programming with idioms in APL. A CM SIGAPL Quote Quad, 9(4), June 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. SHA91.SHARP APL Reference Manual. Reuters Information Services (Canada) Limited, Toronto, Canada, 2nd edition, 1991.Google ScholarGoogle Scholar
  32. SHA93.SHARP APL Reference Manual. iverson Software Inc., 33 Major St., Toronto, Canada, 2nd edition, 1993.Google ScholarGoogle Scholar
  33. Smi81.Bob Smith. Nested arrays, operators, and fufictions. ACM SIGAPL Quote Quad, 12(1), September 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Ste93.Guy L. Steele Jr. High performance Fortran: status report. A CM SIGPLAN Notices, 28(1), January 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Sto87.Harold S. Stone. High-Performance Computer Architecture. Addison-Wesley, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Wal91.David W. Wall. Limits of instruction-level parallelism. In Proceedings ofASPLOS, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Wil91.R.G. Willhoft. Parallel expression in the APL2 language. IBM Systems Journal, 30(4), 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The role of APL and J in high-performance computation

                Recommendations

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in
                • Published in

                  cover image ACM Conferences
                  APL '93: Proceedings of the international conference on APL
                  September 1993
                  325 pages
                  ISBN:0897916123
                  DOI:10.1145/166197

                  Copyright © 1993 Author

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 1 September 1993

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • Article

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader