Abstract:
Systems and methods for generating and storing a data structure for maintaining cache supporting compression and cache-wide deduplication, including generating data structures with fixed size memory regions configured to hold multiple signatures as keys, wherein the number of the fixed size memory regions is bounded. A first mapping is generated from short-length signatures to a storage location and a quantized length measure on a cache storage device; and unused contiguous regions on the cache device are allocated. Metadata and cache page content is retrieved using a single input/output operation; a correctness of a full value of hash functions of uncompressed cache page content is validated; a second mapping is generated from short-length signatures to entries in the first mapping; and verification of whether the cached page content corresponds to a full-length original logical block address using the metadata is performed.
Abstract:
Methods and systems for adaptive compression include compressing input data according to a first compression ratio; pausing compression after a predetermined amount of input data is compressed; estimating which of a set of ranges a compressed output size will fall within using current settings; and performing compression on a remainder of the input data according to a second compression ratio based on the estimated range.
Abstract:
Systems and methods are disclosed for parallel machine learning with a cluster of N parallel machine network nodes by determining k network nodes as a subset of the N network nodes to update learning parameters, wherein k is selected to disseminate the updates across all nodes directly or indirectly and to optimize predetermined goals including freshness, balanced communication and computation ratio in the cluster; sending learning unit updates to fewer nodes to reduce communication costs with learning convergence; and sending reduced learning updates and ensuring that the nodes send/receive learning updates in a uniform fashion.
Abstract:
A method supports data communication in a mobile application by specifying in the mobile application a program intent and one or more course or fine-grained properties of data objects in terms of tolerance to delay and loss; selecting a transfer policy for a set of data objects based on the application intent; receiving and coalescing intents of one or more applications for object data for the one or more applications; crafting an aggregate transfer policy, and communicating data from one or more applications as an aggregate based on the aggregate transfer policy to programmatically incorporate and benefit from tolerance to delay in the transfer of data.
Abstract:
Methods and systems for adaptive compression include compressing input data according to a first compression ratio; pausing compression after a predetermined amount of input data is compressed; estimating which of a set of ranges a compressed output size will fall within using current settings; and performing compression on a remainder of the input data according to a second compression ratio based on the estimated range.
Abstract:
Disclosed herein are methods and structures for a computer cache that includes its own garbage collection component that reclaims space occupied by free objects in the cache such that the cache avoids retaining deleted objects thereby increasing cache hit ratios and further permits short-lived dirty objects to be deleted without requiring them to be written back to an underlying store.
Abstract:
Disclosed herein are methods and structures for networks of mobile computers which efficiently synchronizes table data across the mobile computers while exhibiting great tolerance for temporary disconnects.
Abstract:
Systems and methods for generating and storing a data structure for maintaining cache supporting compression and cache-wide deduplication, including generating data structures with fixed size memory regions configured to hold multiple signatures as keys, wherein the number of the fixed size memory regions is bounded. A first mapping is generated from short-length signatures to a storage location and a quantized length measure on a cache storage device; and unused contiguous regions on the cache device are allocated. Metadata and cache page content is retrieved using a single input/output operation; a correctness of a full value of hash functions of uncompressed cache page content is validated; a second mapping is generated from short-length signatures to entries in the first mapping; and verification of whether the cached page content corresponds to a full-length original logical block address using the metadata is performed.
Abstract:
Disclosed are methods and structures that facilitate the synchronization of mobile devices and apps with cloud storage systems. Our disclosure, Simba, provides a unified synchronization mechanism for object and table data in the context of mobile clients. Advantageously, Simba provides application developers a single, API where object data is logically embedded with the table data. On the mobile device, Simba uses a specialized data layout to efficiently store both table data and object data. SQL-like queries are used to store and retrieve all data via a table abstraction. Simba also provides efficient synchronization by splitting object data into chunks which can be synchronized independently. Therefore, if only a small part of an object changes, the full object need not be synced. Advantageously only the changed chunks need be synched.
Abstract:
A method supports data communication in a mobile application by specifying in the mobile application a program intent and one or more course or fine-grained properties of data objects in terms of tolerance to delay and loss; selecting a transfer policy for a set of data objects based on the application intent; receiving and coalescing intents of one or more applications for object data for the one or more applications; crafting an aggregate transfer policy, and communicating data from one or more applications as an aggregate based on the aggregate transfer policy to programmatically incorporate and benefit from tolerance to delay in the transfer of data.