PSTM Transaction Scheduler Verification Based on CSP and Testing

05/15/2023
by   Miroslav Popovic, et al.
0

Many online transaction scheduler architectures and algorithms for various software transactional memories have been designed in order to maintain good system performance even for high concurrency workloads. Most of these algorithms were directly implemented in a target programming language, and experimentally evaluated, without theoretical proofs of correctness and analysis of their performance. Only a small number of these algorithms were modeled using formal methods, such as process algebra CSP, in order to verify that they satisfy properties such as deadlock-freeness and starvation-freeness. However, as this paper shows, using solely formal methods has its disadvantages, too. In this paper, we first analyze the previous CSP model of PSTM transaction scheduler by comparing the model checker PAT results with the manually derived expected results, for the given test workloads. Next, according to the results of this analysis, we correct and extend the CSP model. Finally, based on PAT results for the new CSP model, we analyze the performance of PSTM online transaction scheduling algorithms from the perspective of makespan, number of aborts, and throughput. Based on our findings, we may conclude that for the complete formal verification of trustworthy software, both formal verification and it's testing must be jointly used.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/05/2018

Formally Verifying WARP-V, an Open-Source TL-Verilog RISC-V Core Generator

Timing-abstract and transaction-level design using TL-Verilog have shown...
research
07/16/2023

Formal Verification Of A Shopping Basket Application Model Using PRISM

Formal verification is at the heart of model validation and correctness....
research
01/13/2022

Robustness against Read Committed for Transaction Templates with Functional Constraints

The popular isolation level Multiversion Read Committed (RC) trades some...
research
10/14/2020

LCM is well implemented CbO: study of LCM from FCA point of view

LCM is an algorithm for enumeration of frequent closed itemsets in trans...
research
03/07/2019

Scheduling OLTP Transactions via Machine Learning

Current main memory database system architectures are still challenged b...
research
05/15/2018

Borrowing Safe Pointers from Rust in SPARK

In the field of deductive software verification, programs with pointers ...
research
11/05/2018

Top-Down Transaction-Level Design with TL-Verilog

Transaction-Level Verilog (TL-Verilog) is an emerging extension to Syste...

Please sign up or login with your details

Forgot password? Click here to reset