Hello Tim: Tim wrote: > Hi Wayne, > > >> I have a question about user applications using broadcast on a LAN. >> >> I usually have several processes that connect via TCP/IP to a central >> server that solves some optimization problems. In more demanding project >> that I am working on now, I hope to distribute the optimization problem >> between 24 to 36 helper processes. >> >> At the start of each optimization job, I will have a few data files that >> need to be distributed to each of the helper optimization processes. >> Rather than have the central optimizer / server send these files 24 >> times, some way to broadcast these files to all machines / processes at >> the same time might be nice. >> >> Is that the kind of thing that broadcasting could accomplish? >> >> And if so, and in a big picture way, how would one do it? >> > > > You could use broadcast, yes. Most likely you would want to use UDP > for this, since TCP handshakes and broadcast doesn't really mix. To > accomplish this, you would simply have each helper process listen for > the broadcast messages and then send results back to the central > server at the server's unicast address. > > However, a "sexier" way of accomplishing the same thing would be to > use multicast. This would allow you to distribute the broadcast > messages scalably across router boundaries. Multicast is really > powerful for specific applications like this and I hope it catches on > some day, since it can completely replace distribution models like > bittorrent. > > Finally, instead of implementing all of this distributed > computation/communication yourself, you might consider using an MPI > library or even building a BOINC application. Or maybe you don't need > to go distributed at all for the scale of your project by instead > leveraging the massively parallel processor you probably have in your > system (a.k.a. your video card). See OpenCL. > > HTH, > tim > _______________________________________________ > PLUG mailing list > [email protected] > http://lists.pdxlinux.org/mailman/listinfo/plug > Not surprised. I couldn't see a way to broadcast using SOCK_STREAM. Googled all over trying to find an example. Does it follow that since I would like to use SOCK_STREAM for the rest of the communications during the optimization job, the multicast side would need to be on a second network interface?
Wayne > > _______________________________________________ PLUG mailing list [email protected] http://lists.pdxlinux.org/mailman/listinfo/plug
