IP Library Granted Patent US 10,031,820
Granted Patent B2
US 10,031,820 · App. 13/743,881 · Granted Jul 24, 2018

Mirroring high performance and high availablity applications across server computers

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,031,820
App. No.
13/743,881
Granted
Jul 24, 2018
Kind
B2
Abstract

Systems and methods to mirror data and otherwise manage memory are provided. A buffer may be coupled to a processor and be configured to write a first copy of data to a first memory located at a first server computer and a second copy of the data to a second memory that is accessible to both the first server computer and a second server computer. The buffer may be coupled directly to at least one of the first memory and the second memory via a memory bus, copper cable, or an optical cable. The buffer may write the first and the second copies of the data concurrently.

Claims (27)

1. An apparatus comprising:

a first server computer including a first processor configured to initiate writing of data, a buffer coupled to the first processor, and a first memory coupled to the buffer;

a second server computer; and

a cable coupled to the buffer for providing communication with a second memory that is accessible to both the first server computer and a second server computer, wherein the buffer is configured to receive data from first processor, write a first copy of the data to the first memory, and write a second copy of the data to the second memory.

2. The apparatus of claim 1 , wherein the buffer is coupled directly to both the first memory and the second memory.

3. The apparatus of claim 1 , wherein the buffer is coupled to a buffer of the second memory.

4. The apparatus of claim 1 , wherein the buffer writes the first and the second copies of the data concurrently.

5. The apparatus of claim 1 , wherein the buffer writes the first and the second copies of the data at a dynamic random-access memory (DRAM) speed.

6. The apparatus of claim 1 , wherein the first memory includes at least one of a dual in-line memory module (DIMM), a dynamic random-access memory (DRAM), a flash-backed DIMM (NVRAM), a solid state drive (SSD) flash DIMM, a NAND, a magnetoresistive random-access memory (MRAM), and a phase change memory (PCM).

7. The apparatus of claim 1 , wherein the cable is a copper cable.

8. The apparatus of claim 1 , further comprising wherein the cable is an optical cable.

9. The apparatus of claim 1 , wherein the processor is configured to initiate reading stored data from the first memory and not from the second memory.

10. The apparatus of claim 1 , wherein the first server computer and the second server computer are configured to automatically resume operations of the other in response to a processing interruption.

11. The apparatus of claim 1 , wherein no processor cycles of the processor are used to copy the data from the buffer to the first memory and the second memory.

12. The apparatus of claim 1 , wherein the second memory includes a multiplexer.

13. The apparatus of claim 1 , wherein the second memory includes a shared memory that is remote from the first and second server computers.

14. A method of managing memory, the method comprising:

a processor of a first server computer running an application and generating data to write to a first memory of the first server computer;

the first server writing a first copy of the data to the first memory;

the first server writing a second copy of the data to a second memory that is accessible to both the first server computer and a second server computer;

detecting that the first server computer has failed while running the application; and

the second server computer automatically resuming the application using the second copy of the data on the second memory in response to detecting that the first server computer has failed.

15. The method of claim 14 , further comprising:

coupling the processor directly to the second memory of the second server using at least one of a copper cable and an optical cable.

16. The method of claim 14 , further comprising:

coupling the first memory directly to the second memory using at least one of a copper cable and an optical cable.

17. The method of claim 14 , wherein the second memory includes a memory pool that is remote from the first and second server computers.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2025
From: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LIMITED
To: LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 069869/0614 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2019
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
To: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LTD
Reel/Frame 050311/0027 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 034194/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2013
From: BORKENHAGEN, JOHN M.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 029650/0741 →