1. A system for performing parallel, hierarchical copying garbage collection (GC) to achieve a hierarchical copy order of a set of objects using parallel garbage collection threads, wherein said objects are related in a from-space in a given hierarchical order including one or more objects, at a first level of the hierarchical order, one or more objects at a second level of the hierarchical order, and one or more objects at a third level of the hierarchical order, and one or more objects at a fourth level of the hierarchical order, each of the objects at the second level of the hierarchical order being a child of one of the objects at the first level of the hierarchical order, each of the objects at the third level of the hierarchical order being a child of one of the objects at the second level of the hierarchical order, and each of the objects at the fourth level of the hierarchical order being a child of one of the objects at the third level of the hierarchical order, the system comprising one or more processing units configured for: executing a plurality of threads in parallel to copy said set of objects in said hierarchical order from the from-space to a multitude of blocks in a to-space including said multitude of blocks including copy blocks and scan blocks, including: copying some of the objects of said set of objects from the from-space into the copy blocks in the to-space; scanning the scan blocks to identify additional objects of said set of objects in the from-space, and copying said additional objects into the copy blocks in the to-space; and wherein copied objects are formed in the copy blocks in the to-space; aliasing the copy blocks in the to-space.