Parallel and distributed computing models on a graphics processing unit to accelerate simulation of membrane systems |
| |
Affiliation: | 1. Department of Biomedicine and Prevention, University of Rome Tor Vergata, School of Medicine, Rome, Italy;2. Department of Pediatrics, University of Chieti, School of Medicine, Chieti, Italy;1. Department of Electronic and Information Engineering, Harbin Institute of Technology, Shenzhen Graduate School, Shenzhen, China;2. Department of Electronic Engineering, City University of Hong Kong, Hong Kong, China;1. Faculty of Informatics, University of Debrecen, Pf. 12, H-4010 Debrecen, Hungary;2. Institut für Mathematik, Universität Zürich, Winterthurerstrasse 190, CH-8057 Zürich, Switzerland;3. School of Mathematical Sciences, Beijing Normal University, Beijing 100875, People׳s Republic of China;4. Bolyai Institute, University of Szeged, Aradi vértanúk tere 1, H-6720 Szeged, Hungary;1. Uganda Industrial Research Institute, Technology Development Centre, P.O Box 7086, Kampala, Uganda;2. University of Georgia, College of Engineering, Driftmier Engineering Center, Athens, GA 30602, USA;3. Makerere University, College of Agricultural & Environmental Sciences, School of Food Technology, Nutrition & Bioengineering, P.O. Box 7062, Kampala, Uganda |
| |
Abstract: | Membrane systems are parallel distributed computing models that are used in a wide variety of areas. Use of a sequential machine to simulate membrane systems loses the advantage of parallelism in Membrane Computing. In this paper, an innovative classification algorithm based on a weighted network is introduced. Two new algorithms have been proposed for simulating membrane systems models on a Graphics Processing Unit (GPU). Communication and synchronization between threads and thread blocks in a GPU are time-consuming processes. In previous studies, dependent objects were assigned to different threads. This increases the need for communication between threads, and as a result, performance decreases. In previous studies, dependent membranes have also been assigned to different thread blocks, requiring inter-block communications and decreasing performance. The speedup of the proposed algorithm on a GPU that classifies dependent objects using a sequential approach, for example with 512 objects per membrane, was 82×, while for the previous approach (Algorithm 1), it was 8.2×. For a membrane system with high dependency among membranes, the speedup of the second proposed algorithm (Algorithm 3) was 12×, while for the previous approach (Algorithm 1) and the first proposed algorithm (Algorithm 2) that assign each membrane to one thread block, it was 1.8×. |
| |
Keywords: | Membrane Computing Graphics processing unit Membrane systems Distributed computing Parallel processing Weighted network |
本文献已被 ScienceDirect 等数据库收录! |
|