On Tue, 19 Aug 2025 21:14:31 +0000, Seymour J Metz <[email protected]> wrote:
>I suspect that the double MVC is more of a performance issue than the cache >hit. > I typically use LOCTR to avoid the duplicate execution. I suspect the LOCTR is inefficient for an EX MVC for a few reasons. 1. You want relevant instructions in the pipeline so that decoding can begin as soon as possible. Both EX and MVC must be decoded. 2. Using LOCTR means MVC is not in the 6 instruction pipeline and must be fetched. 3. As someone mentioned, J around the MVC is slower. Realize MVC is ignored by the pipeline because it saw the J. This is faster than LOCTR because the MVC is still in L1 cache. 4. LOCTR most likely must be retrieved from L2, L3, L4 or ram. If so, MVC must first be fetched before it can be decoded, causing an additional delay for the fetch of the source and destination data. 5. Fetch is slower than instruction speed. Think about Peter's comments about modifying the L1 instruction cache causing a fetch most likely from L2. Speed is impacted by the speed of L1, L2, L3, L4 and ram. With the impact of C and C based languages, is it worth the effort to be super efficient?
