Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re^3: dynamic number of threads based on CPU utilization

by BrowserUk (Pope)
on Sep 26, 2012 at 16:38 UTC ( #995815=note: print w/replies, xml ) Need Help??

in reply to Re^2: dynamic number of threads based on CPU utilization
in thread dynamic number of threads based on CPU utilization

it turns out, I can simply store the bi-gram array directly as part of the hash..

That will work, but be aware that accessing the data in a shared data structure is significantly slower than accessing non-shared memory. This is due to the need for internal locking amongst other things.

So if you run a second pool of threads, each accessing that shared hash containing shared arrays, the lock contention between the threads will likely slow your processing to a crawl. (A simple fact of life with perl's shared data structures).

Try the version I posted and see how you get on.

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.

RIP Neil Armstrong

  • Comment on Re^3: dynamic number of threads based on CPU utilization

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2016-10-22 13:14 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (294 votes). Check out past polls.