fi_info(1) Libfabric v2.6.0 fi_info(1)

fi_info - پرس‌وجو و نمایش اطلاعات ارائه‌دهندگان رابط کاربری Libfabric

fi_info [OPTIONS]

ابزار fi_info می‌تواند برای پرس‌وجوی رابط‌های فابریک (fabric interfaces) موجود استفاده شود. این ابزار از پالایش بر اساس گزینه‌های متعددی مانند نوع نقطه پایانی (endpoint type)، نام ارائه‌دهنده (provider name) یا حالت‌های پشتیبانی‌شده پشتیبانی می‌کند. علاوه بر این، fi_info می‌تواند برای کشف متغیرهای محیطی که برای تنظیم پارامترهای خاص ارائه‌دهنده به کار می‌روند نیز استفاده شود. اگر هیچ فیلتری تعیین نشود، تمام رابط‌های فابریک موجود برای همه ارائه‌دهندگان و انواع نقاط پایانی برگردانده خواهند شد.

نام یا نشانی گره مورد استفاده برای پالایش رابط‌ها. فقط رابط‌هایی که می‌توانند به گره یا نشانی داده‌شده دسترسی داشته باشند پاسخ خواهند داد.
شماره درگاه (پورت) مورد استفاده برای پالایش رابط‌ها.
فهرستی از قابلیت‌ها که با خط عمودی (pipe) از هم جدا شده‌اند و برای پالایش رابط‌ها استفاده می‌شوند. فقط رابط‌هایی که از تمام قابلیت‌های داده‌شده پشتیبانی می‌کنند پاسخ خواهند داد. برای اطلاعات بیشتر درباره قابلیت‌ها، به fi_getinfo(3) مراجعه کنید.
فهرستی از حالت‌ها که با خط عمودی از هم جدا شده‌اند و برای پالایش رابط‌ها استفاده می‌شوند. فقط رابط‌هایی که از تمام حالت‌های داده‌شده پشتیبانی می‌کنند پاسخ خواهند داد. برای اطلاعات بیشتر درباره حالت‌ها، به fi_getinfo(3) مراجعه کنید.
نوع ارتباط رابط فابریک مورد نظر را تعیین می‌کند. برای نمونه، تعیین FI_EP_DGRAM فقط رابط‌هایی را برمی‌گرداند که از دیتاگرام غیرقابل اعتماد پشتیبانی می‌کنند. برای اطلاعات بیشتر درباره انواع نقاط پایانی، به fi_endpoint(3) مراجعه کنید.
پالایش رابط‌های فابریک بر اساس قالب نشانی آن‌ها. برای نمونه، تعیین FI_SOCKADDR_IN تنها رابط‌هایی را برمی‌گرداند که از ساختارهای sockaddr_in برای نشانی‌دهی استفاده می‌کنند. برای اطلاعات بیشتر درباره قالب‌های نشانی، به fi_getinfo(3) مراجعه کنید.
پالایش رابط‌های فابریک بر اساس پیاده‌سازی ارائه‌دهنده. برای فهرستی از ارائه‌دهندگان، گزینه --list را ببینید.
پالایش رابط‌ها تنها به مواردی با نام دامنه داده‌شده.
پالایش رابط‌ها تنها به مواردی با نام فابریک داده‌شده.

فهرست کردن متغیرهای محیطی مرتبط با libfabric که می‌توان از آن‌ها برای فعال‌سازی پیکربندی اضافی یا بهینه‌سازی و تنظیم استفاده کرد.
مشابه گزینه -e، با این تفاوت که خروجی به متغیرهای محیطی محدود می‌شود که زیررشته filter را در بر دارند.
فهرست کردن ارائه‌دهندگان موجود libfabric.
به صورت پیش‌فرض، fi_info خلاصه‌ای از هر یک از رابط‌های کشف‌شده را نمایش می‌دهد. اگر گزینه پرحرف (verbose) فعال باشد، تمام محتویات ساختار fi_info نمایش داده می‌شود. برای اطلاعات بیشتر درباره داده‌های موجود در ساختار fi_info، به fi_getinfo(3) مراجعه کنید.
–version
نمایش اطلاعات نسخه.

$ fi_info -p verbs -t FI_EP_DGRAM

این دستور تمام رابط‌های فابریکی را که از نوع نقطه پایانی FI_EP_DGRAM به همراه ارائه‌دهنده verbs استفاده می‌کنند برمی‌گرداند.

fi_info -c 'FI_MSG|FI_READ|FI_RMA'

این دستور تمام رابط‌های فابریکی را برمی‌گرداند که می‌توانند از قابلیت‌های FI_MSG|FI_READ|FI_RMA پشتیبانی کنند.

به صورت پیش‌فرض fi_info خلاصه‌ای از رابط‌های فابریک کشف‌شده را نمایش می‌دهد:

$ ./fi_info -p verbs -t FI_EP_DGRAM
provider: verbs
    fabric: IB-0xfe80000000000000
    domain: mlx5_0-dgram
    version: 116.0
    type: FI_EP_DGRAM
    protocol: FI_PROTO_IB_UD
$ ./fi_info -p tcp
provider: tcp
    fabric: 192.168.7.0/24
    domain: eth0
    version: 116.0
    type: FI_EP_MSG
    protocol: FI_PROTO_SOCK_TCP

برای مشاهده ساختار کامل fi_info، گزینه -v را مشخص کنید.

fi_info:
    caps: [ FI_MSG, FI_RMA, FI_TAGGED, FI_ATOMIC, FI_READ, FI_WRITE, FI_RECV, FI_SEND, FI_REMOTE_READ, FI_REMOTE_WRITE, FI_MULTI_RECV, FI_RMA_EVENT, FI_SOURCE, FI_DIRECTED_RECV ]
    mode: [  ]
    addr_format: FI_ADDR_IB_UD
    src_addrlen: 32
    dest_addrlen: 0
    src_addr: fi_addr_ib_ud://:::0/0/0/0
    dest_addr: (null)
    handle: (nil)
    fi_tx_attr:
        caps: [ FI_MSG, FI_RMA, FI_TAGGED, FI_ATOMIC, FI_READ, FI_WRITE, FI_SEND ]
        mode: [  ]
        op_flags: [  ]
        msg_order: [ FI_ORDER_RAR, FI_ORDER_RAW, FI_ORDER_RAS, FI_ORDER_WAW, FI_ORDER_WAS, FI_ORDER_SAW, FI_ORDER_SAS, FI_ORDER_RMA_RAR, FI_ORDER_RMA_RAW, FI_ORDER_RMA_WAW, FI_ORDER_ATOMIC_RAR, FI_ORDER_ATOMIC_RAW, FI_ORDER_ATOMIC_WAR, FI_ORDER_ATOMIC_WAW ]
        inject_size: 3840
        size: 1024
        iov_limit: 4
        rma_iov_limit: 4
        tclass: 0x0
    fi_rx_attr:
        caps: [ FI_MSG, FI_RMA, FI_TAGGED, FI_ATOMIC, FI_RECV, FI_REMOTE_READ, FI_REMOTE_WRITE, FI_MULTI_RECV, FI_RMA_EVENT, FI_SOURCE, FI_DIRECTED_RECV ]
        mode: [  ]
        op_flags: [  ]
        msg_order: [ FI_ORDER_RAR, FI_ORDER_RAW, FI_ORDER_RAS, FI_ORDER_WAW, FI_ORDER_WAS, FI_ORDER_SAW, FI_ORDER_SAS, FI_ORDER_RMA_RAR, FI_ORDER_RMA_RAW, FI_ORDER_RMA_WAW, FI_ORDER_ATOMIC_RAR, FI_ORDER_ATOMIC_RAW, FI_ORDER_ATOMIC_WAR, FI_ORDER_ATOMIC_WAW ]
        size: 1024
        iov_limit: 4
    fi_ep_attr:
        type: FI_EP_RDM
        protocol: FI_PROTO_RXD
        protocol_version: 1
        max_msg_size: 18446744073709551615
        msg_prefix_size: 0
        max_order_raw_size: 18446744073709551615
        max_order_war_size: 0
        max_order_waw_size: 18446744073709551615
        mem_tag_format: 0xaaaaaaaaaaaaaaaa
        tx_ctx_cnt: 1
        rx_ctx_cnt: 1
        auth_key_size: 0
    fi_domain_attr:
        domain: 0x0
        name: mlx5_0-dgram
        threading: FI_THREAD_SAFE
        progress: FI_PROGRESS_MANUAL
        resource_mgmt: FI_RM_ENABLED
        av_type: FI_AV_UNSPEC
        mr_mode: [  ]
        mr_key_size: 8
        cq_data_size: 8
        cq_cnt: 128
        ep_cnt: 128
        tx_ctx_cnt: 1
        rx_ctx_cnt: 1
        max_ep_tx_ctx: 1
        max_ep_rx_ctx: 1
        max_ep_stx_ctx: 0
        max_ep_srx_ctx: 0
        cntr_cnt: 0
        mr_iov_limit: 1
        caps: [  ]
        mode: [  ]
        auth_key_size: 0
        max_err_data: 0
        mr_cnt: 0
        tclass: 0x0
        max_ep_auth_key: 0
        max_group_id: 0
        max_cntr_value: 18446744073709551615
        max_err_cntr_value: 18446744073709551615
    fi_fabric_attr:
        name: IB-0xfe80000000000000
        prov_name: verbs;ofi_rxd
        prov_version: 116.0
        api_version: 1.16
    nic:
        fi_device_attr:
            name: mlx5_0
            device_id: 0x101b
            device_version: 0
            vendor_id: 0x02c9
            driver: (null)
            firmware: 20.33.1048
        fi_bus_attr:
            bus_type: FI_BUS_UNKNOWN
        fi_link_attr:
            address: (null)
            mtu: 4096
            speed: 0
            state: FI_LINK_UP
            network_type: InfiniBand

برای مشاهده متغیرهای محیطی مرتبط با libfabric از گزینه -e استفاده کنید.

$ ./fi_info -e
# FI_LOG_INTERVAL: Integer
# Delay in ms between rate limited log messages (default 2000)
# FI_LOG_LEVEL: String
# Specify logging level: warn, trace, info, debug (default: warn)
# FI_LOG_PROV: String
# Specify specific provider to log (default: all)
# FI_PROVIDER: String
# Only use specified provider (default: all available)

برای مشاهده متغیرهای محیطی مرتبط با libfabric حاوی زیررشته، از گزینه -g استفاده کنید.

$ ./fi_info -g tcp
# FI_OFI_RXM_DEF_TCP_WAIT_OBJ: String
# ofi_rxm: See def_wait_obj for description.  If set, this overrides the def_wait_obj when running over the tcp provider.  See def_wait_obj for valid values. (default: UNSPEC, tcp provider will select).
# FI_TCP_IFACE: String
# tcp: Specify interface name
# FI_TCP_PORT_LOW_RANGE: Integer
# tcp: define port low range
# FI_TCP_PORT_HIGH_RANGE: Integer
# tcp: define port high range
# FI_TCP_TX_SIZE: size_t
# tcp: define default tx context size (default: 256)
# FI_TCP_RX_SIZE: size_t
# tcp: define default rx context size (default: 256)
# FI_TCP_NODELAY: Boolean (0/1, on/off, true/false, yes/no)
# tcp: overrides default TCP_NODELAY socket setting
# FI_TCP_STAGING_SBUF_SIZE: Integer
# tcp: size of buffer used to coalesce iovec's or send requests before posting to the kernel, set to 0 to disable
# FI_TCP_PREFETCH_RBUF_SIZE: Integer
# tcp: size of buffer used to prefetch received data from the kernel, set to 0 to disable
# FI_TCP_ZEROCOPY_SIZE: size_t
# tcp: lower threshold where zero copy transfers will be used, if supported by the platform, set to -1 to disable (default: 18446744073709551615)

fi_getinfo(3), fi_endpoint(3)

OpenFabrics.

2026-02-11 Libfabric Programmer’s Manual