Revisions of libfabric

Ruediger Oertel's avatar Ruediger Oertel (oertel) committed (revision 3)
Stefan Behlert's avatar Stefan Behlert (sbehlert) committed (revision 2)
- Update to v1.6.2 (fate#325852)
  - Core
    - Cleanup of debug messages
    - Fix compile issues with older compilers
    - Check that all debug compiler flags are supported by compiler
  - GNI
    - Fix problems with Scalable Endpoint creation
    - Fix interoperability problem with HPC toolkit
    - Improve configuration check for kdreg
  - PSM
    - Enforce FI_RMA_EVENT checking when updating counters
    - Fix race condition in fi_cq_readerr()
    - Always try to make progress when fi_cntr_read is called
  - PSM2
    - Revert "Avoid long delay in psm2_ep_close"
    - Fix memory corruption related to sendv
    - Performance tweak for bi-directional send/recv on KNL
    - Fix CPU detection
    - Enforce FI_RMA_EVENT checking when updating counters
    - Remove stale info from address vector when disconnecting
    - Fix race condition in fi_cq_readerr()
    - Adjust reported context numbers for special cases
    - Always try to make progress when fi_cntr_read is called
    - Support control functions related to MR mode
    - Unblock fi_cntr_wait on errors
    - Properly update error counters
    - Fix irregular performance drop for aggregated RMA operations
    - Reset Tx/Rx context counter when fabric is initialized
    - Fix incorrect completion event for iov send
    - Fix occasional assertion failure in psm2_ep_close
    - Avoid long delay in psm2_ep_close
    - Fix potential duplication of iov send completion
    - Replace some parameter checking with assertions
    - Check iov limit in sendmsg
    - Avoid adding FI_TRIGGER caps automatically
    - Avoid unnecessary calls to psmx2_am_progress()
  - RXM
    - Fix incorrect increments of error counters for small messages
    - Increment write completion counter for small transfers
    - Use FI_UNIVERSE_SIZE when defining MSG provider CQ size
    - Make TX, RX queue sizes independent of MSG provider
    - Make deferred requests opt-in
    - Fill missing rxm_conn in rx_buf when shared context is not used
    - Fix an issue where MSG endpoint recv queue got empty resulting
  in a hang
    - Set FI_ORDER_NONE for tx and rx completion ordering
    - Serialize access to repost_ready_list
    - Reprocess unexpected messages on av update
    - Fix a bug in matching directed receives
    - Fix desc field when postponing RMA ops
    - Fix incorrect reporting of mem_tag format
    - Don't include FI_DIRECTED_RECV, FI_SOURCE caps if they're not needed
    - Fix matching for RMA I/O vectors
    - Fix reading pointer after freeing it.
    - Avoid reading invalid AV entry
    - Handle deleting the same address multiple times
    - Fix crash in fi_av_remove if FI_SOURCE wasn't enabled
  - Sockets
    - Increase maximum messages size as MPICH bug work-around
    - Fix use after free error handling triggered ops.
  - Verbs
    - Detect string format of wildcard address in node argument
    - Don't report unusable fi_info (no source IP address)
    - Don't assert when a verbs device exposes unsupported MTU types
    - Report correct rma_iov_limit
    - Add new variable - FI_VERBS_MR_CACHE_MERGE_REGIONS
    - eq->err.err must return a positive error code

- Update to v1.6.0
  - Fixes stack smashing when using the verbs provider (bsc#1089190)
  - Core
    - Introduces support for performing RMA operations to persistent memory
      See FI_RMA_PMEM capability in fi_getinfo.3
    - Define additional errno values
    - General code cleanups and restructuring
    - Force provider ordering when using dynamically loaded providers
    - Add const to fi_getinfo() hints parameter
    - Improve use of epoll for better scalability
    - Fixes to generic name service
  - PSM
    - Move environment variable reading out from fi_getinfo()
    - Shortcut obviously unsuccessful fi_getinfo() calls
    - Remove excessive name sever implementation
    - Enable ordering of RMA operations
  - PSM2
    - Skip inactive units in round-robin context allocation
    - Allow contexts be shared by Tx-only and Rx-only endpoints
    - Use utility functions to check provider attributes
    - Turn on FI_THREAD_SAFE support
    - Make address vector operations thread-safe
    - Move environment variable reading out from fi_getinfo()
    - Reduce noise when optimizing tagged message functions
    - Shortcut obviously unsuccessful fi_getinfo() calls
    - Improve how Tx/Rx context limits are handled
    - Support auto selection from two different tag layout schemes
    - Add provider build options to debug output
    - Support remote CQ data for tagged messages, add specialization.
    - Support opening multiple domains
    - Put trigger implementation into a separate file
    - Update makefile and configure script
    - Replace allocated context with reserved space in psm2_mq_req
    - Limit exported symbols for DSO provider
    - Reduce HW context usage for certain TX only endpoints
    - Remove unnecessary dependencies from the configure script
    - Refactor the handling of op context type
    - Optimize the conversion between 96-bit and 64-bit tags
    - Code refactoring for completion generation
    - Remove obsolete feature checking code
    - Report correct source address for scalable endpoints
    - Allow binding any number of endpoints to a CQ/counter
    - Add shared Tx context support
    - Add alternative implementation for completion polling
    - Change the default value of FI_PSM2_DELAY to 0
    - Add an environment variable for automatic connection cleanup
    - Abstract the completion polling mechanism
    - Use the new psm2_am_register_handlers_2 function when available
    - Allow specialization when FI_COMPLETION op_flag is set.
    - Put Tx/Rx context related functions into a separate file
    - Enable PSM2 multi-ep feature by default
    - Add option to build with PSM2 source included
    - Simplify the code for checking endpoint capabilities
    - Simplify the handling of self-targeted RMA operations
    - Allow all free contexts be used for scalable endpoints
    - Enable ordering of RMA operations
    - Enable multiple endpoints over PSM2 multi-ep support
    - Support multiple Tx/Rx contexts in address vector
    - Remove the virtual lane mechanism
    - Less code duplication in tagged, add more specialization.
    - Allow PSM2 epid be reused within the same session
    - Turn on user adjustable inject size for all operations
    - Use pre-allocated memory pool for RMA requests
    - Add support for lazy connection
    - Various bug fixes
  - SHM
    - Initial release of shared memory provider
    - See the fi_shm.7 man page for details on available features and limitations
  - Sockets
    - Scalability enhancements
    - Fix issue associating a connection with an AV entry that could result in
      application hangs
    - Add support for new persistent memory capabilities
    - Fix fi_cq_signal to unblock threads waiting on cq sread calls
    - Fix epoll_wait loop handling to avoid out of memory errors
    - Add support for TCP keepalives, controllable via environment variables
    - Reduce the number of threads allocated for handling connections
    - Several code cleanups in response to static code analysis reports
    - Fix reporting multiple completion events for the same request in error cases
  - usNIC
    - Minor adjustments to match new core MR mode bits functionality
    - Several code cleanups in response to static code analysis reports
  - Verbs
    - Code cleanups and simplifications
    - General code optimizations to improve performance
    - Fix handling of wildcard addresses
    - Check for fatal errors during connection establishment
    - Support larger inject sizes
    - Fix double locking issue
    - Add support for memory registration caching (disabled by default)
    - Enable setting thread affinity for CM threads
    - Fix hangs in MPI closing RDM endpoints
    - Add support for different CQ formats
    - Fix RMA read operations over iWarp devices
    - Optimize CM progress handling
    - Several bug fixes
Stefan Behlert's avatar Stefan Behlert (sbehlert) committed (revision 1)
initialize package as branch
Displaying all 3 revisions
openSUSE Build Service is sponsored by