I located the Partitioned Data Set Extended Usage Guide
Redbook and browsed the interesting looking sections. Ultimately, it wasn't all that useful to me. It seemed, to me, to be 90% marketing.
I then went to the "FETCHOPT: Fetching mode option" section in MVS Program Management: User's Guide and Reference
. This raised the "a ha" points I was looking for.
The default is FETCHOPT=(NOPACK,NOPRIME). I think the important option is NOPRIME.
PRIME | NOPRIME
Allows you to specify if the program object should be completely read into virtual storage before execution. When PRIME is coded, all of the program pages are read before program execution begins. When NOPRIME is coded, program pages are not read until they are needed during execution.
I then updated my test JCL to perform a third link edit, specifying FETCHOPT=(NOPACK,PRIME), and ran all three tests,
- PDS- 0.12
- PDSE with FETCHOPT=(NOPACK,NOPRIME) - 0.02
- PDSE with FETCHOPT=(NOPACK,PRIME) - 0.15
PDSE looked real good when it did not actually read anything! Who knows what would happen when the module executed, which was not part of the test. It didn't look all that good with FETCHOPT=(NOPACK,PRIME), though it wasn't quite so bad as PDSE usually is, though that may be a reflection of the PDS load module format more than a big endorsement of PDSE.
A big thank you to Mr. Scherrer and Nevilh for making me rethink the test and do more research and analysis. Dick, if I screwed up your surname in the last sentence, I apologize.