[PLUG] LAN broadcast?

Tim tim-pdxlug at sentinelchicken.org
Thu Jun 2 13:00:47 PDT 2011

> > Can you comment on the nature of the compute problem?
> >   
> The compute problem is testing various products such as posts, poles, 
> blocks for a stud mill, etc., that can be removed (bucked) from a 
> tree-length log (stem), and selecting the most profitable solution. The 
> stem is scanned as it passes length-wise through 3D LASER scanners. 
> Products are trial placed into the stem and evaluated to make sure that 
> the product meets a number of criteria such as diameter, crookedness, 
> taper, etc.
> I have this software running very successfully in a sawmill with simpler 
> conditions - shorter logs, fewer products, etc. That software running in 
> a single process on a uniprocessor machine finds a solution in 1 - 2 
> seconds.  We process somewhere around 10 stems / minute.
> The conditions for the next application are longer logs, more products, 
> etc. The number of solutions go into the millions and the testing / 
> optimization process takes minutes. I need to solve several logs / minute.
> I think I can divide the optimization process into zones and distribute 
> the stem scan data, the current products desired, their values and 
> requirement, etc. to multiple optimization helper processes and get the 
> job done quickly enough. The scan data derived from each stem needs to 
> be disseminated before any of the helper optimization processes can 
> begin. The dissemination needs to begin immediately following imaging.

That sounds like an interesting/challenging/fun problem.

> The dissemination of scan data and current product information is the 
> task for which I was thinking about some sort of broadcast / multicast. 
> But if multicast is any sort of hassle, or there is a latency to "pull" 
> the data, it isn't worth it.

How big is the scan data set?

Multicast shouldn't create any lag in acquiring the data.  I expect
the subscription process would happen only at startup, not between
jobs.  However, for your purposes, you might just be best off using
broadcast if you don't expect you'll have to send data between
subnets.  You could always switch to multicast later with relatively
few additional code changes.


More information about the PLUG mailing list