A graphics processing apparatus comprising: a memory device; and an execution unit coupled to the memory device, wherein: the memory device is configured to store a command buffer comprising at least one command that is dependent on completion of at least one other command and the command buffer comprises a jump command to cause a jump to a location in the command buffer, based on execution of the jump command, the execution unit is configured to jump to the location in the command buffer to execute a command at the location and subsequent locations in the command buffer to schedule execution of any unscheduled command with resolved one or more dependencies, characterized in that the command buffer includes a conditional terminate command stream command, and wherein to schedule for execution any unscheduled command with resolved one or more dependencies, the execution unit is configured to execute the conditional terminate command stream command to determine if the one or more dependencies are resolved, wherein the conditional terminate command stream command comprises a condition parameter, and wherein if a condition defined in the condition parameter is not met, the conditional terminate command stream command is ignored. a memory device; and an execution unit coupled to the memory device, wherein: the memory device is configured to store a command buffer comprising at least one command that is dependent on completion of at least one other command and the command buffer comprises a jump command to cause a jump to a location in the command buffer, based on execution of the jump command, the execution unit is configured to jump to the location in the command buffer to execute a command at the location and subsequent locations in the command buffer to schedule execution of any unscheduled command with resolved one or more dependencies, characterized in that the command buffer includes a conditional terminate command stream command, and wherein to schedule for execution any unscheduled command with resolved one or more dependencies, the execution unit is configured to execute the conditional terminate command stream command to determine if the one or more dependencies are resolved, wherein the conditional terminate command stream command comprises a condition parameter, and wherein if a condition defined in the condition parameter is not met, the conditional terminate command stream command is ignored. based on execution of the jump command, the execution unit is configured to jump to the location in the command buffer to execute a command at the location and subsequent locations in the command buffer to schedule execution of any unscheduled command with resolved one or more dependencies, characterized in that the command buffer includes a conditional terminate command stream command, and wherein to schedule for execution any unscheduled command with resolved one or more dependencies, the execution unit is configured to execute the conditional terminate command stream command to determine if the one or more dependencies are resolved, wherein the conditional terminate command stream command comprises a condition parameter, and wherein if a condition defined in the condition parameter is not met, the conditional terminate command stream command is ignored.