Plural Shared Memories Patents (Class 711/148)
  • Patent number: 7958280
    Abstract: A process of data storage utilizing a data management system that transfers data between a host system and multiple storage devices through multiple channels. The data management system receives data from the host system and writes the data as data segments to the multiple storage devices. Each data segment may comprise one sector, more than one sector, or a portion of a sector, depending on the embodiment. The data segments are transferred to and from the multiple storage devices in parallel fashion while the data in each data segment is transferred to its corresponding data storage device sequentially. The data management system reassembles data segments received from the data storage devices and sends the data to the host system.
    Type: Grant
    Filed: October 26, 2007
    Date of Patent: June 7, 2011
    Assignee: STEC, Inc.
    Inventors: Nader Salessi, Hooshmand Torabi
  • Publication number: 20110131369
    Abstract: A logic device for communicating with a memory package with a first protocol, communicating with a memory controller with a second protocol, and for performing a protocol conversion between the first and the second protocol.
    Type: Application
    Filed: November 19, 2010
    Publication date: June 2, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Evangelos S. Eleftheriou, Robert Haas, Xiaoyu Hu, Peter Mueller
  • Publication number: 20110131383
    Abstract: A system including a memory system and a memory controller is connected to a host system. The memory system has at least one memory device storing data. The controller translates the requests from the host system to one or more separatable commands interpretable by the at least one memory device. Each command has a modular structure including an address identifier for one of the at least one memory devices and a command identifier representing an operation to be performed by the one of the at least one memory devices. The at least one memory device and the controller are in a series-connection configuration for communication such that only one memory device is in communication with the controller for input into the memory system. The memory system can include a plurality of memory devices connected to a common bus.
    Type: Application
    Filed: January 28, 2011
    Publication date: June 2, 2011
    Applicant: MOSAID TECHNOLOGIES INCORPORATED
    Inventors: Jin-Ki KIM, HakJune OH, Hong Beom PYEON
  • Publication number: 20110125999
    Abstract: A method begins with a processing module selecting one of a plurality of dispersed storage (DS) processing modules for facilitating access to a dispersed storage network (DSN) memory. The method continues with the processing module sending a DSN memory access request to the one of the plurality of DS processing modules. The method continues with the processing module selecting another one of the plurality of DS processing modules when no response is received within a given time frame or when the response to the access request does not include an access indication. The method continues with the processing module sending the DSN memory access request to the another one of the plurality of DS processing modules.
    Type: Application
    Filed: September 20, 2010
    Publication date: May 26, 2011
    Applicant: CLEVERSAFE, INC.
    Inventors: BART CILFONE, JASON K. RESCH
  • Patent number: 7949837
    Abstract: A multiple computer system is disclosed in which n computers (M1, M2 . . . Mn) each run a different portion of a single application program written to execute only on a single computer. The local memory of each computer is maintained substantially the same by updating all computers with every change made to addressed memory locations. Contention can arise when the same memory location is substantially simultaneously updated by two or more machines because of transmission delays and latency of the communications network interconnecting all the computers. In particular a method of detecting and resolving contention is disclosed which utilizes a count value indicative of the number of the sequence of occasions on which each memory location has been updated. Contention is indicated if the currently stored count value and the incoming updating count value are the same. The contention can be resolved by providing a further rule.
    Type: Grant
    Filed: October 5, 2007
    Date of Patent: May 24, 2011
    Assignee: Waratek Pty Ltd.
    Inventor: John M. Holt
  • Publication number: 20110119453
    Abstract: A method for implementing a high-availability system that includes a plurality of controllers that each includes a shared memory. The method includes storing in the shared memory, by each controller, status data related to each of a plurality of failure modes, and calculating, by each controller, an availability score based on the status data. The method also includes determining, by each controller, one of the plurality of controllers having a highest availability score, and identifying the one of the plurality of controllers having the highest availability score as a master controller.
    Type: Application
    Filed: November 19, 2009
    Publication date: May 19, 2011
    Inventors: Yan Hua Xu, Mark Reitzel, Jerry Simons, Terrance John Walsh
  • Patent number: 7945740
    Abstract: A design structure embodied in a machine readable storage medium for designing, manufacturing, and/or testing a memory switching data processing system is provided. The memory switching data processing system includes one or more central processing units (‘CPUs’); random access memory organized in at least two banks of memory modules; one or more memory buses providing communications paths for data among the CPUs and the memory modules; and a flexibly configurable memory bus switch comprising a first configuration adapting the first CPU to a first bank of memory modules and a second CPU to a second bank of memory modules and a second configuration adapting the first CPU to both the first bank of memory modules and the second bank of memory modules.
    Type: Grant
    Filed: May 5, 2008
    Date of Patent: May 17, 2011
    Assignee: International Business Machines Corporation
    Inventors: Justin P. Bandholz, Zachary B. Durham, Clifton E. Kerr, Joseph E. Maxwell, Kevin M. Reinberg, Kevin S. D. Vernon, Philip L. Weinstein, Christopher C. West
  • Patent number: 7945756
    Abstract: An architecture, system, and method for managing a data storage system by contacting a single processor in a data storage system having more than one processor. The single processor contacts each other peer processor in the data storage system and merges selected data from the single processor with data from the peer processor to determine the state of the data storage system.
    Type: Grant
    Filed: March 30, 2005
    Date of Patent: May 17, 2011
    Assignee: EMC Corporation
    Inventors: James Britton, Kevin Labonte, Russell Laporte, Paul Lapomardo
  • Patent number: 7941613
    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: May 31, 2007
    Date of Patent: May 10, 2011
    Assignee: Broadcom Corporation
    Inventor: Fong Pong
  • Patent number: 7937532
    Abstract: In some embodiments, the invention involves a novel combination of techniques for prefetching data and passing messages between and among cores in a multi-processor/multi-core platform. In an embodiment, a receiving core has a message queue and a message prefetcher. Incoming messages are simultaneously written to the message queue and the message prefetcher. The prefetcher speculatively fetches data referenced in the received message so that the data is available when the message is executed in the execution pipeline, or shortly thereafter. Other embodiments are described and claimed.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: May 3, 2011
    Assignee: Intel Corporation
    Inventors: Aaron Kunze, Erik J. Johnson, Hermann Gartler
  • Patent number: 7937537
    Abstract: A memory switching data processing system including one or more central processing units (‘CPUs’); random access memory organized in at least two banks of memory modules; one or more memory buses providing communications paths for data among the CPUs and the memory modules; and a flexibly configurable memory bus switch comprising a first configuration adapting the first CPU to a first bank of memory modules and a second CPU to a second bank of memory modules and a second configuration adapting the first CPU to both the first bank of memory modules and the second bank of memory modules.
    Type: Grant
    Filed: September 24, 2007
    Date of Patent: May 3, 2011
    Assignee: International Business Machines Corporation
    Inventors: Justin P. Bandholz, Zachary B. Durham, Clifton E. Kerr, Joseph E. Maxwell, Kevin M. Reinberg, Kevin S. D. Vernon, Philip L. Weinstein, Christopher C. West
  • Patent number: 7930488
    Abstract: A non-volatile memory sharing system is provided. The non-volatile memory sharing system includes a plurality of processors comprising at least a first processor and a second processor, a non-volatile memory, and a processor bridge coupled between the first processor and the second processor. The non-volatile memory is coupled to the first processor, and is used for storing a plurality of program codes or data comprising at least a first program code or data for the first processor and a second program code or data for the second processor. The first processor is for executing the first program code stored in the non-volatile memory, and the second processor is for obtaining the second program code or data from the non-volatile memory via the first processor and the processor bridge.
    Type: Grant
    Filed: September 22, 2008
    Date of Patent: April 19, 2011
    Assignee: Mediatek Inc.
    Inventor: Hsin-Chung Yeh
  • Patent number: 7929539
    Abstract: A method for controlling access by processes running on a host device to a communication network includes assigning to each of the processes a respective doorbell address on a network interface adapter that couples the host device to the network and allocating instances of a communication service on the network, to be provided via the adapter, to the processes. Upon receiving a request submitted by a given one of the processes to its respective doorbell address to access one of the allocated service instances, the adapter conveys the data over the network using the specified instance of the service, subject to verifying, based on the doorbell address to which the request was submitted, that the specified instance was allocated to the given process.
    Type: Grant
    Filed: January 27, 2009
    Date of Patent: April 19, 2011
    Assignee: Mellanox Technologies Ltd.
    Inventors: Michael Kagan, Gil Bloch, Diego A. Crupnicoff, Margarita Schnitman, Dafna Levenvirth
  • Patent number: 7925854
    Abstract: A memory system architecture is provided in which a memory controller controls memory devices in a serial interconnection configuration. The memory controller has an output port for sending memory commands and an input port for receiving memory responses for those memory commands requisitioning such responses. Each memory device includes a memory, such as, for example, NAND-type flash memory, NOR-type flash memory, random access memory and static random access memory. Each memory command is specific to the memory type of a target memory device. A data path for the memory commands and the memory responses is provided by the interconnection. A given memory command traverses memory devices in order to reach its intended memory device of the serial interconnection configuration. Upon its receipt, the intended memory device executes the given memory command and, if appropriate, sends a memory response to a next memory device. The memory response is transferred to the memory controller.
    Type: Grant
    Filed: June 29, 2007
    Date of Patent: April 12, 2011
    Assignee: MOSAID Technologies Incorporated
    Inventors: HakJune Oh, Hong Beom Pyeon, Jin-Ki Kim
  • Patent number: 7925749
    Abstract: A system and method for transparent data replication of one or more data containers over migrating virtual servers (vfilers) operating on physical storage systems is provided. A mirroring (or other replication) procedure associated with a vfiler generates an entry in a mirror table maintained by one or more appropriate mirroring applications executing on the physical storage systems. The mirror table identifies source and destination “owners” of a replicated data container by vfiler instead of only by physical storage system. Thus, when a vfiler is migrated from a source physical storage system (“source”) to a destination physical storage system (“destination”), the mirroring application may continue to perform mirroring operations on the data containers at a per vfiler level to thereby improve the utility of migration of the vfiler among the storage systems.
    Type: Grant
    Filed: April 24, 2007
    Date of Patent: April 12, 2011
    Assignee: NetApp, Inc.
    Inventors: Dong Lin, Ravikanth Dronamraju, Mark Muhlstein, Michael L. Federwisch
  • Patent number: 7921151
    Abstract: A computer system's multiple processors are managed as devices. The operating system accesses the multiple processors using processor device modules loaded into the operating system to facilitate a communication between an application requesting access to a processor and the processor. A device-like access is determined for accessing each one of the processors similar to device-like access for other devices in the system such as disk drives, printers, etc. An application seeking access to a processor issues device-oriented instructions for processing data, and in addition, the application provides the processor with the data to be processed. The processor processes the data according to the instructions provided by the application.
    Type: Grant
    Filed: July 19, 2008
    Date of Patent: April 5, 2011
    Assignee: International Business Machines Corporation
    Inventors: Maximino Aguilar, Jr., Michael Norman Day, Mark Richard Nutter, James Michael Stafford
  • Patent number: 7917705
    Abstract: A scalable, performance-based, volume allocation technique that can be applied in large storage controller collections is disclosed. A global resource tree of multiple nodes representing interconnected components of a storage system is analyzed to yield gap values for each node (e.g., a bottom-up estimation). The gap value for each node is an estimate of the amount in GB of the new workload that can be allocated in the subtree of that node without exceeding the performance and space bounds at any of the nodes in that subtree. The gap values of the global resource tree are further analyzed to generate an ordered allocation list of the volumes of the storage system (e.g., a top-down selection). The volumes may be applied to a storage workload in the order of the allocation list and the gap values and list are updated.
    Type: Grant
    Filed: May 17, 2007
    Date of Patent: March 29, 2011
    Assignee: International Business Machines Corporation
    Inventors: Bhuvan Bamba, Madhukar R. Korupolu
  • Patent number: 7917941
    Abstract: A system and method for providing security for an Internet server. The system comprises: a logical security system for processing login and password data received from a client device during a server session in order to authenticate a user; and a physical security system for processing Internet protocol (IP) address information of the client device in order to authenticate the client device for the duration of the server session.
    Type: Grant
    Filed: September 22, 2003
    Date of Patent: March 29, 2011
    Assignee: International Business Machines Corporation
    Inventor: Bruce Wallman
  • Patent number: 7908413
    Abstract: A method for data distribution, including distributing logical addresses among an initial set of devices so as provide balanced access, and transferring the data to the devices in accordance with the logical addresses. If a device is added to the initial set, forming an extended set, the logical addresses are redistributed among the extended set so as to cause some logical addresses to be transferred from the devices in the initial set to the additional device. There is substantially no transfer of the logical addresses among the initial set. If a surplus device is removed from the initial set, forming a depleted set, the logical addresses oldie surplus device are redistributed among the depleted set. There is substantially no transfer of the logical addresses among the depleted set. In both cases the balanced access is maintained.
    Type: Grant
    Filed: July 15, 2003
    Date of Patent: March 15, 2011
    Assignee: International Business Machines Corporation
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen
  • Publication number: 20110055490
    Abstract: A digital system is provided with a memory interposer module configured to be coupled between a processor module and a memory module. The memory interposer module has a memory controller configured to couple to the memory module. It also includes a first memory emulator configured to couple to the processor module via a connector, wherein the first memory emulator is configured to emulate the memory module. There is an arbiter coupled between the memory controller and the memory emulator. A second memory emulator is connected to the arbiter, wherein the second memory emulator is also configured to emulate the memory module. Each memory emulator is operable to stall a memory request when a conflict occurs.
    Type: Application
    Filed: January 5, 2010
    Publication date: March 3, 2011
    Inventors: Philippe Gentric, Olivier Alavoine
  • Publication number: 20110047320
    Abstract: A data processing system performs a data processing method by receiving and interpreting a command packet corresponding to a program operation, identifying a size of data to be programmed in the program operation, and programming the data using a buffered or un-buffered program operation based on the size of the data.
    Type: Application
    Filed: June 22, 2010
    Publication date: February 24, 2011
    Applicant: SAMSUNG ELECTRONICS CO., LTD.
    Inventor: Jin Hyoung KWON
  • Publication number: 20110040906
    Abstract: An apparatus, method, and system for implementing a hardware transactional memory (HTM) system with multiple levels of transactional buffers. The apparatus comprises a data cache configured to buffer data in a shared (by a plurality of processing cores) memory accessed by speculative memory access operations and to retain the data during at least a portion of an attempt to execute the atomic memory transaction. The apparatus also comprises an overflow detection circuit configured to detect an overflow condition upon determining that the data cache has insufficient capacity to buffer a portion of data accessed as part of the atomic memory transaction, as well as a buffering circuit configured to respond to the detection of the overflow condition by preventing the portion of data from being buffered in the data cache and buffering the portion of data in a secondary buffer separate from the data cache.
    Type: Application
    Filed: November 30, 2009
    Publication date: February 17, 2011
    Inventors: Jaewoong Chung, David S. Christie, Michael P. Hohmuth, Stephan Diestelhorst, Martin Pohlack
  • Patent number: 7890298
    Abstract: Some embodiments of the present invention provide a system that manages a performance of a computer system. During operation, a current expert policy in a set of expert policies is executed, wherein the expert policy manages one or more aspects of the performance of the computer system. Next, a set of performance parameters of the computer system is monitored during execution of the current expert policy. Then, a next expert policy in the set of expert policies is dynamically selected to manage the performance of the computer system, wherein the next expert policy is selected based on the monitored set of performance parameters to improve an operational metric of the computer system.
    Type: Grant
    Filed: June 12, 2008
    Date of Patent: February 15, 2011
    Assignee: Oracle America, Inc.
    Inventors: Ayse K Coskun, Kenny C Gross
  • Patent number: 7877633
    Abstract: The disk controller has a plurality of channel control units, a plurality of cache memories, a plurality of disk control units, and a plurality of internal switch units. Each channel control unit or disk control unit sends to one of the cache memory units a request packet requesting execution of processing. The cache memory unit sends a response packet in response to the received request packet. Each internal switch unit monitors the request packet sent from the channel control unit or disk control unit, and judges whether or not the response packet to the request packet has passed through the internal switch unit within a first given time period since the passage of the request packet. In the case where the response packet has not passed through the internal switch unit within the first given time period, the internal switch unit sends a failure notification.
    Type: Grant
    Filed: May 12, 2010
    Date of Patent: January 25, 2011
    Assignee: Hitachi, Ltd.
    Inventors: Shuji Nakamura, Akira Fujibayashi, Mutsumi Hosoya
  • Publication number: 20110016278
    Abstract: A memory module includes a substrate having signal lines thereon that form a control path and a plurality of data paths. A plurality of memory devices are mounted on the substrate. Each memory device is coupled to the control path and to a distinct data path. The memory module includes control circuitry to enable each memory device to process a distinct respective memory access command in a succession of memory access commands and to output data on the distinct data path in response to the processed memory access command.
    Type: Application
    Filed: March 5, 2009
    Publication date: January 20, 2011
    Inventors: Frederick Ware, Craig E. Hampel, Ian Shaeffer, Scott C. Best
  • Publication number: 20110010508
    Abstract: A memory system includes a first memory that is used as a main memory of a target device, a second memory that has an access speed lower than that of the first memory, a securing section that secures a predetermined area of the first memory as a temporary storage area of the second memory, and a memory control section that receives an instruction to write data into the second memory, temporarily stores the data into the first memory and also transfers the stored data from the first memory to the second memory.
    Type: Application
    Filed: July 12, 2010
    Publication date: January 13, 2011
    Applicant: FUJITSU LIMITED
    Inventors: Sadao Miyazaki, Osamu Ishibashi, Rikizo Nakano
  • Patent number: 7870239
    Abstract: This invention is a system and method for managing data in a secure manner in a data storage environment that is in communication with a network including an internet-based network. The system includes logic for securely managing internet client's access to data volumes stored on a data storage system, and may also include logic operating with a file server for providing dynamic access of data available to such clients in a secure fashion.
    Type: Grant
    Filed: March 29, 2002
    Date of Patent: January 11, 2011
    Assignee: EMC Corporation
    Inventors: Mark Kaufman, Uresh K. Vahalia, Percy Tzelnic, Steven M. Blumenau, John T. Fitzgerald, Erez Ofer, James M. McGillis, Mark C. Lippitt, Natan Vishlitzky
  • Patent number: 7870326
    Abstract: A multiprocessor system and method thereof are provided.
    Type: Grant
    Filed: June 28, 2007
    Date of Patent: January 11, 2011
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Yun-Hee Shin, Han-Gu Sohn, Young-Min Lee, Ho-Cheol Lee, Soo-Young Kim, Dong-Hyuk Lee, Chang-Ho Lee
  • Publication number: 20100332770
    Abstract: A system and method for concurrency control may use slotted read-write locks. A slotted read-write lock is a lock data structure associated with a shared memory area, wherein the slotted read-write lock indicates whether any thread has a read-lock and/or a write-lock for the shared memory area. Multiple threads may concurrently have the read-lock but only one thread can have the write-lock at any given time. The slotted read-write lock comprises multiple slots, each associated with a single thread. To acquire the slotted read-write lock for reading, a thread assigned to a slot performs a store operation to the slot and then attempts to determine that no other thread holds the slotted read-write lock for writing. To acquire the slotted read-write lock for writing, a thread assigned to a slot sets its write-bit and then attempts to determine that the write-lock is not held.
    Type: Application
    Filed: June 26, 2009
    Publication date: December 30, 2010
    Inventors: David Dice, Nir N. Shavit
  • Publication number: 20100332771
    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: Application
    Filed: June 26, 2009
    Publication date: December 30, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Jan Gray, David Callahan, Burton Jordan Smith, Gad Sheaffer, Ali-Reza Adl-Tabatabai
  • Patent number: 7861034
    Abstract: A storage system stores multiple copies of data on physical storage implemented, for example, with multiple disk units. Input/output read requests are received from host systems and distributed in a manner that allows parallel read operations to be conducted over the multiple disk units of the physical storage.
    Type: Grant
    Filed: February 12, 2007
    Date of Patent: December 28, 2010
    Assignee: Hitachi, Ltd.
    Inventors: Akira Yamamoto, Takao Satoh, Shigeo Honma, Yoshihiro Asaka, Yoshiaki Kuwahara, Hiroyuki Kitajima
  • Publication number: 20100325369
    Abstract: A broadcast receiving apparatus and a method for managing a memory are provided. The method for managing a memory includes setting a part of a memory to be a first memory area to be used for a first operating system; setting a portion of the memory which is not set as the first memory area to be a second memory area; and if a second operating system uses the memory, expanding the first memory area to include at least part of the second memory area. Therefore, the broadcast receiving apparatus uses a plurality of operating systems.
    Type: Application
    Filed: December 17, 2009
    Publication date: December 23, 2010
    Applicant: Samsung Electronics Co., Ltd.
    Inventor: Young-ho CHOI
  • Patent number: 7856513
    Abstract: A device, including a first storage unit configured to store a first plurality of files and a first management data corresponding to the first files; a connector configured to connect to an external storage device, the external storage being configured to store a second plurality of files and second management data corresponding to the second files; a controller configured to generate new management data by merging the first management data and the second management data, and to store the new management data in a memory; and a display unit configured to display contents of the first and second plurality of files based on the new management data without indicating to the user where the respective files are stored.
    Type: Grant
    Filed: October 28, 2008
    Date of Patent: December 21, 2010
    Assignee: Sony Corporation
    Inventors: Yoshimichi Minakata, Noriyuki Koga, Shinjiro Akiha, Kenichi Iida
  • Patent number: 7856541
    Abstract: A system is composed of multiple storage control modules, which are connected to each other via interconnects. The aforesaid interconnects connecting the storage control modules may cause certain extra latency. Each storage control module may have data preservation module, which can preserve data stored by host computers. The system incorporates a latency table and provides a volume according to the latency table in accordance with a request from a host computer or an administrator. The latency table is dynamically created or statically stored in the inventive system.
    Type: Grant
    Filed: April 18, 2007
    Date of Patent: December 21, 2010
    Assignee: Hitachi, Ltd.
    Inventors: Yasunori Kaneda, Hiroshi Arakawa
  • Patent number: 7844786
    Abstract: Electrical interfaces, addressing schemes, and command protocols allow for communications with memory modules in computing devices such as imaging and printing devices. Memory modules may be assigned an address through a set of discrete voltages. One, multiple, or all of the memory modules may be addressed with a single command, which may be an increment counter command, a write command, or a punch out bit field. The status of the memory modules may be determined by sampling a single signal that may be at a low, high, or intermediate voltage level.
    Type: Grant
    Filed: April 22, 2008
    Date of Patent: November 30, 2010
    Assignee: Lexmark International, Inc.
    Inventors: James Ronald Booth, Bryan Scott Willett
  • Publication number: 20100299486
    Abstract: An electronic device containing a memory having a plurality of memory modules. Each memory module includes a plurality of memory devices. The electronic device also contains a data bus having a number of lines for transferring data from and to the memory devices. The data bus is configured to have at least two sub-sets of lines coupled to different memory modules. A method including reading a data word from memory devices of different memory modules through a data bus using different subsets of lines of the data bus for each memory module.
    Type: Application
    Filed: April 30, 2010
    Publication date: November 25, 2010
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventor: Sotirios Tambouris
  • Patent number: 7831779
    Abstract: A multiple computer system is disclosed in which n computers (M1, M2 . . . Mn) each run a different portion of a single application program written to execute only on a single computer. The local memory of each computer is maintained substantially the same by updating all computers with every change made to addressed memory locations. Contention can arise when the same memory location is substantially simultaneously updated by two or more machines because of transmission delays and latency of the communications network interconnecting all the computers. Contention detection and resolution is disclosed. A count value (99) indicative of the cumulative number of times each memory location has been updated is utilized. Contention is indicated if the currently stored count value and the incoming updating count value are the same. A method of echo suppression and a method of echo rejection are disclosed.
    Type: Grant
    Filed: October 5, 2007
    Date of Patent: November 9, 2010
    Assignee: Waratek Pty Ltd.
    Inventor: John M. Holt
  • Patent number: 7831772
    Abstract: A method for temporarily storing data objects in memory of a distributed system comprising a plurality of servers sharing access to data comprises steps of: reserving memory at each of the plurality of servers as a default data cache for storing data objects; in response to user input, allocating memory of at least one of the plurality of servers as a named cache reserved for storing a specified type of data object; in response to an operation at a particular server requesting a data object, determining whether the requested data object is of the specified type corresponding to the named cache at the particular server; if the data object is determined to be of the specified type corresponding to the named cache, storing the requested data object in the named cache at the particular server; and otherwise, using the default data cache for storing the requested data object.
    Type: Grant
    Filed: December 12, 2006
    Date of Patent: November 9, 2010
    Assignee: Sybase, Inc.
    Inventors: Vaibhav A. Nalawade, Vadiraja P. Bhatt, KantiKiran K. Pasupuleti
  • Patent number: 7822814
    Abstract: Method, apparatus and article of manufacture for acquiring a buffer after data from a remote sender (e.g., client) has been received by a local machine (e.g., server). Because the client data has already been received when the buffer is acquired, the buffer may be sized exactly to the size of the client data. In general, the buffer may be caller supplied or system supplied.
    Type: Grant
    Filed: March 27, 2008
    Date of Patent: October 26, 2010
    Assignee: International Business Machines Corporation
    Inventors: Mark Linus Bauman, Bob Richard Cernohous, Kent L. Hofer, John Charles Kasperski, Steven John Simonson, Jay Robert Weeks
  • Patent number: 7822887
    Abstract: A data storage system includes a data management system that transfers data between a host system and multiple storage devices through multiple channels. The data management system receives data from the host system and writes the data as data segments to the multiple storage devices. Each data segment may comprise one sector, more than one sector, or a portion of a sector, depending on the embodiment. The data segments are transferred to and from the multiple storage devices in parallel fashion while the data in each data segment is transferred to its corresponding data storage device sequentially. The data management system reassembles data segments received from the data storage devices and sends the data to the host system.
    Type: Grant
    Filed: October 26, 2007
    Date of Patent: October 26, 2010
    Assignee: STEC, Inc.
    Inventors: Hooshmand Torabi, Nader Salessi
  • Patent number: 7818512
    Abstract: A high-capacity memory subsystem architecture utilizes multiple memory modules arranged in a hierarchical tree configuration, in which at least some communications from an external source traverse successive levels of the tree to reach memory modules at the lowest level. Preferably, the memory system employs buffered memory chips having dual-mode operation, one of which supports a tree configuration in which data is interleaved and the communications buses operate at reduced bus width and/or reduced bus frequency to match the level of interleaving.
    Type: Grant
    Filed: June 27, 2007
    Date of Patent: October 19, 2010
    Assignee: International Business Machines Corporation
    Inventors: Gerald Keith Bartley, John Michael Borkenhagen, Philip Raymond Germann
  • Patent number: 7818513
    Abstract: Transactional memory (TM) may be used in conjunction with various synchronization mechanisms, such as that copy a current version of an object, update the copy, and then cause the copy to become current atomically by changing a “current version” indicator. Software operations to modify an object may first make a private copy of the object, modify the private copy, and atomically make the private copy the current version while verifying that no other software operation or transaction has concurrently updated the object. A transaction may be used to update the current copy of a collection of data “in place” and thereby avoiding the necessity to make a copy of the data being modified. If the transactional memory mechanism is unable to complete the transaction to modify the collection of data in place, a set of software operations may be used to modify the collection of data.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: October 19, 2010
    Assignee: Oracle America, Inc.
    Inventor: Mark S. Moir
  • Patent number: 7818390
    Abstract: A method for transferring data between terminal apparatuses in a network at least comprising a server, a first terminal apparatus and a second terminal apparatus, wherein the server has a storage device at least comprising a first and a second disk images; the method comprising: generating a message of data transfer request based on the information on the data to be transferred; transferring the generated message to the second terminal apparatus; receiving the message and transferring the message to the server if the requested data transfer is allowed; and transferring date between the first disk image and the second disk image, in response to the reception of the message.
    Type: Grant
    Filed: May 3, 2007
    Date of Patent: October 19, 2010
    Assignee: Tsinghua University
    Inventors: Yaoxue Zhang, Guangbin Xu, Wenyuan Kuang, Yuezhi Zhou
  • Patent number: 7814286
    Abstract: A method and apparatus for filtering memory probe activity for writes in a distributed shared memory computer. In one embodiment, the method may include initiating a first store operation to a cache data block stored in a first cache from a first processing node and initiating a first load operation to said cache data block from a second processing node subsequent to initiating said first store operation; and assigning a pairwise-shared directory state to a coherence directory entry corresponding to said cache data block in response to initiating said first load operation. The method may further include initiating a second store operation to said cache data block from said second processing node subsequent to initiating said first load operation; and assigning a migratory directory state to said coherence directory entry in response to initiating said second store operation, where the migratory directory state is distinct from a modified directory state.
    Type: Grant
    Filed: February 18, 2010
    Date of Patent: October 12, 2010
    Assignee: GLOBALFOUNDRIES Inc.
    Inventor: Patrick N. Conway
  • Patent number: 7814280
    Abstract: A shared memory is described having a plurality of receive ports and a plurality of transmit ports characterized by a first data rate. A memory includes a plurality of memory banks organized in rows and columns. Operation of the memory array is characterized by a second data rate. Non-blocking receive crossbar circuitry is operable to connect any of the receive ports with any of the memory banks. Non-blocking transmit crossbar circuitry is operable to connect any of the memory banks with any of the transmit ports. Buffering is operable to decouple operation of the receive and transmit ports at the first data rate from operation of the memory array at the second data rate. Scheduling circuitry is operable to control interaction of the ports, crossbar circuitry, and memory array to effect storage and retrieval of the data segments in the shared memory.
    Type: Grant
    Filed: August 18, 2005
    Date of Patent: October 12, 2010
    Assignee: Fulcrum Microsystems Inc.
    Inventors: Uri Cummings, Andrew Lines, Patrick Pelletier, Robert Southworth
  • Patent number: 7814166
    Abstract: Methods and apparatus provide for: receiving a memory access request for data from a processor of a multi-processor system; determining whether the data of the memory access request is stored in a remote processing system coupled to the multi-processor system over a communications network; requesting the data from the remote processing system; receiving the data from the remote processing system over the communications network; and providing the data to the processor of the multi-processor system.
    Type: Grant
    Filed: January 27, 2006
    Date of Patent: October 12, 2010
    Assignee: Sony Computer Entertainment Inc.
    Inventor: Masakazu Suzuoki
  • Patent number: 7814285
    Abstract: A method and apparatus for filtering memory probe activity for writes in a distributed shared memory computer. In one embodiment, the method may include initiating a first store operation to a cache data block stored in a first cache from a first processing node; assigning a modified cache state to said cache data block in response to initiating said first store operation. The method may further include initiating a first load operation to said cache data block from a second processing node; and assigning a pairwise-shared directory state to a coherence directory entry corresponding to said cache data block in response to initiating said first load operation, where the pairwise-shared directory state is distinct from a shared directory state.
    Type: Grant
    Filed: February 18, 2010
    Date of Patent: October 12, 2010
    Assignee: GLOBALFOUNDRIES Inc.
    Inventor: Patrick N. Conway
  • Patent number: 7809875
    Abstract: A system and method for writing, by a sender, a message into blocks of a memory space, the memory space being shared by the sender of the message and a receiver of the message, and sending, by the sender, an interrupt corresponding to the message.
    Type: Grant
    Filed: June 30, 2008
    Date of Patent: October 5, 2010
    Assignee: Wind River Systems, Inc.
    Inventors: Anand Sundaram, Johan Fornaeus
  • Patent number: 7805579
    Abstract: Embodiments may comprise logic such as hardware and/or code within a heterogeneous multi-core processor or the like to coordinate reading from and writing to buffers substantially simultaneously. Many embodiments include multi-buffering logic for implementing a procedure for a processing unit of a specialized processing element. The multi-buffering logic may instruct a direct memory access controller of the specialized processing element to read data from some memory location and store the data in a first buffer. The specialized processing element can then process data in the second buffer and, thereafter, the multi-buffering logic can block read access to the first buffer until the direct memory access controller indicates that the read from the memory location is complete. In such embodiments, the multi-buffering logic may then instruct the direct memory access controller to write the processed data to other memory.
    Type: Grant
    Filed: July 31, 2007
    Date of Patent: September 28, 2010
    Assignee: International Business Machines Corporation
    Inventors: Daniel A. Brokenshire, Michael B. Brutman, Gordon C. Fossum
  • Patent number: 7801903
    Abstract: Large-scale table data stored in a shared memory are sorted by a plurality of processors in parallel. According to the present invention, the records subjected to processing are first divided for allocation to the plurality of processors. Then, each processor counts the numbers of local occurrences of the field value sequence numbers associated with the records to be processed. The numbers of local occurrences of the field value sequence numbers counted by each processor is then converted into global cumulative numbers, i.e., the cumulative numbers used in common by the plurality of processors. Finally, each processor utilizes the global cumulative numbers as pointers to rearrange the order of the allocated records.
    Type: Grant
    Filed: May 22, 2006
    Date of Patent: September 21, 2010
    Assignee: Turbo Data Laboratories, Inc.
    Inventor: Shinji Furusho