if hardward is too slow, we need scheduling.