Skip to main content
ACM International Conference Proceeding Series2 September 2019, Article number a16th Conference on the Engineering of Computer-Based Systems, ECBS 2019; Bucharest; Romania; 2 September 2019 through 3 September 2019; Code 154750

A protein structure prediction program architecture based on a software transactional memory(Conference Paper)

  Save all to author list
  • aUniversity of Novi Sad, Faculty of Technical Sciences Trg, Dositeja Obradovica 6, Novi Sad, Serbia
  • bDepartment of Computer Science, Jerusalem College of Technology, Jerusalem, 9372115, Israel
  • cDepartment of Bioinformatics, Jerusalem College of Technology, Jerusalem, 9372115, Israel

Abstract

As an alternative for traditional lock-based synchronization mechanisms Software Transactional Memories (STMs) are dominantly evaluated on synthetic benchmarks and simplified applications rather than on real-world applications. So far, only a few notable examples for C++ and Java languages have been published. In this paper, an STM-based architecture of a Protein Structure Prediction (PSP) program for the Python language is presented. This STM-based architecture aims both, to enhance the existing barrier-based process synchronization implemented in the original version of that PSP program, and to provide the transactional-memory-based means for its future upgrade. The analysis of the performance metrics, such as the system execution time and the system scalability, is given too. The PSP program used here is DEEPSAM (Diffusion Equation Evolutionary Programming Simulated Annealing Method) which is implemented in the Python and Fortran programing languages. The key component which supports transactional execution is our PSTM (Python Software Transactional Memory) Python framework. The experimental results are evaluated against two peptides, namely enkephalin and 2mq5. The preliminary results show that the new PSTM-based version of DEEPSAM has comparable execution time relative to the original version, and that its architecture scales very well. Also, the results of this study did not reveal any architectural bottleneck. Considering that the original version of DEEPSAM already execute computation in parallel, gaining significant improvements regarding execution times was not expected. In order to comprehend PSTM’s impact on a complex package such as DEEPSAM, regarding execution times, it must be run on a many-core processor capable of running dozens processes in parallel. © 2019 Association for Computing Machinery.

Author keywords

DEEPSAMEvolutionary programmingPSTMPythonSoftware transactional memory

Indexed keywords

Engineering controlled terms:Application programsBenchmarkingEvolutionary algorithmsMemory architectureProteinsSimulated annealingStorage allocation (computer)
Engineering uncontrolled termsDEEPSAMLock-based synchronizationProcess synchronizationProtein structure predictionPSTMPythonSimulated annealing methodSoftware transactional memory
Engineering main heading:C++ (programming language)

Funding details

Funding sponsor Funding number Acronym
Ministarstvo Prosvete, Nauke i Tehnološkog RazvojaIII-44009-2MPNTR
  • 1

    This work was partially supported by the Ministry of Education, Science and Technological Development of the Republic of Serbia, under grant under Grant III-44009-2.

  • ISBN: 978-145037636-5
  • Source Type: Conference Proceeding
  • Original language: English
  • DOI: 10.1145/3352700.3352701
  • Document Type: Conference Paper
  • Volume Editors: Dascalu M.-I.,Rysavy O.,Bodea C.-.N.,Goldstein M.,Dukic M.
  • Publisher: Association for Computing Machinery

  Kordic, B.;
© Copyright 2022 Elsevier B.V., All rights reserved.

Cited by 2 documents

Popovic, M. , Popovic, M. , Kordic, B.
PSTM Transaction Scheduler Verification Based on CSP and Testing
(2021) ACM International Conference Proceeding Series
Popovic, M. , Basicevic, I. , Djukic, M.
Fault Tolerant Distributed Python Software Transactional Memory
(2020) Advances in Electrical and Computer Engineering
View details of all 2 citations
{"topic":{"name":"Transactional Memory; Storage Allocation (Computer); Parallel Programming","id":9595,"uri":"Topic/9595","prominencePercentile":50.31553,"prominencePercentileString":"50.316","overallScholarlyOutput":0},"dig":"2388eb06d6f9c7ffb19bec931b140ecb1a9b2ca657215ba2f0b1d4f6a9a523a0"}

SciVal Topic Prominence

Topic:
Prominence percentile: