Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Panagiotis D. Michailidis is active.

Publication


Featured researches published by Panagiotis D. Michailidis.


International Journal of Computer Mathematics | 2001

ON-LINE STRING MATCHING ALGORITHMS: SURVEY AND EXPERIMENTAL RESULTS

Panagiotis D. Michailidis; Konstantinos G. Margaritis

In this paper we present a short survey and experimental results for well known sequential string matching algorithms. We consider algorithms based on different approaches including classical, suffix automata, bit-parallelism and hashing. We put special emphasis on algorithms recently presented such as Shift-Or and BNDM algorithms. We compare these algorithms in terms of the number of character comparisons and the running time for four different types of text: binary alphabet, alphabet of size 8, English alphabet and DNA alphabet.


International Journal of Computer Mathematics | 2002

On-Line Approximate String Searching Algorithms: Survey and Experimental Results

Panagiotis D. Michailidis; Konstantinos G. Margaritis

The problem of approximate string searching comprises two classes of problems: string searching with k mismatches and string searching with k differences. In this paper we present a short survey and experimental results for well known sequential approximate string searching algorithms. We consider algorithms based on different approaches including dynamic programming, deterministic finite automata, filtering, counting and bit parallelism. We compare these algorithms in terms of running time against pattern length and for several values of k for four different kinds of text: binary alphabet, alphabet of size 8, English alphabet and DNA alphabet. Finally, we compare the experimental results of the algorithms with their theoretical complexities.


computational science and engineering | 2010

Implementing Parallel LU Factorization with Pipelining on a MultiCore Using OpenMP

Panagiotis D. Michailidis; Konstantinos G. Margaritis

Recent developments in high performance computer architecture have a significant effect on all fields of scientific computing. Linear algebra and especially the solution of linear systems of equations lies at the heart of many applications in scientific computing. This paper describes and analyzes three parallel versions of the dense LU factorization method that is used in linear system solving on a multicore using OpenMP interface. More specifically, we present two naive parallel algorithms based on row block and row cyclic data distribution and we put special emphasis on presenting a third parallel algorithm based on the pipeline technique. Further, we propose an implementation of the pipelining technique in OpenMP. Experimental results on a multicore CPU show that the proposed OpenMP pipeline implementation achieves good overall performance compared to the other two naive parallel methods. Finally, in this work we propose a simple, fast and reasonably analytical model to predict the performance of the LU decomposition method with the pipelining technique.


international conference on parallel processing | 2001

Parallel text searching application on a heterogeneous cluster of workstations

Panagiotis D. Michailidis; Konstantinos G. Margaritis

In this paper we propose a high-performance text searching implementation on a heterogeneous cluster of workstations using MPI message passing library. We test this parallel implementation and present experimental results for different text sizes and number of workstations. We also present a performance prediction model that agrees well with our experimental measurements.


Future Generation Computer Systems | 2003

Performance evaluation of load balancing strategies for approximate string matching application on an MPI cluster of heterogeneous workstations

Panagiotis D. Michailidis; Konstantinos G. Margaritis

In this paper, we present three parallel approximate string matching methods on a parallel architecture with heterogeneous workstations to gain supercomputer power at low cost. The first method is the static master-worker with uniform distribution strategy, the second one is the dynamic master-worker with allocation of subtexts and the third one is the dynamic master-worker with allocation of text pointers. Further, we propose a hybrid parallel method that combines the advantages of static and dynamic parallel methods in order to reduce the load imbalance and communication overhead. This hybrid method is based on the following optimal distribution strategy: the text collection is distributed proportional to workstations speed. We evaluated and compared the performance of the four methods with clusters one, two, four, six and eight heterogeneous workstations. The experimental results demonstrate that dynamic allocation of text pointers and hybrid methods achieve better performance than the two original ones. We also present an analytical performance model for the four methods that confirms the actual behaviour of the experimental results.


parallel and distributed computing: applications and technologies | 2010

Performance Models for Matrix Computations on Multicore Processors Using OpenMP

Panagiotis D. Michailidis; Konstantinos G. Margaritis

The matrix computations such as matrix-vector and matrix multiplication are very challenging computational kernels arising in scientific computing. In this paper, we study and evaluate a number of different data decomposition schemes for matrix computations on multicore architectures using OpenMP programming model. Further, in this work we propose a simple and fast analytical model to predict the performance of matrix computations by taking memory access costs into account and data access schemes that appear in many scientific applications.


Archive | 2011

Parallel Processing of Multiple Pattern Matching Algorithms for Biological Sequences: Methods and Performance Results

Charalampos S. Kouzinopoulos; Panagiotis D. Michailidis; Konstantinos G. Margaritis

Multiple pattern matching is the computationally intensive kernel of many applications including information retrieval and intrusion detection systems, web and spam filters and virus scanners. The use of multiple pattern matching is very important in genomics where the algorithms are frequently used to locate nucleotide or amino acid sequence patterns in biological sequence databases. For example, when proteomics data is used for genome annotation in a process called proteogenomic mapping (Jaffe et al., 2004), a set of peptide identifications obtained using mass spectrometry is matched against a target genome translated in all six reading frames. Given a sequence database (or text) T = t1t2...tn of length n and a finite set of r patterns P = p1, p2, ..., pr , where each pi is a string pi = pi 1p i 2...p i m of length m over a finite character set Σ, the multiple pattern matching problem can be defined as the way to locate all the occurrences of any of the patterns in the sequence database. The naive solution to this problem is to perform r separate searches with one of the sequential algorithms (Navarro & Raffinot, 2002). While frequently used in the past, this technique is not efficient when a large pattern set is involved. The aim of all multiple pattern matching algorithms is to locate the occurrences of all patterns with a single pass of the sequence database. These algorithms are based of single-pattern matching algorithms, with some of their functions generalized to process multiple patterns simultaneously during the preprocessing phase, generally with the use of trie structures or hashing. Multiple pattern matching is widely used in computational biology for a variety of pattern matching tasks. Brundo and Morgenstern used a simplified version of the Aho-Corasick algorithm to identify anchor points in their CHAOS algorithm for fast alignment of large genomic sequences (Brudno & Morgenstern, 2002; Brudno et al., 2004). Hyyro et al. demonstrated that Aho-Corasick outperforms other algorithms for locating unique oligonucleotides in the yeast genome (Hyyro et al., 2005). The SITEBLAST algorithm (Michael et al., 2005) employs the Aho-Corasick algorithm to retrieve all motif anchors for a local alignment procedure for genomic sequences that makes use of prior knowledge. Buhler Parallel Processing of Multiple Pattern Matching Algorithms for Biological Sequences: Methods and Performance Results


The Journal of Supercomputing | 2005

New Processor Array Architectures for the Longest Common Subsequence Problem

Panagiotis D. Michailidis; Konstantinos G. Margaritis

A longest common subsequence (LCS) of two strings is a common subsequence of two strings of maximal length. The LCS problem is to find an LCS of two given strings and the length of the LCS (LLCS). In this paper, we present a new linear processor array for solving the LCS problem. The array is based on parallelization of a recent LCS algorithm which consists of two phases, i.e. preprocessing and computation. The computation phase is based on bit-level dynamic programming approach. Implementations of the preprocessing and computation phases are discussed on the same processor array architecture for the LCS problem. Further, we propose a block processor array architecture which reduces the overall communication and time requirements. Finally, we develop a performance model for estimating the performance of the processor array architecture on Pentium processors.


ieee international conference on high performance computing data and analytics | 2012

Computational Comparison of Some Multi-core Programming Tools for Basic Matrix Computations

Panagiotis D. Michailidis; Konstantinos G. Margaritis

The broad introduction of multi-core platforms into computing has brought a great opportunity to develop computationally demanding applications such as matrix computations on parallel computing platforms. Basic matrix computations such as vector and matrix addition, dot product, outer product, matrix transpose, matrix - vector and matrix multiplication are very challenging computational kernels arising in scientific computing. In this paper, we parallelize those basic matrix computations using the multicore and parallel programming tools. Specifically, these tools are Pthreads, OpenMP, Intel Cilk++, Intel TBB, Intel ArBB, SMPSs, SWARM and FastFlow. The purpose of this paper is to present a quantitative and qualitative study of these tools for parallel matrix computations. Finally, based on this study we conclude that the Intel ArBB and SWARM parallel programming tools are the most appropriate because these give good performance and simplicity of programming.


parallel, distributed and network-based processing | 2013

Parallel Computing of Kernel Density Estimation with Different Multi-core Programming Models

Panagiotis D. Michailidis; Konstantinos G. Margaritis

Kernel density estimation is nowadays very popular tool for nonparametric probabilistic density estimation. One of its most important disadvantages is computational complexity of computations needed, especially for large data sets. One way for accelerating these computations is to use the parallel computing with multi-core platforms. In this paper we parallelize two kernel estimation methods such as the univariate and multivariate kernel estimation from the field of the computational econometrics on multi-core platform using different programming frameworks such as Pthreads, OpenMP, Intel Cilk++, Intel TBB, SWARM and FastFlow. The purpose of this paper is to present an extensive quantitative (i.e., performance) and qualitative (i.e., the ease of programming effort) study of the multi-core programming frameworks for these two kernel estimation methods.

Collaboration


Dive into the Panagiotis D. Michailidis's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Minas Dasygenis

University of Western Macedonia

View shared research outputs
Researchain Logo
Decentralizing Knowledge