BSD Ports

net/ucx 1.22.0_4 FreeBSD

Unified Communication X framework (UCX)

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
Last update
Commit
083e241b2d
License
BSD3CLAUSE
Categories
net
Package size
1760.4 KiB, 9654.7 KiB installed

Description

UCX (Unified Communication X) is a high-performance communication framework for modern HPC and data-intensive workloads. It provides low-latency, high-bandwidth messaging and remote-memory-access primitives across a wide range of transports, including shared memory, TCP/IP, and RDMA-capable interconnects such as InfiniBand and RoCE (when supported by the platform).

UCX is commonly used as a communication substrate for MPI, OpenSHMEM, and other distributed runtimes. It exposes a set of layered APIs (UCP/UCT/UCS/UCM) to balance portability and performance while enabling optimized transport selection, rendezvous protocols, and progress models.

Install

Binary package:

pkg install ucx

From the ports tree:

cd /usr/ports/net/ucx/ && make install clean

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

RUN_DEPENDS=	ucx>0:net/ucx
LIB_DEPENDS=	libucm.so:net/ucx

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:latest1.22.0_41.22.0_4---
FreeBSD:14:quarterly1.22.0_41.22.0_4n/a--
FreeBSD:15:latest1.22.0_41.22.0_4n/a--
FreeBSD:15:quarterly1.22.0_41.22.0_4n/an/an/a
FreeBSD:16:latest1.22.0_41.22.0_4n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

As this port's Makefile names them.

Build 2

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

Build dependencies 13
Run dependencies 1

No port depends on this one.

Configuration

Options name: net_ucx

OptionDefaultDescription
DOCSoffBuild and/or install documentation
EXAMPLESoffBuild and/or install examples
FUSEonFUSE (Filesystem in Userspace) support
IBVERBSoffEnable InfiniBand/RDMA (verbs) transport
IODEMOonInstall io_demo test application
PERFTESTonInstall ucx_perftest benchmarks
UMADoffBuild/install perftest MAD plugin (umad)
USES
autoreconf dos2unix gmake libtool pkgconfig
Service scripts
none

Files

pkg-plist 139
  • bin/io_demo
  • bin/ucx_info
  • bin/ucx_perftest
  • bin/ucx_perftest_daemon
  • bin/ucx_read_profile
  • bin/ucx_vfs
  • @sample etc/ucx/ucx.conf.sample
  • include/ucm/api/ucm.h
  • include/ucp/api/ucp.h
  • include/ucp/api/ucp_compat.h
  • include/ucp/api/ucp_def.h
  • include/ucp/api/ucp_version.h
  • include/ucp/api/device/ucp_device_impl.h
  • include/ucp/api/device/ucp_device_types.h
  • include/ucp/api/device/ucp_host.h
  • include/ucs/sys/device_code.h
  • include/uct/api/device/uct_device_impl.h
  • include/uct/api/device/uct_device_types.h
  • include/ucs/algorithm/crc.h
  • include/ucs/algorithm/qsort_r.h
  • include/ucs/algorithm/string_distance.h
  • include/ucs/arch/aarch64/bitops.h
  • include/ucs/arch/aarch64/global_opts.h
  • include/ucs/arch/atomic.h
  • include/ucs/arch/bitops.h
  • include/ucs/arch/generic/atomic.h
  • include/ucs/arch/global_opts.h
  • include/ucs/arch/ppc64/bitops.h
  • include/ucs/arch/ppc64/global_opts.h
  • include/ucs/arch/rv64/bitops.h
  • include/ucs/arch/rv64/global_opts.h
  • include/ucs/arch/x86_64/atomic.h
  • include/ucs/arch/x86_64/bitops.h
  • include/ucs/arch/x86_64/global_opts.h
  • include/ucs/async/async_fwd.h
  • include/ucs/config/global_opts.h
  • include/ucs/config/ini.h
  • include/ucs/config/parser.h
  • include/ucs/config/types.h
  • include/ucs/datastruct/array.h
  • include/ucs/datastruct/callbackq.h
  • include/ucs/datastruct/callbackq_compat.h
  • include/ucs/datastruct/hlist.h
  • include/ucs/datastruct/khash.h
  • include/ucs/datastruct/linear_func.h
  • include/ucs/datastruct/list.h
  • include/ucs/datastruct/mpool.h
  • include/ucs/datastruct/mpool_set.h
  • include/ucs/datastruct/pgtable.h
  • include/ucs/datastruct/piecewise_func.h
  • include/ucs/datastruct/queue_types.h
  • include/ucs/datastruct/strided_alloc.h
  • include/ucs/datastruct/string_buffer.h
  • include/ucs/datastruct/string_set.h
  • include/ucs/debug/debug.h
  • include/ucs/debug/log_def.h
  • include/ucs/debug/memtrack.h
  • include/ucs/memory/memory_type.h
  • include/ucs/memory/memtype_cache.h
  • include/ucs/memory/numa.h
  • include/ucs/memory/rcache.h
  • include/ucs/profile/profile_defs.h
  • include/ucs/profile/profile_off.h
  • include/ucs/profile/profile_on.h
  • include/ucs/stats/libstats.h
  • include/ucs/stats/stats_fwd.h
  • include/ucs/sys/compiler_def.h
  • include/ucs/sys/event_set.h
  • include/ucs/sys/math.h
  • include/ucs/sys/preprocessor.h
  • include/ucs/sys/sock.h
  • include/ucs/sys/string.h
  • include/ucs/sys/stubs.h
  • include/ucs/sys/topo/base/topo.h
  • include/ucs/sys/uid.h
  • include/ucs/time/time_def.h
  • include/ucs/type/class.h
  • include/ucs/type/cpu_set.h
  • include/ucs/type/init_once.h
  • include/ucs/type/param.h
  • include/ucs/type/spinlock.h
  • include/ucs/type/status.h
  • include/ucs/type/thread_mode.h
  • include/ucs/vfs/base/vfs_cb.h
  • include/ucs/vfs/base/vfs_obj.h
  • include/uct/api/tl.h
  • include/uct/api/uct.h
  • include/uct/api/uct_def.h
  • include/uct/api/version.h
  • lib/cmake/ucx/ucx-config-version.cmake
  • lib/cmake/ucx/ucx-config.cmake
  • lib/cmake/ucx/ucx-targets.cmake
  • lib/libucm.a
  • lib/libucm.so
  • lib/libucm.so.0
  • lib/libucm.so.0.0.0
  • lib/libucp.a
  • lib/libucp.so
  • lib/libucp.so.0
  • lib/libucp.so.0.0.0

The first 100 are listed.

distinfo 2
FileSizeSHA256
ucx-1.22.0.tar.gz3.689879e+06258941cddd14ca60d38c0d31b9b09ec1052c901086841011a498da8b55a3cb24
f49b2479db46.patch6280de0261f79aead02a7a2bb7e866df0b3483fb384ea06986949ff332e79f5aaab
Master sites 1
  • https://github.com/openucx/ucx/releases/download/v1.22.0/

Commit history 5

DateCommitCreditsLog message
083e241b2d Piotr Kubaj net/ucx: fix build on powerpc64le
Backport upstream f49b2479db46, which includes ucs/sys/math.h for UCS_INFINITY in ucs/time/time.h. On ppc64 nothing else pulls it in.
c6ba817b1a Generic Rikka net/ucx: Update 1.20.1 => 1.22.0
Changelog: https://github.com/openucx/ucx/releases/tag/v1.21.0 https://github.com/openucx/ucx/releases/tag/v1.22.0 PR: 298500 Sponsored by: UNIS Labs (vvd, commit patch)
c596dc64da GenericRikka net/ucx: Improve FreeBSD ucx_vfs support
- replace Linux-specific fusermount3 with mount_fusefs/umount - use FreeBSD-compatible FUSE capability detection - fix UNIX socket ancillary data handling for SCM_RIGHTS and peer credentials on FreeBSD This allows ucx_vfs to start and communicate correctly on FreeBSD. PR: 297093 Reported-by: Laurent Chardon <[email protected]> Reviewed by: thierry (mentor) Approved by: thierry (mentor)
05fc7541e8 Laurent Chardon net/ucx: Fix VFS inotify watch on FreeBSD
IN_IGNORED is generated when a watch is removed and should not be included in the inotify_add_watch request mask. FreeBSD rejects that mask with EINVAL. Remove the FreeBSD error workaround, which returned UCS_OK and caused the VFS thread to retry in a tight loop. PR: 296182 Reported by: thierry Reviewed by: thierry (mentor), Generic Rikka <[email protected]> (maintainer) Tested by: thierry (mentor), Generic Rikka <[email protected]> (maintainer) Approved by: thierry (mentor)
2d42613336 GenericRikka net/ucx: Guard Linux specific netlink implementation + fixups
PR: 296136