Experiments in High Energy Physics (HEP) generate tremendous amounts of data. For example, the accelerator at CERN is expected to generate petabytes per year. New HEP discoveries require that the experimental data be carefully analyzed to identify the events of interest. To take advantage of distributed processing, we have developed a package, UFMulti, which allows physicists to specify and execute a complex distributed application. In this paper, we report on the load balancing module of UFMulti. Our algorithm takes advantage of the particular structures of typical HEP computations to perform very e ective load balancing. For example, our dynamic load balancer takes advantage of bu ered data to partially allocate a processor between tasks. As a result, it often provides better performance than any static allocation of processors to tasks.