I did some experiments on a z196 and a z10 to determine that until you get close to several pages an MVC loop with a final executed MVC is faster. On those machines the breakeven point was 32K. The cost is because MVCL and the like are millicode instructions and there is a fair overhead to starting and ending the millicode environment. MVCL will kick into a move page shortcut when things line up on a page boundary, both source and destination, but how often does that happen?
Chris Blaicher Technical Architect Software Development Syncsort Incorporated 50 Tice Boulevard, Woodcliff Lake, NJ 07677 P: 201-930-8234 | M: 512-627-3803 E: [email protected] -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Robert Ngan Sent: Tuesday, October 27, 2015 5:27 PM To: MVS List Server 2 <[email protected]> Subject: Re: Moves and others There's also MVCOS (with zero in R00 for problem state code). It also uses 2 extra registers (R00, plus a length register). I heard it was also quite slow compared to MVC, but not sure how it's performance compares to an executed MVC (or a MVC loop, plus a final executed MVC). Excluding setup, it's only a single instruction for variable length moves up to 4K. Robert Ngan CSC Financial Services Group IBM Mainframe Assembler List <[email protected]> wrote on 2015/10/15 18:29:36: > From: Robin Vowels <[email protected]> > To: [email protected] > Date: 2015/10/15 18:31 > Subject: Re: Moves and others > Sent by: IBM Mainframe Assembler List > <[email protected]> > > ----- Original Message ----- > From: "Paul Gilmartin" > <[email protected]> > To: <[email protected]> > Sent: Friday, October 16, 2015 3:16 AM > Subject: Re: Moves and others > > > On 2015-10-15, at 08:48, Robin Vowels wrote: > > > > IBM should have produced a special EXC instruction for characters, > > that did what EX does, but accepts k, the number of bytes to move > (or compare, etc), > > tests for zero (and performs a no-op if it is), subtracts 1, and > then executes MVC. > > MVCL? > > Kind of overkill for small moves. > 4 registers! > > --- > This email has been checked for viruses by Avast antivirus software. > http://www.avast.com
