That made me wonder: What does IBM think is the fasted move for various lengths?

Testing with IBM Enterprise COBOL for z/OS 6.2, compiled at OPT(2),ARCH(12) on 
a z/14, moving from a fixed length field to a field of the same length and 
can't be optimized away...

 -      1 to  4,096 bytes: generates a series of MVCs
 -  4,097 to 77,824 bytes: generates an MVC loop, followed by one more if needed
 - 77,825 and up:          generates an MVCL

77,824 is an odd number to break on. It is 19 * 4096.


If you're interested, the MVC loop for a length of 77,824 is:

000013            LA      R2,152(,R9)           #  IN-W
000013            LA      R1,0(,R4)             #  OUT-W
000013            LHI     R0,0x12f
000013            NOP
000013  L0052:    EQU     *
000013            MVC     0(256,R1),0(R2)       #
000013            LA      R2,256(,R2)           #
000013            LA      R1,256(,R1)           #
000013            BRCT    R0,L0052
000013            MVC     0(256,R1),0(R2)       #



-----Original Message-----
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> On Behalf Of 
Steve Thompson
Sent: Thursday, October 31, 2024 4:18 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Bounded string move?

Uh, isn't that true up to about 1024 bytes (MVCs stacked)? And
then after the MVCL seems to be faster.

I think I was at some disclosure meeting or SHARE when that was
said prior to 2010 (can't remember the exact year).

I Remember that the MVCL is interruptible at end of a unit of
operation.

This may have changed since the z/13s.

Steve Thompson

On 10/31/2024 4:18 PM, Charles Mills wrote:
> @Kirk: +1
>
> @Shmuel: you know that an MVC loop is dramatically faster than MVCL?
>
> Surprising but true.
>
> CM
>
> On Wed, 30 Oct 2024 22:40:52 +0000, Seymour J Metz <sme...@gmu.edu> wrote:
>
>> I'm leaning towards SRST/MVCL.
>>
>> --
>> Shmuel (Seymour J.) Metz
>> http://mason.gmu.edu/~smetz3
>> עַם יִשְׂרָאֵל חַי
>> נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר
>>
>>
>>
>> ________________________________________
>> From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of 
>> Kirk Wolf <k...@coztoolkit.com>
>> Sent: Wednesday, October 30, 2024 4:41 PM
>> To: IBM-MAIN@LISTSERV.UA.EDU
>> Subject: Re: Bounded string move?
>>
>> Caution: This email did not originate from George Mason’s mail system. Do 
>> not click links or open attachments unless you recognize the sender and know 
>> the content is safe.
>>
>>
>> It appears to me that your requirement matches the C function below. (?)
>> I would probably just use C/C++, but you can see what the IBM C/C++ 
>> optimizing compiler generated.   It seems unlikely to me that there is a 
>> significantly better way.   You might ask on mvs-asm370.
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN



----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to