Shared Memory Area Patents (Class 711/147)
  • Patent number: 8819345
    Abstract: Method, apparatus, and computer program product embodiments of the invention are disclosed for efficient communication between processor units in a multi-core processor integrated circuit architecture. In example embodiments of the invention, a method comprises: storing with a shared inter-core communication unit in a multi-core processor, first data produced by a producer processor core, in a first token memory located at a first memory address of a memory address space; and connecting with the shared inter-core communication unit, the first token memory to a consumer processor core of the multi-core processor, to load the first data from the first token memory into the consumer processor core, in response to a first-type command from the producer processor core.
    Type: Grant
    Filed: February 17, 2012
    Date of Patent: August 26, 2014
    Assignee: Nokia Corporation
    Inventors: Tommi Juhani Zetterman, Kalle August Raiskila, Harri Hirvola
  • Patent number: 8819305
    Abstract: In one embodiment, the present invention provides for a layered communication protocol for a serial link, in which a link layer is to receive and forward a message to a protocol layer coupled to the link layer with a minimal amount of buffering and without maintenance of a single resource buffer for adaptive credit pools where all message classes are able to consume credits. By performing a message decode, the link layer is able to steer non-data messages and data messages to separate structures within the protocol layer. Credit accounting for each message type can be handled independently where the link layer is able to return credits immediately for non-data messages. In turn, the protocol layer includes a shared buffer to store all data messages received from the link layer and return credits to the link layer for these messages when the data is removed from the shared buffer. Other embodiments are described and claimed.
    Type: Grant
    Filed: November 16, 2009
    Date of Patent: August 26, 2014
    Assignee: Intel Corporation
    Inventors: Daren J. Schmidt, Bryan R. White
  • Patent number: 8819352
    Abstract: Embodiments related to a hardware transactional memory (HTM). An aspect includes setting a mode register of a processor core of a computer to indicate a HTM mode. Another aspect includes executing a plurality of transactions by the processor core in the HTM mode based on the mode register. Another aspect includes determining whether a first transaction of the plurality of transactions exceeds a failure limit of the processor core in the HTM mode. Yet another aspect includes, based on determining that the first transaction exceeds the failure limit of the processor core in the HTM mode, transitioning the processor to an assisted transaction mode by setting the mode register of the processor core to indicate the assisted transaction mode.
    Type: Grant
    Filed: July 11, 2013
    Date of Patent: August 26, 2014
    Assignee: International Business Machines Corporation
    Inventor: Thomas J. Heller, Jr.
  • Patent number: 8819346
    Abstract: A computer implemented method analyzes shared memory accesses during execution of an application program. The method includes instrumenting events of shared memory accesses in the application program, where the application program is to be executed on a target configuration having p nodes; executing the application program using p1 processing nodes, where p1 is less than p and satisfies a constraint. For accesses made by the executing application program, the method determines a target thread and maps determined target threads to either a remote node or a local node corresponding to a remote memory access and to a local memory access, respectively. Also disclosed is a computer-readable storage medium that stores a program of executable instructions that implements the method, and a data processing system. The invention can be implemented using a language such as Unified Parallel C (UPC) directed to a partitioned global address space (PGAS) paradigm.
    Type: Grant
    Filed: March 9, 2012
    Date of Patent: August 26, 2014
    Assignee: International Business Machines Corporation
    Inventors: Guojing Cong, Ettore Tiotto, Hui-Fang Wen
  • Patent number: 8819357
    Abstract: Metadata of a shared file in a clustered file system is changed in a way that ensures cache coherence amongst servers that can simultaneously access the shared file. Before a server changes the metadata of the shared file, it waits until no other server is attempting to access the shared file, and all I/O operations to the shared file are blocked. After writing the metadata changes to the shared file, local caches of the other servers are updated, as needed, and I/O operations to the shared file are unblocked.
    Type: Grant
    Filed: July 12, 2011
    Date of Patent: August 26, 2014
    Assignee: VMware, Inc.
    Inventors: Murali Vilayannur, Jinyuan Li, Satyam B. Vaghani
  • Patent number: 8819347
    Abstract: A method of passing message data from a first device to a second device in a software defined radio (SDR) apparatus. A shared memory is defined in the apparatus for access by either one of the first and the second devices. A priority message originating from one of the devices and destined to the other device is loaded into a buffer of the shared memory, and the address of the buffer is passed to the other device. The message in the buffer of the shared memory is then accessed directly from the other device.
    Type: Grant
    Filed: May 9, 2012
    Date of Patent: August 26, 2014
    Assignee: BAE Systems Information and Electronic Systems Integration Inc.
    Inventor: Christopher R. Rodriguez
  • Patent number: 8819344
    Abstract: A data processing system includes host data processors, a data storage system including data storage shared among the host data processors, and a data switch coupling the host data processors to the data storage system. The data storage system has host adapter ports coupled to the data switch. The data switch is programmed for distributing block I/O requests from the host data processors over the operable host adapter ports for load balancing of the block I/O requests among the operable host adapter ports. The shared data storage can be a file system striped across RAID sets of disk drives for load balancing upon disk director ports of the data storage system. The data processing system can be expanded by adding more data storage systems, switches for the additional data storage systems, and switches for routing block I/O requests from the host processors to the data storage systems.
    Type: Grant
    Filed: August 9, 2007
    Date of Patent: August 26, 2014
    Assignee: EMC Corporation
    Inventors: Sorin Faibish, Per Brashers, James Pedone, Jason Glasgow, Xiaoye Jiang
  • Patent number: 8819335
    Abstract: A system and method of providing enhanced data processing and analysis in an infrastructure for distributed computing and large-scale data processing. This infrastructure uses the Hadoop™ framework to divide an application into a large number of small fragments of work, each of which may be performed on one of a large number of compute nodes. The work may involve map tasks and reduce tasks which may be used to categorize and analyze large amounts of data in distributed systems. This infrastructure includes a cluster with a master node and a plurality of slave nodes. The slave nodes may include, or may be, intelligent solid-state drives capable of executing Map-Reduce functions. The use of intelligent solid-state drives reduces the need to exchange data with a CPU in a server.
    Type: Grant
    Filed: August 30, 2013
    Date of Patent: August 26, 2014
    Assignee: NXGN Data, Inc.
    Inventors: Nader Salessi, Joao Alcantara
  • Patent number: 8819203
    Abstract: An application services platform includes a platform chassis, a network interface supported by the platform chassis, and a control circuit supported by the platform chassis and coupled to the network interface. The control circuit is arranged to connect to a network through the network interface, and receive an application service command from a user. The application service command gives the control circuit permission to provide an application service to an application running on a server on the network. The control circuit is further arranged to provide the application service to the application running on the server on the network in response to receipt of the application service command. The application services platform is capable of being provided in the form of an appliance-style device which is simply added as a new device on the network.
    Type: Grant
    Filed: September 28, 2007
    Date of Patent: August 26, 2014
    Assignee: EMC Corporation
    Inventors: Stephen J. Todd, Andreas L. Bauer, Gerald E. Cotter
  • Patent number: 8819348
    Abstract: Provided is a method for uniquely masking addressing to the cache memory for each user, thereby reducing risk of a timing attack by one user on another user. The method comprises assigning a first mask value to the first user and a second mask value to the second user. The mask values are unique to one another. While executing a first instruction on behalf of the first user, the method comprises applying the first mask value to set selection bits in a memory address accessed by the first instruction. While executing a second instruction on behalf of the second user, the method comprises applying the second mask value to set selection bits in the memory address accessed by the second instruction. The result offers an additional level of security between users as well as reducing the occurrence of threads or processes contending for the same memory address.
    Type: Grant
    Filed: July 12, 2006
    Date of Patent: August 26, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Blaine D. Gaither, Benjamin D. Osecky
  • Publication number: 20140237195
    Abstract: A system and method for efficient dynamic utilization of shared resources. A computing system includes a shared data structure accessed by multiple requestors. Both indications of access requests and indices pointing to entries within the data structure are stored in storage buffers. Each storage buffer maintains at a selected end an oldest stored indication of an access request from a respective requestor. Each storage buffer stores information for the respective requestor in an in-order contiguous manner beginning at the selected end. The indices stored in a given storage buffer are updated responsive to allocating new data or deallocating stored data in the shared data structure. Entries in a storage buffer are deallocated in any order and remaining entries are collapsed toward the selected end to eliminate gaps left by the deallocated entry.
    Type: Application
    Filed: February 20, 2013
    Publication date: August 21, 2014
    Applicant: APPLE INC.
    Inventors: Peter F. Holland, Hao Chen, Albert C. Kuo
  • Patent number: 8812795
    Abstract: Disclosed herein is an apparatus which may comprise a plurality of nodes. In one example embodiment, each of the plurality of nodes may include one or more central processing units (CPUs), a random access memory device, and a parallel link input/output port. The random access memory device may include a local memory address space and a global memory address space. The local memory address space may be accessible to the one or more CPUs of the node that comprises the random access memory device. The global memory address space may be accessible to CPUs of all the nodes. The parallel link input/output port may be configured to send data frames to, and receive data frames from, the global memory address space comprised by the random access memory device(s) of the other nodes.
    Type: Grant
    Filed: September 5, 2012
    Date of Patent: August 19, 2014
    Assignee: Broadcom Corporation
    Inventor: Fong Pong
  • Patent number: 8812794
    Abstract: Systems and methods for implementing a distributed shared memory (DSM) in a computer cluster in which an unreliable underlying message passing technology is used, such that the DSM efficiently maintains coherency and reliability. DSM agents residing on different nodes of the cluster process access permission requests of local and remote users on specified data segments via handling procedures, which provide for recovering of lost ownership of a data segment while ensuring exclusive ownership of a data segment among the DSM agents detecting and resolving a no-owner messaging deadlock, pruning of obsolete messages, and recovery of the latest contents of a data segment whose ownership has been lost.
    Type: Grant
    Filed: July 2, 2012
    Date of Patent: August 19, 2014
    Assignee: International Business Machines Corporation
    Inventors: Lior Aronovich, Ron Asher
  • Patent number: 8812796
    Abstract: Private or shared read-only memory regions. One embodiment may be practiced in a computing environment including a plurality of agents. A method includes acts for declaring one or more memory regions private to a particular agent or shared read only amongst agents by having software utilize processor level instructions to specify to hardware the private or shared read only memory address regions. The method includes an agent executing a processor level instruction to specify one or more memory regions as private to the agent or shared read-only amongst a plurality of agents. As a result of an agent executing a processor level instruction to specify one or more memory regions as private to the agent or shared read-only amongst a plurality of agents, a hardware component monitoring the one or more memory regions for conflicting accesses or prevents conflicting accesses on the one or more memory regions.
    Type: Grant
    Filed: June 26, 2009
    Date of Patent: August 19, 2014
    Assignee: Microsoft Corporation
    Inventors: Jan Gray, David Callahan, Burton Jordan Smith, Gad Sheaffer, Ali-Reza Adl-Tabatabai
  • Publication number: 20140229686
    Abstract: Methods, systems and computer program products are provided for mixed shared/non-shared memory transport in virtual machines. A computer-implemented method may include providing a shared memory area writeable by a first virtual processor and a second virtual processor that are runnable on a host CPU, retrieving the information stored in the shared memory area by the first virtual processor when the first virtual processor stops running on the host CPU and before the second virtual processor runs on the host CPU, and storing the retrieved information from the shared memory area in a non-shared memory.
    Type: Application
    Filed: February 13, 2013
    Publication date: August 14, 2014
    Applicant: RED HAT ISRAEL, LTD.
    Inventor: Michael Tsirkin
  • Patent number: 8805885
    Abstract: Under the present invention, a hierarchical tree and corresponding Least Recently Used (LRU) list are provided. Both include a predetermined quantity of nodes that are associated with invariant data objects. The nodes of the tree typically include a set of pointers that indicate a position/arrangement of the associated invariant data objects in the LRU list, and a set of pointers that indicate a logical relationship among the other nodes.
    Type: Grant
    Filed: October 30, 2007
    Date of Patent: August 12, 2014
    Assignee: International Business Machines Corporation
    Inventors: Peter W. Burka, Barry M. Genova
  • Patent number: 8806164
    Abstract: Subject matter disclosed herein relates to an apparatus comprising memory and a controller, such as a controller which determines block locking states in association with operative transitions between two or more interfaces that share at least one block of memory. The apparatus may support single channel or multi-channel memory access, write protection state logic, or various interface priority schemes.
    Type: Grant
    Filed: March 4, 2011
    Date of Patent: August 12, 2014
    Assignee: Micron Technology, Inc.
    Inventors: Giulio Albini, Emanuele Confalonieri
  • Publication number: 20140223111
    Abstract: Responsive to selecting a particular queue from among at least two queues to place an incoming event into within a particular entry from among multiple entries ordered upon arrival of the particular queue each comprising a separate collision vector, a memory address for the incoming event is compared with each queued memory address for each queued event in the other entries in the at least one other queue. Responsive to the memory address for the incoming event matching at least one particular queued memory address for at least one particular queued event in the at least one other queue, at least one particular bit is set in a particular collision vector for the particular entry in at least one bit position from among the bits corresponding with at least one row entry position of the at least one particular queued memory address within the other entries.
    Type: Application
    Filed: February 1, 2013
    Publication date: August 7, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Robert M. Dinkjian, Robert S. Horton, Michael Y. Lee, Bill N. On
  • Publication number: 20140223112
    Abstract: Systems and methods for managing data elements on a mobile device that involve identifying a central application with an available set of data elements, for each of a plurality of secondary applications, determining a shared set of data elements where each data element of the shared set of data elements is mapped to a data element of the available set of data elements. The systems and methods may further involve receiving the available set of data elements from the external data storage device for storage in a virtual memory of the mobile device upon detecting that a central application has initialized on the mobile device and populating a secondary application with the shared set of data elements from the virtual memory upon detecting that the secondary application has initialized on the mobile device.
    Type: Application
    Filed: February 5, 2013
    Publication date: August 7, 2014
    Applicant: CAA SOUTH CENTRAL ONTARIO
    Inventors: Kirk Serjeanston, Sean Macdonald, Kevin Ng, Emilio Rojas-Silva, Jonathan Maynard, Adam Stevenson
  • Patent number: 8793628
    Abstract: The present patent document relates to a method and apparatus for maintaining coherency in a memory subsystem of an electronic system modeled in dual abstractions. The portions of the memory subsystem shared between the first abstraction and the second abstraction are shadowed in both abstractions, allowing either abstraction to coherently access memory written by the other. The memory subsystem can also reside solely in a first abstraction, where the second abstraction will synchronize to the first abstraction to access the memory subsystem. Flags associated with memory pages of the memory subsystem are set to indicate which abstraction has most recently updated the memory page. Prior to accessing a memory page, the system will check the flags, copying the contents of the memory in the other abstraction as needed to maintain coherency. The abstractions can operate either synchronously or asynchronously.
    Type: Grant
    Filed: March 11, 2013
    Date of Patent: July 29, 2014
    Assignee: Cadence Design Systems, Inc.
    Inventor: Ashutosh Varma
  • Publication number: 20140208042
    Abstract: In one embodiment, the present invention includes a memory management unit (MMU) having entries to store virtual address to physical address translations, where each entry includes a location indicator to indicate whether a memory location for the corresponding entry is present in a local or remote memory. In this way, a common virtual memory space can be shared between the two memories, which may be separated by one or more non-coherent links. Other embodiments are described and claimed.
    Type: Application
    Filed: March 21, 2014
    Publication date: July 24, 2014
    Inventors: Gautham N. Chinya, Hong Wang, Deepak A. Mathaikutty, Jamison D. Collins, Ethan Schuchman, James P. Held, Ajay V. Bhatt, Prashant Sethi, Stephen F. Whalley
  • Patent number: 8788767
    Abstract: A register system includes a register unit and a control unit. The register unit is utilized for storing a first data packet, wherein the register unit has an end flag. The control unit is coupled to the register unit, for indicating a designated information and an end position of the first data packet by using the end flag.
    Type: Grant
    Filed: July 10, 2011
    Date of Patent: July 22, 2014
    Assignee: Global Unichip Corp.
    Inventors: Chang-Ming Liu, Chen-Ya Sun, Ko-Yun Weng
  • Patent number: 8788455
    Abstract: File system disaster recovery techniques provide automated monitoring, failure detection and multi-step failover from a primary designated target to one of a designated group of secondary designated targets. Secondary designated targets may be prioritized so that failover occurs in a prescribed sequence. Replication of information between the primary designated target and the secondary designated targets allows failover in a manner that maximizes continuity of operation. In addition, user-specified actions may be initiated on failure detection and/or on failover operations and/or on failback operations.
    Type: Grant
    Filed: November 11, 2011
    Date of Patent: July 22, 2014
    Assignee: Brocade Communications Systems, Inc.
    Inventors: Rahul Mehta, Hans Glitsch, Paul Place, Steve Van Horn
  • Patent number: 8788763
    Abstract: An apparatus and system for protecting memory of a virtual guest includes initializing a virtual guest on a host computing system. The host computing system includes a virtual machine manager that manages operation of the virtual guest. The virtual guest includes a distinct operating environment executing in a virtual operation platform provided by the virtual machine manager. The method includes receiving an allocation of run-time memory for the virtual guest, the allocation of run-time memory comprising a portion of run-time memory of the host computing system. The method includes setting, by the virtual guest, at least a portion of the allocation of run-time memory to be inaccessible by the virtual machine manager.
    Type: Grant
    Filed: May 29, 2012
    Date of Patent: July 22, 2014
    Assignee: International Business Machines Corporation
    Inventors: Christopher J. Arges, Nathan D. Fontenot, Ryan P. Grimm, Joel H. Schopp, Michael T. Strosaker
  • Publication number: 20140201470
    Abstract: Embodiments include multi-processor systems, including multi-core processor systems, as well as methods for operating the same, in which at least one processor or processor core is configured to receive an instruction directing the at least one processor core to read a value associated with a memory address. In response to receiving the instruction and before execution of the instruction, the at least one processor or processor core causes ones of the plurality of mutually communicatively inter-coupled processor cores to provide a plurality of locally stored values that are stored individually in the respective processor cores and that are associated with the memory address.
    Type: Application
    Filed: January 14, 2014
    Publication date: July 17, 2014
    Applicant: Marvell World Trade Ltd.
    Inventors: Eitan Joshua, Noam Mizrahi
  • Publication number: 20140201469
    Abstract: Embodiments include multi-processor systems, including multi-core processor systems, as well as methods for operating the same, in which at least one processor or processor core is configured to receive an instruction directing the at least one processor core to read a value associated with a memory address. In response to receiving the instruction and before execution of the instruction, the at least one processor or processor core causes ones of the plurality of mutually communicatively inter-coupled processor cores to provide a plurality of locally stored values that are stored individually in the respective processor cores and that are associated with the memory address.
    Type: Application
    Filed: January 13, 2014
    Publication date: July 17, 2014
    Applicant: Marvell World Trade Ltd.
    Inventors: Eitan Joshua, Noam Mizrahi
  • Patent number: 8782351
    Abstract: The method for protecting memory of a virtual guest includes initializing a virtual guest on a host computing system. The host computing system includes a virtual machine manager that manages operation of the virtual guest. The virtual guest includes a distinct operating environment executing in a virtual operation platform provided by the virtual machine manager. The method includes receiving an allocation of run-time memory for the virtual guest, the allocation of run-time memory comprising a portion of run-time memory of the host computing system. The method includes setting, by the virtual guest, at least a portion of the allocation of run-time memory to be inaccessible by the virtual machine manager.
    Type: Grant
    Filed: October 13, 2011
    Date of Patent: July 15, 2014
    Assignee: International Business Machines Corporation
    Inventors: Christopher J. Arges, Nathan D. Fontenot, Ryan P. Grimm, Joel H. Schopp, Michael T. Strosaker
  • Patent number: 8782646
    Abstract: In a NUMA-topology computer system that includes multiple nodes and multiple logical partitions, some of which may be dedicated and others of which are shared, NUMA optimizations are enabled in shared logical partitions. This is done by specifying a home node parameter in each virtual processor assigned to a logical partition. When a task is created by an operating system in a shared logical partition, a home node is assigned to the task, and the operating system attempts to assign the task to a virtual processor that has a home node that matches the home node for the task. The partition manager then attempts to assign virtual processors to their corresponding home nodes. If this can be done, NUMA optimizations may be performed without the risk of reducing the performance of the shared logical partition.
    Type: Grant
    Filed: November 21, 2012
    Date of Patent: July 15, 2014
    Assignee: International Business Machnies Corporation
    Inventors: Vaijayanthimala K. Anand, Mark R. Funk, Steven R. Kunkel, Mysore S. Srinivas, Randal C. Swanberg, Ronald D. Young
  • Patent number: 8782339
    Abstract: Embodiments of the present invention generally provide for multi-dimensional disk arrays and methods for managing same and can be used in video surveillance systems for the management of real-time video data, image data, or combinations thereof.
    Type: Grant
    Filed: October 10, 2011
    Date of Patent: July 15, 2014
    Assignee: Open Invention Network, LLC
    Inventors: Wing-Yee Au, Alan Rowe
  • Patent number: 8782164
    Abstract: A method, system, and computer program product are disclosed for implementing an asynchronous collective operation in a multi-node data processing system. In one embodiment, the method comprises sending data to a plurality of nodes in the data processing system, broadcasting a remote get to the plurality of nodes, and using this remote get to implement asynchronous collective operations on the data by the plurality of nodes. In one embodiment, each of the nodes performs only one task in the asynchronous operations, and each nodes sets up a base address table with an entry for a base address of a memory buffer associated with said each node. In another embodiment, each of the nodes performs a plurality of tasks in said collective operations, and each task of each node sets up a base address table with an entry for a base address of a memory buffer associated with the task.
    Type: Grant
    Filed: January 29, 2010
    Date of Patent: July 15, 2014
    Assignee: International Business Machines Corporation
    Inventors: Dong Chen, Noel A. Eisley, Philp Heidelberger, Sameer Kumar, Valentina Salapura, Burkhard Steinmacher-Burow
  • Publication number: 20140195741
    Abstract: Type casting in a managed code system is described. The managed code system includes managed memory as well as shared memory located outside of the managed memory. The managed memory has multiple managed memory portions, each corresponding to a computing entity, such as a processes. The type system permits obtaining of data from shared memory using type casting to thereby assign the data a type that supports type casting. The type is a valid type casting type that satisfies certain requirements that allow the type to be assigned while maintaining type safety.
    Type: Application
    Filed: January 4, 2013
    Publication date: July 10, 2014
    Applicant: Microsoft Corporation
    Inventor: Martin Taillefer
  • Publication number: 20140195742
    Abstract: A system on chip (SoC) including a memory management unit (MMU) and a memory address translation method thereof are provided. The SoC includes a master intellectual property (IP) configured to output a request corresponding to each of a plurality of working sets; an MMU module comprising a plurality of MMUs, each of which is allocated for one of the working sets and translates virtual addresses corresponding to the request into physical addresses; a first bus interconnect configured to connect the MMU module with a memory device and to transmit the request, on which address translation has been performed in at least one of the MMUs, to the memory device; and a second bus interconnect configured to connect the master IP with the MMU module and to allocate one of the MMUs for each of the working sets.
    Type: Application
    Filed: December 23, 2013
    Publication date: July 10, 2014
    Inventors: Seok Min KIM, Kwan Ho KIM, Seong Woon KIM, Tae Sun KIM, Kyoung Mook LIM
  • Patent number: 8775743
    Abstract: Systems and methods for implementing a distributed shared memory (DSM) in a computer cluster in which an unreliable underlying message passing technology is used, such that the DSM efficiently maintains coherency and reliability. DSM agents residing on different nodes of the cluster process access permission requests of local and remote users on specified data segments via handling procedures, which provide for recovering of lost ownership of a data segment while ensuring exclusive ownership of a data segment among the DSM agents detecting and resolving a no-owner messaging deadlock, pruning of obsolete messages, and recovery of the latest contents of a data segment whose ownership has been lost.
    Type: Grant
    Filed: July 2, 2012
    Date of Patent: July 8, 2014
    Assignee: International Business Machines Corporation
    Inventors: Lior Aronovich, Ron Asher
  • Patent number: 8775717
    Abstract: A controller designed for use with a flash memory storage module, including a crossbar switch designed to connect a plurality of internal processors with various internal resources, including a plurality of internal memories. The memories contain work lists for the processors. In one embodiment, the processors communicate by using the crossbar switch to place tasks on the work lists of other processors.
    Type: Grant
    Filed: April 8, 2008
    Date of Patent: July 8, 2014
    Assignee: Sandisk Enterprise IP LLC
    Inventors: Douglas A. Prins, Aaron K. Olbrich
  • Patent number: 8775786
    Abstract: Technologies are described herein for boot caching to accelerate boot access in a data storage system providing boot consolidation. Boot caching may be provided to improve boot access for multiple clients concurrently booting from a common storage server. Boot statistics may be collected per user or client. The boot statistics can determine common patterns within the boot procedures of the clients and may be used to compute boot caching tables. These tables may then be used during boot caching to accelerate booting of clients. A boot caching mechanism can be implemented to support improved booting performance by caching data blocks common to multiple booting volumes. This approach can leverage the condition that much of the data loaded by clients at boot time may be substantially identical, because booting can involve loading the same operating system components into each client.
    Type: Grant
    Filed: January 8, 2013
    Date of Patent: July 8, 2014
    Assignee: American Megatrends, Inc.
    Inventors: Paresh Chatterjee, Srikumar Subramanian, Suresh Grandhi, Vijayarankan Muthirisavenugopal
  • Patent number: 8775708
    Abstract: In one embodiment, the present invention includes a method for accessing a shared memory associated with a reader-writer lock according to a first concurrency mode, dynamically changing from the first concurrency mode to a second concurrency mode, and accessing the shared memory according to the second concurrency mode. In this way, concurrency modes can be adaptively changed based on system conditions. Other embodiments are described and claimed.
    Type: Grant
    Filed: February 27, 2013
    Date of Patent: July 8, 2014
    Assignee: Intel Corporation
    Inventors: Bratin Saha, Ali-Reza Adl-Tabatabai
  • Publication number: 20140189258
    Abstract: A semiconductor memory device includes a memory array including memory blocks stacked in a plurality of layers over a substrate, first lines coupling word lines of memory blocks arranged in even-numbered layers, and second lines coupling word lines of memory blocks arranged in odd-numbered layers.
    Type: Application
    Filed: March 15, 2013
    Publication date: July 3, 2014
    Applicant: SK HYNIX INC.
    Inventor: Seiichi ARITOME
  • Publication number: 20140189257
    Abstract: A semiconductor memory device includes stacked memory strings in which at least some adjacent memory strings share a common source line. During a read operation for a selected memory string, a first current path is formed from a bit line of the selected memory string to the common source line through the selected memory string. A second current path is formed from the bit line of the selected memory string, through the common source line, to a bit line of an adjacent unselected memory string. This reduced path resistance enhances device reliability in read mode.
    Type: Application
    Filed: March 15, 2013
    Publication date: July 3, 2014
    Applicant: SK HYNIX INC.
    Inventor: Seiichi ARITOME
  • Publication number: 20140189256
    Abstract: A processor includes a first core to execute a first software thread, a second core to execute a second software thread, and shared memory access monitoring and recording logic. The logic includes memory access monitor logic to monitor accesses to memory by the first thread, record memory addresses of the monitored accesses, and detect data races involving the recorded memory addresses with other threads. The logic includes chunk generation logic is to generate chunks to represent committed execution of the first thread. Each of the chunks is to include a number of instructions of the first thread executed and committed and a time stamp. The chunk generation logic is to stop generation of a current chunk in response to detection of a data race by the memory access monitor logic. A chunk buffer is to temporarily store chunks until the chunks are transferred out of the processor.
    Type: Application
    Filed: December 28, 2012
    Publication date: July 3, 2014
    Inventors: TIM KRANICH, GILLES A. POKAM, JUSTIN E. GOTTSCHLICH, KLAUS DANNE, ROLF KASSA, SHILIANG HU, CRISTIANO L. PEREIRA
  • Publication number: 20140189259
    Abstract: A semiconductor device includes a first memory controller configured to output a first control signal to first and second external memories through a first memory interface, a second memory controller configured to output a second control signal to the second external memory through a second memory interface, an inter-device interface for communicating with another semiconductor device, terminals configured to output the second control signal that has passed through the second memory interface, and a first selector configured to select between the second memory interface and the inter-device interface in accordance with an operation mode of the semiconductor device and to couple the selected interface to the terminals.
    Type: Application
    Filed: November 19, 2013
    Publication date: July 3, 2014
    Applicant: Renesas Mobile Corporation
    Inventors: Kenichiro Omura, Ryohei Yoshida, Takanobu Naruse, Seiichi Saito
  • Patent number: 8769546
    Abstract: Method to selectively assign a reduced busy-wait time to threads is described. The method comprises determining whether at least one thread is spinning on a mutex lock associated with a condition variable and assigning, when the at least one thread is spinning on the mutex lock, a predetermined reduced busy-wait time for a subsequent thread spinning on the mutex lock.
    Type: Grant
    Filed: January 7, 2010
    Date of Patent: July 1, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Rakesh Sasidharan Nair, Sherin Thyil George, Aswin Chandramouleeswaran
  • Patent number: 8769549
    Abstract: A graphical program execution environment that facilitates communication between a producer program and a consumer program is disclosed. The producer program may store data in a memory block allocated by the producer program. A graphical program may communicate with the producer program to obtain a reference to the memory block. The graphical program may asynchronously pass the reference to the consumer program, e.g., may pass the reference without blocking or waiting while the consumer program accesses the data in the memory block. After the consumer program is finished accessing the data, the consumer program may asynchronously notify the graphical program execution environment to release the memory block. The graphical program execution environment may then notify the producer program that the block of memory is no longer in use so that the producer program can de-allocate or re-use the memory block.
    Type: Grant
    Filed: April 30, 2012
    Date of Patent: July 1, 2014
    Assignee: National Instruments Corporation
    Inventors: J. Adam Kemp, Neil S. Feiereisel, Brent C. Schwan
  • Patent number: 8769213
    Abstract: Multi-port memory having an additional control bus for passing commands between ports have individual ports that can be configured to respond to a command received from an external control bus or to a command received from the additional control bus. This facilitates various combinations of ports to vary the bandwidth or latency of the memory to facilitate tailoring performance characteristics to differing applications.
    Type: Grant
    Filed: August 24, 2009
    Date of Patent: July 1, 2014
    Assignee: Micron Technology, Inc.
    Inventors: Dan Skinner, J. Thomas Pawlowski
  • Patent number: 8762647
    Abstract: According to one embodiment, a multicore processor system includes: a memory region, and a multicore processor that includes plural cores, a first cache, and a second cache shared between the plural cores. The memory region permits first state in which exclusive use by using the first and second cache is granted to one core, second state in which exclusive use by using the second cache is granted to one core group, and third state in which use by using neither the first cache nor the second cache is granted to all core groups. A kernel unit writes back a first cache to the second cache when a transition of the memory region from the first state to the second state is made, and writes back a second cache to the memory region when a transition of the memory region from the second state to the third state is made.
    Type: Grant
    Filed: September 21, 2011
    Date of Patent: June 24, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Akira Yokosawa
  • Patent number: 8762636
    Abstract: A data storage system having a host computer/server coupled to a bank of disk drives through an interface. The bank of disk drives has a plurality of disk units, each one of such disk drive units having a magnetic storage media. The interface includes: a plurality of front-end directors coupled to the host computer/server; a plurality of back end directors coupled to the disk drive units; and, a global cache memory available for caching user data for the plurality of disk drives. The global cache memory comprises a plurality of non-volatile memory global cache memory sections distributed among disk drive units within the bank of disk drive units. The non-volatile memory global cache memory sections are connected to the back-end directors. Each one of the non-volatile memory global cache memory sections caches user data for the magnetic storage media of the plurality of disk drive units independent of the one of the disk drive units having such one of the non-volatile memory global cache memory sections.
    Type: Grant
    Filed: December 14, 2006
    Date of Patent: June 24, 2014
    Assignee: EMC Corporation
    Inventors: Gilad Sade, Adi Ofer
  • Publication number: 20140173196
    Abstract: A method of enabling “fast” suspend and “rapid” resume of virtual machines (VMs) employs a cache that is able to perform input/output operations at a faster rate than a storage device provisioned for the VMs. The cache may be local to a computer system that is hosting the VMs or may be shared cache commonly accessible to VMs hosted by different computer systems. The method includes the steps of saving the state of the VM to a checkpoint file stored in the cache and locking the checkpoint file so that data blocks of the checkpoint file are maintained in the cache and are not evicted, and resuming execution of the VM by reading into memory the data blocks of the checkpoint file stored in the cache.
    Type: Application
    Filed: February 25, 2013
    Publication date: June 19, 2014
    Applicant: VMware, Inc.
    Inventors: Daniel James BEVERIDGE, Thiruvengada Govindan THIRUMAL, Kiran MADNANI, Neeraj GOYAL
  • Patent number: 8756364
    Abstract: A circuit is configured to be mounted on a memory module connectable to a computer system so as to be electrically coupled to a plurality of memory devices on the memory module. The memory module has a first number of ranks of double-data-rate (DDR) memory devices activated at least in part to a first number of chip-select signals. The circuit is configurable to receive address signals and a second number of chip-select signals from the computer system. The circuit is further configurable to generate and transmit phase-locked clock signals to the first number of ranks, and to generate the first number of chip-select signals in response at least in part to the phase-locked clock signals, the address signals, and the second number of chip-select signals.
    Type: Grant
    Filed: November 1, 2011
    Date of Patent: June 17, 2014
    Assignee: Netlist, Inc.
    Inventors: Jayesh R. Bhakta, Jeffrey C. Solomon
  • Patent number: 8756392
    Abstract: A storage system has multiple disk controller (DKC) units that are coupled to one another in accordance with a coupling mode that satisfies the following (a1) through (a3): (a1) One DKC inside one DKC unit and one DKC inside another DKC unit are coupled via a second type of coupling medium that differs from the internal bus of the DKC and has a longer maximum communication distance than a first type of coupling medium, which is the same type of coupling medium as the internal bus of the DKC; (a2) the one DKC unit virtualizes a logical volume of the other DKC unit and provides this virtualized logical volume to host(s) coupled to the one DKC unit; and (a3) the other DKC unit virtualizes a logical volume of the DKC unit and provides this virtualized logical volume to host(s) coupled to the other DKC unit.
    Type: Grant
    Filed: April 26, 2013
    Date of Patent: June 17, 2014
    Assignee: Hitachi, Ltd.
    Inventors: Yuko Matsui, Hiroshi Kawano, Shigeo Homma, Masayuki Yamamoto
  • Publication number: 20140164716
    Abstract: A memory management system and method are described. In one embodiment, a memory management system includes a memory management unit for virtualizing context memory storage and independently controlling access to the context memory without interference from other engine activities. The shared resource management unit overrides a stream of access denials (e.g., NACKs) associated with an access problem. The memory management system and method facilitate efficient and flexible access to memory while controlling translation between virtual and physical memory “spaces”. In one embodiment the memory management system includes a translation lookaside buffer and a fill component. The translation lookaside buffer tracks information associating a virtual memory space with a physical memory space.
    Type: Application
    Filed: August 6, 2013
    Publication date: June 12, 2014
    Inventors: David B. GLASCO, John S. MONTRYM, Lingfeng YUAN, Robert C. KELLER
  • Patent number: 8751737
    Abstract: An apparatus and method for improving synchronization between threads in a multi-core processor system are provided. An apparatus includes a memory, a first processor core, and a second processor core. The memory includes a shared ring buffer for storing data units, and stores a plurality of shared variables associated with accessing the shared ring buffer. The first processor core runs a first thread and has a first cache associated therewith. The first cache stores a first set of local variables associated with the first processor core. The first thread controls insertion of data items into the shared ring buffer using at least one of the shared variables and the first set of local variables. The second processor core runs a second thread and has a second cache associated therewith. The second cache stores a second set of local variables associated with the second processor core.
    Type: Grant
    Filed: June 26, 2009
    Date of Patent: June 10, 2014
    Assignee: Alcatel Lucent
    Inventors: Tian Bu, Girish Chandranmenon, Pak-Ching Lee