Results 11  20
of
36
A GeneralPurpose Model for Heterogeneous Computation
, 2000
"... Heterogeneous computing environments are becoming an increasingly popular platform for executing parallel applications. Such environments consist of a diverse set of machines and offer considerably more computational power at a lower cost than a parallel computer. Efficient heterogeneous parallel ap ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
Heterogeneous computing environments are becoming an increasingly popular platform for executing parallel applications. Such environments consist of a diverse set of machines and offer considerably more computational power at a lower cost than a parallel computer. Efficient heterogeneous parallel applications must account for the differences inherent in such an environment. For example, faster machines should possess more data items than their slower counterparts and communication should be minimized over slow network links. Current parallel applications are not designed with such heterogeneity in mind. Thus, a new approach is necessary for designing efficient heterogeneous parallel programs. We propose
Metric Space Similarity Joins
"... Similarity join algorithms find pairs of objects that lie within a certain distance ɛ of each other. Algorithms that are adapted from spatial join techniques are designed primarily for data in a vector space and often employ some form of a multidimensional index. For these algorithms, when the data ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
Similarity join algorithms find pairs of objects that lie within a certain distance ɛ of each other. Algorithms that are adapted from spatial join techniques are designed primarily for data in a vector space and often employ some form of a multidimensional index. For these algorithms, when the data lies in a metric space, the usual solution is to embed the data in vector space and then make use of a multidimensional index. Such an approach has a number of drawbacks when the data is high dimensional as we must eventually find the most discriminating dimensions, which is not trivial. In addition, although the maximum distance between objects increases with dimension, the ability to discriminate between objects in each dimension does not. These drawbacks are overcome via the introduction of a new method called Quickjoin that does not require a multidimensional index and instead adapts techniques used in distancebased indexing for use in a method that is conceptually similar to the Quicksort algorithm. A formal analysis is provided of the Quickjoin method. Experiments show that the Quickjoin method significantly outperforms two existing techniques.
Subsymbolically Managing Pieces of Symbolical Functions for Sorting
, 1996
"... We present a hybrid system for managing both symbolic and subsymbolic knowledge in a uniform way. Our aim is to solve problems where some gap in formal theories occurs which stops us from getting a fully symbolical solution. The idea is to use neural modules to functionally connect pieces of symboli ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
We present a hybrid system for managing both symbolic and subsymbolic knowledge in a uniform way. Our aim is to solve problems where some gap in formal theories occurs which stops us from getting a fully symbolical solution. The idea is to use neural modules to functionally connect pieces of symbolical knowledge, such as mathematical formulas and deductive rules. The whole system is trained through a backpropagation learning algorithm where all (symbolic or subsymbolic) free parameters are updated piping back the error through each component of the system. The structure of this system is very general, possibly varying over time, possibly managing fuzzy variables and decision trees. We use as a testbed the problem of sorting a file, where suitable suggestions on next sorting moves are supplied by the network also on the basis of hints provided by some conventional sorters. A comprehensive discussion of system performance is provided in order to understand behaviors and capabilities of ...
Checking and Certifying Computational Results
, 1994
"... For many years, there has been tremendous interest in methods to make computation more reliable. In this thesis, we explore various techniques that can be implemented in software to help insure the correctness of the output of a program. The basic tool we use is a generalization of the notion of a p ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
For many years, there has been tremendous interest in methods to make computation more reliable. In this thesis, we explore various techniques that can be implemented in software to help insure the correctness of the output of a program. The basic tool we use is a generalization of the notion of a program checker called a certifier. A certifier is given intermediate computations from a program computing an answer in an effort to simplify the checking process. The certifier is constructed in such a way that even if the intermediate computations it is given are incorrect, the certifier will never accept an incorrect output. We have constructed certifiers and program checkers for several common abstract data types including mergeable priority queues and splittable priority queues. We have also constructed a certifier for an abstract data type that allows approximate nearest neighbor queries to be performed efficiently. We have implemented and experimentally evaluated some of these algorithms. In the parallel domain, we have developed both general and problem specific techniques for certifying parallel computation. Lastly, we have formally proven correct a certifier for sorting, and have analyzed the advantages of using certifiers in conjunction with formal program verification techniques. This work forms a thesis presented by Jonathan D. Bright to the faculty of the Department of Computer Science, at the Johns Hopkins University, in partial fulfillment of the requirements for the degree of Doctor of Philosophy, under the supervision of Professor Gregory F. Sullivan. iii Acknowledgements I would like to thank my advisor, Gregory Sullivan, for giving me an excellent research topic for my thesis, and for vastly improving my writing skills during my stay at Hopkins. Also, ...
Bottomup transfer in Examplebased Machine Translation
"... This paper describes the transfer component of a syntaxbased Examplebased Machine Translation system. The source sentence parse tree is matched in a bottomup fashion with the source language side of a parallel example treebank, which results in a target forest which is sent to the target language ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
This paper describes the transfer component of a syntaxbased Examplebased Machine Translation system. The source sentence parse tree is matched in a bottomup fashion with the source language side of a parallel example treebank, which results in a target forest which is sent to the target language generation component. The results on a 500 sentences test set are compared with a topdown approach to transfer of the same system, with the bottomup approach yielding much better results. 1
Benchmarking Purely Functional Data Structures
 Journal of Functional Programming
, 1999
"... When someone designs a new data structure, they want to know how well it performs. Previously, the only way to do this involves finding, coding and testing some applications to act as benchmarks. This can be tedious and timeconsuming. Worse, how a benchmark uses a data structure may considerably af ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
When someone designs a new data structure, they want to know how well it performs. Previously, the only way to do this involves finding, coding and testing some applications to act as benchmarks. This can be tedious and timeconsuming. Worse, how a benchmark uses a data structure may considerably affect the efficiency of the data structure. Thus, the choice of benchmarks may bias the results. For these reasons, new data structures developed for functional languages often pay little attention to empirical performance. We solve these problems by developing a benchmarking tool, Auburn, that can generate benchmarks across a fair distribution of uses. We precisely define "the use of a data structure", upon which we build the core algorithms of Auburn: how to generate a benchmark from a description of use, and how to extract a description of use from an application. We consider how best to use these algorithms to benchmark competing data structures. Finally, we test Auburn by benchmarking ...
A new sort algorithm: Selfindexed sort
 ACM SIGPLAN Notices
, 1996
"... ABSTRACT: This paper presents a new sort algorithm, selfindexed sort (SIS), on an approach of non comparebased sorting. Results on time complexity O(n) and space complexity O(n+m) are achieved, where n is the size of data being sorted and m is the size of the sorting space. Two versions of SIS sor ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
ABSTRACT: This paper presents a new sort algorithm, selfindexed sort (SIS), on an approach of non comparebased sorting. Results on time complexity O(n) and space complexity O(n+m) are achieved, where n is the size of data being sorted and m is the size of the sorting space. Two versions of SIS sort algorithm are implemented with one for the sort of structured records and the other for pure data file. The performance of SIS sort is tested and analysed under various conditions.
Enhanced Quicksort Algorithm
, 2008
"... Abstract: Sorting is considered as one of the important issues of computer science. Although there is a huge number of sorting algorithms, sorting problem has attracted a great deal of research; because efficient sorting is important to optimize the use of other algorithms. It is also often in produ ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Abstract: Sorting is considered as one of the important issues of computer science. Although there is a huge number of sorting algorithms, sorting problem has attracted a great deal of research; because efficient sorting is important to optimize the use of other algorithms. It is also often in producing humanreadable output. This paper presents a new sorting algorithm called SMSalgorithm (Scan, Move, and Sort). The SMS algorithm is considered as an enhancement on the Quicksort algorithm in the best, average, and worst cases when dealing with an input array of a large size and when the maximum and the minimum values were small, especially when sorting a list of distinct elements. The SMS algorithm is compared with the Quicksort algorithm and the results were promising.
Minimum traveltime calculation in 3D graph theory
, 1996
"... this paper is constructed in the following way. We define M layer connections if all the grid points (i, j, k) satisfy ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
this paper is constructed in the following way. We define M layer connections if all the grid points (i, j, k) satisfy
An Efficient Parallel Sorting Algorithm for Multicore Machines
, 2011
"... Sorting an array of integers is one of the most basic problems in Computer Science. Also it is an issue in high performance database applications. Though literature is imbued with a variety of sorting algorithms, different architectures need different optimizations to reduce sorting time. This pap ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Sorting an array of integers is one of the most basic problems in Computer Science. Also it is an issue in high performance database applications. Though literature is imbued with a variety of sorting algorithms, different architectures need different optimizations to reduce sorting time. This paper presents a Multicore ready parallel sorting algorithm which has been designed with Multicore/Manycore architecture in mind. Our study shows that the proposed algorithm is excellent for large input size and multiple free cores. In essence algorithm has potential to be a success in situations when one has large input and machine is a Multicore machine. The paper does not neglect overhead involved with parallel programming and suggests two system calls to check the availability of free cores and to reserve a core for a fixed time quantum.