this paper presents the functional database language Hydra which extends previous such languages with associational facilities enabling a user to pose queries about the ways in which values and entities in the databas...
详细信息
Presents a replication technique based on the FTAG (fault-tolerant attribute grammar) computation model, where instances of a replicated application are active on different groups of processors called replicas. FTAG i...
详细信息
Presents a replication technique based on the FTAG (fault-tolerant attribute grammar) computation model, where instances of a replicated application are active on different groups of processors called replicas. FTAG is a functional and attribute-based model. the developed replication technique implements "active parallel replication", i.e. all replicas are active and concurrently compute a different piece of the application's parallel code. In our model, replicas cooperate not only to detect and mask failures but also to perform parallel computation. the replication mechanisms are supported by the FTAG run-time system and are fully application-transparent. Different novel mechanisms for checkpointing and recovery are developed. Rollback is achieved only if the system experiences multiple failures, otherwise forward recovery is performed. the replication technique takes full advantage of parallel computation to reduce the computation time.
the authors present a mechanism to specify and to validate consistency constraints in object oriented databases. Constraints are specified using preand post-conditions associated with an exception handling mechanism. ...
详细信息
the authors present a mechanism to specify and to validate consistency constraints in object oriented databases. Constraints are specified using preand post-conditions associated with an exception handling mechanism. During transaction run-time, they treat exceptions corresponding to errors (in this case, they use immediate exceptions which are processed immediately) or presumption of errors (in this case, they use deferred exceptions which are processed at the end of the transaction), in order to insure validation. To refine their mechanism, we enlarge it to nested transactions. Deferred exceptions can be processed at each node of the transaction tree. Using a predefined exception, they propagate an abort of a sub-transaction to its parent transaction. thus, the parent transaction can choose among different policies for processing the sub-transaction abort.
this paper describes a method to improve the cache locality of sequential programs by scheduling fine-grained threads. the algorithm relies upon hints provided at the time of thread creation to determine a thread exec...
详细信息
this paper describes a method to improve the cache locality of sequential programs by scheduling fine-grained threads. the algorithm relies upon hints provided at the time of thread creation to determine a thread execution order likely to reduce cache misses. this technique may be particularly valuable when compiler-directed tiling is not feasible. Experiments with several application programs, on two systems with different cache structures, show that our thread scheduling method can improve program performance by reducing second-level cache misses.
Concurrent Constraint Prograrnming (CCP) is a powerful computation model for concurrency obtained by internalizing the notion of computation via deduction over (first-order) systems of partial information (constraints...
详细信息
Reuse of the valuable knowledge gained through the realization of software projects is an important step in overcoming well-known problems of the software industry such as wrong schedules and cost estimations, low pro...
详细信息
Reuse of the valuable knowledge gained through the realization of software projects is an important step in overcoming well-known problems of the software industry such as wrong schedules and cost estimations, low productivity, and low product quality. To promote this kind of reuse the authors propose an approach relying on an explicit representation of the software processes by process descriptions and to organize and classify them in a software process library for further use within software projects. A process description is divided into an informal process definition document and a formal process model. the process definition document constitutes the basis for the classification process that is performed by using an artificial neural network. they present an exposition of their approach and discuss the promising results of a case study in structuring a software process library.
the paper presents a novel deductive object base language, called ROL (Rule-based Object Language), which has been implemented at the University of Regina (Canada) and is available via anonymous ftp. It effectively in...
详细信息
the paper presents a novel deductive object base language, called ROL (Rule-based Object Language), which has been implemented at the University of Regina (Canada) and is available via anonymous ftp. It effectively integrates important features of object oriented databases and deductive databases into a uniform framework. It supports object oriented features such as object identity, complex objects, classes, class hierarchy, multiple inheritance, and schema. It also supports structured values such as functor objects and sets, treats them as first class citizens, and provides powerful mechanisms for representing both partial and complete information on sets. It is an extension of pure valued oriented deductive languages such as Datalog and LDL (without grouping) and subsumes them as special cases. Furthermore, it has a logical semantics that cleanly accounts for all of its object oriented and value oriented features.
Active and deductive rules in databases and procedural attachment in knowledge bases are used as mechanisms of computation of derived attributes. these research domains have become very closely related. the support of...
详细信息
Active and deductive rules in databases and procedural attachment in knowledge bases are used as mechanisms of computation of derived attributes. these research domains have become very closely related. the support of derivations in current active databases suffers from many semantic and technical problems. Active rules in their ECA (Event Condition Action) form are event oriented whereas derivations are naturally data oriented. Deductive rules are well adapted to relational databases, but their integration within the object oriented model does not always have successful results. Procedural attachment may be considered as both a deductive and active process, but it uses an imperative language to derive attributes. We try to focus on the use of active rules to derive attributes in an object oriented model. We give our approach for the support of deductions in a declarative assertion language and their processing in an active way. We propose a declarative derivation approach integrated within an object oriented model.
Interpreted languages have become increasingly popular due to demands for rapid program development, ease of use, portability, and safety. Beyond the general impression that they are ″slow″, however, little has been...
详细信息
Interpreted languages have become increasingly popular due to demands for rapid program development, ease of use, portability, and safety. Beyond the general impression that they are ″slow″, however, little has been documented about the performance of interpreters as a class of applications. this paper examines interpreter performance by measuring and analyzing interpreters from both software and hardware perspectives. As examples, we measure the MIPSI, Java, Perl, and Tcl interpreters running as array of micro and macro benchmarks on a DEC Alpha platform. Our measurements of these interpreters relate performance to the complexity of the interpreter's virtual machine and demonstrate that native runtime libraries can play a key role in providing good performance. From an architecture perspective, we show that interpreter performance is primarily a function of the interpreter itself and is relatively independent of the application being interpreted. We also demonstrate that high-level interpreters' demands on processor resources are comparable to those of other complex compiled programs, such as gcc. We conclude that interpreters, as a class of applications, do not currently motivate special hardware support for increased performance.
Modern languages and operating systems often encourage programmers to use threads, or independent control streams, to mask the overhead of some operations and simplify program structure. Multitasking operating systems...
详细信息
Modern languages and operating systems often encourage programmers to use threads, or independent control streams, to mask the overhead of some operations and simplify program structure. Multitasking operating systems use threads to mask communication latency, either with hardwares devices or users. Client-server applications typically use threads to simplify the complex control-flow that arises when multiple clients are used. Recently, the scientific computing community has started using threads to mask network communication latency in massively parallel architectures, allowing computation and communication to be overlapped. Lastly, some architectures implement threads in hardware, using those threads to tolerate memory latency. In general, it would be desirable if threaded programs could be written to expose the largest degree of parallelism possible, or to simplify the program design. However, threads incur time and space overheads, and programmers often compromise simple designs for performance. In this paper, we show how to reduce time and space thread overhead using control flow and register liveness information inferred after compilation. Our techniques work on binaries, are not specific to a particular compiler or thread library and reduce the overall execution time of fine-grain threaded programs by ≈15-30%. We use execution-driven analysis and an instrumented operating system to show why the execution time is reduced and to indicate areas for future work.
暂无评论