IP Library Granted Patent US 9,384,155
Granted Patent B2
US 9,384,155 · App. 14/152,752 · Granted Jul 5, 2016

Customization of a bus adapter card

Inventors: Arvind Pruthi (Los Gatos, CA); Ram Kishore Johri (San Jose, CA)
Assignee: Toshiba Corporation
G06F13/28G06F12/0868G06F13/4068G06F12/0862G06F12/126G06F2212/313G06F2212/601H04L1/00
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 9,384,155
App. No.
14/152,752
Granted
Jul 5, 2016
Kind
B2
Abstract

The present disclosure includes systems and techniques relating to customization of a bus adapter card. in some implementations, an apparatus includes a processor and a program memory, a bus adapter card coupled with the computing apparatus and configured to connect with a storage device, the bus adapter card computing a cache memory and a controller to cache in the cache memory data associated with the storage device, where the program memory includes a driver to communicate with the bus adapter card responsive to requests corresponding to the storage device, and the driver is configured to modify its communications with the bus adapter card responsive to information provided separate from the requests.

Claims (19)

1. A system comprising: a computing apparatus comprising a processor and a program memory; and a bus adapter card coupled with the computing apparatus and configured to connect with a storage device, the bus adapter card comprising a cache memory and a controller configured to cache in the cache memory data associated with the storage device; wherein the program memory includes a driver programed to communicate with the bus adapter card responsive to requests intended for the storage device, and the program memory includes a policy engine programed to modify caching behavior of the bus adapter card responsive to a policy saved in the program memory, wherein the program memory is divided into a kernel space and a user space, the policy engine is located in the user space, and the kernel space includes a kernel module to communicate with the driver responsive to the policy.

2. The system of claim 1 , wherein the policy engine modifies the caching behavior of the bus adapter card by communicating the policy to the kernel module.

3. The system of claim 1 , wherein the policy engine modifies the caching behavior of the bus adapter card by communicating the policy to the driver.

4. The system of claim 1 , wherein the policy comprises a dynamic policy.

5. The system of claim 1 , wherein the bus adapter card is configured to connect with two or more storage devices, and the policy changes a length of caching based on Input/Output requests to provide better throughput for a first of the storage devices, as compared with throughput for a second of the storage devices, in accordance with a user's desire.

6. The system of claim 1 , wherein the policy specifies caching behavior for the bus adapter card based on Logical Unit Number (LUN).

7. The system of claim 6 , wherein the specified caching behavior comprises a quality of service metric specified for a portion of a LUN.

8. The system of claim 6 , wherein the policy causes the bus adapter card to never cache blocks read from a certain LUN.

9. The system of claim 1 , wherein the policy comprises a standing pre-fetch policy.

10. The system of claim 1 , wherein the policy engine modifies the caching behavior of the bus adapter card based on information generated by the bus adapter card.

11. The system of claim 10 , wherein the information generated by the bus adapter card comprises cache statistics, locality information, or hotspot information.

12. A system comprising: a computing apparatus comprising a processor and a program memory; and a bus adapter card coupled with the computing apparatus and configured to connect with a storage device, the bus adapter card comprising a cache memory and a controller configured to cache in the cache memory data associated with the storage device; wherein the program memory includes a driver programed to communicate with the bus adapter card responsive to requests intended for the storage device, and the program memory includes a kernel module programed to modify caching behavior of the bus adapter card by receiving an Input/Output (I/O) request diverted from the driver by an I/O kernel hook and associate a custom directive with the diverted I/O request to alter a pre-defined caching behavior of the bus adapter card.

13. The system of claim 12 , wherein the custom directive is added to the I/O request communicated to the bus adapter card by the driver.

14. The system of claim 12 , wherein the custom directive causes the bus adapter card to pre-fetch data based on the I/O request in accordance with a user instruction.

15. The system of claim 12 , wherein the custom directive alters the pre-defined caching behavior of the bus adapter card based on information generated by the bus adapter card.

16. The system of claim 15 , wherein the information generated by the bus adapter card comprises cache statistics, locality information, or hotspot information.

17. The system of claim 12 , wherein the custom directive is associated with the diverted I/O request on a per request basis and is operable to cause the bus adapter card to perform at least one of a pre-fetch operation or quality of service operation.

18. The system of claim 12 , wherein the custom directive is associated with the diverted I/O request on a per Logical Unit Number (LUN) basis and is operable to alter the pre-defined caching behavior based on the LUN.

19. The system of claim 18 , wherein the altered caching behavior comprises a quality of service metric specified for a portion of the LUN.

Assignments (4)
MERGER Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: K.K. PANGEA
Reel/Frame 055659/0471 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: KIOXIA CORPORATION
Reel/Frame 055669/0001 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: K.K. PANGEA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 055669/0401 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2018
From: TOSHIBA CORPORATION
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 047262/0500 →
Continuity (3)
Continuation 13181322 · Jul 12, 2011
Provisional Application 61365250 · Jul 16, 2010
Related Publication 20140129754A1 · May 8, 2014