Pre-fetching of memory is the loading of data from memory into cache before it is requested, in anticipation that it will be needed in the near future. A CPU may initiate a prefetch when a pattern of sequential access is recognized or predicted, or in some ISAs, when the instruction stream hints that the memory will be needed.