Buffer-Aligned Data Access for Storage Bandwidth Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In software-hardware collaborative systems, the inefficiency in accessing storage devices due to misalignment between the minimum operation unit of the file system and the storage device's physical address, leading to wasted bandwidth and reduced access efficiency.
Innovation Solution
A data accessing method that involves loading data into a buffer area aligned with the storage device's block size, determining if additional data can fit within the buffer, and splicing requests to maximize available bandwidth, thereby optimizing access efficiency by minimizing the need for repeated data loading and aligning data with storage device units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is loaded from storage device to coprocessor directly without buffer alignment, then data transfer can proceed, but bandwidth is wasted and access efficiency is reduced due to misalignment between file system operation units and physical storage blocks
Solution Approach 1:
A buffer is introduced as an intermediary component between the storage device and coprocessors. The buffer aligns data in units of physical storage blocks rather than file system operation units, enabling efficient data transfer that matches the storage device's native block structure and maximizing bandwidth utilization.
Solution Approach 2:
Data is pre-loaded into the buffer in aligned physical storage block units before being transferred to coprocessors. This preliminary alignment action ensures that subsequent data transfers can proceed efficiently without requiring real-time alignment calculations, improving overall access efficiency.
2Productivity
If multiple coprocessors access the same storage device simultaneously, then parallel processing capability is utilized, but access port occupancy time increases and system efficiency decreases
Solution Approach 1:
The buffer serves as a mediator that decouples multiple coprocessors from direct simultaneous access to the storage device. Coprocessors can independently access data in the buffer while the buffer manages coordinated access to the storage device, reducing access port occupancy time and enabling more efficient parallel processing.
3Speed
If data is transferred without using buffer alignment, then transfer process is simpler, but repeated data loading occurs and access speed decreases
Solution Approach 1:
Data alignment to physical storage block units is performed preliminarily in the buffer before transfer to coprocessors. This upfront alignment prevents the need for repeated data loading operations and real-time alignment calculations during active data transfer, thereby improving access speed despite the added buffer management complexity.
Data Source
AI summary
Embodiments of the present disclosure provide a data accessing method, a device and a storage medium. The method includes: obtaining a first accessing request and a second accessing request for a storage device; loading first data associated with the first accessing request from a source device to a pre-allocated buffer area with a size same as a size of a single physical storage block of the storage device; determining a first part of the second data when the first size of second data associated with the second accessing request is greater than or equal to the second size of an available space of the buffer area, a size of the first part being the same as the second size; and providing the first data and the first part to a target device associated with the first accessing request and the second accessing request.


