Wlodzimierz Bielecki
Current Organizations / Institutes
The organizations/institutes from the scholar's latest article
Research Subjects
Wlodzimierz Bielecki has a total of 8 co-authors. Here are the top co-authors by number of shared publications:
- Marek Palkowski
West Pomeranian University of Technology in Szczecin
9 shared publications - Piotr Skotnicki
West Pomeranian University of Technology
2 shared publications - Agnieszka Kaminska
West Pomeranian University of Technology, Faculty of Computer Science and Information Technology, Szczecin
1 shared publication - Krzysztof Kraska
West Pomeranian University of Technology
1 shared publication Maciej Poliwoda
West Pomeranian University of Technology in Szczecin
1 shared publicationMarek Palkowski
West Pomeranian University of Technology in Szczecin
1 shared publication
Latest Publications
- 27 April 2023
- Published by Springer Nature
- p. 51-62
NPDP Benchmark Suite for Loop Tiling Effectiveness Evaluation
- 27 April 2023
- Published by Springer Nature
- p. 51-62
NPDP Benchmark Suite for Loop Tiling Effectiveness Evaluation
- 7 September 2021
- Published by Springer Nature
- p. 260-275
Automatic Parallel Tiled Code Generation Based on Dependence Approximation
- 7 September 2021
- Published by Springer Nature
- p. 260-275
Automatic Parallel Tiled Code Generation Based on Dependence Approximation
- Open Access
- 24 April 2019
- Published by Springer Nature in BMC Bioinformatics
- Vol. 20 (1) , 208
Tiling Nussinov’s RNA folding loop nest with a space-time approach
An RNA primary structure, or sequence, is a single strand considered as a chain of nucleotides from the alphabet AUGC (adenine, uracil, guanine, cytosine). The strand can be folded onto itself, i.e., one segment of an RNA sequence might be paired with another segment of the same RNA sequence into a two-dimensional structure composed by a list of complementary base pairs, which are close together with the minimum energy. That list is called RNA’s secondary structure and is predicted by an RNA folding algorithm. RNA secondary structure prediction is a computing-intensive task that lies at the core of search applications in bioinformatics. We suggest a space-time tiling approach and apply it to generate parallel cache effective tiled code for RNA folding using Nussinov’s algorithm. Parallel tiled code generated with a suggested space-time loop tiling approach outperforms known related codes generated automatically by means of optimizing compilers and codes produced manually. The presented approach enables us to tile all the three loops of Nussinov’s recurrence that is not possible with commonly known tiling techniques. Generated parallel tiled code is scalable regarding to the number of parallel threads – increasing the number of threads reduces code execution time. Defining speed up as the ratio of the time taken to run the original serial program on one thread to the time taken to run the tiled program on P threads, we achieve super-linear speed up (a value of speed up is greater than the number of threads used) for parallel tiled code against the original serial code up to 32 threads and super-linear speed up scalability (increasing speed up with increasing the thread number) up to 8 threads. For one thread used, speed up is about 4.2 achieved on an Intel Xeon machine used for carrying out experiments.
- 24 April 2019
- Published by Springer Nature in BMC Bioinformatics
- Vol. 20 (1) , 208
Open AccessTiling Nussinov’s RNA folding loop nest with a space-time approach
An RNA primary structure, or sequence, is a single strand considered as a chain of nucleotides from the alphabet AUGC (adenine, uracil, guanine, cytosine). The strand can be folded onto itself, i.e., one segment of an RNA sequence might be paired with another segment of the same RNA sequence into a two-dimensional structure composed by a list of complementary base pairs, which are close together with the minimum energy. That list is called RNA’s secondary structure and is predicted by an RNA folding algorithm. RNA secondary structure prediction is a computing-intensive task that lies at the core of search applications in bioinformatics. We suggest a space-time tiling approach and apply it to generate parallel cache effective tiled code for RNA folding using Nussinov’s algorithm. Parallel tiled code generated with a suggested space-time loop tiling approach outperforms known related codes generated automatically by means of optimizing compilers and codes produced manually. The presented approach enables us to tile all the three loops of Nussinov’s recurrence that is not possible with commonly known tiling techniques. Generated parallel tiled code is scalable regarding to the number of parallel threads – increasing the number of threads reduces code execution time. Defining speed up as the ratio of the time taken to run the original serial program on one thread to the time taken to run the tiled program on P threads, we achieve super-linear speed up (a value of speed up is greater than the number of threads used) for parallel tiled code against the original serial code up to 32 threads and super-linear speed up scalability (increasing speed up with increasing the thread number) up to 8 threads. For one thread used, speed up is about 4.2 achieved on an Intel Xeon machine used for carrying out experiments.
- 12 December 2018
- Published by Springer Nature
- p. 122-131
Transitive Closure Based Schedule of Loop Nest Statement Instances
- 12 December 2018
- Published by Springer Nature
- p. 122-131
Transitive Closure Based Schedule of Loop Nest Statement Instances
- Open Access
- 15 January 2018
- Published by Springer Nature in BMC Bioinformatics
- Vol. 19 (1) , 12-12:12
Tuning iteration space slicing based tiled multi-core code implementing Nussinov’s RNA folding
RNA folding is an ongoing compute-intensive task of bioinformatics. Parallelization and improving code locality for this kind of algorithms is one of the most relevant areas in computational biology. Fortunately, RNA secondary structure approaches, such as Nussinov’s recurrence, involve mathematical operations over affine control loops whose iteration space can be represented by the polyhedral model. This allows us to apply powerful polyhedral compilation techniques based on the transitive closure of dependence graphs to generate parallel tiled code implementing Nussinov’s RNA folding. Such techniques are within the iteration space slicing framework – the transitive dependences are applied to the statement instances of interest to produce valid tiles. The main problem at generating parallel tiled code is defining a proper tile size and tile dimension which impact parallelism degree and code locality. To choose the best tile size and tile dimension, we first construct parallel parametric tiled code (parameters are variables defining tile size). With this purpose, we first generate two nonparametric tiled codes with different fixed tile sizes but with the same code structure and then derive a general affine model, which describes all integer factors available in expressions of those codes. Using this model and known integer factors present in the mentioned expressions (they define the left-hand side of the model), we find unknown integers in this model for each integer factor available in the same fixed tiled code position and replace in this code expressions, including integer factors, with those including parameters. Then we use this parallel parametric tiled code to implement the well-known tile size selection (TSS) technique, which allows us to discover in a given search space the best tile size and tile dimension maximizing target code performance. For a given search space, the presented approach allows us to choose the best tile size and tile dimension in parallel tiled code implementing Nussinov’s RNA folding. Experimental results, received on modern Intel multi-core processors, demonstrate that this code outperforms known closely related implementations when the length of RNA strands is bigger than 2500.
- 15 January 2018
- Published by Springer Nature in BMC Bioinformatics
- Vol. 19 (1) , 12-12:12
Open AccessTuning iteration space slicing based tiled multi-core code implementing Nussinov’s RNA folding
RNA folding is an ongoing compute-intensive task of bioinformatics. Parallelization and improving code locality for this kind of algorithms is one of the most relevant areas in computational biology. Fortunately, RNA secondary structure approaches, such as Nussinov’s recurrence, involve mathematical operations over affine control loops whose iteration space can be represented by the polyhedral model. This allows us to apply powerful polyhedral compilation techniques based on the transitive closure of dependence graphs to generate parallel tiled code implementing Nussinov’s RNA folding. Such techniques are within the iteration space slicing framework – the transitive dependences are applied to the statement instances of interest to produce valid tiles. The main problem at generating parallel tiled code is defining a proper tile size and tile dimension which impact parallelism degree and code locality. To choose the best tile size and tile dimension, we first construct parallel parametric tiled code (parameters are variables defining tile size). With this purpose, we first generate two nonparametric tiled codes with different fixed tile sizes but with the same code structure and then derive a general affine model, which describes all integer factors available in expressions of those codes. Using this model and known integer factors present in the mentioned expressions (they define the left-hand side of the model), we find unknown integers in this model for each integer factor available in the same fixed tiled code position and replace in this code expressions, including integer factors, with those including parameters. Then we use this parallel parametric tiled code to implement the well-known tile size selection (TSS) technique, which allows us to discover in a given search space the best tile size and tile dimension maximizing target code performance. For a given search space, the presented approach allows us to choose the best tile size and tile dimension in parallel tiled code implementing Nussinov’s RNA folding. Experimental results, received on modern Intel multi-core processors, demonstrate that this code outperforms known closely related implementations when the length of RNA strands is bigger than 2500.
- 20 October 2017
- Published by Springer Nature in Computing
- Vol. 100 (3) , 277-302
Generation of parallel synchronization-free tiled code
- 20 October 2017
- Published by Springer Nature in Computing
- Vol. 100 (3) , 277-302
Generation of parallel synchronization-free tiled code
- Open Access
- 2 June 2017
- Published by Springer Nature in BMC Bioinformatics
- Vol. 18 (1) , 290
Parallel tiled Nussinov RNA folding loop nest generated using both dependence graph transitive closure and loop skewing
RNA secondary structure prediction is a compute intensive task that lies at the core of several search algorithms in bioinformatics. Fortunately, the RNA folding approaches, such as the Nussinov base pair maximization, involve mathematical operations over affine control loops whose iteration space can be represented by the polyhedral model. Polyhedral compilation techniques have proven to be a powerful tool for optimization of dense array codes. However, classical affine loop nest transformations used with these techniques do not optimize effectively codes of dynamic programming of RNA structure predictions. The purpose of this paper is to present a novel approach allowing for generation of a parallel tiled Nussinov RNA loop nest exposing significantly higher performance than that of known related code. This effect is achieved due to improving code locality and calculation parallelization. In order to improve code locality, we apply our previously published technique of automatic loop nest tiling to all the three loops of the Nussinov loop nest. This approach first forms original rectangular 3D tiles and then corrects them to establish their validity by means of applying the transitive closure of a dependence graph. To produce parallel code, we apply the loop skewing technique to a tiled Nussinov loop nest. The technique is implemented as a part of the publicly available polyhedral source-to-source TRACO compiler. Generated code was run on modern Intel multi-core processors and coprocessors. We present the speed-up factor of generated Nussinov RNA parallel code and demonstrate that it is considerably faster than related codes in which only the two outer loops of the Nussinov loop nest are tiled.
- 2 June 2017
- Published by Springer Nature in BMC Bioinformatics
- Vol. 18 (1) , 290
Open AccessParallel tiled Nussinov RNA folding loop nest generated using both dependence graph transitive closure and loop skewing
RNA secondary structure prediction is a compute intensive task that lies at the core of several search algorithms in bioinformatics. Fortunately, the RNA folding approaches, such as the Nussinov base pair maximization, involve mathematical operations over affine control loops whose iteration space can be represented by the polyhedral model. Polyhedral compilation techniques have proven to be a powerful tool for optimization of dense array codes. However, classical affine loop nest transformations used with these techniques do not optimize effectively codes of dynamic programming of RNA structure predictions. The purpose of this paper is to present a novel approach allowing for generation of a parallel tiled Nussinov RNA loop nest exposing significantly higher performance than that of known related code. This effect is achieved due to improving code locality and calculation parallelization. In order to improve code locality, we apply our previously published technique of automatic loop nest tiling to all the three loops of the Nussinov loop nest. This approach first forms original rectangular 3D tiles and then corrects them to establish their validity by means of applying the transitive closure of a dependence graph. To produce parallel code, we apply the loop skewing technique to a tiled Nussinov loop nest. The technique is implemented as a part of the publicly available polyhedral source-to-source TRACO compiler. Generated code was run on modern Intel multi-core processors and coprocessors. We present the speed-up factor of generated Nussinov RNA parallel code and demonstrate that it is considerably faster than related codes in which only the two outer loops of the Nussinov loop nest are tiled.
- Open Access
- 1 January 2017
- Published by AGH University Press in Computer Science
- Vol. 18 (2) , 195
DYNAMIC TILE FREE SCHEDULING FOR CODE WITH ACYCLIC INTER-TILE DEPENDENCE GRAPHS
Dynamic Tile Free Scheduling for Code with Acyclic Inter-Tile Dependence Graphs
- 1 January 2017
- Published by AGH University Press in Computer Science
- Vol. 18 (2) , 195
Open AccessDYNAMIC TILE FREE SCHEDULING FOR CODE WITH ACYCLIC INTER-TILE DEPENDENCE GRAPHS
Dynamic Tile Free Scheduling for Code with Acyclic Inter-Tile Dependence Graphs
- 20 October 2016
- Published by Springer Nature
- p. 305-314
Loop Nest Tiling for Image Processing and Communication Applications
- 20 October 2016
- Published by Springer Nature
- p. 305-314
Loop Nest Tiling for Image Processing and Communication Applications
- 2 April 2016
- Published by Springer Nature
- p. 133-142
Free Scheduling of Tiles Based on the Transitive Closure of Dependence Graphs
- 2 April 2016
- Published by Springer Nature
- p. 133-142
Free Scheduling of Tiles Based on the Transitive Closure of Dependence Graphs