Siegfried Benkner - Academia.edu (original) (raw)
Papers by Siegfried Benkner
Proceedings of The International Symposium on Grids and Clouds and the Open Grid Forum — PoS(ISGC 2011 & OGF 31), 2011
The molecular systems biology community has to deal with an increasingly growing amount of data. ... more The molecular systems biology community has to deal with an increasingly growing amount of data. A recent programming model that addresses the data deluge is MapReduce which facilitates processing of huge data volumes on large sets of computing resources. However, the availability of appropriate local computing resources is often limited. Cloud computing addresses this issue by providing virtually infinite resources on demand, usually following a pay per use model. In this paper we present our cloud based high throughput computing infrastructure which combines the Software as a Service approach with the MapReduce programming model for data-intensive applications, and a configurable distributed file system as provided by the Hadoop framework. Within this infrastructure we realized an application in the field of molecular systems biology which matches tryptic peptide fragmentation mass spectra data against a large scale mass spectral reference database. We evaluate this application on a local cloud resource and study the effects of different configuration parameters as provided by the application, the Hadoop framework, and the available computational and storage resources.
Programming multi-core and many-core computing systems, 2017
Le Centre pour la Communication Scientifique Directe - HAL - Université de Nantes, 2012
The European FP7 project PEPPHER is addressing programmability and performance portability for cu... more The European FP7 project PEPPHER is addressing programmability and performance portability for current and emerging heterogeneous many-core architectures. As its main idea, the project proposes a multi-level parallel execution model comprised of potentially parallelized components existing in variants suitable for different types of cores, memory configurations, input characteristics, optimization criteria, and couples this with dynamic and static resource and architecture aware scheduling mechanisms. Crucial to PEPPHER is that components can be made performance aware, allowing for more efficient dynamic and static scheduling on the concrete, available resources. The flexibility provided in the software model, combined with a customizable, heterogeneous, memory and topology aware run-time system is key to efficiently exploiting the resources of each concrete hardware configuration. The project takes a holistic approach, relying on existing paradigms, interfaces, and languages for the parallelization of components, and develops a prototype framework, a methodology for extending the framework, and guidelines for constructing performance portable software and systems-including paths to migration of existing software-for heterogeneous many-core processors. This paper gives a high-level project overview, and presents a specific example showing how the PEPPHER component variant model and resource-aware run-time system enable performance portability of a numerical kernel.
Advances in Parallel Computing, 2004
The European GEMSS Project 1 is concerned with the creation of medical Grid service prototypes an... more The European GEMSS Project 1 is concerned with the creation of medical Grid service prototypes and their evaluation in a secure service-oriented infrastructure for distributed on-demand supercomputing-the GEMSS test-bed. The medical prototype applications include maxillo-facial surgery simulation, neuro-surgery support, radio-surgery planning, inhaled drug-delivery simulation, cardiovascular simulation and tomographic image reconstruction. GEMSS will enable the widespread use of these computationally demanding tools originating from projects such as BloodSim, SimBio, COPHIT and RAPT as Grid services. The numerical High-Performance Computing core includes parallel Finite Element software and Computational Fluid Dynamics simulation as well as parallel optimization methods and parallel Monte Carlo simulation. Targeted end-user groups include bio-mechanics laboratories, hospital surgery/radiology units, diagnostic and therapeutic departments, designers of medical devices in industry as well as small enterprises involved in consultancy on bio-medical simulations. GEMSS addresses security, privacy and legal issues related to the Grid provision of medical simulation and image processing services and the development of suitable business models for sustainable use. The first prototype of the GEMSS middleware is expected to be released in February 2004.
Procedia Computer Science, 2013
This paper presents an integrated framework, the Vienna Cloud Environment, for building a generic... more This paper presents an integrated framework, the Vienna Cloud Environment, for building a generic, service-based data infrastructure for biomedical data integration needs. The infrastructure consists of diverse service types, which in an example scenario are used to expose and link several open drug and clinical trials data sources under a unified interface. As a result, the biomedical research community is offered a convenient way to query parameters related to drugs, for example generic compound names or brand names or their molecular targets, and associate these to their effective utilization in clinical trials. We develop and discuss several approaches on setting up such integration infrastructure and discuss implications of this framework exemplarily on an experimental evaluation of the drug-trial integration application. Practical recommendations and theoretical considerations inspired by the implementation and experimental evaluation of the drug-trials integration application are presented.
Lecture Notes in Computer Science, 2001
Clusters of shared-memory multiprocessors (SMPs) have become the most promising parallel computin... more Clusters of shared-memory multiprocessors (SMPs) have become the most promising parallel computing platforms for scientific computing. However, SMP clusters significantly increase the complexity of user application development when using the low-level application programming interfaces MPI and OpenMP, forcing users to deal with both distributed-memory and shared-memory parallelization details. In this paper we present extensions of High Performance Fortran for SMP clusters which enable the compiler to adopt a hybrid parallelization strategy, efficiently combining distributed-memory with sharedmemory parallelism. By means of a small set of new language features, the hierarchical structure of SMP clusters may be specified. This information is utilized by the compiler to derive inter-node data mappings for controlling distributed-memory parallelization across the nodes of a cluster, and intra-node data mappings for extracting shared-memory parallelism within nodes. Additional mechanisms are proposed for specifying inter-and intra-node data mappings explicitly, for controlling specific SM parallelization issues, and for integrating OpenMP routines in HPF applications. The proposed features are being realized within the ADAPTOR and VFC compiler. The parallelization strategy for clusters of SMPs adopted by these compilers is discussed as well as a hybrid-parallel execution model based on a combination of MPI and OpenMP. Early experimental results indicate the effectiveness of the proposed features.
2009 Congress on Services - I, 2009
Grid computing emerged as a vision for a new computing infrastructure that aims to make computing... more Grid computing emerged as a vision for a new computing infrastructure that aims to make computing resources available as easily as electric power through the power grid. Enabling seamless access to globally distributed IT resources allows dispersed users to tackle large-scale problems in science and engineering in unprecedented ways. The rapid development of Grid computing also encouraged standardization, which led to the adoption of a service-oriented paradigm and an increasing use of commercial Web services technologies. Along these lines, service-level agreements and Quality of Service are essential characteristics of the Grid and specifically mandatory for Gridenabling complex applications from certain domains such as the health sector. This PhD thesis aims to contribute to the development of Grid technologies by proposing a Grid environment with support for Quality of Service. The proposed environment comprises a secure service-oriented Grid infrastructure based on standard Web services technologies which enables the on-demand provision of native HPC applications as Grid services in an automated way and subject to user-defined QoS constraints. v vi Contents Contents vii List of Figures xi List of Tables xiii List of Listings xv Related Work 159 9 Conclusion 165 Bibliography 167 Curriculum Vitae 179 x I would like to express many thanks to Tina Csaicsich, who provided her superior English skills as prospective interpreter to proofread this thesis. Finally, I would like to express deeply my gratefulness for my brother Christian. We both had a hard time upon the sudden death of our mother, but he helped me to keep on track with my scientific work, while on the other hand he also motivated me to have a go at new activities on leisure time like climbing or diving.
Lecture Notes in Computer Science, 2005
... The execution of the SPECT service methods can be automated using a workflow language and a w... more ... The execution of the SPECT service methods can be automated using a workflow language and a workflow execution engine. A corresponding BPEL workflow 1 is presented in Figure 2. First, the input data is uploaded to the service using the invoke activity named upload. ...
Fifth IEEE/ACM International Workshop on Grid Computing
Lecture Notes in Computer Science, 2012
GPUs clusters are becoming widespread HPC platforms. Exploiting them is however challenging, as t... more GPUs clusters are becoming widespread HPC platforms. Exploiting them is however challenging, as this requires two separate paradigms (MPI and CUDA or OpenCL) and careful load balancing due to node heterogeneity. Current paradigms usually either limit themselves to offload part of the computation and leave CPUs idle, or require static CPU/GPU work partitioning. We thus have previously proposed StarPU, a runtime system able to dynamically scheduling tasks within a single heterogeneous node. We show how we extended the task paradigm of StarPU with MPI to easily map the task graph on MPI clusters and automatically benefit from optimized execution.
Lecture Notes in Computer Science, 2012
With the increasing architectural diversity of many-core architectures the challenges of parallel... more With the increasing architectural diversity of many-core architectures the challenges of parallel programming and code portability will sharply rise. The EU project PEPPHER addresses these issues with a component-based approach to application development on top of a taskparallel execution model. Central to this approach are multi-architectural components which encapsulate different implementation variants of application functionality tailored for different core types. An intelligent runtime system selects and dynamically schedules component implementation variants for efficient parallel execution on heterogeneous many-core architectures. On top of this model we have developed language, compiler and runtime support for a specific class of applications that can be expressed using the pipeline pattern. We propose C/C++ language annotations for specifying pipeline patterns and describe the associated compilation and runtime infrastructure. Experimental results indicate that with our high-level approach performance comparable to manual parallelization can be achieved.
Lecture Notes in Computer Science, 2011
Managing and sharing data and information related to the understanding of human disease processes... more Managing and sharing data and information related to the understanding of human disease processes represents a huge challenge for medical researchers and clinicians. The European @neurIST project addressed this challenge by developing an advanced service-oriented IT infrastructure for the management of all processes linked to research, diagnosis and treatment development for complex and multi-factorial diseases. The @neurIST infrastructure relies on a service-oriented architecture comprising data services and compute services encompassing data repositories, computational analysis services and information systems handling multi-scale, multi-modal information at distributed sites. The @neurIST data services infrastructure offers tools based on Grid and Cloud technologies for constructing virtual data sources that enable transparent access to and integration of distributed heterogeneous biomedical and clinical data sources. Pre-configured virtual data nodes and a virtual mediation node ensure an easy distribution, hosting and deployment of data services by utilizing latest Cloud computing technologies.
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2013
Performance analysis and tuning is an important step in programming multicore-and manycore-based ... more Performance analysis and tuning is an important step in programming multicore-and manycore-based parallel architectures. While there are several tools to help developers analyze application performance, no tool provides recommendations about how to tune the code. The AutoTune project is extending Periscope, an automatic distributed performance analysis tool developed by Technische Universität München, with plugins for performance and energy efficiency tuning. The resulting Periscope Tuning Framework will be able to tune serial and parallel codes for multicore and manycore architectures and return tuning recommendations that can be integrated into the production version of the code. The whole tuning process-both performance analysis and tuning-will be performed automatically during a single run of the application.
Grid Computing, 2004
Grid workflow applications are emerging as one of the most interesting programming models for the... more Grid workflow applications are emerging as one of the most interesting programming models for the Grid. In this paper we present a novel approach for graphically modeling and describing Grid workflow applications based on the Unified Modeling Language (UML). Our approach provides a graphic representation of Grid applications based on a widely accepted standard (UML) that is more amenable than pure textual-oriented specifications (such as XML). We describe some of the most important elements for modeling control flow, data flow, synchronization, notification, and constraints. We also introduce new features that have not been included by other Grid workflow specification languages which includes broadcast and parallel loops. Our UML-based graphical editor Teuta provides the corresponding tool support. We demonstrate our approach by describing a UML-based Grid workflow model for an advanced 3D medical image reconstruction application.
2012 Design, Automation & Test in Europe Conference & Exhibition (DATE), 2012
We discuss three complementary approaches that can provide both portability and an increased leve... more We discuss three complementary approaches that can provide both portability and an increased level of abstraction for the programming of heterogeneous multicore systems. Together, these approaches also support performance portability, as currently investigated in the EU FP7 project PEPPHER. In particular, we consider (1) a library-based approach, here represented by the integration of the SkePU C++ skeleton programming library with the StarPU runtime system for dynamic scheduling and dynamic selection of suitable execution units for parallel tasks; (2) a language-based approach, here represented by the Offload-C++ high-level language extensions and Offload compiler to generate platform-specific code; and (3) a componentbased approach, specifically the PEPPHER component system for annotating user-level application components with performance metadata, thereby preparing them for performance-aware composition. We discuss the strengths and weaknesses of these approaches and show how they could complement each other in an integrational programming framework for heterogeneous multicore systems.
2012 SC Companion: High Performance Computing, Networking Storage and Analysis, 2012
ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhan... more ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhance performance portability and programmability of heterogeneous multi-core systems. Its primary target is single-node heterogeneous systems, where several CPU cores are supported by accelerators such as GPUs. This poster briefly surveys the PEPPHER framework for singlenode systems, and elaborates on the prospectives for leveraging the PEPPHER approach to generate performance-portable code for heterogeneous multi-node systems.
2012 SC Companion: High Performance Computing, Networking Storage and Analysis, 2012
ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhan... more ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhance performance portability and programmability of heterogeneous multi-core systems. Its primary target is single-node heterogeneous systems, where several CPU cores are supported by accelerators such as GPUs. This poster briefly surveys the PEPPHER framework for single-node systems, and elaborates on the prospectives for leveraging the PEPPHER approach to generate performance-portable code for heterogeneous multi-node systems.
Parallel Processing Letters, 2006
In this paper we study different parallel implementations of the Savings based Ant System algorit... more In this paper we study different parallel implementations of the Savings based Ant System algorithm developed for solving the Vehicle Routing Problem. We analyze the effects of low-level parallelization, multiple search strategies and domain decomposition approaches. For the different strategies speedup and efficiency as well as solution quality are reported. Different information exchanges are analyzed within the multiple search strategies.
Proceedings of The International Symposium on Grids and Clouds and the Open Grid Forum — PoS(ISGC 2011 & OGF 31), 2011
The molecular systems biology community has to deal with an increasingly growing amount of data. ... more The molecular systems biology community has to deal with an increasingly growing amount of data. A recent programming model that addresses the data deluge is MapReduce which facilitates processing of huge data volumes on large sets of computing resources. However, the availability of appropriate local computing resources is often limited. Cloud computing addresses this issue by providing virtually infinite resources on demand, usually following a pay per use model. In this paper we present our cloud based high throughput computing infrastructure which combines the Software as a Service approach with the MapReduce programming model for data-intensive applications, and a configurable distributed file system as provided by the Hadoop framework. Within this infrastructure we realized an application in the field of molecular systems biology which matches tryptic peptide fragmentation mass spectra data against a large scale mass spectral reference database. We evaluate this application on a local cloud resource and study the effects of different configuration parameters as provided by the application, the Hadoop framework, and the available computational and storage resources.
Programming multi-core and many-core computing systems, 2017
Le Centre pour la Communication Scientifique Directe - HAL - Université de Nantes, 2012
The European FP7 project PEPPHER is addressing programmability and performance portability for cu... more The European FP7 project PEPPHER is addressing programmability and performance portability for current and emerging heterogeneous many-core architectures. As its main idea, the project proposes a multi-level parallel execution model comprised of potentially parallelized components existing in variants suitable for different types of cores, memory configurations, input characteristics, optimization criteria, and couples this with dynamic and static resource and architecture aware scheduling mechanisms. Crucial to PEPPHER is that components can be made performance aware, allowing for more efficient dynamic and static scheduling on the concrete, available resources. The flexibility provided in the software model, combined with a customizable, heterogeneous, memory and topology aware run-time system is key to efficiently exploiting the resources of each concrete hardware configuration. The project takes a holistic approach, relying on existing paradigms, interfaces, and languages for the parallelization of components, and develops a prototype framework, a methodology for extending the framework, and guidelines for constructing performance portable software and systems-including paths to migration of existing software-for heterogeneous many-core processors. This paper gives a high-level project overview, and presents a specific example showing how the PEPPHER component variant model and resource-aware run-time system enable performance portability of a numerical kernel.
Advances in Parallel Computing, 2004
The European GEMSS Project 1 is concerned with the creation of medical Grid service prototypes an... more The European GEMSS Project 1 is concerned with the creation of medical Grid service prototypes and their evaluation in a secure service-oriented infrastructure for distributed on-demand supercomputing-the GEMSS test-bed. The medical prototype applications include maxillo-facial surgery simulation, neuro-surgery support, radio-surgery planning, inhaled drug-delivery simulation, cardiovascular simulation and tomographic image reconstruction. GEMSS will enable the widespread use of these computationally demanding tools originating from projects such as BloodSim, SimBio, COPHIT and RAPT as Grid services. The numerical High-Performance Computing core includes parallel Finite Element software and Computational Fluid Dynamics simulation as well as parallel optimization methods and parallel Monte Carlo simulation. Targeted end-user groups include bio-mechanics laboratories, hospital surgery/radiology units, diagnostic and therapeutic departments, designers of medical devices in industry as well as small enterprises involved in consultancy on bio-medical simulations. GEMSS addresses security, privacy and legal issues related to the Grid provision of medical simulation and image processing services and the development of suitable business models for sustainable use. The first prototype of the GEMSS middleware is expected to be released in February 2004.
Procedia Computer Science, 2013
This paper presents an integrated framework, the Vienna Cloud Environment, for building a generic... more This paper presents an integrated framework, the Vienna Cloud Environment, for building a generic, service-based data infrastructure for biomedical data integration needs. The infrastructure consists of diverse service types, which in an example scenario are used to expose and link several open drug and clinical trials data sources under a unified interface. As a result, the biomedical research community is offered a convenient way to query parameters related to drugs, for example generic compound names or brand names or their molecular targets, and associate these to their effective utilization in clinical trials. We develop and discuss several approaches on setting up such integration infrastructure and discuss implications of this framework exemplarily on an experimental evaluation of the drug-trial integration application. Practical recommendations and theoretical considerations inspired by the implementation and experimental evaluation of the drug-trials integration application are presented.
Lecture Notes in Computer Science, 2001
Clusters of shared-memory multiprocessors (SMPs) have become the most promising parallel computin... more Clusters of shared-memory multiprocessors (SMPs) have become the most promising parallel computing platforms for scientific computing. However, SMP clusters significantly increase the complexity of user application development when using the low-level application programming interfaces MPI and OpenMP, forcing users to deal with both distributed-memory and shared-memory parallelization details. In this paper we present extensions of High Performance Fortran for SMP clusters which enable the compiler to adopt a hybrid parallelization strategy, efficiently combining distributed-memory with sharedmemory parallelism. By means of a small set of new language features, the hierarchical structure of SMP clusters may be specified. This information is utilized by the compiler to derive inter-node data mappings for controlling distributed-memory parallelization across the nodes of a cluster, and intra-node data mappings for extracting shared-memory parallelism within nodes. Additional mechanisms are proposed for specifying inter-and intra-node data mappings explicitly, for controlling specific SM parallelization issues, and for integrating OpenMP routines in HPF applications. The proposed features are being realized within the ADAPTOR and VFC compiler. The parallelization strategy for clusters of SMPs adopted by these compilers is discussed as well as a hybrid-parallel execution model based on a combination of MPI and OpenMP. Early experimental results indicate the effectiveness of the proposed features.
2009 Congress on Services - I, 2009
Grid computing emerged as a vision for a new computing infrastructure that aims to make computing... more Grid computing emerged as a vision for a new computing infrastructure that aims to make computing resources available as easily as electric power through the power grid. Enabling seamless access to globally distributed IT resources allows dispersed users to tackle large-scale problems in science and engineering in unprecedented ways. The rapid development of Grid computing also encouraged standardization, which led to the adoption of a service-oriented paradigm and an increasing use of commercial Web services technologies. Along these lines, service-level agreements and Quality of Service are essential characteristics of the Grid and specifically mandatory for Gridenabling complex applications from certain domains such as the health sector. This PhD thesis aims to contribute to the development of Grid technologies by proposing a Grid environment with support for Quality of Service. The proposed environment comprises a secure service-oriented Grid infrastructure based on standard Web services technologies which enables the on-demand provision of native HPC applications as Grid services in an automated way and subject to user-defined QoS constraints. v vi Contents Contents vii List of Figures xi List of Tables xiii List of Listings xv Related Work 159 9 Conclusion 165 Bibliography 167 Curriculum Vitae 179 x I would like to express many thanks to Tina Csaicsich, who provided her superior English skills as prospective interpreter to proofread this thesis. Finally, I would like to express deeply my gratefulness for my brother Christian. We both had a hard time upon the sudden death of our mother, but he helped me to keep on track with my scientific work, while on the other hand he also motivated me to have a go at new activities on leisure time like climbing or diving.
Lecture Notes in Computer Science, 2005
... The execution of the SPECT service methods can be automated using a workflow language and a w... more ... The execution of the SPECT service methods can be automated using a workflow language and a workflow execution engine. A corresponding BPEL workflow 1 is presented in Figure 2. First, the input data is uploaded to the service using the invoke activity named upload. ...
Fifth IEEE/ACM International Workshop on Grid Computing
Lecture Notes in Computer Science, 2012
GPUs clusters are becoming widespread HPC platforms. Exploiting them is however challenging, as t... more GPUs clusters are becoming widespread HPC platforms. Exploiting them is however challenging, as this requires two separate paradigms (MPI and CUDA or OpenCL) and careful load balancing due to node heterogeneity. Current paradigms usually either limit themselves to offload part of the computation and leave CPUs idle, or require static CPU/GPU work partitioning. We thus have previously proposed StarPU, a runtime system able to dynamically scheduling tasks within a single heterogeneous node. We show how we extended the task paradigm of StarPU with MPI to easily map the task graph on MPI clusters and automatically benefit from optimized execution.
Lecture Notes in Computer Science, 2012
With the increasing architectural diversity of many-core architectures the challenges of parallel... more With the increasing architectural diversity of many-core architectures the challenges of parallel programming and code portability will sharply rise. The EU project PEPPHER addresses these issues with a component-based approach to application development on top of a taskparallel execution model. Central to this approach are multi-architectural components which encapsulate different implementation variants of application functionality tailored for different core types. An intelligent runtime system selects and dynamically schedules component implementation variants for efficient parallel execution on heterogeneous many-core architectures. On top of this model we have developed language, compiler and runtime support for a specific class of applications that can be expressed using the pipeline pattern. We propose C/C++ language annotations for specifying pipeline patterns and describe the associated compilation and runtime infrastructure. Experimental results indicate that with our high-level approach performance comparable to manual parallelization can be achieved.
Lecture Notes in Computer Science, 2011
Managing and sharing data and information related to the understanding of human disease processes... more Managing and sharing data and information related to the understanding of human disease processes represents a huge challenge for medical researchers and clinicians. The European @neurIST project addressed this challenge by developing an advanced service-oriented IT infrastructure for the management of all processes linked to research, diagnosis and treatment development for complex and multi-factorial diseases. The @neurIST infrastructure relies on a service-oriented architecture comprising data services and compute services encompassing data repositories, computational analysis services and information systems handling multi-scale, multi-modal information at distributed sites. The @neurIST data services infrastructure offers tools based on Grid and Cloud technologies for constructing virtual data sources that enable transparent access to and integration of distributed heterogeneous biomedical and clinical data sources. Pre-configured virtual data nodes and a virtual mediation node ensure an easy distribution, hosting and deployment of data services by utilizing latest Cloud computing technologies.
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2013
Performance analysis and tuning is an important step in programming multicore-and manycore-based ... more Performance analysis and tuning is an important step in programming multicore-and manycore-based parallel architectures. While there are several tools to help developers analyze application performance, no tool provides recommendations about how to tune the code. The AutoTune project is extending Periscope, an automatic distributed performance analysis tool developed by Technische Universität München, with plugins for performance and energy efficiency tuning. The resulting Periscope Tuning Framework will be able to tune serial and parallel codes for multicore and manycore architectures and return tuning recommendations that can be integrated into the production version of the code. The whole tuning process-both performance analysis and tuning-will be performed automatically during a single run of the application.
Grid Computing, 2004
Grid workflow applications are emerging as one of the most interesting programming models for the... more Grid workflow applications are emerging as one of the most interesting programming models for the Grid. In this paper we present a novel approach for graphically modeling and describing Grid workflow applications based on the Unified Modeling Language (UML). Our approach provides a graphic representation of Grid applications based on a widely accepted standard (UML) that is more amenable than pure textual-oriented specifications (such as XML). We describe some of the most important elements for modeling control flow, data flow, synchronization, notification, and constraints. We also introduce new features that have not been included by other Grid workflow specification languages which includes broadcast and parallel loops. Our UML-based graphical editor Teuta provides the corresponding tool support. We demonstrate our approach by describing a UML-based Grid workflow model for an advanced 3D medical image reconstruction application.
2012 Design, Automation & Test in Europe Conference & Exhibition (DATE), 2012
We discuss three complementary approaches that can provide both portability and an increased leve... more We discuss three complementary approaches that can provide both portability and an increased level of abstraction for the programming of heterogeneous multicore systems. Together, these approaches also support performance portability, as currently investigated in the EU FP7 project PEPPHER. In particular, we consider (1) a library-based approach, here represented by the integration of the SkePU C++ skeleton programming library with the StarPU runtime system for dynamic scheduling and dynamic selection of suitable execution units for parallel tasks; (2) a language-based approach, here represented by the Offload-C++ high-level language extensions and Offload compiler to generate platform-specific code; and (3) a componentbased approach, specifically the PEPPHER component system for annotating user-level application components with performance metadata, thereby preparing them for performance-aware composition. We discuss the strengths and weaknesses of these approaches and show how they could complement each other in an integrational programming framework for heterogeneous multicore systems.
2012 SC Companion: High Performance Computing, Networking Storage and Analysis, 2012
ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhan... more ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhance performance portability and programmability of heterogeneous multi-core systems. Its primary target is single-node heterogeneous systems, where several CPU cores are supported by accelerators such as GPUs. This poster briefly surveys the PEPPHER framework for singlenode systems, and elaborates on the prospectives for leveraging the PEPPHER approach to generate performance-portable code for heterogeneous multi-node systems.
2012 SC Companion: High Performance Computing, Networking Storage and Analysis, 2012
ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhan... more ABSTRACT PEPPHER is a 3-year EU FP7 project that develops a novel approach and framework to enhance performance portability and programmability of heterogeneous multi-core systems. Its primary target is single-node heterogeneous systems, where several CPU cores are supported by accelerators such as GPUs. This poster briefly surveys the PEPPHER framework for single-node systems, and elaborates on the prospectives for leveraging the PEPPHER approach to generate performance-portable code for heterogeneous multi-node systems.
Parallel Processing Letters, 2006
In this paper we study different parallel implementations of the Savings based Ant System algorit... more In this paper we study different parallel implementations of the Savings based Ant System algorithm developed for solving the Vehicle Routing Problem. We analyze the effects of low-level parallelization, multiple search strategies and domain decomposition approaches. For the different strategies speedup and efficiency as well as solution quality are reported. Different information exchanges are analyzed within the multiple search strategies.