Patents by Inventor Yan Solihin

Yan Solihin has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9207980
    Abstract: Technologies are generally described for a multi-processor core and a method for transferring threads in a multi-processor core. In an example, a multi-core processor may include a first group including a first core and a second core. A first sum of the operating frequencies of the cores in the first group corresponds to a first total operating frequency. The multi-core processor may further include a second group including a third core. A second sum of the operating frequencies of the cores in the second group may correspond to a second total operating frequency that is substantially the same as the first total operating frequency. A hardware controller may be configured in communication with the first, second and third core. A memory may be configured in communication with the hardware controller and may include an indication of at least the first group and the second group.
    Type: Grant
    Filed: May 12, 2015
    Date of Patent: December 8, 2015
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Publication number: 20150331831
    Abstract: Techniques described herein generally include methods and systems related to circuit switching in a network-on-chip. According to embodiments of the disclosure, a network-on-chip may include routers configured to pre-reserve circuit-switched connections between a source node and a destination node before requested data are available for transmission from the source node to the destination node. Because the circuit-switched connection is already established between the source node and the destination node when the requested data are available for transmission from the source node, the data can be transmitted without the delay or with reduced delay caused by setup overhead of the circuit-switched connection. A connection setup message may be transmitted together with a memory request from the destination node to facilitate pre-reservation of the circuit-switched connection.
    Type: Application
    Filed: September 12, 2013
    Publication date: November 19, 2015
    Inventor: Yan SOLIHIN
  • Patent number: 9166930
    Abstract: Technologies generally described herein relate to waved time multiplexing. In some examples, a command flit can be transmitted from a sender node of a network-on-chip (“NOC”) to a destination node of the NOC via an intermediate node along a circuit-switched path. The command flit can include an interval period and a release duration. When the command flit has been transmitted, one or more data flits can be transmitted from the sender node to the destination node via the intermediate node along the circuit-switched path. The sender node, the destination node, and the intermediate node can be configured to reserve router resources of the sender node, the destination node, and the intermediate node respectively for circuit-switched traffic during a use duration of the interval period and to release the router resources for packet-switched traffic during the release duration in a waved time multiplex arrangement.
    Type: Grant
    Filed: October 30, 2012
    Date of Patent: October 20, 2015
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Patent number: 9158689
    Abstract: Technologies are described herein generally relate to aggregation of cache eviction notifications to a directory. Some example technologies may be utilized to update an aggregation table to reflect evictions of a plurality of blocks from a plurality of block addresses of at least one cache memory. An aggregate message can be generated, where the message specifies the evictions of the plurality of blocks as reflected in the aggregation table. The aggregate message can be sent to the directory. The directory can parse the aggregate message and update a plurality of directory entries to reflect the evictions from the cache memory as specified in the aggregate message.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: October 13, 2015
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Publication number: 20150286577
    Abstract: Technologies are generally described for methods and systems effective to maintain coherence in a multi-core processor on a die. In an example, a method for processing a request for a particular block in a particular region may include analyzing, by a first processor, a first cache to determine whether there is a block indicator in the first cache associated with the particular block. The method may further include when the first processor determines that the block indicator is not present in the first cache, analyzing, by the first processor, the first cache to determine whether there is a region indicator associated with the particular region. The method may further include when the first processor determines that the region indicator is not present in the first cache, the method further includes sending, by the first processor, the request to the directory in the tile.
    Type: Application
    Filed: October 25, 2012
    Publication date: October 8, 2015
    Inventor: Yan Solihin
  • Publication number: 20150243340
    Abstract: Techniques described herein generally include methods and systems related to designing and operating a DRAM device that has significantly reduced refresh energy use. A method for designing a DRAM optimizes or otherwise improves the DRAM for energy efficiency based on a measured or predicted failure probability of memory cells in the DRAM. The DRAM may be configured to operate at an increased refresh interval, thereby reducing DRAM refresh energy but causing a predictable portion of the memory cells in the DRAM to leak electrical energy too quickly to retain data. The DRAM is further configured with a selected a number of spare memory cells for replacing the “leaky” memory cells, so that operation of the DRAM at the increased refresh interval may result in little or no reduction in capacity of the DRAM.
    Type: Application
    Filed: September 1, 2013
    Publication date: August 27, 2015
    Inventor: Yan Solihin
  • Publication number: 20150242240
    Abstract: Technologies are generally described for a multi-processor core and a method for transferring threads in a multi-processor core. In an example, a multi-core processor may include a first group including a first core and a second core. A first sum of the operating frequencies of the cores in the first group corresponds to a first total operating frequency. The multi-core processor may further include a second group including a third core. A second sum of the operating frequencies of the cores in the second group may correspond to a second total operating frequency that is substantially the same as the first total operating frequency. A hardware controller may be configured in communication with the first, second and third core. A memory may be configured in communication with the hardware controller and may include an indication of at least the first group and the second group.
    Type: Application
    Filed: May 12, 2015
    Publication date: August 27, 2015
    Inventor: YAN SOLIHIN
  • Publication number: 20150220437
    Abstract: Technologies are generally described for a cache coherence directory in multi-processor architectures. In an example, a directory in a die may receive a request for a particular block. The directory may determine a block aging threshold relating to a likelihood that data blocks, including the particular data block, are stored in one or more caches in the die. The directory may further analyze a memory to identify a particular cache indicated as storing the particular data block and identify a number of cache misses for the particular cache. The directory may identify a time when an event occurred for the particular data block and determine whether to send the request for the particular data block to the particular cache based on the aging threshold, the time of the event, and the number of cache misses.
    Type: Application
    Filed: April 15, 2015
    Publication date: August 6, 2015
    Inventor: YAN SOLIHIN
  • Patent number: 9098406
    Abstract: Technologies described herein generally describe technologies for managing addressable memories in a heterogeneous multicore chip. Technologies may be adapted to determine whether swapping a first data segment and a second data segment is suitable. The first data segment may be stored in a first addressable memory, and the second data segment may be stored in a second addressable memory. If the swapping is determined to be suitable, then the technologies may be adapted to swap the first data segment and the second data segment. As a result of the swap, the first data segment will be stored in the second addressable memory, and the second data segment will be stored in the first addressable memory. The technologies may also be adapted to update corresponding swap status indicators to indicate that the first data segment and the second data segment have moved.
    Type: Grant
    Filed: January 23, 2012
    Date of Patent: August 4, 2015
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Publication number: 20150186186
    Abstract: Technologies are generally described for a method, device and architecture effective to allocate resources. In an example, the method may include associating first and second resources with first and second resource identifiers and mapping the first and resource identifiers to first and second sets of addresses in a memory, respectively. The method may include identifying that the first resource is at least partially unavailable. The method may include mapping the second resource identifier to at least one address of the first set of addresses in the memory when the first resource is identified as at least partially unavailable. The method may include receiving a request for the first resource, wherein the request identifies a particular address of the addresses in the first set of addresses. The method may include analyzing the particular address to identify a particular resource and allocating the request to the particular resource.
    Type: Application
    Filed: March 13, 2015
    Publication date: July 2, 2015
    Inventor: YAN SOLIHIN
  • Patent number: 9053057
    Abstract: Technologies are generally described for a cache coherence directory in multi-processor architectures. In an example, a directory in a die may receive a request for a particular block. The directory may determine a block aging threshold relating to a likelihood that data blocks, including the particular data block, are stored in one or more caches in the die. The directory may further analyze a memory to identify a particular cache indicated as storing the particular data block and identify a number of cache misses for the particular cache. The directory may identify a time when an event occurred for the particular data block and determine whether to send the request for the particular data block to the particular cache based on the aging threshold, the time of the event, and the number of cache misses.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: June 9, 2015
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Patent number: 9047137
    Abstract: Technologies are generally described for a multi-processor core and a method for transferring threads in a multi-processor core. In an example, a multi-core processor may include a first group including a first core and a second core. A first sum of the operating frequencies of the cores in the first group corresponds to a first total operating frequency. The multi-core processor may further include a second group including a third core. A second sum of the operating frequencies of the cores in the second group may correspond to a second total operating frequency that is substantially the same as the first total operating frequency. A hardware controller may be configured in communication with the first, second and third core. A memory may be configured in communication with the hardware controller and may include an indication of at least the first group and the second group.
    Type: Grant
    Filed: April 10, 2012
    Date of Patent: June 2, 2015
    Assignee: EMPIRE TECHNOLOGY DEVELOPMENT LLC
    Inventor: Yan Solihin
  • Patent number: 9047194
    Abstract: Technologies generally described herein relate to cache directories in multi-core processors. Various examples may include, methods, systems, and devices. A first tile may receive a request to transfer a thread from the first tile to a second tile. An instruction may be sent from the first tile to map a virtual cache identifier to identifiers of caches of the first and second tiles. The thread may be transferred from the first tile to the second tile. Thereafter, a request may be generated for a data block. After a determination that the data block is not stored in the second tile's cache, and that the virtual cache identifier is mapped to the first and second cache identifiers, a request may be sent for the data block to the first tile.
    Type: Grant
    Filed: July 18, 2012
    Date of Patent: June 2, 2015
    Assignee: EMPIRE TECHNOLOGY DEVELOPMENT LLC
    Inventor: Yan Solihin
  • Publication number: 20150127912
    Abstract: Techniques described herein generally include methods and systems related to cache partitioning in a chip multiprocessor. Cache-partitioning for a single thread or application between multiple data sources improves energy or latency efficiency of a chip multiprocessor by exploiting variations in energy cost and latency cost of the multiple data sources. Partition sizes for each data source may be selected using an optimization algorithm that minimizes or otherwise reduces latencies or energy consumption associated with cache misses.
    Type: Application
    Filed: August 29, 2013
    Publication date: May 7, 2015
    Inventor: Yan Solihin
  • Patent number: 8990828
    Abstract: Technologies are generally described for a method, device and architecture effective to allocate resources. In an example, the method may include associating first and second resources with first and second resource identifiers and mapping the first and resource identifiers to first and second sets of addresses in a memory, respectively. The method may include identifying that the first resource is at least partially unavailable. The method may include mapping the second resource identifier to at least one address of the first set of addresses in the memory when the first resource is identified as at least partially unavailable. The method may include receiving a request for the first resource, wherein the request identifies a particular address of the addresses in the first set of addresses. The method may include analyzing the particular address to identify a particular resource and allocating the request to the particular resource.
    Type: Grant
    Filed: August 22, 2012
    Date of Patent: March 24, 2015
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Patent number: 8924754
    Abstract: Technologies are described herein for adapting a processor core on a multicore processor to achieve a quality of service target. Some example technologies may identify a target level of a resource on the computer. The technologies may identify a first utilization value and a second utilization value of the resource when the processor core operates at a first frequency and a second frequency. The technologies may generate a linear interpolation between a first point and a second point. Coordinates of the first point may include the first frequency and the first utilization value. Coordinates of the second point may include the second frequency and the second utilization value. The technologies may set the processor core to operate at a third frequency, which can be specified as one of the coordinates in an intersection point between the linear interpolation and the target level.
    Type: Grant
    Filed: February 2, 2012
    Date of Patent: December 30, 2014
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Publication number: 20140366030
    Abstract: Technologies are generally described for methods, systems and processors effective to migrate a thread. The thread may be migrated from the first core to the second core. The first and the second core may be configured in communication with a first cache. The first core may generate a request for a first data block from the first cache. In response to a cache miss in the first cache for the first data block, the first core may generate a request for the first data block from a memory. The first core may coordinate with a second cache to store the first data block in the second cache. The thread may be migrated from the second core to a third core. The second core and third core may be configured in communication with the second cache.
    Type: Application
    Filed: June 6, 2013
    Publication date: December 11, 2014
    Applicant: EMPIRE TECHNOLOGY DEVELOPMENT, LLC
    Inventor: Yan Solihin
  • Patent number: 8874849
    Abstract: Technologies are generally described for a system for copying particular data in a particular sector of a particular block from a memory into a cache, in some examples, the cache includes a tag array and a data array. In some examples, a processor may be adapted to copy data in the particular sector from the memory into a way of the data array starling at a start sector. In some examples, the processor may be adapted to update the tag array to identify the particular sector. In some examples, the processor may be adapted to update the tag array to identify the way in the data array, in some examples, the processor may be adapted to update the tag array to identify the start sector.
    Type: Grant
    Filed: April 21, 2010
    Date of Patent: October 28, 2014
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Patent number: 8868800
    Abstract: Technologies are generally described for methods and systems effective to provide accelerator buffer access. An operating system may allocate a range of addresses in virtual address spaces and a range of addresses in a buffer mapped region of a physical (or main) memory. A request to read from, or write to, data by an application may be read from, or written to, the virtual address space. A memory management unit may then map the read or write requests from the virtual address space to the main or physical memory. Multiple applications may be able to operate as if each application has exclusive access to the accelerator and its buffer. Multiple accesses to the buffer by application tasks may avoid a conflict because the memory controller may be configured to fetch data based on respective application identifiers assigned to the applications. Each application may be assigned a different application identifier.
    Type: Grant
    Filed: March 12, 2013
    Date of Patent: October 21, 2014
    Assignee: Empire Technology Development LLC
    Inventor: Yan Solihin
  • Publication number: 20140286179
    Abstract: Technologies are generally described for methods and systems effective to implement hybrid routers in multicore architectures. A first tile may include a processor core, a cache configured to be in communication with the processor core and a router configured to be in communication with the cache. The router may be effective to move data with a packet switching channel or a circuit switching channel. The first tile may include switching logic configured to be in communication with the cache and the router. The switching logic may be effective to receive a routing objective that may relate to energy or delay costs in routing data through the network. The switching logic may select one of the packet switching channel or the circuit switching channel to move the data through the network based on the routing objective.
    Type: Application
    Filed: March 20, 2013
    Publication date: September 25, 2014
    Applicant: EMPIRE TECHNOLOGY DEVELOPMENT, LLC
    Inventor: Yan Solihin