On 27/08/2019 10:54 pm, David Crayford wrote:
On 2019-08-27 8:19 PM, David Crayford wrote:

Great write-up. Bash doesn't use local spawn so it always runs sub-processes in child address spaces. I have reported this so Rocket are aware and have opened a ticket. I'm not sure if it will be addressed anytime soon. Probably not.

Oops. Spoke too soon there! There is no "local" spawn as the job numbers clearly show. How exactly are you deriving CPU time? Is it an accumulation of SMF30CPT CPU times?

Thanks. The Derived CPU is calculated as per the description towards the bottom of the page here:

https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.ieag200/rec30.htm

It should provide more precise values than the SMF30CPT fields, particularly when these reports add values from multiple tasks where the values are all < 0.01s. The derived values are displayed in the report with 1/1000s precision, but the underlying numbers are more precise.

I can imagine it could be a big job to change the way bash works. I think it is probably more important to be able to easily incorporate new functions and fixes from the mainstream than to improve the performance of shell scripts.

I wonder whether the CPU time for the forks is bash specific, or whether it is an unavoidable part of fork? Speculating on the original topic, maybe setting up COW is expensive and a full copy of the address space could even be significantly cheaper in CPU time?

--
Andrew Rowley
Black Hill Software

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to