The authors provide an in-depth, comprehensive examination of hierarchical parallel systems within a comparative and taxonomical framework. They include a general introduction to hierarchical structures, possible topologies, and possible designs; an in-depth discussion of all proposed or built hierarchical parallel systems; and language supports and programming strategies. Their work will serve as both a teacher and reference to programmers and students in computer sciences and electrical engineering.