177,079 research outputs found
An online recommander system for large Web sites
In this paper we propose a WUM recommender system, called SUGGEST 3.0, that dynamically generates links to pages that have not yet been visited by a user and might be of his potential interest. Differently from the recommender systems proposed so far, SUGGEST 3.0 does not make use of any off-line component, and is able to manage Web sites made up of pages dynamically generated. To this purpose SUGGEST 3.0 incrementally builds and maintains historical information by means of an incremental graph partitioning algorithm, requiring no off-line component. The main innovation proposed here is a novel strategy that can be used to manage large Web sites. Experiments, conducted in order to evaluate SUGGEST 3.0 performance, demonstrated that our system is able to anticipate users' requests that will be made farther in the future, introducing a limited overhead on the Web server activity. © 2004 IEEE
A Static Mapping Heuristics to Map Parallel Applications to Heterogeneous Computing Systems
In order to minimize the execution time of a parallel application running on a heterogeneously distributed computing system, an appropriate mapping scheme is needed to allocate the application tasks to the processors. The general problem of mapping tasks to machines is a well-known NP-hard problem and several heuristics have been proposed to approximate its optimal solution. In this paper we propose a static graph-based mapping algorithm, called HeterogeneousMulti-phase Mapping (HMM), which permits suboptimal mapping of a parallel application onto a eterogeneous computing distributed system by using a local search technique together with a tabu search meta-heuristic. HMM allocates parallel tasks by exploiting the information embedded in the parallelism forms used to implement an application, and considering an affinity parameter, that identifies which machine in the heterogeneous computing system is most suitable to execute a task.We compare HMM with some leading techniques and with an exhaustive mapping algorithm.We also give an example of mapping of two real applications using HMM. Experimental
results show that HMMperforms well demonstrating the applicability of our approach
Sorting on GPUs for large scale datasets: A thorough comparison
Although sort has been extensively studied in many research works, it still remains a challenge in particular if we consider the implications of novel processor technologies such as manycores (i.e. GPUs, Cell/BE, multicore, etc.). In this paper, we compare different algorithms for sorting integers on stream multiprocessors and we discuss their viability on large datasets (such as those managed by search engines). In order to fully exploit the potentiality of the underlying architecture, we designed an optimized version of sorting network in the K-model, a novel computational model designed to consider all the important features of many-core architectures. According to K-model, our bitonic sorting network mapping improves the three main aspects of many-core architectures, i.e. the processors exploitation, and the on-chip/off-chip memory bandwidth utilization. Furthermore we are able to attain a space complexity of Θ(1). We experimentally compare our solution with state-of-the-art ones (namely, Quicksort and Radixsort) on GPUs. We also compute the complexity in the K-model for such algorithms. The conducted evaluation highlight that our bitonic sorting network is faster than Quicksort and slightly slower than radix, yet being an in-place solution it consumes less memory than both algorithms
K-model: A new computational model for stream processors
We introduce K-model, a computational model to evaluate the algorithms designed for graphic processors, and other architectures adhering to the stream programming model. We address the lack of a formal complexity model that properly accounts for memory contention, address coalescing in memory accesses, or the serial control of instruction flows. We study the impact of K-model rules on algorithm design. We devise a coalesced and low contention data access technique for Batcher's networks, and we evaluate the effectiveness of this technique within our K-model. To evaluate the benefits in using K-model in evaluating solutions for streaming architectures, we compare the complexity of a sorting network built using our technique, and quicksort. Although in theory quicksort is more efficient than bitonic sort, empirically, our bitonic sorting network has been shown to be faster than the state-of-the-art implementation of quicksort on graphics processing units (GPUs). We use our K-model to prove that this observation should generally hold. As a side result, our technique to perform a Batcher's network on GPUs improves the performance of one the fastest comparison-based solution for integers sorting. © 2010 IEEE
ORMaCloud '13: Proceedings of the first ACM workshop on Optimization techniques for resources management in clouds
An effective recommender system for highly dynamic and large web sites
In this demo we show a recommender system, called SUGGEST, that dynamically generates links to pages that have not yet been visited by a user and might be of his potential interest. Usually other recommender systems exploit a kind of two-phase architecture composed by an off-line component that analyzes Web server access logs and generates information used by a successive online component that generates recommendations. SUGGEST collapse the two-phase into a single on-line Apache module. The component is able to manage very large Web sites made up of dinamically generated pages by means of an efficient LRU-based database management strategy. The demo will show the way SUGGEST is able to anticipate users' requests that will be made farther in the future, introducing a limited overhead on the Web server activity1. © Springer-Verlag Berlin Heidelberg 2004
A tool to execute ASSIST applications on globus-based grids
This article describes ASSISTCONF, a graphical user interface designed to execute ASSIST applications on Globus-based Grids. ASSIST is a new programming environment for the development of parallel and distributed high-performance applications. ASSISTCONF hides to the programmer the structure of the grid used and integrates the ASSIST Run Time System with the Globus middleware. The first version of ASSISTCONF was designed to manually configure an ASSIST application and to establish a mapping between the application components and the machines selected for its execution on the Grid. The new ASSISTCONF functionalities, such as authentication and execution authorization on the resources selected in the application mapping phase, and deployment on the selected resources of the ASSIST Run Time Support, the executable application components, and the application input data, allow the semi-automatic execution of an ASSIST application on a such environment
- …
