What is the difference between PGM=SORT, PGM=ICEMAN, PGM=ICETOOL and PGM=SYNCSORT. Are they all IBM products. Which one should be used in JCLs?
This is one of the questions I see quite often and have seen on my board too at www.zMainframes.com. So I thought we’ll talk about it in detail in the blog post.
ICEMAN, SORT are two of the program aliases that can be used to invoke the sort product.ICEMAN is the program name for DFSORT. You can invoke DFSORT with PGM=ICEMAN. DFSORT is also shipped with an alias of SORT, so you can use PGM=SORT
DFSORT’s official three-character identifier is ICE, so all of the DFSORT modules start with ICE (ICEMAN, ICETOOL, ICEGENER, etc) and all of the DFSORT messages start with ICE (ICExxxs).
other sort products(Syncsort, ca-sort) use (SORT,ICEMAN) as an alias. So when you use PGM=SORT or PGM=ICEMAN, you’ll get the sort product installed at your site.
PGM=ICEMAN and PGM=SORT are equivalent.
This is documented in Chapter 2 of “z/OS DFSORT Application Programming Guide”. Specifically here:
Note that the syntax shows PGM=SORT and PGM=ICEMAN as equivalent and later it says:
If you do not use a cataloged procedure, use PGM= either with the actual name of the sort module (ICEMAN) or with one of its aliases: SORT, IERRCO00, or IGHRCO00. Be sure that the alias has not been changed at your site.
So unless somebody at your site changed the shipped aliases, whoever told you that “ICEMAN is performance wise better than SORT” doesn’t know what they are talking about.
Obviously, you can confirm if DFSORT is invoked by PGM=ICEMAN and PGM=SORT at your site by trying both of them and checking the messages.
Syncsort is a sort product produced by an IBM competitor (named Syncsort). CA-Sort is a sort product produced by an IBM competitor (named CA). DFSORT is the IBM sort product. EXEC PGM=SORT or EXEC PGM=ICEMAN are typically executing IBM’s sort product, although some sites use aliases for Syncsort so EXEC PGM=SORT actually invokes Syncsort.
Actually, you probably should use NONE of these. Most sites allows you to enter EXEC SORT (or EXEC PROC=SORT) to invoke the site sort product via a PROCEDURE (or PROC) that includes most of the DD statements needed for a sort. While some sites have more than one sort product, they are not cheap and hence most sites only use one sort product so it is fairly rare to have a choice of which to use.