I think it's a bit unnecessary. A small set of operations should be enough to make it easy to port to new accelerators, and there's lots of nice to haves in many programs that don't affect compatibility.
If you don't plan on ever doing anything but the core it does seem pretty reasonable though.
If you don't plan on ever doing anything but the core it does seem pretty reasonable though.