Patents Examined by Tracy Chan
-
Patent number: 10067981Abstract: A framework for intelligent memory replacement of loaded data blocks by requested data blocks is provided. For example, various factors are taken into account to optimize the selection of loaded data blocks to be discarded from the memory, in favor of the requested data blocks to be loaded into the memory. In some implementations, correlations between the requested data blocks and the loaded data blocks are used to determine which of the loaded data blocks may become candidates to be discarded from memory.Type: GrantFiled: November 21, 2014Date of Patent: September 4, 2018Assignee: SAP SEInventors: Nairu Fan, Tianyu Luwang, Conglun Yao, Wen-Syan Li
-
Patent number: 10049061Abstract: Embodiments relate to loading and storing of data. An aspect includes a method for transferring data in an active memory device that includes memory and a processing element. An instruction is fetched and decoded for execution by the processing element. Based on determining that the instruction is a gather instruction, the processing element determines a plurality of source addresses in the memory from which to gather data elements and a destination address in the memory. One or more gathered data elements are transferred from the source addresses to contiguous locations in the memory starting at the destination address. Based on determining that the instruction is a scatter instruction, a source address in the memory from which to read data elements at contiguous locations and one or more destination addresses in the memory to store the data elements at non-contiguous locations are determined, and the data elements are transferred.Type: GrantFiled: November 12, 2012Date of Patent: August 14, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Bruce M. Fleischer, Thomas W. Fox, Hans M. Jacobson, James A. Kahle, Jaime H. Moreno, Ravi Nair
-
Patent number: 10042564Abstract: A method begins by a plurality of storage units of a dispersed storage network (DSN) receiving updated properties of DSN memory. The method continues with a first storage unit and a second storage unit establishing a migration pairing and establishing a storage migration mechanism for migrating storage of data between the first and second storage units. While migrating the storage of data using the storage migration mechanism, the method continues with the first or the second storage unit receiving a data access request regarding data effected by the migrating the storage of data, determining status of the migrating storage of data, and determining which of the first and second storage units is to process the data access request based on the status to produce a determined storage unit. The method continues with the determined storage unit processing the data access request.Type: GrantFiled: May 8, 2015Date of Patent: August 7, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Manish Motwani, Wesley Leggette, Andrew Baptist
-
Patent number: 10042751Abstract: Example embodiments of the present invention relate to a method, a system, and a computer program product for tiering metadata. The method includes selecting a consecutive range of addresses of a logical device having a parent data structure associated therewith maintaining a first set of hash values at a first granularity of the logical device. A second hash value then may be calculated over the consecutive range of addresses of the logical device at a second granularity of the logical device and inserted into a child data structure associated with the parent data structure. Entries in the parent data structure at the first granularity for the consecutive range of addresses then may be freed in favor of the second hash value at the second granularity for the consecutive range of addresses inserted into the child data structure, for storing hash values for other addresses of the logical device.Type: GrantFiled: September 30, 2015Date of Patent: August 7, 2018Assignee: EMC IP Holding Company LLCInventors: Alexandr Veprinsky, Assaf Natanzon, Saar Cohen, Arieh Don
-
Patent number: 10013551Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for determining where to store a version of an object in an isolated environment. In one aspect, a method include actions of obtaining, from a process running in an isolated environment, a request to access an object and determining a frequency that changes to a version of the object stored in the isolated environment will be mapped back to a version of the object stored in the non-isolated environment. Additional actions include determining, based on the frequency that changes to a version of the object stored in the isolated environment are mapped back to a version of the object stored in the non-isolated environment, whether to store the version of the object in primary memory associated with the isolated environment or secondary memory associated with the isolated environment.Type: GrantFiled: August 24, 2015Date of Patent: July 3, 2018Assignee: Accenture Global Services LimitedInventor: Amin Hassanzadeh
-
Patent number: 10013174Abstract: A plurality of mapping systems are maintained for mapping logical addresses for data stored in a Data Storage Device (DSD) to physical addresses for locations in at least one memory of the DSD that store the data. Data is received from a host for storage in the at least one memory, and the received data is stored in a location in the at least one memory. A mapping system is selected from the plurality of mapping systems for mapping the received data based on information provided by the host for the received data or based on information determined by the controller for the received data.Type: GrantFiled: September 30, 2015Date of Patent: July 3, 2018Assignee: Western Digital Technologies, Inc.Inventor: Robert Lynn Horn
-
Patent number: 10007549Abstract: An apparatus and method are described for a hardware transactional memory (HTM) profiler. For example, one embodiment of an apparatus comprises a transactional debugger (TDB) recording module to record data related to the execution of transactional memory program code, including data related to the execution of branches and transactional events in the transactional memory program code; and a profiler to analyze portions of the recorded data using trace-based replay techniques to responsively generate profile data comprising transaction-level events and function-level conflict data usable to optimize the transactional memory program code.Type: GrantFiled: December 23, 2014Date of Patent: June 26, 2018Assignee: Intel CorporationInventors: Justin E. Gottschlich, Gilles A. Pokam, Shiliang Hu
-
Patent number: 9996304Abstract: The present invention provides a data storage device including a flash memory, a plurality of counting control arrays and a controller. The flash memory includes a plurality of chips, each chip has a plurality of pages arranged to be assembled into a super block according to a predetermined order, and each of the super blocks includes the pages of the different chips. The controller keeps the value of a first field of a first counting control array corresponding to a first chip required to be read and writes a second value into the other fields except for the first field of the first counting control array when the first field is a first value, and writes the first value into the first field and keeps the values of the other fields of the first counting control array when the first field is the second value.Type: GrantFiled: March 2, 2016Date of Patent: June 12, 2018Assignee: SILICON MOTION, INC.Inventors: Kuan-Lin Chen, Wu-Chi Kuo
-
Patent number: 9996289Abstract: Embodiments of the present disclosure provide a method and apparatus for assigning lock resources to objects by obtaining a first alternative lock for the object, and determining first correlations between the object and each of one or more other objects when the first alternative lock has been assigned to the one or more other objects, wherein in response to determining that each of the first correlations is lower than a predetermined threshold, assign the first alternative lock to the object, and may maximize the possibility of parallel execution and reduce the time waiting for lock resources, thereby avoiding lock contention.Type: GrantFiled: October 15, 2015Date of Patent: June 12, 2018Assignee: EMC IP HOLING COMPANY LLCInventors: Walter Lei Wang, Matt Zhu Zhang, Gang Cao, Ren Ren, Xiangqing Yang
-
Patent number: 9990302Abstract: A tag memory and a cache system with automating tag comparison mechanism and a cache method thereof are provided. The tag memory in the cache system includes a memory cell array, sensing amplifiers and a tag comparison circuit. The memory cell array stores cache tags, and outputs row tags of the cache tags according to an index in a memory address. The sensing amplifiers perform signal amplifications on the row tags to serve as comparison tags. The tag comparison circuit performs parallel comparisons between a target tag in the memory address and the row tags. When one of the row tags matches the target tag, the tag comparison circuit outputs a location of the matched row tag to serve as a first column address. The first column address is a column address where the memory address corresponds to a first data memory in the cache system.Type: GrantFiled: May 25, 2016Date of Patent: June 5, 2018Assignee: National Chiao Tung UniversityInventors: Tien-Fu Chen, Meng-Fan Chang, Keng-Hao Yang
-
Patent number: 9990279Abstract: According to one embodiment, a method includes assigning a subset of physical pages within a block of non-volatile memory to a pseudo-physical block, wherein a number of pages in the pseudo-physical block is less than a number of physical pages within the non-volatile memory block, and reassigning physical pages within the block of non-volatile memory to the pseudo-physical block upon occurrence of an event. The assigning includes: determining a health metric for each of the physical pages within the block of non-volatile memory, and selecting a subset of the physical pages for assignment to the pseudo-physical block based on the health metric. Moreover, the subset of pages has a fixed size for at least a number of reassignments.Type: GrantFiled: December 23, 2014Date of Patent: June 5, 2018Assignee: International Business Machines CorporationInventors: Charles J. Camp, Thomas Mittelholzer, Nikolaos Papandreou, Thomas Parnell, Charalampos Pozidis
-
Patent number: 9983822Abstract: The method generates a first deduplication map (DDM) level of a DDM pyramid. The DDM pyramid identifies locations of data stored in the persistent storage resource of the deduplication system. The method further determines a first false positive rate target for a first index summary (IS) level of an index pyramid based on a memory footprint for the first IS level and an aggregate false positive rate target for the index pyramid. The first IS level accelerates lookup into the first DDM level. The first false positive rate target indicates a rate that a hit for a value found in the first IS level is not found in the first DDM level. The method also generates the first IS level with a first false positive rate based on the determined first false positive rate target.Type: GrantFiled: October 31, 2016Date of Patent: May 29, 2018Assignee: PURE STORAGE, INC.Inventors: Ronald Karr, Ethan L. Miller, Cary A. Sandvig, Feng Wang, Wei Zhang
-
Patent number: 9983942Abstract: A technique for providing access to a data object serving as a target of snapshot-shipping replication includes taking a system snap of the data object after completion of each of multiple snapshot-shipping updates. In response to receiving a request to take a user snap of the data object, a data storage system redirects the request to a previously generated system snap, so that the data storage system takes the user snap of the system snap rather than taking the user snap of the data object itself.Type: GrantFiled: March 11, 2015Date of Patent: May 29, 2018Assignee: EMC IP Holding Company LLCInventors: Nagapraveen V. Seela, Michael C. Brundage, Yan Xu
-
Patent number: 9983796Abstract: The disclosed computer-implemented method for provisioning frequently used image segments from caches may include (1) storing a representation and a use counter for an image segment that is hosted on a storage system in a list of representations and use counters for image segments hosted on the storage system, (2) incrementing a current value of the use counter for the image segment in the list of representations and use counters each time the image segment is provisioned from the storage system, (3) determining that the current value of the use counter for the image segment has met a predetermined threshold for frequent image-segment provisioning, (4) hosting the image segment in a cache that enables quicker provisioning than the storage system enables, and (5) provisioning the image segment from the cache in response to a request to provision the image segment. Various other methods, systems, and computer-readable media are also disclosed.Type: GrantFiled: September 17, 2015Date of Patent: May 29, 2018Assignee: Veritas Technologies LLCInventors: Yong Yang, Weibao Wu
-
Patent number: 9983807Abstract: Storage system characteristics are processed to generate a service level for a storage system that is one of a fixed number of service levels. Application specific usage tags describing application types the storage system is appropriate to support may also be generated. The service level and application specific usage tags are stored into a storage system capability profile and made available, together with any metadata needed to describe the application specific usage tags, to a system associated with a virtualization environment. A request to provision storage resources for a virtual machine is subsequently received, including a policy profile having a requested service level and one or more application specific usage tags describing the storage requirements of the virtual machine. If the policy profile matches the capability profile, storage resources are provisioned for the virtual machine from the storage system.Type: GrantFiled: March 30, 2015Date of Patent: May 29, 2018Assignee: EMC IP Holding Company LLCInventors: Dmitry Nikolayevich Tylik, Sergey Alexandrovich Alexeev, Alexey Vladimirovich Shusharin, Alexander Nickolaevich Alexeev, Karl M. Owen, Wadah Sayyed
-
Patent number: 9928183Abstract: Proving for a framework for propagating priorities to a memory subsystem in a computing system environment is disclosed herein. By way of example, a memory access handler is provided for managing memory access requests and determining associated priorities. The memory access handler includes logic configured for propagating memory requests and the associated priorities to lower levels of a computer hierarchy. A memory subsystem receives the memory access requests and the priorities.Type: GrantFiled: September 26, 2014Date of Patent: March 27, 2018Assignee: Ampere Computing LLCInventors: Kjeld Svendsen, Millind Mittal, Gaurav Singh
-
Patent number: 9928142Abstract: Systems, methods, and computer program products to perform an operation comprising determining, by a processor, a process identifier of a process associated with a page fault based on an interrupt source number, wherein the page fault was triggered by a coherent accelerator, executing the process on the processor to recreate the page fault on the processor, and resolving the page fault by an operating system executing on the processor.Type: GrantFiled: November 10, 2015Date of Patent: March 27, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Vishal C. Aslot, Bruce Mealey, Mark D. Rogers, Randal C. Swanberg
-
Patent number: 9904600Abstract: The present invention provides a mechanism for generating an initial copy in replication initialization. A request is received to replicate a source volume from a source node to a target node so as to generate the initial copy of the source volume in the target node. With respect to a current source data block of at least one source data block contained in the source volume, a search in the target node is performed for a target data block corresponding to the current source data block. Responsive to identifying the target data block, the initial copy of the source volume in the target node is updated using the target data block with the information from the current source data block.Type: GrantFiled: August 5, 2015Date of Patent: February 27, 2018Assignee: International Business Machines CorporationInventors: Ye Chen, Ruo Meng Hao, Ke Zhao Li, Shu Xi Wei
-
Patent number: 9880909Abstract: Processes are disclosed for embodiments of a caching system to utilize a snapshot file or other limited size data structure to store a portion of the data stored in a cache. The snapshot file can be stored on persistent or otherwise non-transitory storage so that, even in case of a restart, crash or power loss event, the data stored in the snapshot file persists and can be used by the caching system after starting up. The snapshot file can then be used to restore at least some data into the cache in cases where the cached data in the cache is lost. For example, in cases of a cold-start or restart, the caching system can load data from the snapshot file into the empty cache. This can increase the number of cache hits since the cache is repopulated with useful data at startup.Type: GrantFiled: May 19, 2016Date of Patent: January 30, 2018Assignee: Amazon Technologies, Inc.Inventors: Vishal Parakh, Antoun Joubran Kanawati
-
Patent number: 9817581Abstract: Various embodiments are directed to maintaining versions of data within a solid state memory. At least one request to write at least one dataset to a logical page of a solid state memory is received from a file system. At least one physical page in a data block of the solid state memory associated with the logical page is identified. A processor stores the dataset in the at least one physical page. At least one data versioning tag is associated with the at least one dataset in a data structure associated with the logical page. The data versioning tag identifies the at least one dataset as a given version of the logical page. The at least one dataset is maintained as accessible from the at least one physical page irrespective of subsequent write operations to the logical page in response to associating the at least one data versioning tag.Type: GrantFiled: January 18, 2017Date of Patent: November 14, 2017Assignee: International Business Machines CorporationInventors: Gokul B. Kandiraju, Hubertus Franke, David Craft