torch-node

0.0.4 • Public • Published

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);

Readme

Keywords

none

Package Sidebar

Install

npm i torch-node

Weekly Downloads

3

Version

0.0.4

License

none

Last publish

Collaborators

  • wenkesj