Storage Resource Reservation for Multi-Tenant Cache Coherence
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Multiple tenants accessing a storage device resource can lead to inconsistencies, such as a first tenant storing a value 'A' in a first storage location and a second tenant storing a value 'B', resulting in uncertain read results.
Innovation Solution
A computing device manages resource units by sending enumerations to tenants through different protocols, receiving reservation requests, and indicating resource unit reservations, ensuring coherent access control near the storage device using cache protocols like CXL.cache and CXL.mem.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple tenants access a shared storage device resource simultaneously, then resource utilization and productivity are improved, but data consistency and reliability deteriorate due to uncertain read results
Solution Approach 1:
The patent implements a reservation system where tenants must reserve resource units before accessing them. The storage device sends enumerations of available resource units to tenants, and tenants submit reservation requests through a managing protocol. This preliminary reservation action prevents multiple tenants from simultaneously accessing the same resource, ensuring data consistency while allowing high resource utilization through efficient reservation management and release of unused resources
Solution Approach 2:
The patent introduces a managing protocol as an intermediary between tenants and storage device resources. This managing protocol handles reservation requests, monitors resource usage, and coordinates access between multiple tenants. The intermediary layer abstracts the complexity of resource management from tenants while ensuring consistent and reliable access patterns, resolving the contradiction between high utilization and data consistency
2Reliability
If a reservation system is implemented to ensure data consistency, then reliability is improved, but system complexity and ease of operation worsen due to additional protocols and procedures
Solution Approach 1:
The managing protocol serves multiple functions: it sends enumerations of available resources, processes reservation requests, monitors resource usage, and handles release operations. By consolidating these diverse functions into a single universal protocol, the system achieves reliable data consistency without proportionally increasing complexity. The same managing protocol interface handles both simple enumeration and complex reservation coordination
Solution Approach 2:
The storage device autonomously manages resource unit enumerations and reservation states without requiring external coordination for each access. Once a tenant reserves a resource unit, the storage device self-manages the reservation state and automatically notifies other tenants of the reserved status. This self-service capability reduces the operational burden on tenants while maintaining strong consistency guarantees
3Reliability
If resource reservations are processed sequentially to ensure consistency, then data reliability is improved, but processing speed and productivity deteriorate due to delays
Solution Approach 1:
Resource units are pre-enumerated and made available for reservation before actual data access operations. By performing the enumeration and reservation setup in advance through the managing protocol, the system ensures that when data access is needed, the resource allocation is already determined and consistent. This preliminary action separates the consistency-critical reservation phase from the speed-critical data access phase
Solution Approach 2:
The system maintains continuous monitoring and management of resource reservation states through the managing protocol. Rather than processing reservations as discrete batch operations, the protocol continuously tracks which resource units are reserved by which tenants and maintains this state information. This continuous action allows the system to respond immediately to access requests while maintaining consistency, eliminating delays associated with periodic consistency checks
Data Source
AI summary
A method includes sending an enumeration of a resource unit of the computing device to a first computing system tenant and to a second computing system tenant. The enumeration is sent through a first protocol and indicating a managing protocol associated with managing the resource unit. The method further includes receiving a first request from the first computing system tenant to reserve the resource unit. The first request is received through the managing protocol. The method further includes receiving a second request from the second computing system tenant to reserve the resource unit. The second request is received through the managing protocol. The method further includes sending, to the second computing system tenant, an indication that the resource unit is reserved by the first computing system tenant. The indication is sent through the managing protocol.


