dynamic core allocation