Selective fabric-less mode for storage system operations
Aspects of the present disclosure relate to optimizing atomic operations in storage arrays by selectively enabling fabric-less mode based on device access patterns. In embodiments, whether multi-path software is enabled is determined, and device-level access control mappings are analyzed to identify candidates for fabric-less mode operation. For devices without multi-path software, a fabric-less mode is enabled when mapped to a single board, allowing atomic operations via software locks instead of fabric hardware. When multi-path software is enabled, the embodiments either leverage ALUA states to identify optimized paths or employ time series analysis using ARIMA models to predict IO access patterns. Fabric-less mode is activated when forecasting indicates localized access patterns, significantly improving response time and IOPS by avoiding fabric bandwidth constraints and hardware vendor limitations. The embodiments enable efficient atomic operations through CPU access to local memory, eliminating unnecessary fabric operations while maintaining data consistency across the storage array.
1 . A method comprising:
receiving input/output (IO) operations at a storage array having multiple boards;
determining path characteristics corresponding to a logical device targeted by one or more of the IO operations;
determining whether multi-path software is enabled for the logical device in the storage array by analyzing logical device-level access control mappings;
if multi-path software is not enabled for the logical device:
determining that the logical device is mapped to a single board, and
enabling fabric-less mode for the logical device to perform atomic operations using software locks instead of fabric hardware; and
selectively enabling or disabling fabric-less mode for the logical device based on the determined path characteristics or IO access patterns corresponding to the logical device.
2 . The method of claim 1 , further comprising:
if multi-path software is enabled for the logical device:
collecting local and remote access statistics for the logical device,
analyzing the access statistics using a time series forecasting model to predict future access patterns, and
selectively enabling or disabling fabric-less mode for the logical device based on the predicted access patterns.
3 . The method of claim 1 , wherein enabling fabric-less mode includes:
using software-based locks to perform atomic operations on local memory via central processing unit (CPU) access instead of using fabric hardware operations.
4 . The method of claim 1 , wherein when multi-path software is enabled, further comprising:
determining whether Asymmetric Logical Unit Access (ALUA) states are enabled for the logical device;
when ALUA states are enabled, determining whether the logical device has a single ALUA optimized path; and
enabling fabric-less mode for the logical device when the logical device has a single ALUA optimized path.
5 . The method of claim 2 , further comprising:
using an ARIMA (Autoregressive Integrated Moving Average) time series model to forecast whether future IO operations will be localized to a specific board.
6 . The method of claim 1 , further comprising:
enabling fabric-less mode when a forecasting model predicts approximately 100% local access for a logical device during a next time window.
7 . The method of claim 1 , further comprising:
if fabric-less mode is enabled:
performing atomic operations using only CPU accesses to local memory without utilizing fabric hardware; and
improving IO response time and IOs per second (IOPS) by avoiding fabric bandwidth constraints.
8 . The method of claim 1 , further comprising:
periodically checking for IO bias to specific paths or boards corresponding to the storage array when multi-path software is enabled; and
predicting IO patterns for a next time window based on the detected IO bias.
9 . An apparatus with a memory and processor, the apparatus configured to:
receive input/output (IO) operations at a storage array having multiple boards;
determine path characteristics corresponding to the logical device targeted by one or more of the IO operations;
determine whether multi-path software is enabled for the logical device in the storage array by analyzing logical device-level access control mappings;
if multi-path software is not enabled for the logical device:
determine that the logical device is mapped to a single board, and
enable fabric-less mode for the logical device to perform atomic operations using software locks instead of fabric hardware; and
selectively enable or disable fabric-less mode for the logical device based on the determined path characteristics or IO access patterns corresponding to the logical device.
10 . The apparatus of claim 9 , further configured to:
if multi-path software is enabled for the logical device:
collect local and remote access statistics for the logical device,
analyze the access statistics using a time series forecasting model to predict future access patterns, and
selectively enable or disable fabric-less mode for the logical device based on the predicted access patterns.
11 . The apparatus of claim 9 , wherein enabling fabric-less mode includes:
use software-based locks to perform atomic operations on local memory via central processing unit (CPU) access instead of using fabric hardware operations.
12 . The apparatus of claim 9 , wherein when multi-path software is enabled, further configured to:
determine whether Asymmetric Logical Unit Access (ALUA) states are enabled for the logical device;
when ALUA states are enabled, determine whether the logical device has a single ALUA optimized path; and
enable fabric-less mode for the logical device when the logical device has a single ALUA optimized path.
13 . The apparatus of claim 10 , further configured to:
use an ARIMA (Autoregressive Integrated Moving Average) time series model to forecast whether future IO operations will be localized to a specific board.
14 . The apparatus of claim 9 , further configured to:
enable fabric-less mode when a forecasting model predicts approximately 100% local access for a logical device during a next time window.
15 . The apparatus of claim 9 , further configured to:
if fabric-less mode is enabled:
perform atomic operations using only CPU accesses to local memory without utilizing fabric hardware; and
improve IO response time and IOs per second (IOPS) by avoiding fabric bandwidth constraints.
16 . The apparatus of claim 9 , further configured to:
periodically check for IO bias to specific paths or boards corresponding to the storage array when multi-path software is enabled; and
predict IO patterns for a next time window based on the detected IO bias.