in reply to Exiting takes a looong time
What's happening is that perl's allocated lots of little chunks of memory. When perl exits, it needs to go through and hand them all back to the system like a well-behaved potentially embedded program should. Unfortunately the afflicted versions of libc, when presented with a zillion frees, seem to go insane managing its free list, with the performance problems you've noted. (This can also happen if you free up a lot of little chunks of memory in the middle of your program, in which case you'll get a noticeable pause)
|
|---|