1. A method of scheduling threads, the method comprising: analyzing, by a parent scheduler, an application to identify an application thread for execution, the parent scheduler associated with a plurality of associated child schedulers, the parent scheduler configured to store a pointer to a most eligible child scheduler; providing, by the parent scheduler, the application thread to the most eligible child scheduler based on the stored pointer, the most eligible child scheduler determined based on priority metrics received from each child scheduler; and scheduling, by the most eligible child scheduler, the application thread for execution by a processor core of a multicore processor associated with the most eligible child scheduler.