Patents Examined by Hamdy S. Ahmed
  • Patent number: 9021195
    Abstract: In one embodiment, batch entries include multiple content-addressable memory (CAM) entries, and CAM entries are allowed to be shared among different batch entries. For example, two or more batch entries might have a common set of bits (e.g., representing an address, an address prefix, etc.). Rather than consuming bits of multiple CAM entries, a single CAM entry can be programmed with this common information. Other CAM entries associated with different batch entries are programmed with the distinguishing/different values. A batch lookup operation on a batch entry of two or more CAM entries requires multiple lookup operations on the CAM entries. One embodiment uses a batch mask vector to provide information to decode what CAM entries are shared among which batch entries during a series of lookup operations, which can be performed in one or both directions through the CAM entries.
    Type: Grant
    Filed: August 26, 2012
    Date of Patent: April 28, 2015
    Assignee: Cisco Technology, Inc.
    Inventors: Doron Shoham, Shimon Listman
  • Patent number: 9015444
    Abstract: A method used in an access module that uses a file system to manage a nonvolatile memory of an information recording module enables an available storage space to be calculated in a short time before file data is recorded, and shortens the time required from initialization of the file system to recording. An access module (1) manages information about area management of the file system configured in an information recording module in units of fixed-length blocks. A divisional available storage space calculation unit (103) performs an available storage space calculation process in units of the fixed-length blocks, and completes preparations for recording when detecting a minimum required storage space for recording file data and enables recording of the file data. This shortens the time required from initialization of the file system to recording.
    Type: Grant
    Filed: June 5, 2009
    Date of Patent: April 21, 2015
    Assignee: Panasonic Intellectual Property Management Co., Ltd.
    Inventors: Takuji Maeda, Tsutomu Mori, Masafumi Nosaka, Takeshi Umemoto
  • Patent number: 9009445
    Abstract: A system and method for efficiently handling translation look-aside buffer (TLB) misses. A memory management unit (MMU) detects when a given virtual address misses in each available translation-lookaside-buffer (TLB). The MMU determines whether a memory access operation associated with the given virtual address is the oldest, uncompleted memory access operation in a scheduler. If this is the case, a demand table walk (TW) request may be stored in an available entry in a TW queue. During this time, the utilization of the memory subsystem resources may be low. While a demand TW request is stored in the TW queue, subsequent speculative TW requests may be stored in the TW queue. When the TW queue does not store a demand TW request, no more entries of the TW queue may be allocated to store TW requests.
    Type: Grant
    Filed: October 20, 2011
    Date of Patent: April 14, 2015
    Assignee: Apple Inc.
    Inventor: Jesse Pan
  • Patent number: 9003145
    Abstract: Computer system comprising a first primary storage apparatus and a first secondary storage apparatus and a second primary storage apparatus and a second secondary storage apparatus, a first virtual volume of the second primary storage apparatus is externally connected to a first primary volume of the first primary storage apparatus, a total cache-through mode is configured as a cache mode in a case where a read command is supplied by the first host apparatus, unique information for the first primary volume is configured for the first virtual volume, a path to the first primary volume is switched from the first host apparatus to a path via the first virtual volume, and a second primary volume in the second primary storage apparatus is configured to form a copy pair with a second secondary volume in the second secondary storage apparatus.
    Type: Grant
    Filed: August 13, 2014
    Date of Patent: April 7, 2015
    Assignee: Hitachi, Ltd.
    Inventors: Kenichi Sawa, Keishi Tamura, Satoru Ozaki
  • Patent number: 8996820
    Abstract: A multi-core processor system includes a processor configured to establish coherency of shared data values stored in a cache memory accessed by a multiple cores; detect a first thread executed by a first core among the cores; identify upon detecting the first thread, a second thread under execution by a second core other than the first core and among the cores; determine whether shared data commonly accessed by the first thread and the second thread is present; and stop establishment of coherency for a first cache memory corresponding to the first core and a second cache memory corresponding to the second core, upon determining that no shared data commonly accessed is present.
    Type: Grant
    Filed: December 12, 2012
    Date of Patent: March 31, 2015
    Assignee: Fujitsu Limited
    Inventors: Takahisa Suzuki, Koichiro Yamashita, Hiromasa Yamauchi, Koji Kurihara
  • Patent number: 8984243
    Abstract: Customers of shared resources in a multi-tenant environment can modify operational parameters of electronic resources. A customer can be provisioned a data volume of a specified size, storage type (e.g., hard disk drive or solid state device), committed rate of input/output operations per second, and/or geographical location, for example. The customer can subsequently modify any such operational parameters by submitting an appropriate request, or the operational parameters can be adjusted automatically based on any of a number of criteria. Data volumes for the customer can be migrated, split, or combined in order to provide the shared resources in accordance with the modified operational parameters.
    Type: Grant
    Filed: February 22, 2013
    Date of Patent: March 17, 2015
    Assignee: Amazon Technologies, Inc.
    Inventors: Tao Chen, Marc John Brooker, Haijun Zhu
  • Patent number: 8977815
    Abstract: A processing pipeline 6, 8, 10, 12 is provided with a main query stage 20 and a fetch stage 22. A buffer 24 stores program instructions which have missed within a cache memory 14. Query generation circuitry within the main query stage 20 and within a buffer query stage 26 serve to concurrently generate a main query request and a buffer query request sent to the cache memory 14. The cache memory returns a main query response and a buffer query response. Arbitration circuitry 28 controls multiplexers 30, 32 and 34 to direct the program instruction at the main query stage 20, and the program instruction stored within the buffer 24 and the buffer query stage 26 to pass either to the fetch stage 22 or to the buffer 24. The multiplexer 30 can also select a new instruction to be passed to the main query stage 20.
    Type: Grant
    Filed: November 29, 2010
    Date of Patent: March 10, 2015
    Assignee: ARM Limited
    Inventors: Frode Heggelund, Rune Holm, Andreas Due Engh-Halstvedt, Edvard Feilding
  • Patent number: 8935482
    Abstract: The present disclosure discloses a method, a system and a server of removing a distributed caching object. In one embodiment, the method receives a removal request, where the removal request includes an identifier of an object. The method may further apply consistent Hashing to the identifier of the object to obtain a Hash result value of the identifier, locates a corresponding cache server based on the Hash result value and renders the corresponding cache server to be a present cache server. In some embodiments, the method determines whether the present cache server is in an active status and has an active period greater than an expiration period associated with the object. Additionally, in response to determining that the present cache server is in an active status and has an active period greater than the expiration period associated with the object, the method removes the object from the present cache server.
    Type: Grant
    Filed: August 26, 2014
    Date of Patent: January 13, 2015
    Assignee: Alibaba Group Holding Limited
    Inventors: Gang Liu, Qing Ren, Wensong Zhang
  • Patent number: 8924639
    Abstract: Various embodiments of the present invention are directed multi-core memory modules. In one embodiment, a memory module (500) includes memory chips, and a demultiplexer register (502) electronically connected to each of the memory chips and a memory controller. The memory controller groups one or more of the memory chips into at least one virtual memory device in accordance with changing performance and/or energy efficiency needs. The demultiplexer register (502) is configured to receive a command indentifying one of the virtual memory devices and send the command to the memory chips of the identified virtual memory device. In certain embodiments, the memory chips can be dynamic random access memory chips.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: December 30, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Jung Ho Ahn, Norman P. Jouppi, Robert S. Schreiber
  • Patent number: 8914601
    Abstract: In a multi-processor (e.g., multi-core) computer system, several processors can simultaneously access data without corruption thereof by: designating to each processor a portion of a hash table containing the data; by allowing each processor to access only those data elements belonging to the portion of the hash table designated to that processor; and by sending, via a network, other data elements to the processors that are designated the portions of the hash table to which the other data elements belong. The network avoids memory contention at each processor without requiring a memory-based lock. This Abstract is provided for the sole purpose of complying with the Abstract requirement rules that allow a reader to quickly ascertain the subject matter of the disclosure contained herein. This Abstract is submitted with the explicit understanding that it will not be used to interpret or to limit the scope or the meaning of the claims.
    Type: Grant
    Filed: October 18, 2011
    Date of Patent: December 16, 2014
    Assignee: Reservoir Labs, Inc.
    Inventors: Richard A. Lethin, Jordi Ros-Giralt, Peter Szilagyi
  • Patent number: 8904101
    Abstract: In one embodiment, multiple content-addressable memory entries are associated with each other to effectively form a batch content-addressable memory entry that spans multiple physical entries of the content-addressable memory device. To match against this content-addressable memory entry, multiple lookup operations are required—i.e., one lookup operation for each combined physical entry. Further, one embodiment provides that a batch content-addressable memory entry can span one, two, three, or more physical content-addressable memory entries, and batch content-addressable memory entries of varying sizes could be programmed into a single content-addressable memory device. Thus, a lookup operation might take two lookup iterations on the physical entries of the content-addressable memory device, with a next lookup operation taking a different number of lookup iterations (e.g., one, three or more).
    Type: Grant
    Filed: August 26, 2012
    Date of Patent: December 2, 2014
    Assignee: Cisco Technology, Inc.
    Inventors: Doron Shoham, Ilan Lisha, Yossi Socoletzky
  • Patent number: 8898422
    Abstract: A workload-aware distributed data processing apparatus and method for processing large data based on hardware acceleration are provided. The data processing apparatus includes a memory buffer including partitions. The data processing apparatus further includes a partition unit configured to distribute a mapping result to the partitions based on a partition proportion scheme. The data processing apparatus further includes a reduce node configured to receive content of a corresponding one of the partitions, and perform a reduction operation on the content to generate a reduce result.
    Type: Grant
    Filed: August 27, 2012
    Date of Patent: November 25, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Myung-June Jung, Ju-Pyung Lee
  • Patent number: 8892815
    Abstract: A memory system may include an optimized data compaction algorithm. The compaction may include transferring only valid data from a source block to a destination block. A compaction bitmap that is maintained in random access memory (“RAM”) may be populated during the compaction process. The populated bitmap may be used to copy valid fragments to the destination block.
    Type: Grant
    Filed: September 13, 2012
    Date of Patent: November 18, 2014
    Assignee: SanDisk Technologies Inc.
    Inventors: Abhijeet Manohar, Venkata Krishna Nadh Dhulipala
  • Patent number: 8892819
    Abstract: A multi-core system includes processor cores having caches; an external input/output bus connected to the processor cores; memory accessed by the processor cores via the external input/output bus; profile information indicating the volume of a write access to the memory by tasks concurrently allocated to the processor cores and whether a cache miss will occur in a read access to the caches; and an operating system that controls clock frequency of the external input/output bus to be a first frequency, based on the volume of the write access to the memory by the tasks and the bus width of the external input/output bus when a cache miss in read access is judged to not occur in executing the tasks and that controls the clock frequency of the external input/output bus to be a second frequency higher than the first frequency when a cache miss in read access is judged.
    Type: Grant
    Filed: December 18, 2012
    Date of Patent: November 18, 2014
    Assignee: Fujitsu Limited
    Inventors: Koji Kurihara, Koichiro Yamashita, Hiromasa Yamauchi
  • Patent number: 8880832
    Abstract: A controller is connectable to a host system and a plurality of storage devices. A monitor unit monitors operating status of a plurality of storage devices and sets the operating status of the storage devices in a status table. Upon receiving a write command from the host system, a command responding unit receives write data sent from the host system within a certain period of time after the write command, holds the write data received in a buffer memory, instructs a timer to start counting, sets a write destination for data in the status table, outputs a control signal that gives an instruction to write data to the storage device of the write destination, and returns a write completion response corresponding to the write command to the host system when receiving the deadline notification from the timer.
    Type: Grant
    Filed: August 7, 2012
    Date of Patent: November 4, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Yoshiki Namba, Keiji Yamamoto, Taichi Tashiro, Hiroyuki Nishikawa, Kohta Nakamura
  • Patent number: 8880782
    Abstract: A data storage system including a memory array including a plurality of memory devices programmable in greater than two states. A memory control module may control operations of the memory array, and an encoder module may encode input data for storing to the memory array. The memory array may be an m×n memory array, and the memory control module may control operations of storing data to and retrieving data from the memory array.
    Type: Grant
    Filed: October 20, 2011
    Date of Patent: November 4, 2014
    Assignee: Hewlett Packard Development Company, L. P.
    Inventors: Erik Ordentlich, Ron M. Roth, Gadiel Seroussi
  • Patent number: 8874841
    Abstract: Embodiments of the present invention include array-cluster systems, and methods employed in array-cluster systems, that allow snapshot data to be distributed over multiple arrays within an array cluster. By distributing snapshot data over multiple arrays within an array cluster, the load, generally related to the number of access operations directed to the arrays within an array cluster, may be more evenly distributed among the arrays of an array cluster, preventing increased latencies associated with overloading individual arrays Distributed snapshots may also facilitate high availability and fault tolerance within an array cluster.
    Type: Grant
    Filed: April 30, 2007
    Date of Patent: October 28, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Brian L. Patterson, Michael B. Jacobson, Ronald D. Rodriguez
  • Patent number: 8874834
    Abstract: A method, device, and system are disclosed. In one embodiment method begins by incrementing a count of a total number of write operations to a non-volatile memory storage for each write operation to the non-volatile memory storage. The method then receives a request for the total count of lifetime write operations from a requestor. Finally, the method sends the total count of lifetime write operations to the requestor.
    Type: Grant
    Filed: September 26, 2013
    Date of Patent: October 28, 2014
    Assignee: Intel Corporation
    Inventors: Victor W. Locasio, Steven E. Wells, Will Akin
  • Patent number: 8849647
    Abstract: Disclosed is a host bus adapter (HBA) that to receives an input/output (I/O) command from an operating system I/O driver. Firmware stored on the host bus adapter includes primary firmware and secondary firmware to process the I/O command. The HBA is to respond to the I/O command under the control of one of the primary firmware or secondary firmware. The selected one of said primary firmware and secondary firmware may be used to certify a hardware driver for either the current generation (primary firmware) or a future generation (secondary firmware).
    Type: Grant
    Filed: October 19, 2011
    Date of Patent: September 30, 2014
    Assignee: LSI Corporation
    Inventors: Rajiv Bhatia, Ankit Sihare
  • Patent number: 8838904
    Abstract: The present disclosure discloses a method, a system and a server of removing a distributed caching object. In one embodiment, the method receives a removal request, where the removal request includes an identifier of an object. The method may further apply consistent Hashing to the identifier of the object to obtain a Hash result value of the identifier, locates a corresponding cache server based on the Hash result value and renders the corresponding cache server to be a present cache server. In some embodiments, the method determines whether the present cache server is in an active status and has an active period greater than an expiration period associated with the object. Additionally, in response to determining that the present cache server is in an active status and has an active period greater than the expiration period associated with the object, the method removes the object from the present cache server.
    Type: Grant
    Filed: April 30, 2014
    Date of Patent: September 16, 2014
    Assignee: Alibaba Group Holding Limited
    Inventors: Gang Liu, Qing Ren, Wensong Zhang