BSD Ports

devel/libcds 2.3.3.102_1 FreeBSD

C++ library of Concurrent Data Structures

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
Last update
Commit
0b23c55e5d
License
BSL
Categories
devel
Package size
380.3 KiB, 4616.3 KiB installed

Description

The Concurrent Data Structures (CDS) library is a collection of concurrent containers that don't require external (manual) synchronization for shared access, and safe memory reclamation (SMR) algorithms like Hazard Pointer and user-space RCU that is used as an epoch-based SMR.

CDS is mostly header-only template library. Only SMR core implementation is segregated to .so file.

The library contains the implementations of the following containers: * lock-free stack with optional elimination support * several algo for lock-free queue, including classic Michael & Scott algorithm and its derivatives, the flat combining queue, the segmented queue. * several implementation of unordered set/map - lock-free and fine-grained lock-based * flat-combining technique * lock-free skip-list * lock-free FeldmanHashMap/Set Multi-Level Array Hash with thread-safe bidirectional iterator support * Bronson's et al algorithm for fine-grained lock-based AVL tree

Generally, each container has an intrusive and non-intrusive (STL-like) version belonging to cds::intrusive and cds::container namespace respectively.

In the other systems

SystemPortVersion
FreeBSDdevel/libcds2.3.3.102_1
DragonFlydevel/libcds2.3.3.102_1

Install

Binary package:

pkg install libcds

From the ports tree:

cd /usr/ports/devel/libcds/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	libcds>0:devel/libcds
LIB_DEPENDS=	libcds.so:devel/libcds

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest2.3.3.102_12.3.3.102_12.3.3.102_12.3.3.102_12.3.3.102_1
FreeBSD:14:quarterly2.3.3.102_12.3.3.102_1n/a2.3.3.102_12.3.3.102_1
FreeBSD:15:latest2.3.3.102_12.3.3.102_1n/a2.3.3.102_12.3.3.102_1
FreeBSD:15:quarterly2.3.3.102_12.3.3.102_1n/an/an/a
FreeBSD:16:latest2.3.3.102_12.3.3.102_1n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

The Makefile names none itself; they come from USES and USE_*.

The full lists below include those, and their dependencies in turn.

Build dependencies 15

No port depends on this one.

Configuration

No options to configure.

USES
cmake:testing compiler:c++11-lang
Service scripts
none

Files

pkg-plist 360
  • include/cds/algo/atomic.h
  • include/cds/algo/backoff_strategy.h
  • include/cds/algo/base.h
  • include/cds/algo/bit_reversal.h
  • include/cds/algo/bitop.h
  • include/cds/algo/elimination.h
  • include/cds/algo/elimination_opt.h
  • include/cds/algo/elimination_tls.h
  • include/cds/algo/flat_combining.h
  • include/cds/algo/flat_combining/defs.h
  • include/cds/algo/flat_combining/kernel.h
  • include/cds/algo/flat_combining/wait_strategy.h
  • include/cds/algo/int_algo.h
  • include/cds/algo/split_bitstring.h
  • include/cds/compiler/backoff.h
  • include/cds/compiler/bitop.h
  • include/cds/compiler/clang/defs.h
  • include/cds/compiler/cxx11_atomic.h
  • include/cds/compiler/defs.h
  • include/cds/compiler/feature_tsan.h
  • include/cds/compiler/gcc/amd64/backoff.h
  • include/cds/compiler/gcc/amd64/bitop.h
  • include/cds/compiler/gcc/amd64/cxx11_atomic.h
  • include/cds/compiler/gcc/arm7/backoff.h
  • include/cds/compiler/gcc/arm8/backoff.h
  • include/cds/compiler/gcc/compiler_barriers.h
  • include/cds/compiler/gcc/compiler_macro.h
  • include/cds/compiler/gcc/defs.h
  • include/cds/compiler/gcc/ia64/backoff.h
  • include/cds/compiler/gcc/ia64/bitop.h
  • include/cds/compiler/gcc/ia64/cxx11_atomic.h
  • include/cds/compiler/gcc/ppc64/backoff.h
  • include/cds/compiler/gcc/ppc64/bitop.h
  • include/cds/compiler/gcc/sparc/backoff.h
  • include/cds/compiler/gcc/sparc/bitop.h
  • include/cds/compiler/gcc/sparc/cxx11_atomic.h
  • include/cds/compiler/gcc/x86/backoff.h
  • include/cds/compiler/gcc/x86/bitop.h
  • include/cds/compiler/gcc/x86/cxx11_atomic.h
  • include/cds/compiler/gcc/x86/cxx11_atomic32.h
  • include/cds/compiler/icl/compiler_barriers.h
  • include/cds/compiler/icl/defs.h
  • include/cds/compiler/vc/amd64/backoff.h
  • include/cds/compiler/vc/amd64/bitop.h
  • include/cds/compiler/vc/amd64/cxx11_atomic.h
  • include/cds/compiler/vc/compiler_barriers.h
  • include/cds/compiler/vc/defs.h
  • include/cds/compiler/vc/x86/backoff.h
  • include/cds/compiler/vc/x86/bitop.h
  • include/cds/compiler/vc/x86/cxx11_atomic.h
  • include/cds/container/basket_queue.h
  • include/cds/container/bronson_avltree_map_rcu.h
  • include/cds/container/cuckoo_map.h
  • include/cds/container/cuckoo_set.h
  • include/cds/container/details/base.h
  • include/cds/container/details/bronson_avltree_base.h
  • include/cds/container/details/cuckoo_base.h
  • include/cds/container/details/ellen_bintree_base.h
  • include/cds/container/details/feldman_hashmap_base.h
  • include/cds/container/details/feldman_hashset_base.h
  • include/cds/container/details/guarded_ptr_cast.h
  • include/cds/container/details/iterable_list_base.h
  • include/cds/container/details/lazy_list_base.h
  • include/cds/container/details/make_iterable_kvlist.h
  • include/cds/container/details/make_iterable_list.h
  • include/cds/container/details/make_lazy_kvlist.h
  • include/cds/container/details/make_lazy_list.h
  • include/cds/container/details/make_michael_kvlist.h
  • include/cds/container/details/make_michael_list.h
  • include/cds/container/details/make_skip_list_map.h
  • include/cds/container/details/make_skip_list_set.h
  • include/cds/container/details/make_split_list_set.h
  • include/cds/container/details/make_split_list_set_iterable_list.h
  • include/cds/container/details/make_split_list_set_lazy_list.h
  • include/cds/container/details/make_split_list_set_michael_list.h
  • include/cds/container/details/michael_list_base.h
  • include/cds/container/details/michael_map_base.h
  • include/cds/container/details/michael_set_base.h
  • include/cds/container/details/skip_list_base.h
  • include/cds/container/details/split_list_base.h
  • include/cds/container/ellen_bintree_map_dhp.h
  • include/cds/container/ellen_bintree_map_hp.h
  • include/cds/container/ellen_bintree_map_rcu.h
  • include/cds/container/ellen_bintree_set_dhp.h
  • include/cds/container/ellen_bintree_set_hp.h
  • include/cds/container/ellen_bintree_set_rcu.h
  • include/cds/container/fcdeque.h
  • include/cds/container/fcpriority_queue.h
  • include/cds/container/fcqueue.h
  • include/cds/container/fcstack.h
  • include/cds/container/feldman_hashmap_dhp.h
  • include/cds/container/feldman_hashmap_hp.h
  • include/cds/container/feldman_hashmap_rcu.h
  • include/cds/container/feldman_hashset_dhp.h
  • include/cds/container/feldman_hashset_hp.h
  • include/cds/container/feldman_hashset_rcu.h
  • include/cds/container/impl/bronson_avltree_map_rcu.h
  • include/cds/container/impl/ellen_bintree_map.h
  • include/cds/container/impl/ellen_bintree_set.h
  • include/cds/container/impl/feldman_hashmap.h

The first 100 are listed.

distinfo 1
FileSizeSHA256
khizmax-libcds-v2.3.3-102-g9985d2a8_GH0.tar.gz1.466062e+069ea263bb20f47e36a0db8f0f891f4da30706378774ab53c09b5dc9763ff2afa0

Commit history 1

DateCommitCreditsLog message
0b23c55e5d Yuri Victorovich */*: CMake 4.5 compatibility
PR: 295319