Patent application number | Description | Published |
20080244189 | Method, Apparatus, System and Program Product Supporting Directory-Assisted Speculative Snoop Probe With Concurrent Memory Access - A multiprocessor data processing system includes a memory controller controlling access to a memory subsystem, multiple processor buses coupled to the memory controller, and at least one of multiple processors coupled to each processor bus. In response to receiving a first read request of a first processor via a first processor bus, the memory controller initiates a speculative access to the memory subsystem and a lookup of the target address in a central coherence directory. In response to the central coherence directory indicating that a copy of the target memory block is cached by a second processor, the memory controller transmits a second read request for the target address on a second processor bus. In response to receiving a clean snoop response to the second read request, the memory controller provides to the first processor the target memory block retrieved from the memory subsystem by the speculative access. | 10-02-2008 |
20080301376 | Method, Apparatus, and System Supporting Improved DMA Writes - A memory controller receives a stream of DMA write operations and enqueues them in a queue enforcing a First-In First-Out (FIFO) order. Prior to processing a particular DMA write operation, the memory controller acquires coherency ownership of a target memory block and stores the result in a low latency array. In response to acquiring coherency ownership, this low latency array is updated to a coherency state signifying coherency ownership by the memory controller. In a pipelined array access, both the low latency array and the second array are accessed and if the lower latency second array indicates the particular coherency state with no collision indication, the memory controller signals that the particular DMA write operation can be performed, where the signaling occurs prior to results being obtained from the higher latency first array at the normal end of the array access pipeline. In response to the signaling, the memory controller performs an update to the memory subsystem indicated by the particular DMA write operation. | 12-04-2008 |
20090119478 | Memory Controller and Method for Multi-Path Address Translation in Non-Uniform Memory Configurations - In a method of translating a physical memory address to a device address in a device memory space, a fast address translate of the physical memory address, adapted to translate addresses in uniformly configured device memory space, is performed thereby generating a first translated address. A full address translate of the physical memory address, adapted to translate addresses in non-uniformly configured device memory space, is also performed thereby generating a second translated address. Boundaries of a uniform portion of the device memory space are identified, to which the physical memory address is compared to determine if the physical memory address is in the uniform portion of the device memory space. When the physical memory address is in the uniform portion, the first translated address is selected as the device address. Otherwise, the second translated address is selected. | 05-07-2009 |
20090268727 | Early header CRC in data response packets with variable gap count - A method is provided for processing a command issued by a processor over a bus. The method includes ( | 10-29-2009 |
20090268736 | Early header CRC in data response packets with variable gap count - A method is provided for processing commands issued by a processor over a bus. The method includes the steps of (1) transmitting the command to a remote node to obtain access to data required to complete the command; (2) receiving from the remote node a response packet including a header and a header CRC; (3) validating the response packet based on the header CRC; and (4) before receiving the data required to complete the command, arranging to return the data to the processor over the bus. | 10-29-2009 |
20090271532 | Early header CRC in data response packets with variable gap count - A method is provided for processing a command issued by a processor over a bus. The method includes ( | 10-29-2009 |
20090307523 | System Performance Through Invalidation of Speculative Memory Scrub Commands - A memory controller and a method for improved computer system performance invalidates (i.e., cancels or does not allow for execution of) speculative or unnecessary scrub write commands as part of the periodic execution of the overall scrub command upon the occurrence of certain events, such as if the error checking and correction (ECC) operation indicates that the data were received without error or if the ECC operation indicates that the data received have an uncorrectable error. | 12-10-2009 |
Patent application number | Description | Published |
20080271054 | Computer System, Computer Program Product, and Method for Implementing Dynamic Physical Memory Reallocation - A computer system, computer program product, and method implement dynamic physical memory reallocation. A system management interface (SMI) Handler and an Operating System (OS) are arranged for exchanging communications. Periodically the SMI Handler queries the operating system to identify a percentage of available memory currently being utilized. Responsive to the identified percentage of available memory currently being utilized, physical memory is dynamically reallocated. | 10-30-2008 |
20090019238 | Memory Controller Read Queue Dynamic Optimization of Command Selection - A memory controller receives read requests from a processor into a read queue. The memory controller dynamically modifies an order of servicing the requests based on how many pending requests are in the read queue. When the read queue is relatively empty, requests are serviced oldest first to minimize latency. When the read queue becomes fuller, requests are serviced in a manner that maximizes throughput on a memory bus to reduce the likelihood that the read queue will become full and further requests from the processor would have to be halted. | 01-15-2009 |
20090019239 | Memory Controller Granular Read Queue Dynamic Optimization of Command Selection - A memory controller receives read requests from a processor into a read queue. The memory controller dynamically modifies an order of servicing the requests based on how many pending requests are in the read queue. When the read queue is relatively empty, requests are serviced oldest first to minimize latency. When the read queue becomes progressively fuller, requests are progressively, using three or more memory access modes, serviced in a manner that increases throughput on a memory bus to reduce the likelihood that the read queue will become full and further requests from the processor would have to be halted. | 01-15-2009 |
20090070647 | Scheduling of Background Scrub Commands to Reduce High Workload Memory Request Latency - A method and apparatus to scrub a memory during a scrub period, of a computer system. The computer system has a memory controller that receives read requests and write requests from a processor. The memory controller provides a different priority for scrub requests versus read requests during a period of relatively light memory workload versus a period of relatively heavy workload. The memory controller provides a relatively higher priority for scrub requests near an end of a scrub period if scrub progress is behind an expected scrub progress. | 03-12-2009 |
20090070648 | Efficient Scheduling of Background Scrub Commands - A method and apparatus to efficiently scrub a memory, during a scrub period, of a computer system that has a memory comprising a number of memory elements. Examples of memory elements are memory ranks and banks. A memory rank may further comprise one or more banks. The computer system has a memory controller that receives read requests and write requests from a processor. The memory controller includes a scrub controller configured to output more than one scrub request during a particular request selector cycle. The memory controller includes a request selector that services a read request, a write request, or one of the scrub requests during a request selector cycle. | 03-12-2009 |
20090216959 | Multi Port Memory Controller Queuing - The present invention is generally directed to a method, system, and program product wherein at least one command in a first queue is transferred to a second queue. When the first queue can no longer accept command(s) and a second queue is able to accept command(s), the second queue accepts the command(s) that the first queue can not. When the first queue is able to accept command(s), and there are command(s) in the second memory port that should have been in the first queue, the command(s) in the second queue are transferred to the first queue. | 08-27-2009 |
20090216960 | Multi Port Memory Controller Queuing - The present invention is generally directed to a method, system, and program product wherein at least two memory ports associated within a memory controller are capable of transferring commands between one another in unbalanced memory configurations. When the first memory port can no longer accept commands and a second memory port is able to accept commands, the second memory port accepts the commands that the first memory port can not. When the first memory port is able to accept commands, and there are commands in the second memory port that should have been in the first memory port, the commands in the second memory port are transferred to the first memory port. | 08-27-2009 |
Patent application number | Description | Published |
20160092312 | DEDUPLICATED DATA DISTRIBUTION TECHNIQUES - In connection with a data distribution architecture, client-side “deduplication” techniques may be utilized for data transfers occurring among various file system nodes. In some examples, these deduplication techniques involve fingerprinting file system elements that are being shared and transferred, and dividing each file into separate units referred to as “blocks” or “chunks.” These separate units may be used for independently rebuilding a file from local and remote collections, storage locations, or sources. The deduplication techniques may be applied to data transfers to prevent unnecessary data transfers, and to reduce the amount of bandwidth, processing power, and memory used to synchronize and transfer data among the file system nodes. The described deduplication concepts may also be applied for purposes of efficient file replication, data transfers, and file system events occurring within and among networks and file system nodes. | 03-31-2016 |
20160094649 | NODE-TO-NODE DATA DISTRIBUTION - Node-to-Node data distribution is described herein. A node may receive a set of peer nodes from a collection authority node that is managing a collection. The node and the set of peer nodes are members of the collection. The node may select a subset of peer nodes from the set of peer nodes. The node may attempt to establish communications with each of the subset of peer nodes, connected peers being those peers where the attempt was successful. The node may synchronize an event stream with each connected peer. | 03-31-2016 |
Patent application number | Description | Published |
20090222466 | AUTOMATED COMPUTING APPLIANCE CLONING OR MIGRATION - A system and method for automatically cloning or migrating a computing appliance while maintaining its operational state. A configuration bundle that includes configuration data, software revision level and a list of system updates is used to recover or duplicate a device's operation state. The system and method can also be utilized to migrate a computing appliance between different operating system while maintaining or replicating the previous operational state. | 09-03-2009 |
20130067557 | AUTHENTICATION SHARING IN A FIREWALL CLUSTER - A firewall cluster system comprises a first node operable to receive a connection in a firewall cluster having three or more nodes, determine user data associated with the connection, and share the user data with at least another node in the firewall cluster. | 03-14-2013 |
20130152156 | VPN SUPPORT IN A LARGE FIREWALL CLUSTER - A firewall cluster comprises three or more firewall processing nodes, at least one of which is operable to establish a Virtual Private Network (VPN) network connection. A node is further operable to share VPN state information with two or more receiving nodes by sending broadcast message to the two or more nodes. | 06-13-2013 |
20140019798 | AUTOMATED COMPUTING APPLIANCE CLONING OR MIGRATION - A system and method for automatically cloning or migrating a computing appliance while maintaining its operational state. A configuration bundle that includes configuration data, software revision level and a list of system updates is used to recover or duplicate a device's operation state. The system and method can also be utilized to migrate a computing appliance between different operating system while maintaining or replicating the previous operational state. | 01-16-2014 |