Patents Examined by Yaima Rigol
  • Patent number: 9760283
    Abstract: Systems and methods for managing sparsely updated counters in memory include, for a given interval of time and N counters associated with the given interval, managing a first set of the N counters in a first level of storage in the memory, wherein the first level of storage utilizes a hash table to store a counter identifier and a value for each of the first set; and responsive to filling up the first level of storage for a given user in the given interval, managing the first set and a second set of the N counters in a second level of storage in the memory, wherein the set utilizes memory buckets to incrementally store the first set and the second set.
    Type: Grant
    Filed: September 28, 2015
    Date of Patent: September 12, 2017
    Assignee: Zscaler, Inc.
    Inventors: Satish Kalipatnapu, Sushil Pangeni, Kumar Gaurav, Chakkaravarthy Periyasamy Balaiah
  • Patent number: 9760300
    Abstract: Memory objects may be allocated and re-allocated within a computer system to consolidate infrequently used memory objects to memory regions that may be operated at lower power. During initial allocation of memory objects, the objects may be placed into high power regions. During subsequent periodic analysis, memory objects in high power regions that are infrequently used may be relocated to lower power regions while memory objects in low power regions that are frequently used may be moved to the high power regions. Various heuristics or logic may be used to handle unmovable objects, shared objects, and other types of objects.
    Type: Grant
    Filed: November 30, 2015
    Date of Patent: September 12, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Bruce L. Worthington, Vishal Sharda, Qi Zhang, Swaroop Kavalanekar
  • Patent number: 9715410
    Abstract: Methods, systems, and computer program products for accessing a protected function are provided. A computer-implemented method includes allocating and initializing a guest virtual address for a virtual machine function. A user bit and a valid bit are configured to protect a page associated with the guest virtual address. Once the user bit and the valid bit are configured, the virtual machine function is mapped to the guest virtual address. Supervisor mode is requested in order to access the virtual machine function. In supervisor mode, the virtual machine function is validated and executed.
    Type: Grant
    Filed: January 30, 2015
    Date of Patent: July 25, 2017
    Assignee: Red Hat Israel, Ltd.
    Inventors: Paolo Bonzini, Michael Tsirkin
  • Patent number: 9690753
    Abstract: Disclosed are various embodiments for caching of a hierarchical model of a network site. Upon receiving a request to resolve a network site, a hierarchical site model associated with a network site is retrieved. A directory model associated with the network site is also retrieved. A caching process is initiated that retrieves at least a subset of page models and loads them into a cache. The caching process is executed in parallel with the processing of the hierarchical site model.
    Type: Grant
    Filed: March 10, 2015
    Date of Patent: June 27, 2017
    Assignee: Amazon Technologies, Inc.
    Inventor: Gheorghe Aprotosoaie
  • Patent number: 9678677
    Abstract: Provided are a computer program product, system and method for determining adjustments to the spare space in a storage device unavailable to a user based on a current consumption profile of a storage device. A current write amplification is based on storage writes to a media at a storage device and host writes from a host to the storage device. An adjustment to the current write amplification is determined to produce an adjusted write amplification based on an estimated lifespan of the storage device, a maximum storage writes for the storage device, and the storage writes at the storage device since the storage device was powered-on. A determination is made to an adjustment to spare space based on the adjusted write amplification. The spare space and the free space available to the user are reconfigured to adjust the spare space by the determined adjustment to the spare space.
    Type: Grant
    Filed: December 9, 2014
    Date of Patent: June 13, 2017
    Assignee: INTEL CORPORATION
    Inventor: Knut S. Grimsrud
  • Patent number: 9678675
    Abstract: A mechanism is provided for thin provisioning. An original time-domain sequence of a load parameter of storage resources already allocated to an application program is collected. A future load peak time period of the storage resources already allocated to the application program is determined based on the collected original time-domain sequence of the load parameter. A new storage resource unit from a high-speed storage is allocated in response to receipt of a request to allocate the new storage resource unit to the application program in the future load peak time period. On an occasion of thin provisioning, whether the physical storage resources newly allocated to the application program are located in a low-speed storage or a high-speed storage is determined according to the accesses of the application program to the already-allocated physical storage resources.
    Type: Grant
    Filed: April 15, 2016
    Date of Patent: June 13, 2017
    Assignee: International Business Machines Corporation
    Inventors: Kuan Feng, Hui X. Gu, Yao Ma, Shu Yang, Jun W. Zhang
  • Patent number: 9671958
    Abstract: A method of and system for managing a data set stored on units of storage space in a storage facility is disclosed. The method and system may include identifying prospect extents of the data set. The prospect extents may include a first prospect extent stored on a first unit of storage space and a second prospect extent stored on a second unit of storage space. The method and system may include congregating the first prospect extent and the second prospect extent on a destination unit of storage space in the storage facility.
    Type: Grant
    Filed: April 6, 2016
    Date of Patent: June 6, 2017
    Assignee: International Business Machines Corporation
    Inventors: Kyle B. Dudgeon, David C. Reed, Esteban Rios, Max D. Smith
  • Patent number: 9671979
    Abstract: In an approach for writing data on a tape using a file system, a processor receives a first write request of a first file. A processor obtains data of the first file. A processor writes the data of the first file on a tape. A processor receives a second write request of a second file prior to completion of writing the data of the first file on the tape. A processor adds information about the second file to a first list, wherein the first list includes files waiting to write. Subsequent to writing the data of the first file on the tape, a processor obtains data of the second file based on the first list. A processor writes the data of the second file after the first file on the tape.
    Type: Grant
    Filed: August 11, 2016
    Date of Patent: June 6, 2017
    Assignee: International Business Machines Corporation
    Inventors: Tohru Hasegawa, Hiroshi Itagaki, Shinsuke Mitsuma, Noriko Yamamoto, Terue Watanabe
  • Patent number: 9665498
    Abstract: Memory space is managed to release storage area occupied by pages similar to stored reference pages. The memory is examined to find two similar pages, and a transformation is obtained. The transformation enables reconstructing one page from the other. The transformation is then stored and one of the pages is discarded to release its memory space. When the discarded page is needed, the remaining page is fetched, and the transformation is applied to the page to regenerate the discarded page.
    Type: Grant
    Filed: July 30, 2008
    Date of Patent: May 30, 2017
    Assignee: VMware, Inc.
    Inventor: Vladimir L. Kiriansky
  • Patent number: 9658896
    Abstract: A method to optimize workload across a plurality of storage devices of a storage system, where the method monitors a workload of a first storage device belonging to a first tier of the storage system, calculates a performance of the workload of the first storage device belonging to a first tier of the storage system, interpolates a performance threshold for the first storage device using the workload pattern of the first storage device and a profile of the first storage device, the profile identifying a benchmark performance of the first storage device, and optimizes a usage of the first storage device within the storage system to improve a performance of the first storage device.
    Type: Grant
    Filed: May 16, 2012
    Date of Patent: May 23, 2017
    Assignee: International Business Machines Corporation
    Inventors: Lawrence Y. Chiu, Chao Guang Li, Yang Liu, Paul H. Muench
  • Patent number: 9658924
    Abstract: An event historian system merges stored event data snapshots into sorted event storage blocks. The system determines that a storage block contains a plurality of snapshots to be merged. A new snapshot is created into which the plurality of snapshots will be merged. The event data within the snapshots is combined and recorded into the new snapshot in a sorted order. The index files within the snapshots are combined and recorded into the new snapshot.
    Type: Grant
    Filed: December 12, 2014
    Date of Patent: May 23, 2017
    Assignee: Schneider Electric Software, LLC
    Inventors: Brian Kenneth Erickson, Bala Kamesh Sista, Abhijit Manushree, Vinay T. Kamath
  • Patent number: 9652375
    Abstract: Memory corruption detection technologies are described. An example processing system includes a processing core including a register to store an address of a memory corruption detection (MCD) table. The processing core can allocate a memory block of pre-determined size and can allocate a plurality of buffers within the memory block using a memory metadata word stored in an entry of the MCD table. The memory metadata word can include metadata that can identify a first bit range within the memory block for a first buffer and a second bit range within the memory block for a second buffer.
    Type: Grant
    Filed: June 22, 2015
    Date of Patent: May 16, 2017
    Assignee: Intel Corporation
    Inventors: Tomer Stark, Ron Gabor, Joseph Nuzman
  • Patent number: 9652291
    Abstract: Methods and systems for providing a plurality of applications with concurrent access to data are disclosed. One such method includes identifying attributes of an expected data set to be accessed concurrently by the applications, initializing a shared cache with a column data store configured to store the expected data set in columns, and creating a memory map for accessing a physical memory location in the shared cache. The method may also include mapping the applications' data access requests to the shared cache with the memory map. Only one instance of the expected data set is stored in memory, so each application is not required to create additional instances of the expected data set in the application's memory address space. Therefore, larger expected data sets may be entirely stored in memory without limiting the number of applications running concurrently.
    Type: Grant
    Filed: June 3, 2016
    Date of Patent: May 16, 2017
    Assignee: Palantir Technologies, Inc.
    Inventors: Punya Biswal, Beyang Liu, Eugene Marinelli, Nima Ghamsari
  • Patent number: 9652381
    Abstract: Systems, methods and/or devices are used to enable garbage collection of a sub-block of an individually erasable block of a storage medium in a storage device. In one aspect, the method includes determining a first trigger parameter in accordance with one or more operating conditions of a first sub-block of an erase block in the storage medium, and determining a second trigger parameter in accordance with one or more operating conditions of a second sub-block of the erase block in the storage medium. In accordance with a determination that the first trigger parameter meets a first vulnerability criterion, garbage collection of the first sub-block is enabled. Furthermore, in accordance with a determination that the second trigger parameter meets a second vulnerability criterion, garbage collection of the second sub-block is enabled.
    Type: Grant
    Filed: June 20, 2014
    Date of Patent: May 16, 2017
    Assignee: SANDISK TECHNOLOGIES LLC
    Inventors: James M. Higgins, James Fitzpatrick, Mark Dancho
  • Patent number: 9639296
    Abstract: Systems and methods are disclosed which facilitate management of thin provisioned data storage. Specifically, portions of thinly provisioned data stores may be deallocated when they contain invalid data, such as data deleted by a user. A user may transmit notifications, which may include delete notifications, such as TRIM commands, to a provider of the data store (or to the data store itself) that data has been deleted. A management component may modify the data store, or metadata corresponding to the data store, to reflect the deletion. The management component may further monitor portions of the data store to determine whether individual portions contain entirely invalid data. If so, the portion may be deallocated from the thin provisioned data store, resulting in more efficient thin provisioning. Deallocation may be enabled even where deletion notifications from a user do not correspond directly to allocated storage portions.
    Type: Grant
    Filed: April 5, 2013
    Date of Patent: May 2, 2017
    Assignee: Amazon Technologies, Inc.
    Inventor: Pradeep Vincent
  • Patent number: 9632712
    Abstract: A method includes, in a data storage device that includes a non-volatile memory having multiple memory dies, determining whether one or more metablocks are metablock update candidates based on relinking metrics corresponding to the one or more metablocks. Each memory die includes multiple blocks of storage elements, and metablocks are formed through linking of blocks from the multiple memory dies. The method also includes comparing a number of the metablock update candidates to a relinking pool threshold. The method further includes, in response to the number of the metablock update candidates satisfying the relinking pool threshold, updating the linking of the blocks of the metablock update candidates to form updated metablocks. Linking of blocks may be updated by changing fields of a metablock data table, and blocks may be grouped based on block health values to extend an average useful life of the updated metablocks.
    Type: Grant
    Filed: July 2, 2014
    Date of Patent: April 25, 2017
    Assignee: SANDISK TECHNOLOGIES LLC
    Inventor: Zhenlei Shen
  • Patent number: 9612770
    Abstract: A method for memory management, the method may include receiving an updated portion of a data unit, the data unit is associated with a logical data entity; wherein the updated portion is smaller than a granularity of a mapping data structure used for retrieval of the data unit; and creating, by the storage system an extended data unit that comprises (i) an original content of the data unit, (ii) the updated portion and, (iii) updated portion metadata; wherein the updated portion metadata comprises (a) updated portion retrieval information for retrieving the updated portion, and (b) updated portion snapshot information indicative of at least one snapshot associated with the updated portion.
    Type: Grant
    Filed: July 3, 2014
    Date of Patent: April 4, 2017
    Assignee: INFINIDAT LTD.
    Inventor: Ido Ben-Tsion
  • Patent number: 9606934
    Abstract: Mechanisms are provided for performing a matrix operation. A processor of a data processing system is configured to perform cluster-based matrix reordering of an input matrix. An input matrix, which comprises nodes associated with elements of the matrix, is received. The nodes are clustered into clusters based on numbers of connections with other nodes within and between the clusters, and the clusters are ordered by minimizing a total length of cross cluster connections between nodes of the clusters, to thereby generate a reordered matrix. A lookup table is generated identifying new locations of nodes of the input matrix, in the reordered matrix. A matrix operation is then performed based on the reordered matrix and the lookup table.
    Type: Grant
    Filed: February 2, 2015
    Date of Patent: March 28, 2017
    Assignee: International Business Machines Corporation
    Inventors: Emrah Acar, Rajesh R. Bordawekar, Michele M. Franceschini, Luis A. Lastras-Montano, Ruchir Puri, Haifeng Qian, Livio B. Soares
  • Patent number: 9606919
    Abstract: A method and apparatus to facilitate shared pointers in a heterogeneous platform. In one embodiment of the invention, the heterogeneous or non-homogeneous platform includes, but is not limited to, a central processing core or unit, a graphics processing core or unit, a digital signal processor, an interface module, and any other form of processing cores. The heterogeneous platform has logic to facilitate sharing of pointers to a location of a memory shared by the CPU and the GPU. By sharing pointers in the heterogeneous platform, the data or information sharing between different cores in the heterogeneous platform can be simplified.
    Type: Grant
    Filed: October 13, 2014
    Date of Patent: March 28, 2017
    Assignee: Intel Corporation
    Inventors: Yang Ni, Rajkishore Barik, Ali-Reza Adl-Tabatabai, Tatiana Shpeisman, Jayanth N. Rao, Ben J. Ashbaugh, Tomasz Janczak
  • Patent number: 9588884
    Abstract: A method, and system for carrying out the method, for in-place reorganization of content, organized according to an original organization scheme, which is stored in a non-volatile storage of a device, to a target organization scheme. The method includes obtaining instructions to reorganize the content to a defined target organization scheme. The method further includes (i) generating, based on the instructions and applying target organization logic to a virtual storage, a sequence of update commands for generating, in the non-volatile storage, at least one target storage unit organized according to the defined target organization scheme, and (ii) executing the update commands on the non-volatile storage. Potential write-before-read conflicts may be identified based on the sequence of update commands, and potential conflicts resolved by reordering, adding, deleting, altering commands, and/or backing up content.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: March 7, 2017
    Assignee: RED BEND LTD.
    Inventors: Evyatar Meller, Yoav Salarios