Skip to content

Commit 571677a

Browse files
committed
Update README.md.
1 parent 54e99ea commit 571677a

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ The Synch framework provides a large set of highly efficient concurrent data-str
2020
In terms of concurrent queues, the Synch framework provides the SimQueue [2,10] wait-free queue implementation that is based on the PSim combining object, the CC-Queue, DSM-Queue and H-Queue [1] blocking queue implementations based on the CC-Synch, DSM-Synch and H-Synch combining objects. A blocking queue implementation based on the CLH locks [5,6] and the lock-free implementation presented in [7] are also provided.
2121
Since v2.4.0, the Synch framework provides the LCRQ [11,12] queue implementation. In terms of concurrent stacks, the Synch framework provides the SimStack [2,10] wait-free stack implementation that is based on the PSim combining object, the CC-Stack, DSM-Stack and H-Stack [1] blocking stack implementations based on the CC-Synch, DSM-Synch and H-Synch combining objects. Moreover, the lock-free stack implementation of [8] and the blocking implementation based on the CLH locks [5,6] are provided. The Synch framework also provides concurrent queue and stacks implementations (i.e. OsciQueue and OsciStack implementations) that achieve very high performance using user-level threads [3]. Since v3.1.0, the Synch framework provides stack and queue implementations (i.e. FC-Stack and FC-Queue) based on the implementation of flat-combining provided by the Synch framework.
2222

23-
Since version 3.4.0, the Synch framework includes three array-based concurrent heap implementations: CC-Heap, DSM-Heap, and H-Heap. These implementations are based on the CC-Synch, DSM-Synch and H-Synch [1] combining objects, respectively. Currently, the CC-Heap, DSM-Heap and H-Heap do not release any memory when the heap shrinks. However, support for releasing memory during heap shrinking is planned in future releases.
23+
Since version 3.4.0, the Synch framework includes four array-based concurrent heap implementations: CC-Heap, DSM-Heap, H-Heap and FC-Heap. CC-Heap, DSM-Heap and H-Heap are based on the CC-Synch, DSM-Synch and H-Synch [1] combining objects, while FC-Heap is based on flat-combining [14]. Currently, all the provided heap implementations do not release any memory when the heap shrinks. However, support for releasing memory during heap shrinking is planned in future releases.
2424

2525
Furthermore, the Synch framework provides a few scalable lock implementations, i.e. the MCS queue-lock presented in [9] and the CLH queue-lock presented in [5,6]. Finally, the Synch framework provides two example-implementations of concurrent hash-tables. More specifically, it provides a simple implementation based on CLH queue-locks [5,6] and an implementation based on the DSM-Synch [1] combining technique.
2626

@@ -32,7 +32,8 @@ The following table presents a summary of the concurrent data-structures offered
3232
| | Osci [3] |
3333
| | Oyama [4] |
3434
| | FC: a new implementation of flat-combining [14] |
35-
| Concurrent Heaps | CC-Heap, DSM-Heap and H-Heap based on the techniques of [1] |
35+
| Concurrent Heaps | CC-Heap, DSM-Heap and H-Heap based on the techniques of [1] |
36+
| | FC-Heap based on flat-combining [14] |
3637
| Concurrent Queues | CC-Queue, DSM-Queue and H-Queue [1] |
3738
| | SimQueue [2,10] |
3839
| | OsciQueue [3] |
@@ -187,6 +188,7 @@ The following table shows the memory reclamation characteristics of the provided
187188
| | LF-Stack [8] | Hazard Pointers (not provided by Synch) |
188189
| | FC-Stack [14] | Supported |
189190
| Concurrent Heaps | CC-Heap, DSM-Heap and H-Heap | Not supported yet |
191+
| | FC-Heap | Not supported yet |
190192

191193
## Memory reclamation limitations
192194

0 commit comments

Comments
 (0)