Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Scheduling weakly consistent C concurrency for reconfigurable hardware
Ramanathan N., Wickerson J., Constantinides G. IEEE Transactions on Computers67 (7):992-1006,2018.Type:Article
Date Reviewed: Aug 28 2018

Since its innovation, harnessing the untethered power of multi-core processors has motivated research around the world. In the programming language domain, imposing concurrency via high-level synthesis (HLS) is a famous technique. The HLS reordering and scheduling principles applied in single-core systems guarantee the correctness of concurrent task execution; however, this is not sufficient in a multi-core context. In this paper, based on fine-grained atomic operations and lock-free algorithms, the authors try to extend the single-core HLS scheduling algorithms for multi-core platforms.

The existing scheduling constraints, developed for single cores, do not sufficiently maintain concurrency consistency for multi-core systems. Additional constraints concerned with intra-thread dependencies should be applied to provide the correctness of concurrent operation execution. The consistent view of shared memory is also an issue. The authors propose methods to mitigate the rigidness of sequential consistency in a C atomics platform with fewer dependencies. Meanwhile, constraints are imposed among the memory operations to enable loop pipelining.

With a literature review, the authors explain HLS applications in multi-threaded programs; dissect the HLS scheduling mechanism by a control/data flow graph (CDFG); focus on the constraints that capture data dependencies on the execution; and demonstrate mechanisms for synthesizing multi-thread programs using examples and evaluations of their unexpected behaviors. Their proposal extends HLS scheduling to support both sequential and weak consistency. Their assessment uses the Alloy environment for a “two-threaded message-passing channel and a single-producer, single-consumer (SPSC) circular buffer.”

This great paper offers a detailed explanation of parallelism using HLS. However, when leaning on the Alloy model checker instead of algebraic methods, how reliable is it?

Reviewer:  Mohammad Sadegh Kayhani Pirdehi Review #: CR146219 (1811-0565)
Bookmark and Share
  Featured Reviewer  
 
Instruction Set Interpretation (B.1.5 ... )
 
 
Concurrency (D.4.1 ... )
 
 
Hardware (K.2 ... )
 
 
Pipeline (B.2.1 ... )
 
 
Standards (C.2.6 ... )
 
Would you recommend this review?
yes
no

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy