Skip to main content

Parallelism issues in multi — Style computers

  • Conference paper
  • First Online:
Future Parallel Computers

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 272))

Abstract

Future parallel computers will be characterized at least by: i) high parallelism and scalability exploiting VLSI technology, and ii) efficient and reliable support to logic / /functional/ object oriented languages. Massive parallelism machines with regular architectures seem to represent the key for such computers. Here we study the features of high level, concurrent machine languages for parallel computers able to support a large variety of languages and applications (multi-style machines). The various concurrency approaches (imperative, logic, functional, data-flow) are analyzed in order to understand their aptitude for multi-style machines. The concurrency issues taken into account are communication and synchronization, nondeterminism, parallelism exploitation, fault tolerance, and programming environment tools.

This work has been supported by the Esprit Project 415, by the National Project of the Education Ministry on Systems for Logic and Functional Programming, and by the CNR Strategic Project on Parallel Computing.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. W. B. Ackerman, "Data Flow Languages". In Proc. of AFIPS, NCC 79, pp. 1087–1095, 1979.

    Google Scholar 

  2. DOD, "Reference Manual for the Ada Programming Language". ANSI MIL-STD 1815A, 1983

    Google Scholar 

  3. G.R. Andrews, "Synchronizing Resources". ACM TOPLAS, vol. 3, N. 4, PP. 405–430, October 1981.

    Google Scholar 

  4. G.R. Andrews and F.B. Schneider, "Concepts and Notations of Concurrent Programming". ACM Computing Surveys, vol. 15, n. 1, pp. 3–43, March 1983.

    Google Scholar 

  5. K.R. Apt, N. Francez and W.P. de Roever, "A Proof System for Communicating Sequential Processes". ACM TOPLAS, vol. 2, n. 3, pp. 359–385, July 1980.

    Google Scholar 

  6. K.R. Apt and E-R. Olderog, "Proof Rules and Transformations for Dealing with Fairness", Science of Computer Programming, vol. 3, pp. 65–100, 1983.

    Google Scholar 

  7. E.A. Ashcroft and W.W. Wadge" "Lucid, a Nonprocedural Language with Iteration". CACM, vol. 7, n. 20, pp. 519–526, July 1977.

    Google Scholar 

  8. E. Astesiano and E. Zucca: "Semantics of CSP Via Translation into CCS", CNET Report n. 22, Institute of Math., Univ. of Genova., 1981.

    Google Scholar 

  9. G. Attardi, Lecture Notes for the ESPRIT Summer School on Future Parallel Computers, Pisa, June 1986

    Google Scholar 

  10. F. Baiardi, A. Fantechi, M. Vanneschi, "Language Constructs for a Robust Distributed Environment", Int. Rep., Dept. of Comp. Science S-81-9, Univ. of Pisa, May 1981.

    Google Scholar 

  11. F. Baiardi, A. Fantechi, A. Tomasi, M. Vanneschi, "Mechanisms for a Robust Multiprocessing Environment in the MuTEAM Kernel", Proc. of 11th Fault Tolerant Computing Symp, Portland (USA), June 1981, pp. 20–24.

    Google Scholar 

  12. F. Baiardi, L. Ricci, M. Vanneschi, "Static Checking of Interprocess Communication in ECSP", ACM SIGPLAN Symposium on Compiler Construction, Montreal, June 1984.

    Google Scholar 

  13. F. Baiardi, A. Fantechi, A. Tomasi, M. Vanneschi, "Distributed Implementation of Nested Communicating Processes and Termination", 13th Int. Conf. on Parallel Processing, Aug. 1984.

    Google Scholar 

  14. F. Baiardi, L. Ricci, A. Tomasi, M. Vanneschi, "Structuring processes for a cooperative approach to fault-tolerant distributed software". Proc. of 4th Symp. on Reliability in Distributed Software and Database Systems, Oct. 1984.

    Google Scholar 

  15. F. Baiardi, N. De Francesco, G. Vaglini, "Development of a Debugger for a Concurrent Language". IEEE Trans. on Software Eng., April 1986.

    Google Scholar 

  16. A. J. Bernstein, "Output Guards and Nondeterminism in Communicating Sequential Processes", ACM TOPLAS, vol. n. 2, pp. 234–238, April 1980.

    Google Scholar 

  17. D. Bjørner and C. B. Jones (eds.), "The Vienna Development Method: The Meta-Language". Lecture Notes in Comp. Sc., 61, Springer-Verlag 1979.

    Google Scholar 

  18. W. Brauer (ed.), "Net Theory and Applications". Lecture Notes in Comp. SC., 84, Springer-Verlag, 1980.

    Google Scholar 

  19. S.D. Brookes, C.A.R. Hoare and A.W. Roscoe, "A Theory of Communicating Sequential Processes". JACM, vol. 31, n. 3, pp. 560–599, July 1984.

    Google Scholar 

  20. M. Broy, "A Fixed Point Approach to Applicative Multiprogramming". In M. Broy and G. Schmidt (eds.): Theoretical Foundations of Programming Methodology, pp. 565–623, D. Reidel, 1982.

    Google Scholar 

  21. M. Broy, "Fixed Point Theory for Communication and Concurrency". In D. Bjørner (ed.): IFIP TC2 Working Conference on Formal Description of Programming Concepts, Garmisch, June 1982, pp. 125–147, North-Holland 1983.

    Google Scholar 

  22. M. Broy, "Extensional Behaviour of Concurrent, Nondeterministic Communicating Systems". NATO ASI Series, vol. F14, Control Flow and Data-Flow: Concepts of Distributed Programming (M. Broy ed.), Springer Verlag, 1985.

    Google Scholar 

  23. R.E. Bryant, J.B. Dennis, "Concurrent Programming", MIT Report, Cambridge, Mass., 1978.

    Google Scholar 

  24. G. Candido, R. Di Giovanni, "Communicating processes with data-flow behaviour". Graduation Thesis, Dept. of Comp. Sciences, Univ. of Pisa, 1984 (in Italian).

    Google Scholar 

  25. K. Clark, S. Gregory, "Parlog: Parallel Programming in Logic". Res. Rep. DOC/84, Imperial College, London.

    Google Scholar 

  26. P. J. Denning, "Fault tolerant operating system", ACM Computing Surveys, vol. 8, n. 4, dicembre 1976, pp. 359–389.

    Google Scholar 

  27. ,J.B. Dennis, "Data-flow computation". Nato ASI Series, vol. F14, Control Flow and Data Flow: Concepts of Distributed Programming (M. Broy ed.), Springer Verlag, 1985.

    Google Scholar 

  28. E.W. Dijkstra, "Guarded Commands, Nondeterminacy, and Formal Derivations of Programs". CACM, vol. 18, n. 8, pp. 453–457, Aug. 1975.

    Google Scholar 

  29. J.A. Feldmann, "High Level Programming Language for Distributed Computing", CACM, vol.22, n.6, June 1979, pp. 353–368.

    Google Scholar 

  30. R.E. Filman and D.P. Friedman, "Coordinated Computing — Tools and Techniques for Distributed Software", McGraw-Hill 1984.

    Google Scholar 

  31. N. Francez, C.A.R. Hoare, D. J. Lehmann, and W.P. de Roever, "Semantics of Nondeterminism, Concurrency, and Communication", Jorurnal of Computer and System Sciences, vol. 19, 1979, pp.290–308.

    Google Scholar 

  32. P. Brinch Hansen, "Distributed Processes: A Concurrent Programming Concept". CACM, vol. 21, n. 11, pp. 934–941, Nov. 1978.

    Google Scholar 

  33. E.C.R. Hehner and C.A.R. Hoare, "A more Complete Model of Communicating Processes".Theor. Computer Science, 26 vol. 1, pp. 105–120, 1983.

    Google Scholar 

  34. Peter Henderson, "Functional Programming — Application and Implementation". Prentice Hall 1980.

    Google Scholar 

  35. Peter Henderson, "Purely Functional Operating Systems". In J. Darlington, P. Henderson and D.A. Turner (eds.): Functional Programming and its Applications, pp. 177–192, Cambridge Univ. Press 1982.

    Google Scholar 

  36. C.A.R. Hoare, "Communicating Sequential Processes". CACM, vol. 21, n. 8, pp. 666–677, Aug. 1978.

    Google Scholar 

  37. C.A.R. Hoare, "A Calculus for Total Correctness for Communicating Processes". Science of Computer Programming, vol. 1, pp. 49–72, 1981.

    Google Scholar 

  38. Inmos Ldt., "Occam Reference Manual". Prentice Hall, Series in Computer Science 1984.

    Google Scholar 

  39. G. Kahn, "The Semantics of a Simple Language for Parallel Programming". In Proc. of IFIP 74, pp. 471–475, North Holland 1974.

    Google Scholar 

  40. G. Kahn and D.B. MacQueen, "Coroutines of Network of Parallel Processes". In Proc. of IFIP 77, pp. 993–998, North Holland 1977.

    Google Scholar 

  41. R.Karia, Lecture Notes for ESPRIT Summer School on Future Parallel Computers, Pisa, June 1986.

    Google Scholar 

  42. L. Lamport, "Time, Clocks, and the Ordering of Events in a Distributed Systems". CACM, vol. 21, n. 7, pp. 558–565, July 1978.

    Google Scholar 

  43. L. Lamport, "What Good is Temporal Logic". In Proc. of IFIP 83, pp. 657–668, 1983.

    Google Scholar 

  44. L. Lamport. "Using Time instead of Timeout for Fault-Tolerant Distributed Systems". ACM TOPLAS, vol. 6, n.2, April 1984

    Google Scholar 

  45. H.C. Lauer and R.M. Needham, "On the Duality of Operating System Structures". Operating System Review, vol. 13, n. 2, pp. 3–19, April 1979.

    Google Scholar 

  46. B. Liskov and R. Scheifler, "Guardians and Actions: Linguistic Support for Robust, Distributed Programs". ACM TOPLAS, vol. 5, n. 3, pp. 381–404, July 1983.

    Google Scholar 

  47. L. Locuratolo, "Implementation of concurrent logic languages". Graduation Thesis, Dept. of Comp. Sciences, Univ. of Pisa, 1986 (in Italian).

    Google Scholar 

  48. H.H. Lovengreen, "On concurrency formalization". Ph. D. Thesis, Dept. of Computer Science, Technical University of Denmark, 1985.

    Google Scholar 

  49. J.R. McGraw, "The VAL Language: Description and Analysis". ACM TOPLAS, vol. 4, n. 1, pp. 44–82, January 1982.

    Google Scholar 

  50. Robin Milner, "A Calculus of Communicating Systems". Lecture Notes in Computer Science, 92, Springer-Verlag 1980.

    Google Scholar 

  51. M. Nielsen, G. Plotkin, and G. Winskel, "Petri Nets, Event Structures and Domains, Part I". Theoretical Computer Science, vol. 13, pp. 85–108, 1981.

    Google Scholar 

  52. E. R. Olderog and C.A.R. Hoare, "Specification Oriented Semantics for Communicating Processes". Tech. Mon. PRG-37, Oxford Univ., Programming Res. Group, Oxford, 1984.

    Google Scholar 

  53. R.Patterson, Lecture Notes for ESPRIT Summer School on Future Parallel Computers, Pisa, June 1986.

    Google Scholar 

  54. J.L. Peterson, "Petri Nets', ACM Computing Surveys, vol. 9, n. 13, pp. 223–252, September 1977.

    Google Scholar 

  55. J. L. Peterson, "Petri Nets Theory and The Modeling of Systems". Prentice-Hall, 1981.

    Google Scholar 

  56. G.D. Plotkin, "A Structural Approach to Operational Semantics". Lecture notes. Aarhus University 1981.

    Google Scholar 

  57. A. Pnueli, "The Temporal Logic of Programs". In Proc. of the 19th FOCS, pp. 46–57, IEEE, October 1977.

    Google Scholar 

  58. J. Rattner, "Concurrent processing: a new direction in scientific computing". AFIPS 85, NCC, 1985.

    Google Scholar 

  59. N. Rescher, A. Urquhart, "Temporal Logic", Springer-Verlag, 1971.

    Google Scholar 

  60. C.L. Seitz, "Concurrent VLSI architectures". IEEE Trans. on Comp., Vol. C-33, n. 12, Dec. 1984.

    Google Scholar 

  61. E. Shapiro, "A subset of Concurrent Prolog and its Interpreter". ICOT Techn. Report TR-003, Febr. 1983.

    Google Scholar 

  62. E. Shapiro, "Systolic programming: a paradigm of parallel processing". Proc. of Int. Conf. on Fifth Generation Computer Systems, ICOT, 1984.

    Google Scholar 

  63. R.E. Strom, S. Yemini, "NIL: An Integrated Language and System for Distributed Programming". ACM SIGPLAN Notices, vol.18, n. 6, June 1983.

    Google Scholar 

  64. P.C. Treleaven, D.R. Brownbridge and R.P. Hopkins, "Data Driven and Demand Driven Computer Architecture". ACM Computing Surveys, vol. 14, n.1,March 1982.

    Google Scholar 

  65. P.C. Treleaven, J. E. Lima, "Future computers: Logic, Data Flow,..., Control Flow". 10th Int. Symp. on Computer Arch., 1983.

    Google Scholar 

  66. K.Uchida, Lecture Notes for ESPRIT Summer School on Future Parallel Computers, Pisa, June 1986.

    Google Scholar 

  67. S.R. Vegdahl, "A Survey of Proposed Architectures for the Execution of Functional Languages". IEEE Trans on Comp., vol. C-33, n. 12, December 1984.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

P. Treleaven M. Vanneschi

Rights and permissions

Reprints and permissions

Copyright information

© 1987 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Baiardi, F., Vanneschi, M. (1987). Parallelism issues in multi — Style computers. In: Treleaven, P., Vanneschi, M. (eds) Future Parallel Computers. Lecture Notes in Computer Science, vol 272. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-18203-9_1

Download citation

  • DOI: https://doi.org/10.1007/3-540-18203-9_1

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-18203-0

  • Online ISBN: 978-3-540-47806-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics