Farley, Peter x23353 wrote:
I am in the midst of a CPU optimization exercise for a COBOL program and
ran across the following code sequence generated by the compiler:

MVI 254(3),X'40' MVC 255(119,3),254(3)

This code is generated in response to a simple COBOL "MOVE SPACES TO
variable" instruction, where the variable is 120 bytes long.

Did I or did I not see some discussion here or perhaps in a SHARE
presentation that on a z10 machine overlapping/destructive moves wreck
the pipeline and take *much* longer to execute as a result?  Or am I
imagining that?

The reason I ask is that Strobe highlights this place in the code as a
high-usage point, and I am struggling to understand why.

TIA for any info you can provide.

According to various presentations I've seen and discussions I've had, the hardware is supposed to recognize certain special cases like this and optimize their execution. I will say that all of those presentations and discussions took place before the z10 was available.

--
Edward E Jaffe
Phoenix Software International, Inc
5200 W Century Blvd, Suite 800
Los Angeles, CA 90045
310-338-0400 x318
[email protected]
http://www.phoenixsoftware.com/

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to