In the interest of full disclosure, the code is now available on github: https://github.com/zorts/pause_release
As noted way back in my original posting, the code is unauthorized, uses only TCBs, and ping-pongs between two tasks. I'm running this code on a moderately loaded z13, native z/OS 2.2 LPAR with many CPUs and zIIPs (though, since it's unauthorized, this code is only using CPUs). I believe the ping-pong nature of the test explains why the impact of the "fast" wait/post code has relatively little impact on the measured performance; the inner loop is so small that an actual WAIT or POST is required for every iteration. This is by no means "real world" code, and I would never call it a "benchmark". However, I do believe it correctly illustrates the difference in performance between various synchronization mechanisms in its admittedly limited set of test cases. It's great that this has stimulated the discussion it has; I've learned a lot. -- Jerry ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
