Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: Re: Re: Re: 3 weeks wasted? - will threads help?

by Limbic~Region (Chancellor)
on Jan 27, 2003 at 23:12 UTC ( [id://230402]=note: print w/replies, xml ) Need Help??


in reply to Re: Re: Re: 3 weeks wasted? - will threads help?
in thread 3 weeks wasted? - will threads help?

Ok - so maybe it is the ps command that I am not understanding

I set up a little program to fork two copies of itself up at the top and then in the main body, do nothing more than

while (1) { print "I am only printing and sleeping\n"; sleep 1; }

Performing a ps -el showed each processes' sz as though I had executed each one separately. Maybe I am using the wrong tool to determine how much total memory each process is taking away from the system.

I am going to look into POE as was suggested by adrianh, but it seems forking would be a whole lot easier. Is there a way for me to benchmark the difference in total process memory utilization between:

  • Launching each process individually with two separate args
  • Having one program fork itself with the two separate args
  • Re-writing with POE to only have one process do all the work

    Thanks for the insight and cheers - L~R

  • Replies are listed 'Best First'.
    Re: Re: Re: Re: Re: 3 weeks wasted? - will threads help?
    by perrin (Chancellor) on Jan 27, 2003 at 23:39 UTC
      If you look at the SHARE column in top (it may be there in your ps as well), you will see how much of that size is actually shared. More info is available here.
        Ok - I cry Uncle - I believe you in principle.

        But the proof is in the pudding.

        My top (HPUX 11.0 64bit) does not have a shared column nor does my ps command show one.

        I thought I would be sneaky and use this, but every single memory column showed the exact same information for all 3 processes. I thought this might mean since I wasn't creating or destroying variables they were sharing exactly the same memory (the child's memory space wasn't getting dirty), so I added some dummy code to do something similar to:

        $dummy += rand;

        No change in ps, top, or my custom perl code

        so I decided to try and install Gtop as the article you mentioned referenced - I was not able to get to the site that it referenced, so I am back to square one.

        How do I tell how do I profile how much total memory each process is using?

        It isn't like I am expecting you to answer - just saying that it seems odd that there is no easy way to tell.

        Cheers - L~R

          I'm afraid you are on a sort of bizarre OS, so that will make everything harder. It is possible that HPUX has no copy-on-write feature, but that seems kind of crazy. I'd suggest asking your HP admin or HP's support.

          The missing libgtop is kind of disturbing. I don't see any replacement for it handy.

    Log In?
    Username:
    Password:

    What's my password?
    Create A New User
    Domain Nodelet?
    Node Status?
    node history
    Node Type: note [id://230402]
    help
    Chatterbox?
    and the web crawler heard nothing...

    How do I use this?Last hourOther CB clients
    Other Users?
    Others cooling their heels in the Monastery: (2)
    As of 2024-04-19 01:39 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      No recent polls found