发明名称 System and method for effective caching using neural networks
摘要 Systems and methods for selecting an appropriate caching algorithm to be used when temporarily storing data accessed by an executing application using a neural network may dynamically and/or iteratively replace an initial caching algorithm being used for the application. An input layer of the neural network may gather values of performance related parameters, such as cache hit rates, data throughput rates, or memory access request response times. The neural network may detect a pattern or change in a pattern of accesses, or a change in a workload, a hardware component, or an operating system parameter. Dependent on these and/or other inputs, the neural network may select and apply a caching algorithm likely to improve performance of the application. Other inputs to the neural network may include values of hardware configuration parameters and/or operating system parameters. The neural network may perform a training exercise or may be self-training, e.g., using reinforcement learning.
申请公布号 US8965819(B2) 申请公布日期 2015.02.24
申请号 US201012857339 申请日期 2010.08.16
申请人 Oracle International Corporation 发明人 Tirunagari Durga Deep
分类号 G06E1/00;G06E3/00;G06F15/18;G06G7/00;G06N3/02;G06F13/00;G06F13/28;G06F12/12 主分类号 G06E1/00
代理机构 Meyertons, Hood, Kivlin, Kowert & Goetzel, P.C. 代理人 Kowert Robert C.;Meyertons, Hood, Kivlin, Kowert & Goetzel, P.C.
主权项 1. A method, comprising: performing, by a computer: beginning execution of an application on the computer, wherein said executing comprises temporarily storing in a cache data being accessed or computed by the application, wherein said temporarily storing stores the data in the cache according to a first caching algorithm; andduring said execution: a neural network running on the same computer monitoring values of one or more performance related parameters that reflect or affect the application's access to data or storage of data computed by the application;based on results of said monitoring, the neural network determining that the application's access to data or storage of data computed by the application is being rendered suboptimal by temporarily storing the data being accessed or computed by the application according to the first caching algorithm, such that the performance of the application itself is being rendered unacceptable or is being degraded;the neural network, in response to said determining, selecting a second caching algorithm to be used when temporarily storing data being accessed or computed by the application in order to improve the performance of the application during said execution, wherein said selecting is dependent, at least in part, on results of said monitoring;dynamically replacing the first caching algorithm with the second caching algorithm for the application to enable the computer to temporarily store in the cache, according to the second caching algorithm, data being accessed or computed by the application; andcontinuing execution of the application, wherein said continuing execution comprises temporarily storing data being accessed or computed by the application in a cache according to the second caching algorithm in order to improve the performance of the application during said execution.
地址 Redwood City CA US