Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re^3: how to improve the performance of a perl program

by sundialsvc4 (Abbot)
on Aug 06, 2013 at 02:12 UTC ( #1048029=note: print w/replies, xml ) Need Help??

in reply to Re^2: how to improve the performance of a perl program
in thread how to improve the performance of a perl program

My goodness ... bigger type-fonts, too?

Unforrtunately, the OP really doesn’t give a terrible amount of detail .. perhaps more detail will follow?   Nevertheless, what is said about the program is fairly typical:   that it is a GUI program which is described as “a launching script.”   (Thus my first guess:   that a non-GUI implementation of the same process would behave similarly.   I would not spend any time prowling around the guts of Tk looking for any performance improvement.)   Likewise, the program is further described as “using sockets for IPC” and “using MySQL to store data,” both of which could just-as-equally describe roughly a million other production programs on this planet ... nearly all of which (is this one the exception?) are I/O-bound and prone to have logic-holes in how they handle sockets.   It would be a rare bird indeed if, being such a program, it were throttled by nanoseconds.   (And I know perfectly well that you have written just such “birds.”)   Indeed, one could spend many hours “profiling” such a program, chasing nanoseconds, and although one might come up with interesting results, would never hit upon what made such a program “slow.”   And that is why I suggested that this could be the wrong tree; not some secret desire to be (let alone to be called ...) “a moron” in a public place.

Do I know?   No.   No more than you do.   Maybe the OP will elaborate further.

  • Comment on Re^3: how to improve the performance of a perl program

Replies are listed 'Best First'.
Re^4: how to improve the performance of a perl program
by BrowserUk (Pope) on Aug 06, 2013 at 02:27 UTC

    If his central socket server script is to be able to handle 100,000 (1 lakh) concurrent "jobs"; then it will it will be critical to overall throughput that it be responsive to incoming connections/messages. Microseconds will count.

    While the individual jobs may well be IO-bound,if the socket server that sits in the driving seat of all of those processes is unresponsive; then it will have a potentially disastrous affect on overall system throughput by keeping 99,999 jobs waiting --doing nothing -- whilst it deals with the current job.

    All of this is plainly obvious to anyone with a modicum of analytical experience.

    And even to those who bothered actually read what was actually written; rather than imagineering a scenario to fit their personal biases.

    With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1048029]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (4)
As of 2018-02-23 22:54 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (310 votes). Check out past polls.