-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support PluggableDevices #8040
Labels
Comments
You'd probably do it somewhere in here: tfjs/tfjs-node/binding/tfjs_binding.cc Lines 286 to 300 in a6a1005
tensorflow/c/c_api_experimental.h is needed) and how to properly write all that C code (not a C dev, especially not with node-gyp...).
You also probably want to use tfjs/tfjs-node/binding/tfjs_backend.cc Lines 673 to 700 in a6a1005
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
System information
Describe the feature and the current behavior/state.
Both tensorflow python and libtensorflow provide the option to load a pluggable device driver, like Intel's extensions for tensorflow, where as TensorFlow.js on Node.js currently seems to be vendor locked on NVIDIA GPUs, making it kinda less of a
tfjs-node-gpu
than atfjs-node-nvidia
.Will this change the current api? How?
There'd probably be an additional api to load the driver
.so
and there'd maybe be more kinds of devices available.Who will benefit with this feature?
Basically anyone that uses tfjs node and has any hardware that is not NVIDIA, but support pluggable devices, notably Intel GPUs (also optimized code for their CPUs) and Apple devices, AMD still doesn't have a pluggable device driver I think, but uses a custom fork of tensorflow.
Any Other info.
As (although I can't find any confirmation, other than the log format indicating it) tfjs-node seems to be built on libtensorflow, it seems to you'd "just" need to call the C API (
TF_LoadPluggableDeviceLibrary(<lib_path>, status);
) from libtensorflow for loading the driver and there you go.The text was updated successfully, but these errors were encountered: