1. A computer-implemented method for executing a child thread grid that is associated with a parent thread within a parallel processor, the method comprising: receiving a first launch request from the parent thread for executing the child thread grid, wherein the parent thread executes within a first streaming multiprocessor within the parallel processor; launching the child thread grid within a second streaming multiprocessor within the parallel processor independently of a central processing unit coupled to the parallel processor by performing a memory barrier operation to flush all pending write data from the parent thread to memory in order to ensure memory consistency between the parent thread and the child thread grid; receiving a thread synchronization barrier request from the parent thread, wherein the parent thread is configured to block a first programming instruction of the parent thread corresponding to the thread synchronization barrier request from executing; suspending execution of the parent thread; receiving a notification that the child thread grid has completed executing; and causing the parent thread to resume executing.