A method, comprising: performing, by a computer: beginning execution of an application on the computer, wherein said executing comprises temporarily storing data accessed by the application in a cache according to a first caching algorithm; and during said execution: a neural network monitoring values of one or more performance-related parameters to determine whether the first caching algorithm is working well for the application in the current execution environment of the application; the neural network selecting a second caching algorithm to be used when temporarily storing data accessed by the application, wherein said selecting is dependent, at least in part, on results of said monitoring indicating that the first caching algorithm is not an appropriate caching algorithm for optimal performance of the application given the current execution environment; dynamically replacing the first caching algorithm with the second caching algorithm for the application during runtime in order to produce better application performance; and continuing execution of the application, wherein said continuing execution comprises temporarily storing data accessed by the application in a cache according to the second caching algorithm. performing, by a computer: beginning execution of an application on the computer, wherein said executing comprises temporarily storing data accessed by the application in a cache according to a first caching algorithm; and during said execution: a neural network monitoring values of one or more performance-related parameters to determine whether the first caching algorithm is working well for the application in the current execution environment of the application; the neural network selecting a second caching algorithm to be used when temporarily storing data accessed by the application, wherein said selecting is dependent, at least in part, on results of said monitoring indicating that the first caching algorithm is not an appropriate caching algorithm for optimal performance of the application given the current execution environment; dynamically replacing the first caching algorithm with the second caching algorithm for the application during runtime in order to produce better application performance; and continuing execution of the application, wherein said continuing execution comprises temporarily storing data accessed by the application in a cache according to the second caching algorithm. beginning execution of an application on the computer, wherein said executing comprises temporarily storing data accessed by the application in a cache according to a first caching algorithm; and during said execution: a neural network monitoring values of one or more performance-related parameters to determine whether the first caching algorithm is working well for the application in the current execution environment of the application; the neural network selecting a second caching algorithm to be used when temporarily storing data accessed by the application, wherein said selecting is dependent, at least in part, on results of said monitoring indicating that the first caching algorithm is not an appropriate caching algorithm for optimal performance of the application given the current execution environment; dynamically replacing the first caching algorithm with the second caching algorithm for the application during runtime in order to produce better application performance; and continuing execution of the application, wherein said continuing execution comprises temporarily storing data accessed by the application in a cache according to the second caching algorithm. a neural network monitoring values of one or more performance-related parameters to determine whether the first caching algorithm is working well for the application in the current execution environment of the application; the neural network selecting a second caching algorithm to be used when temporarily storing data accessed by the application, wherein said selecting is dependent, at least in part, on results of said monitoring indicating that the first caching algorithm is not an appropriate caching algorithm for optimal performance of the application given the current execution environment; dynamically replacing the first caching algorithm with the second caching algorithm for the application during runtime in order to produce better application performance; and continuing execution of the application, wherein said continuing execution comprises temporarily storing data accessed by the application in a cache according to the second caching algorithm.