VLIW machines derive their performance advantage from the parallel executio
n of independent instructions that have been scheduled by the compiler. The
paper evaluates the performance impact of a set of important VLIW compilat
ion techniques on non-numerical integer programs. In particular, several ke
y scheduling approaches, including software pipelining versus loop unrollin
g, DAG-based versus trace-based global scheduling, all-path versus profiled
speculation, and restricted versus unrestricted speculative loads, are com
pared. The evaluation is performed on a uniform VLIW testbed where a relati
vely fair comparison of these scheduling approaches can be made. The result
provides a meaningful insight into the relative benefits of each approach.