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?

Reply via email to