We need to be able to support using new devices in TensorFlow without requiring editing the TensorFlow binary source code.
This requires a few changes. Among many others:
- The ability to dynamically register an implementation / factories for alternative devices
- New or better APIs for allowing OpKernel's to use arbitrary device resources (e.g., right now we assume either the use of StreamExecutor or EigenDevice implementations, but that's obviously not general).