1. An image processing apparatus comprising: a processor comprising a plurality of cores that share an internal Random Access Memory (RAM) of the processor, wherein each of the plurality of cores is different in computing performance; a first estimator that estimates a processing capability of each of the plurality of cores; a second estimator that estimates, based on the processing capability of each of the plurality of cores, a required time for each of the plurality of cores to perform a specific process executable by the plurality of cores; a third estimator that estimates a load required to perform the specific process; and a controller, wherein the plurality of cores comprises one or more candidate cores, the required time for each of the one or more candidate cores is equal to or less than a threshold, the controller controls one of the one or more candidate cores to perform the specific process, the required time of the candidate core that performs the specific process is the longest among the one or more candidate cores, the second estimator estimates the required time based on the load, and the load is an amount of resources required for the plurality of cores to perform the specific process.