DPU-Based RPC with Direct Memory Transfer to Cut Read/Write Delay
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing RPC process for DPU-based virtual machines is complex, consuming CPU time and causing read/write delays and reducing the forwarding capability of the DPU due to serialization, data compression, and data copying between user and kernel modes.
Innovation Solution
A DPU-based remote procedure call method that caches metadata and data in memory, using memory pointer information to transmit directly to a network port in user mode, eliminating the need for serialization, data compression, and data copying from user to kernel mode.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the traditional RPC process with serialization and data compression is used, then data can be transmitted between user and kernel modes, but CPU time is consumed and read/write delay increases
Solution Approach 1:
The patent extracts and eliminates the serialization and data compression steps from the traditional RPC process. By directly transmitting metadata and data between user mode and kernel mode without these intermediate processing steps, the system maintains data transmission reliability while significantly reducing CPU time consumption and read/write delay.
Solution Approach 2:
The patent performs preliminary actions by pre-preparing metadata structures and caching data in memory before transmission. The metadata includes essential information such as target write addresses, which are prepared in advance, allowing the actual data transmission to proceed without additional processing delays.
2Reliability
If the traditional RPC process with data copying between user and kernel modes is used, then data can be transmitted, but CPU time is consumed and forwarding capability is reduced
Solution Approach 1:
The patent removes the data copying step between user and kernel modes from the transmission path. By using shared memory or direct memory access mechanisms, data can be transmitted directly without being copied multiple times, thereby maintaining data integrity while significantly improving forwarding capability and reducing CPU overhead.
Solution Approach 2:
The patent introduces an intermediary mechanism in the form of a shared memory buffer or direct memory access interface that allows data to be transmitted between user mode and kernel mode without copying. This intermediary enables efficient data transfer while maintaining transmission integrity.
3Reliability
If the complex RPC process with serialization and compression is used, then data can be transmitted between modes, but CPU time consumption increases causing bottlenecks
Solution Approach 1:
The patent extracts and eliminates the CPU-intensive serialization and data compression steps from the transmission process. By transmitting data in its original format with accompanying metadata, the system maintains transmission accuracy while dramatically reducing CPU time consumption and avoiding bottlenecks.
Solution Approach 2:
Instead of serializing and compressing data, the patent uses a copying approach where metadata structures are created to describe the data being transmitted. This metadata includes information such as target addresses and data lengths, allowing the system to transmit data efficiently without the overhead of serialization and compression operations.
Data Source
AI summary
Embodiments of the present disclosure provide a DPU-based remote procedure call method, a device, and a storage medium. In a read/write process of remote procedure call based on a DPU, serialization/deserialization, data compression/decompression, and data copying between a user mode and a kernel mode are not required, a large amount of CPU time in the DPU is saved, the forwarding capability of the DPU for serving an upper layer is significantly improved, single-path read/write delay is reduced, the forwarding capability and the throughput capability of a single core can be effectively improved, and a bottleneck problem caused when the CPU capability of the DPU is limited is also effectively avoided.


