The best approach would be to treat "High Performance" as a system-controlled attribute like "Can Read Location Data"; the app can make a request for a performance profile it's designed against, the user gets final say-so, the OS records the user's decision and re-uses it for future launches.
This gives best of both worlds; users who need performance pick it, users who don't need/don't understand get to be kept safe by Apple's scheduler. Apps get back the state, so they can render a different icon or something to indicate "Hey we'll do our best but your hardware may not max out because scheduling wasn't built for this task"
This gives best of both worlds; users who need performance pick it, users who don't need/don't understand get to be kept safe by Apple's scheduler. Apps get back the state, so they can render a different icon or something to indicate "Hey we'll do our best but your hardware may not max out because scheduling wasn't built for this task"