IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Any way to prevent dynamic allocation?


IBM Mainframe Forums -> DFSORT/ICETOOL
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 772
Location: Denmark

PostPosted: Thu Aug 14, 2025 8:08 pm
Reply with quote

I am caling DFSORT zos 3.1 from an assembler program. I know that the number of records can easily be handled in storage, but SORT insists of dynamically allocating SORTWXxx datasets.
I am now trying DYNALLOC avoidance in a batch job, but without success.
I have tried all the OPTION combinations of DYNALLC=OFF with HIPRMAX, DSPSIZE and MAINSIZE I can think off with AVGRLEN=22 and SIZE=100.
What also confuses me is that the system option is DYNALOC=(SYSDA,004), but SORTWK01-05 are allocated.
Extract from latest run:
Code:

  OPTION VLSHRT,VLSCMP,DYNALLOC=OFF,DSPSIZE=MAX,HIPRMAX=OPTIMAL,
         MAINSIZE=MAX,AVGRLEN=22,SIZE=100,NOEQUALS,SMF=NO       
  SORT FIELDS=(5,14,CH,A)   
                                     
ICE193I 0 ICEAM1 INVOCATION ENVIRONMENT IN EFFECT - ICEAM1 ENVIRONMENT SELECTED                                     
ICE088I 0 SORTTEST.PARSE   .        , INPUT LRECL = 60, BLKSIZE = 27998, TYPE = VB                                 
ICE093I 0 MAIN STORAGE = (MAX,6291456,6291456)                                                                     
ICE156I 0 MAIN STORAGE ABOVE 16MB = (6234096,6234096)                                                               
ICE127I 0 OPTIONS: OVFLO=RC0 ,PAD=RC0 ,TRUNC=RC0 ,SPANINC=RC16,VLSCMP=Y,SZERO=Y,RESET=Y,VSAMEMT=Y,DYNSPC=256       
ICE128I 0 OPTIONS: SIZE=6291456,MAXLIM=1048576,MINLIM=450560,EQUALS=N,LIST=Y,ERET=RC16 ,MSGDDN=SYSOUT               
ICE129I 0 OPTIONS: VIO=N,RESDNT=ALL ,SMF=NO   ,WRKSEC=Y,OUTSEC=Y,VERIFY=N,CHALT=N,DYNALOC=(SYSDA   ,004),ABCODE=MSG

ICE054I 0 RECORDS - IN: 100, OUT: 100
ICE134I 0 NUMBER OF BYTES SORTED: 2192
ICE165I 0 TOTAL WORK DATA SET TRACKS ALLOCATED: 0 , TRACKS USED: 0
ICE199I 0 MEMORY OBJECT USED AS MAIN STORAGE = 0M BYTES           
ICE299I 0 MEMORY OBJECT USED AS WORK STORAGE = 0M BYTES           
ICE399I 0 MEMORY OBJECT USED IN ZSORT PATH = 0M BYTES             
ICE180I 0 HIPERSPACE STORAGE USED = 0K BYTES                       
ICE188I 0 DATA SPACE STORAGE USED = 0K BYTES                       

ICE804I 1 SORTWK05 EXCP COUNT: 1
ICE804I 1 SORTWK04 EXCP COUNT: 1
ICE804I 1 SORTWK03 EXCP COUNT: 1
ICE804I 1 SORTWK02 EXCP COUNT: 1
ICE804I 1 SORTWK01 EXCP COUNT: 1

The manual states:
DYNALLOC=OFF Directs DFSORT not to allocate work space dynamically
Note: When Hipersorting or dataspace sorting is in effect, DFSORT uses dynamic allocation when necessary, even if DYNALLOC=OFF has been specified.
But to me it rather seems that SORT will always allocate those SORTWKxx, though not neccessarily use them.
Any ideas?
Back to top
View user's profile Send private message
Joerg.Findeisen

Senior Member


Joined: 15 Aug 2015
Posts: 1430
Location: Bamberg, Germany

PostPosted: Fri Aug 15, 2025 12:01 am
Reply with quote

You can try to specify the values through DD:DFSPARM (at least the DYNALLOC=OFF). Your seen DYNALLOC of 4 is probably complemented by DYNAPCT=10 or something similar. Should be visible in the log.
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 772
Location: Denmark

PostPosted: Fri Aug 15, 2025 12:35 am
Reply with quote

I had tried the DFSPARM route already (should have mentioned that), no luck.
Back to top
View user's profile Send private message
Joerg.Findeisen

Senior Member


Joined: 15 Aug 2015
Posts: 1430
Location: Bamberg, Germany

PostPosted: Fri Aug 15, 2025 12:45 am
Reply with quote

I have tried your options with a Job. That turned DYNALLOC OFF as intended. Also your settings seem more or less close to our shop's default.

Would you mind to also show the ICE130I, ICE131I, ICE132I, ICE133I, ICE235I
ICE236I msgs?

Have you, maybe by incident, static SORTWK allocated?
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 772
Location: Denmark

PostPosted: Fri Aug 15, 2025 12:51 am
Reply with quote

Nope, this is JCL:
Code:
//PARSE    EXEC PGM=SORT                               
//SYSOUT   DD SYSOUT=*                                 
//SORTSNAP DD DUMMY                                   
//SORTDIAG DD DUMMY        forces all msgs to sysout   
//SORTIN   DD DISP=SHR,DSN=WJ.TEST.SEQ.V60             
//SORTOUT  DD DISP=(,PASS),DSN=&&SORT,                 
//            SPACE=(TRK,(1,1)),DCB=(WJ.TEST.SEQ.V60) 
//*      DSPSIZE=0,HIPRMAX=0,DYNALLOC=OFF             
//*      filsz=100,                                   
//DFSPARM  DD *                                       
//SYSIN    DD *                                       
//G1      EXEC PGM=IEBGENER                           
  . . .

So I will have to figure out why the override isn't done.
Thank you for testing.
Back to top
View user's profile Send private message
Joerg.Findeisen

Senior Member


Joined: 15 Aug 2015
Posts: 1430
Location: Bamberg, Germany

PostPosted: Fri Aug 15, 2025 12:59 am
Reply with quote

I have tried as follows with 100 records:
Code:
OPTION VLSHRT,VLSCMP,DYNALLOC=OFF,DSPSIZE=MAX,HIPRMAX=OPTIMAL,
       MAINSIZE=MAX,AVGRLEN=22,SIZE=100,NOEQUALS,SMF=NO       
SORT FIELDS=(5,14,CH,A)                                       
END

<removed>
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 772
Location: Denmark

PostPosted: Fri Aug 15, 2025 1:13 am
Reply with quote

Thanks, I will go back to the manual and read more about override rules. I have done that already, but might have missed something.
Back to top
View user's profile Send private message
View previous topic : : View next topic  
Post new topic   Reply to topic All times are GMT + 6 Hours
Forum Index -> DFSORT/ICETOOL

 


Similar Topics
Topic Forum Replies
No new posts Methodic way to address cryptic alloc... ABENDS & Debugging 2
No new posts CLIST - Virtual storage allocation error CLIST & REXX 5
No new posts Using Dynamic file handler in the Fil... COBOL Programming 2
No new posts JCL Dynamic System Symbols JCL & VSAM 3
No new posts Synctool-dynamic split job for varyin... JCL & VSAM 7
Search our Forums:


Back to Top