add virtual core awareness to scheduler