Miquel Angel Senar

Miquel Angel Senar
Autonomous University of Barcelona | UAB · Department of Computer Architecture and Operative Systems

Full Professor

About

77
Publications
5,471
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
725
Citations
Citations since 2017
2 Research Items
83 Citations
20172018201920202021202220230510152025
20172018201920202021202220230510152025
20172018201920202021202220230510152025
20172018201920202021202220230510152025
Additional affiliations
September 1989 - present
Universitat Autònoma de Barcelona

Publications

Publications (77)
Article
Full-text available
Over the last several years, many sequence alignment tools have appeared and become popular for the fast evolution of next generation sequencing technologies. Obviously, researchers that use such tools are interested in getting maximum performance when they execute them in modern infrastructures. Today’s NUMA (Non-uniform memory access) architectur...
Conference Paper
Alignment applications are essential for solving genomic variant calling studies. We have analyzed performance problems of four popular aligners from the literature. They constitute representative examples of the two most commonly used algorithmic strategies: hash tables and Burrows-Wheeler Transform. Although they take advantage of multithreading...
Article
Nowadays, rapid progress in next generation sequencing (NGS) technologies has drastically decreased the cost and time required to obtain genome sequences. A series of powerful computing accelerators, such as GPUs and Xeon Phi MIC, are becoming a common platform to reduce the computational cost of the most demanding processes when genomic data is an...
Conference Paper
Full-text available
Rapid progress in genome sequencing techniques is creating the necessity of advanced algorithms to process such information in reasonable time. Alignment applications such as BWA (Burrows Wheeler Aligner) are essential for solving genomic variant calling studies. Although BWA takes advantage of multithreading execution, it exhibits significant scal...
Conference Paper
The process of weather prediction produced by numerical weather prediction (NWP) models is complex and not always accurate. Moreover, it is generally defined by its very nature as a process that has to deal with uncertainties. In previous works, a new weather prediction scheme, Genetic Ensemble (G-Ensemble), was presented, which uses evolutionary c...
Article
The need for reliable predictions in environmental modelling is well-known. Particularly, the predicted weather and meteorological information about the future atmospheric state is crucial and necessary for almost all other areas of environmental modelling. Additionally, right decisions to prevent damages and save lives could be taken depending on...
Article
Weather forecasting is complex and not always accurate, moreover, it is generally defined by its very nature as a process that has to deal with uncertainties. In a previous work, a new weather prediction scheme was presented, which uses evolutionary computing methods, particularly, Genetic Algorithms in order to find the most timely ‘optimal’ values...
Article
Full-text available
The Interactive European Grid (i2g) project has set up an advanced e-Infrastructure in the European Research Area specifically oriented to support the friendly execution of demanding interactive applications. While interoperable with existing large e-Infrastructures like EGEE, i2g software supports execution of parallel applications in interactive...
Conference Paper
Nowadays distributed applications, including MPI implementations, are executed on computer clusters managed by a batch queue system. Users take advantage of monitoring tools to detect run-time problems on their applications running on those environments. But it is a challenge to use monitoring tools on a cluster controlled by a batch queue system....
Conference Paper
Workflow applications exhibit both high computation times and data transfer rates. For this reason, the completion time of the workflow is high. To reduce completion time, the tasks of a workflow ought to run on different machines interconnected by a network. Correct assignment of tasks to machines within the runtime environment is an important asp...
Conference Paper
Full-text available
The need for reliable predictions in environ- mental modelling is long known. Particularly, the predicted weather and meteorological information about the future atmospheric state is crucial and necessary for almost all other areas of environmental modelling. Additionally, right decisions to prevent damages and save lives could be taken depending o...
Conference Paper
Full-text available
Computational science increasingly relies on the execution of workflows in distributed networks to solve complex applications. However, the heterogeneity of resources in these environments complicates resource management and the scheduling of such applications. Sophisticated scheduling policies are being developed for workflows, but they have had l...
Article
Full-text available
Workflow applications running on distributed environments are a promising solution for resource and computing intensive problems. However, the heterogeneity of resources in these kind of environments may turn scheduling of such applications into a complicated enterprise. Although there is research in sophisticated scheduling policies for workflows...
Conference Paper
High Performance Computing comes as a solution for large scale scientific applications that need an aggregated computing power. Real-time and soft real-time kind of applications like weather prediction models need to be optimized on the available computing resources so that less time is spent in prediction process. In this work, we present a study...
Conference Paper
A fundamental problem in large scale Grids is the need for efficient and scalable techniques for resource discovery and scheduling. In traditional resource scheduling systems a single scheduler handles information about all computing resources and schedules jobs. This centralized approach has a serious scalability problem, since it introduces a bot...
Chapter
The CrossBroker is a Grid Resource Management System that provides transparent and reliable support for the execution of parallel and interactive applications on a Grid environment. In this chapter, we outline the architecture of our system and describe the key mechanisms responsible for an efficient and reliable execution of parallel and interacti...
Conference Paper
Virtualization technologies provide flexible execution environments that could bring important benefits for computational problems with strong deadlines. Large Grid infrastructures are becoming available nowadays and they could be a suitable environment to run such on-demand computations that might be used in decision-making processes. For these co...
Chapter
Full-text available
In this chapter we describe the Interactive European Grid project approach to handling interactive grid applications. Interactivity is an important feature that gives users the possibility to interact with applications in a natural way, giving the possibility to change parameters while the application is running. There are only few initiatives that...
Article
Full-text available
The int.eu.grid project aims at providing a production quality grid computing infrastructure for e-Science supporting parallel and interactive applications. The infrastructure capacity is presently about 750 cpu cores distributed over twelve sites in seven countries. These resources have to be tightly coordinated to match the requirements of parall...
Article
Execution of parallel and interactive applications on a Grid environment is a challenging problem that requires the cooperation of several middleware tools and services. In this paper, we present our experiences in the development of Cross-Broker, a job management service that provides transparent and reliable support for such types of applications...
Conference Paper
Resource Allocation in Grid environments to date is generally carried out under the assumption that there is one primary scheduling system scheduling jobs. However, as environments tend towards larger open “utility” Grids it becomes increasingly likely that deployments will involve multiple independent schedulers allocating jobs over the same resou...
Article
Full-text available
Multi-locus and multi-species nucleotide diversity studies would benefit enormously from a public database encompassing high-quality haplotypic sequences with their associated genetic diversity measures. MamPol, ‘Mammalia Polymorphism Database’, is a website containing all the well-annotated polymorphic sequences available in GenBank for the Mammal...
Article
We give a general model of partially asynchronous, distributed load-balancing algorithms for the discrete load model in parallel computers, where the processor loads are treated as non-negative integers. We prove that all load-balancing algorithms in this model are finite. This means that all load-balancing algorithms based on this model are guaran...
Article
Full-text available
Scheduling is an important factor for the efficient executionof computational workflows on Grid environments. A large number of static scheduling heuristics has been presented in the literature. These algorithms allocate tasks before job execution starts and assume a precise knowledge of timing information, which may be difficult to obtain in gener...
Conference Paper
Full-text available
One of the main goals of the CrossGrid Project [1] is to provide explicit support to parallel and interactive compute- and data- intensive applications. The CrossBroker job manager provides services as part of the CrossGrid middleware and allows execution of parallel MPI applications on Grid resources in a transparent and automatic way. This docume...
Conference Paper
Resource management systems and tool support are two important factors for efficiently developing applications in large clusters. On the one hand, management systems (in the form of batch queue systems) are responsible for all issues related to executing jobs on the existing machines. On the other hand, run-time tools (in the form of debuggers, tra...
Conference Paper
Scheduling is an important factor for the efficient execution of computational workflows on grid environments. A large number of static scheduling heuristics has been presented in the literature. These algorithms allocate tasks before job execution starts and assume a precise knowledge of timing information, which may be difficult to obtain in gene...
Chapter
We address the problem of efficient strategies for mapping arbitrary parallel programs onto distributed memory message-passing parallel computers. An efficient task assignment strategy based on two phases (task clustering and task reassignment) is proposed. This strategy is suitable for applications which could be partitioned into parallel executab...
Article
Full-text available
Most recent grid middleware technologies have been aimed at the execution of sequential batch jobs. However, some users require interactive access when running jobs on grid sites. Execution of these applications on a grid environment is a challenging problem that requires the cooperation of several middleware tools and services. Additional problems...
Conference Paper
Full-text available
Grid systems offer high computing capabilities that are used in many scientific research fields and thus many applications are submitted to these powerful systems. Parallel applications and applications consisting of inter-dependent jobs may especially be characterized by a complex workflow. Therefore, Grid systems should be capable of executing an...
Conference Paper
The International Testbed of the CrossGrid Project has been in operation for the last three years, including 16 sites in 9 countries across Europe. The main achievements in installation and operation are described, and also the substantial experience gained on providing support to application and middleware developers in the project. Results are pr...
Article
We investigate the problem arising in scheduling parallel applications that follow a master–worker paradigm in order to maximize both resource efficiency and application performance. Based on the results obtained in a previous simulation study, we have derived a self-adjusting strategy that can be used to dynamically adjust the number of processors...
Chapter
Full-text available
The CrossGrid project is developing new grid middleware components, tools and applications with a special focus on parallel and interactive computing. In order to support the development effort and provide a test infrastructure, an international grid testbed has been deployed across 9 countries. Through the deployment of the testbed and its support...
Article
Dynamic load balancing is a key problem for the efficient use of parallel systems when solving applications with unpredictable load estimates. However, depending on the underlying programming paradigm Single Program Multiple Data (SPMD) or Multiple Program Multiple Data (MPMD) the balancing requirements vary. In SPMD scenarios, a perfect load balan...
Conference Paper
Full-text available
One of the goals of the EU CrossGrid project is to provide a basis for supporting the efficient execution of parallel and interactive applications on Grid environments. CrossGrid jobs typically consist of computationally intensive simulations that are often programmed using a parallel programming model and a parallel programming library (MPI). This...
Conference Paper
Full-text available
Run-time tools are crucial to program development. In our desktop computer environments, we take for granted the availability of tools for operations such as debugging, profiling, tracing, checkpointing, and visualization. When programs move into distributed or Grid environments, it is difficult to find such tools. This difficulty is caused by the...
Article
Full-text available
Run-time tools are crucial to program development. In our desktop computer environments, we take for granted the availability of tools for operations such as debugging, profiling, tracing, checkpointing, and visualization. When programs move into distributed or Grid environments, it is difficult to find such tools. This difficulty is caused by the...
Conference Paper
DASUD (Diffusion Algorithm Searching Unbalanced Domains) algorithm has been implemented in an SPMD parallel-image thinning application to balance the workload in the processors as computation proceeds and was found to be effective in reducing computation time. The average performance gain is about 40% for a test image of size 2688x1440 on a cluster...
Article
A fundamental issue affecting the performance of a parallel application running on message-passing parallel systems is the assignment of tasks to processors. In this paper we present a compilation-time two stage mapping strategy (denoted as Task Allocation by Clustering, Reassignment and Embedding, TACRE) used for mapping arbitrary programs (modele...
Conference Paper
This paper presents the approach being followed to implement scheduling components that are integrated as part of the EU CrossGrid project. The purpose of these components is to provide a basis for supporting the efficient execution of distributed interactive applications on Grid environments. When a user submits a job, the scheduling services sear...
Article
Full-text available
El concepto de Grid ha surgido en los últimos años para denominar un conjunto de recursos computacionales heterog El concepto de Grid ha surgido en los últimos años para denominar un conjunto de recursos computacionales heterogéneos distribuidos pertenecientes a distintas organizaciones. El principal objetivo del proyecto europeo CrossGrid en el cu...
Article
Diffusion algorithms are some of the most popular algorithms for dynamic load balancing in which loads move from heavily loaded processors to lightly loaded neighbor processors. To achieve a global load balance in a parallel computer, the algorithm is iterated until the load difference between any two processors is smaller than a specified value. T...
Conference Paper
Full-text available
The mapping of parallel applications constitutes a difficult problem for which very few practical tools are available. AMEEDA has been developed in order to overcome the lack of a general-purpose mapping tool. The automatic services provided in AMEEDA include instrumentation facilities, parameter extraction modules and mapping strategies. With all...
Conference Paper
Full-text available
The efficient mapping of parallel tasks is essential in order to exploit the gain from parallelisation. In this work, we focus on modelling and mapping message-passing applications that are defined by the programmer with an arbitrary interaction pattern among tasks. A new model is proposed, known as TTIG (Temporal Task Interaction Graph), which cap...
Conference Paper
Full-text available
The mapping of parallel applications constitutes a difficult problem for which very few practical tools are available. AMEEDA has been developed in order to overcome the lack of a general-purpose mapping tool. The automatic services provided in AMEEDA include instrumentation facilities, parameter extraction modules and mapping strategies. With all...
Conference Paper
Strategies for scheduling parallel applications on a distributed system must trade-off processor application speed-up and resource efficiency. Most existing strategies focus mainly on achieving high application speed-up without taking into account the efficiency factor. This paper presents our experiences with a self-adaptive scheduling strategy th...
Article
Full-text available
* . We investigate the problem arising in scheduling parallel applications that follow a master-worker paradigm in order to maximize both the resource efficiency and the application performance. We propose a simple scheduling strategy that dynamically measures application execution time and uses these measurements to automatically adjust the number...
Article
Full-text available
* . We address the problem of how many workers should be allocated for executing a distributed application that follows the master-worker paradigm, and how to assign tasks to workers in order to maximize resource efficiency and minimize application execution time. We propose a simple but effective scheduling strategy that dynamically measures the e...
Conference Paper
We investigate the scheduling problem that arises in parallel applications executing on a network of machines by using a mode of cycle-stealing. In this mode of execution a parallel application executes its tasks in several machines whenever they are idle. When the user reclaims the machine, tasks must relinquish control immediately. In this case,...
Conference Paper
Full-text available
A fundamental issue affecting the performance of parallel applications running on distributed systems is the assignment of tasks to processors. This paper shows the effectiveness in scheduling strategies derived from the use of the temporal behaviour of tasks included in the new TTIG (Temporal Task Interaction Graph) model. Experimentation was perf...
Conference Paper
Full-text available
We investigate the problem arising in scheduling parallel applications that follow a master -worker paradigm in order to maximize both the resource efficiency and the application performance. We propose a simple scheduling strategy that dynamically measures application execution time and uses these measurements to automatically adjust the number of...
Conference Paper
Full-text available
We address the problem of how many workers should be allocated for executing a distributed application that follows the master-worker paradigm, and how to assign tasks to workers in order to maximize resource efficiency and minimize application execution time. We propose a simple but effective scheduling strategy that dynamically measures the execu...
Conference Paper
Full-text available
In the distributed processing area, mapping and scheduling are very important issues in order to exploit the gain from parallelization. The generation of efficient static mapping techniques implies a previous modelling phase of the parallel application as a task graph, which properly reflects its temporal behaviour. In this paper we use a new model...
Article
Full-text available
An efficient mapping of a parallel program in the processors is vital for achieving a high performance on a parallel computer. When the structure of the parallel program in terms of its task execution times, task dependencies, and amount communication data, is known a priori, mapping can be accomplished statically at compile time. Mapping algorithm...
Conference Paper
DASUD (Diffusion Algorithm Searching Unbalanced Domains) is a totally distributed load-balancing algorithm which belongs to the nearest-neighbors class. DASUD detects unbalanced domains (a processor and its immediate neighbors) and corrects this situation by allowing load movements between non-connected processors. DASUD has been evaluated by compa...
Conference Paper
Full-text available
The DASUD (Diffusion Algorithm Searching Unbalanced Domains) algorithm belongs to the nearest-neighbours class and operates in a diffusion scheme where a processor balances its load with all its neighbours. DASUD detects unbalanced domains and performs local exchange of load between processors to achieve global balancing. The DASUD algorithm has be...
Conference Paper
We present a new fully distributed dynamic load balancing algorithm called DASUD (Diffusion Algorithm Searching Unbalanced Domains). Since DASUD is iterative and runs in an asynchronous way, a mathematical model that describes DASUD behaviour has been proposed and has been used to prove DASUD's convergence. DASUD has been evaluated by comparison wi...
Article
A fundamental issue affecting the performance of a parallel application running on message-passing parallel systems is the assignment of tasks to processors in order to get the minimum completion time. In SEPP and HPCTI, tools for static and dynamic task assignment are considered complementary: static mapping tools compute and initial assignment of...
Article
A fundamental issue affecting the performance of a parallel application running on message-passing parallel systems is the assignment of tasks to processors in order to achieve the minimum completion time. Tools for static and dynamic task assignment can be considered complementary: static mapping tools compute an initial assignment of tasks on pro...
Conference Paper
Full-text available
A fundamental issue affecting the performance of a parallel program is the assignment of tasks to processors in order to get the minimum completion time. We present a compilation-time two-stage mapping strategy (denoted as CREMA) used for mapping arbitrary programs (modeled as TIG graphs) onto message passing parallel systems with any architecture....
Article
A new dynamic load balancing strategy, called DASUD (Diffusion Algorithm Searching Unbalanced Domains) has been proposed to solve the problems related to handling indivisible tasks and reducing load thrashing between neighbouring processors involved in diffusion based algorithms. By simulation we have shown that DASUD reaches a better final state t...
Article
Despite the availability of parallel computing from the last two decades, there is little use of these systems in production-level environments. One of the factors most commonly blamed for the slow transition to parallelism is the lack of software support. While in serial programming the performance depends basically on the algorithm designed by th...
Article
Parallel systems are wellknown solutions to satisfy the demand of computing capabilities, but parallel computer design involves difficult hardware/software tradeoffs. Standard general purpose parallel architectures don't exist, only some particular architectures are used to solve specific problems. In such complex systems the performance measuremen...
Article
A fundamental issue affecting the performance of a parallel application running on message-passing parallel systems is the assignment of tasks to process ors in order to get the minimum completion time. In SEPP and HPCTI, tools for static and dynamic task assignment are considered complementary: static mapping tools compute and initial assignment o...
Article
Execution of interactive applications on a Grid environment is a challenging problem that requires the cooperation of several middleware tools and services. In this chapter, we present the experience carried out in the CrossGrid project to provide transparent and reliable support for such types of application. Our solution is based on the notion of...
Article
Full-text available
One of the goals of the EU CrossGrid project is to provide a basis for supporting the efficient execution of parallel and interactive applications on Grid environments. CrossGrid jobs typically consist of computationally intensive simulations that are often programmed using a parallel programming model and a parallel programming library (MPI). This...

Network

Cited By

Projects

Project (1)
Archived project