torch-node
v0.0.4
Published
Node Torch7 Bindings powered by FFI.
Downloads
4
Readme
Torch7 Node.js (FFI) Bindings
NOTE: This was just a fun winter break experiment. I am intending to support (almost) everything that
the luaJIT
covers for libTH, because it's interesting. I like the idea of slapping on a strong,
scientific library to a Node.js micro-service and implementing fancy Machine Learning without a separate
service or recreating my own Tensor library, psh.
Install
IMPORTANT NOTE Before you intend to use this library, look at Torch (more specifically, Torch7). If you want speed and performance, don't use this library, use that one (comparatively). This library is going to be slower compared to luaJIT, always, because of the FFI. The FFI introduces overhead on all native function calls to the specific library (libTH, in this case), and that incurs a performance penalty.
INSTALL TORCH, then slap this bad boy on your shell!
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/path/to/torch/lib/libTH.(so|dylib)
Now you can do this...
npm i torch-node
or this...
git clone https://github.com/wenkesj/torch-node.git
(cd torch7 && npm i)
Support
COMING SOON None of the fun functionality of the Torch7 library is implemented yet. I am still on break, and will be working on it. Feel free to submit a PR and dive in! This was a fun experiment and will be pretty awesome to see it move passed this junk :).
Look at the Torch7 docs and try your best to translate the lua
code to JS and it should work. Most
coverage can be found in the ./lib
folder.
A few tips...
let myTensor = torch.FloatTensor(1, 1);
// is the same as...
-- this
local myTensor = torch.FloatTensor(1, 1);