Affinity is a small and comprehensible programming model for concurrent computation. Affinity consistency and coherence properties provide a tractable discipline for the dangerous power of a concurrent, shared-memory ...
详细信息
Affinity is a small and comprehensible programming model for concurrent computation. Affinity consistency and coherence properties provide a tractable discipline for the dangerous power of a concurrent, shared-memory programming style. Affinity programs are less tediously detailed than their message-passing counterparts while demonstrating comparable efficiency, scalability, and tolerance of network latency. By use of memory-management hardware, the programming environment can transparently convert conventional C++ operations into a sequence of synthetic transactions on the computational state. The combination of inherent fault-tolerance and insensitivity to communications latency may prove particularly valuable for distributed workstation clusters.
Visual programming research has largely focused on the issues of visual programming-in-the-small. However, entirely different concerns arise when one is programming-in-the-large. We present a visual software engineeri...
详细信息
Visual programming research has largely focused on the issues of visual programming-in-the-small. However, entirely different concerns arise when one is programming-in-the-large. We present a visual software engineering environment that allows users to construct visually programs consisting of hierarchically organized networks of components that process streams of arbitrary objects. We discuss the problems that occur when trying to construct systems consisting of thousands of interconnected components, examine how this environment deals with some of the problems specific to visual programming-in-the-large, and show why our initial solutions failed to scale successfully. Finally, we argue that a single visual mechanism called `zooming' addresses these scaling problems and, when suitably augmented, can also support automatic component discovery and intelligent error correction.
The effectiveness of graphic representations of computer programs is analyzed. Existing software metrics are modified for use in analyzing diagrams, and two new metrics are proposed: graphic token count and diagram cl...
详细信息
The effectiveness of graphic representations of computer programs is analyzed. Existing software metrics are modified for use in analyzing diagrams, and two new metrics are proposed: graphic token count and diagram class complexity. A graphic design measure, data density, is transformed into a computer science measure, token density. Using these metrics, graphic representations can be compared to each other and to textual representations. Conclusions are drawn about the relative strengths of graphic and textual representation.
We propose a new model for distributed programming, called Associative Broadcast, that achieves a high level of communication abstraction by using as its fundamental mode of communication a form of logical broadcast. ...
详细信息
ISBN:
(纸本)0818650605
We propose a new model for distributed programming, called Associative Broadcast, that achieves a high level of communication abstraction by using as its fundamental mode of communication a form of logical broadcast. Each message contains a predicate that specifies the local states of the objects that are to receive the message, rather than their identifiers. Message delivery is asynchronous and requires no knowledge of the global state. Associative Broadcast exploits the broadcasting capabilities of distributed systems, and enables straightforward specification of state-based communication. We use state-based communication to obtain a new solution to the partitioned-network consistency problem in distributed databases.
Recently developed block-iterative versions of some row-action algorithms for solving general systems of sparse linear equations allow parallelism in the computations when the underlying problem is appropriately decom...
详细信息
Recently developed block-iterative versions of some row-action algorithms for solving general systems of sparse linear equations allow parallelism in the computations when the underlying problem is appropriately decomposed. However, problems associated with the parallel implementation of these algorithms have to be addressed. In this paper we present an implementation on distributed memory multiprocessors of a block version of the Kaczmarz row-action method. One of the main issues related to the efficient implementation of this method on a concurrent environment is to develop suitable communication schemes in order to reduce the amount of communication needed at each iteration. We propose two data distribution strategies which lead to different computation and communication schemes. To verify and compare the effectiveness of the proposed strategies, numerical experiments have been carried out on a Symult S2010 and a Meiko Computing Surface. The performance evaluation has been done using a scaled efficiency model.
There is undoubtedly a need for software-design tools for parallel programming, A main problem with design tools for parallel programming is their inability to check for liveness (no deadlock) and safeness. In this pa...
详细信息
There is undoubtedly a need for software-design tools for parallel programming, A main problem with design tools for parallel programming is their inability to check for liveness (no deadlock) and safeness. In this paper, the use of Ordinary Petri Net as a software design tool for Occam programming on transputers is discussed. The similarities between Ordinary Petri Net and Occam constructs are highlighted, and an Occam Petri Net model is proposed as a design tool to aid in writing Occam codes. The Occam Petri Net model is graphical. It is capable of modelling deterministic concurrent and choice systems. As a top-down design, the net is similar to Occam 'folds', and, in its use in bottom-up implementation, it is similar to unfolding. This unfolding using the Occam Petri Net model makes writing Occam source codes easier. The availability of Petri Net CASE tools will make it more attractive for designing Occam programs.
Better programming productivity may be obtained by choosing suitable programming paradigms. For development of complex software systems, multiparadigm programming would usually be appropriate. However, its use may be ...
详细信息
Better programming productivity may be obtained by choosing suitable programming paradigms. For development of complex software systems, multiparadigm programming would usually be appropriate. However, its use may be hindered by a lack of languages and programming support tools. As this article argues, multiparadigm programming may be supported by translators that convert programs written in one language to another language based on a different paradigm.
A tutorial-like overview on formal methods for the specification of reactive systems is given. State transition systems such as ATNs, statecharts, and SDL are discussed. Petri nets and logic-based languages are introd...
详细信息
A tutorial-like overview on formal methods for the specification of reactive systems is given. State transition systems such as ATNs, statecharts, and SDL are discussed. Petri nets and logic-based languages are introduced as alternatives;examples show their respective applicability. programming-oriented approaches such as ESTEREL, CSP, or CCS are depicted. Finally, the different principles are compared.
This paper presents a dependent-chance goal programming (DCGP) and gives a successive factoring method to solve DCGP. We also discuss the application of DCGP in Qinhuangdao region for water supply and allocation.
This paper presents a dependent-chance goal programming (DCGP) and gives a successive factoring method to solve DCGP. We also discuss the application of DCGP in Qinhuangdao region for water supply and allocation.
The author says that we all know Murphy's law and have wondered if there really is a Murphy. There was a Murphy and the author was fortunate to work with him between 1959 and 1960. He was the leader of a small tea...
详细信息
The author says that we all know Murphy's law and have wondered if there really is a Murphy. There was a Murphy and the author was fortunate to work with him between 1959 and 1960. He was the leader of a small team at Burroughs Research and Development Center at eastern Pennsylvania tasked with making the Atlas Guidance computer operational. It was the first solid state computer ever produced and they have spent the time debugging without the help of tools and making of diagnostic programs that would help the computer do its job. The paper also tells us about the computer theory of don't cares and zeros that was created to be part of the system and programs that are to be used as part of the ongoing operational checkout process on a regular basis.
暂无评论