Patents Examined by Jasmine Song
-
Patent number: 9690712Abstract: Machine logic (for example, software) for cache management. comprising cache management method includes the following operations: determining, in response to a cache entry is created, a category for the cache entry; and determining a predicted time point of an invalidation event associated with the category, wherein occurrence of the invalidation event will cause invalidation of catching entries of the category; setting a valid period of the cache entry based on the predicted time point.Type: GrantFiled: August 12, 2015Date of Patent: June 27, 2017Assignee: International Business Machines CorporationInventors: Yang Gao, Jing Sun, Lei Sun, Zi Yan Tu, Yan Mei Zhang
-
Patent number: 9690794Abstract: A hash-optimized backup system and method takes data blocks and generates a probabilistically unique digital fingerprint of the content of each data block using a substantially collision-free algorithm. The process compares the generated fingerprint to a database of stored fingerprints and, if the generated fingerprint matches a stored fingerprint, the data block is determined to already have been backed up, and therefore does not need to be backed up again. Only if the generated fingerprint does not match a stored fingerprint is the data block backed up, at which point the generated fingerprint is added to the database of stored fingerprints. Because the algorithm is substantially collision-free, there is no need to compare actual data content if there is a hash-value match. The process can also be used to audit software license compliance, inventory software, and detect computer-file tampering such as viruses and malware.Type: GrantFiled: May 11, 2015Date of Patent: June 27, 2017Assignee: FalconStor, Inc.Inventors: Ronald S. Niles, Wai T. Lam
-
Patent number: 9685206Abstract: A memory device includes a memory cell array having a plurality of memory cells, and a page buffer unit including a plurality of page buffers configured to store a plurality of pieces of data sequentially read from some of the plurality of memory cells at different read voltage levels, respectively, and to perform a logic operation on the plurality of pieces of data, respectively. The memory device further includes a counting unit configured to count the number of memory cells that exist in each of a plurality of sections defined by the different read voltage levels, based on results of the logic operation.Type: GrantFiled: July 23, 2013Date of Patent: June 20, 2017Assignee: Samsung Electronics Co., Ltd.Inventors: Myung-Hoon Choi, Jae-Yong Jeong, Ki-Tae Park
-
Patent number: 9678868Abstract: A method for a device to optimize memory includes: when a newly created process needs to be added into a control group, detecting whether a total resource value of memory resources occupied by all processes in the control group at a current moment reaches a critical resource value; if it is detected that the total resource value of memory resources occupied by all processes in the control group at the current moment reaches the critical resource value, cancelling restriction of the predetermined resource threshold on the control group and adding the newly created process into the control group that is not restricted by the predetermined resource threshold; and performing a swap-out operation on memory resources occupied by an idle process in the control group, so that the total resource value of memory resources occupied by all processes in the control group is less than the predetermined resource threshold.Type: GrantFiled: June 5, 2015Date of Patent: June 13, 2017Assignee: Xiaomi Inc.Inventors: Feng Qiu, Jianchun Zhang, Qiwu Huang
-
Patent number: 9678874Abstract: An apparatus, system, and method are disclosed for managing eviction of data. A cache write module stores data on a non-volatile storage device sequentially using a log-based storage structure having a head region and a tail region. A direct cache module caches data on the non-volatile storage device using the log-based storage structure. The data is associated with storage operations between a host and a backing store storage device. An eviction module evicts data of at least one region in succession from the log-based storage structure starting with the tail region and progressing toward the head region.Type: GrantFiled: July 8, 2015Date of Patent: June 13, 2017Assignee: SanDisk Technologies LLCInventors: David Nellans, David Atkisson, Jim Peterson, Jeremy Garff, Michael Zappe
-
Patent number: 9665293Abstract: A method for managing data in a hierarchical storage device which includes primary storage disks and secondary storage disks. The primary storage disks have higher performance than the secondary storage disks. The storage device detects an access frequency of a data block stored in the secondary storage disks. Based on the access frequency of a data block, the storage device determines that the access frequency of the data block reaches an access threshold value. And then, based upon the determination, the storage device moves the data block to the primary storage disks. After that, the storage device divides the data block into a plurality of sub-blocks and detects an access frequency of each of the sub-blocks. Finally, the storage device moves one or more of the sub-blocks of which access frequencies are less than the access threshold value back to the secondary storage disks.Type: GrantFiled: May 7, 2015Date of Patent: May 30, 2017Assignee: Huawei Technologies Co., Ltd.Inventors: Yu Lin, Shangdong Liang
-
Patent number: 9652394Abstract: In one embodiment, a system includes a processor and a memory communicatively coupled to the processor. The processor is configured to receive a write request associated with a cache pool, which comprises a plurality of disks. The write request comprises data associated with the write request. The processor is additionally configured to select a first disk from the plurality of disks using a life parameter associated with the first disk. The processor is further configured to cause the data associated with the write request to be written to the first disk.Type: GrantFiled: February 16, 2015Date of Patent: May 16, 2017Assignee: Dell Products L.P.Inventors: Sandeep Agarwal, Anup Atluri, Ashokan Vellimalai, Deepu Syam Sreedhar M
-
Patent number: 9652162Abstract: A data storage device includes a central processing unit (CPU) executing an application and a hardware filter. A method of operation the data storage device may include initializing the hardware filter based on initialization information corresponding to a changed application when the application is changed so that the hardware filter supports the changed application, filtering read data that is output from a second memory based on filtering condition data, outputting the filtered data using the hardware filter that has been initialized, and transmitting the filtered data to a host via a first memory.Type: GrantFiled: February 16, 2015Date of Patent: May 16, 2017Assignee: Samsung Electronics Co., Ltd.Inventors: Man Keun Seo, Kwang Hoon Kim, Sang Kyoo Jeong
-
Patent number: 9632805Abstract: A firmware loading system including a first memory device and a calculation unit. The first memory device includes a first firmware code, wherein the first firmware code has a predetermined code and a plurality of parameter tables, and the parameter tables are arranged to set up a plurality of registers of a second memory device. The calculation unit is arranged to perform a firmware insertion procedure, wherein, during the firmware insertion procedure, the calculation unit selects one of the parameter tables according to a selection signal, compiles the selected parameter table and the predetermined code into a second firmware code, and writes the second firmware code in a flash memory of the second memory device.Type: GrantFiled: June 6, 2014Date of Patent: April 25, 2017Assignee: Silicon Motion, Inc.Inventors: Shih-Ming Wang, Chia-Fang Chang
-
Patent number: 9632928Abstract: Embodiments of the invention provide a method and system for dynamic memory management implemented in hardware. In an embodiment, the method comprises storing objects in a plurality of heaps, and operating a hardware garbage collector to free heap space. The hardware garbage collector traverses the heaps and marks selected objects, uses the marks to identify a plurality of the objects, and frees the identified objects. In an embodiment, the method comprises storing objects in a heap, each of at least some of the objects including a multitude of pointers; and operating a hardware garbage collector to free heap space. The hardware garbage collector traverses the heap, using the pointers of some of the objects to identify others of the objects; processes the objects to mark selected objects; and uses the marks to identify a group of the objects, and frees the identified objects.Type: GrantFiled: April 28, 2016Date of Patent: April 25, 2017Assignee: International Business Machines CorporationInventors: David F. Bacon, Perry S. Cheng, Sunil K. Shukla
-
Patent number: 9626295Abstract: Systems, methods, and computer programs are disclosed for scheduling tasks in a heterogeneous processor cluster architecture in a portable computing device. One embodiment is a system comprising a first processor cluster and a second processor cluster. The first processor cluster comprises a first shared cache, and the second processor cluster comprises a second shared cache. The system further comprises a controller in communication with the first and second processor clusters for performing task migration between the first and second processor clusters. The controller initiates execution of a task on a first processor in the first processor cluster. The controller monitors a processor workload for the first processor and a cache demand associated with the first shared cache while the task is running on the first processor in the first processor cluster. The controller migrates the task to the second processor cluster based on the processor workload and the cache demand.Type: GrantFiled: July 23, 2015Date of Patent: April 18, 2017Assignee: QUALCOMM INCORPORATEDInventors: Hee Jun Park, Bohuslav Rychlik
-
Patent number: 9620180Abstract: An electronic device includes a memory controller; a first memory device coupled to the memory controller; a second memory device coupled to the memory controller, the second memory device being a different type of memory from the first memory device; and a conversion circuit between the memory controller and the second memory device. The memory controller is configured to send a first command and first data to the first memory device according to a first timing scheme to access the first memory device, and send a second command and a packet to the conversion circuit according to the first timing scheme to access the second memory device. The conversion circuit is configured to receive the second command and the packet, and access the second memory device based on the second command and the packet.Type: GrantFiled: May 27, 2015Date of Patent: April 11, 2017Assignee: SAMSUNG ELECTRONICS CO., LTD.Inventors: Sun-Young Lim, Dong-Yang Lee, Young-Jin Cho, Oh-Seong Kwon
-
Patent number: 9606932Abstract: A storage device includes a magnetic storage unit storing data, a semiconductor storage unit, and a controller configured to determine whether or not to control the semiconductor storage unit to store a portion of the data, based on history of access to the data, and control the semiconductor storage unit to store the portion of the data according to the determination.Type: GrantFiled: February 17, 2015Date of Patent: March 28, 2017Assignee: Kabushiki Kaisha ToshibaInventor: Hiroaki Inoue
-
Patent number: 9606927Abstract: A system includes a set-associative storage container and a processor configured to generate a vector that is a random number. Two or more residue functions are applied to the vector that each produces a state signal including a different number of states based on the vector. A set status is determined that identifies whether each set of the set-associative storage container is enabled or disabled. One of the state signals is selected that has a same number of states as a number of the sets that are enabled. The selected state signal is mapped to the sets that are enabled to assign each of the states of the selected state signal to a corresponding one of the sets that are enabled. A set selection of the set-associative storage container is output based on the mapping to randomly select one of the sets that are enabled from the set-associative storage container.Type: GrantFiled: August 29, 2016Date of Patent: March 28, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Steven R. Carlough, Adam B. Collura
-
Patent number: 9607714Abstract: A method of training a command signal for a memory module. The method includes programming a memory controller into a mode where a single bit of an address signal is active for a single clock cycle. The method then programs a programmable delay line of the address signal with a delay value and performs initialization of the memory module. The memory module is then placed in a write leveling mode. A write leveling procedure is then performed and a response to the write leveling procedure is determined from the memory module. A determination is made whether the memory module is in a pass state or an error state based on the response.Type: GrantFiled: December 27, 2012Date of Patent: March 28, 2017Assignee: NVIDIA CORPORATIONInventors: Venkata Ramana Malladi, Tony Yuhsiang Cheng, Sharath Raghava, Ambuj Kumar, Arunjit Sahni, Paul Lam
-
Patent number: 9594678Abstract: Preventing duplicate entries of identical data in a storage device, including: receiving a write request to write data to the storage device; calculating one or more signatures for the data associated with the write request; determining whether any of the calculated signatures match a calculated signature contained in a recently read signature buffer, each entry in the recently read signature buffer associating a calculated signature for data that has been read with an address of a storage location within the storage device where the data is stored; and responsive to determining that one of the calculated signatures matches a calculated signature contained in the recently read signature buffer, determining whether the data associated with the calculated signature is a duplicate of data stored at a particular address that is associated with the calculated signature contained in the recently read signature buffer.Type: GrantFiled: May 27, 2015Date of Patent: March 14, 2017Assignee: Pure Storage, Inc.Inventors: Ronald S. Karr, Ethan L. Miller
-
Patent number: 9594677Abstract: A search server for which data stored in a hierarchical control server utilizing a plurality of storage devices is the object of a search, wherein the search server is designed to update a search index to data while the data exists in an upper-hierarchy storage of the hierarchical control server. Included in a computer system are: a storage unit for storing the usage status of an upper-hierarchy storage area of a hierarchical storage having the upper-hierarchy storage area and a lower-hierarchy storage area; and a determination unit for determining, according to the stored usage status, which process should be given priority between an indexing process for data that is an index-updating candidate among data stored in the hierarchical storage, or a migration process for moving the data to the lower-hierarchy storage area.Type: GrantFiled: March 11, 2013Date of Patent: March 14, 2017Assignee: Hitachi Solutions, Ltd.Inventors: Yohsuke Ishii, Shoji Kodama
-
Patent number: 9588892Abstract: A method for generating a virtual volume (VV) in a storage system architecture. The architecture comprises a host and one or more disk array subsystems. Each subsystem comprises a storage controller. One or more of the subsystems comprises a physical storage device (PSD) array. The method comprises the following steps: mapping the PSD array into a plurality of media extents (MEs), each of the MEs comprises a plurality of sections; providing a virtual pool (VP) to implement a section cross-referencing function, wherein a section index (SI) of each of the sections contained in the VP is defined by the VP to cross-reference VP sections to physical ME locations; providing a conversion method or procedure or function for mapping VP capacity into to a VV; and presenting the VV to the host. A storage subsystem and a storage system architecture performing the method are also provided.Type: GrantFiled: November 8, 2013Date of Patent: March 7, 2017Assignee: INFORTREND TECHNOLOGY, INC.Inventors: Michael Gordon Schnapp, Ching-Hua Fang
-
Patent number: 9588882Abstract: Methods and apparatus related to non-volatile memory page sector rotation are described. In one embodiment, logic rotates the order of one or more sectors by a rotation value prior to storage of the one or more sectors in a non-volatile memory device. Logic then rotates the one or more sectors back by the rotation value after reading the one or more sectors from the non-volatile memory device. Furthermore, at least one indirection block (corresponding to the one or more sectors) is stored in at least two different logical memory pages of the non-volatile memory. Other embodiments are also disclosed and claimed.Type: GrantFiled: December 2, 2013Date of Patent: March 7, 2017Assignee: Intel CorporationInventors: Scott E. Nelson, Zion S. Kwok
-
Patent number: 9582425Abstract: A computer-implemented method includes generating a vector that is a random number. Two or more residue functions are applied to the vector to produce a state signal including a different number of states. A set status of a set-associative storage container in a computer system is determined. The set status identifies whether each set of the set-associative storage container is enabled or disabled. One of the state signals is selected that has a same number of states as a number of the sets that are enabled. The selected state signal is mapped to the sets that are enabled to assign each of the states of the selected state signal to a corresponding one of the sets that are enabled. A set selection of the set-associative storage container is output based on the mapping to randomly select one of the sets that are enabled from the set-associative storage container.Type: GrantFiled: February 18, 2015Date of Patent: February 28, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Steven R. Carlough, Adam B. Collura