Giter Club home page Giter Club logo

Comments (40)

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024 8

Current update: #216 (comment)

Node.js GPU support is imminent. Stay tuned for the coming days, this will likely lead to a release.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024 7

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024 6

I believe since this uses HeadlessGL, and release is imminent, this issue is now resolved. Ty guys for all your hard work and cheering.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024 4

I'm finishing up a few things for a release of brain.js hopefully at the end if the month. After that this issue will be my complete obsession.

from gpu.js.

fuzzie360 avatar fuzzie360 commented on May 11, 2024 3

Hi vird, I like this idea very much. By going to OpenCL we can do some really serious computing done. We will start moving in this direction after an overhaul of our compiler.

from gpu.js.

phawxby avatar phawxby commented on May 11, 2024 2

Looking forward to these changes coming in. I'd like to try integrating int pixelmatch, I imagine the performance boost will be enormous. Great project!

from gpu.js.

jsphweid avatar jsphweid commented on May 11, 2024 1

Looking forward to this. By the way... version 0.0.0...?? Not even 0.0.1?

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024 1

@frenchfaso, ty very much! But...

from gpu.js.

arjunmehta avatar arjunmehta commented on May 11, 2024 1

I have a proof of concept up using headless-gl

#404

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024 1

Progressing on this today fellas. I've got all unit tests running on it, and modified things so the headless-gl module is installed just in time, but running into an issue (I think) with google Angle messing up the shader. Will know more shortly.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024 1

@arjunmehta if I go ahead and push up my changes, maybe we can work together, simultaneously providing a back end for https://github.com/GoogleChrome/puppeteer?

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

I don't think this is a "nice to have" but rather "a must". I'll see what I can do.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

I've asked @unbornchikken if he has interest in helping, but I fully plan on assisting with this initiative after v1 is released.

from gpu.js.

unbornchikken avatar unbornchikken commented on May 11, 2024

Hi, I have interest of course but unfortunately ain't got much time for opensource nowadays (two little children). If you have any concrete issue that I could help you out, lemme now.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

ty for the mention, and the brief time you spent replying. I mentioned your name because I know your passion. In the mean time ty for building NOOOCL, great things will come from it!

from gpu.js.

hujiulong avatar hujiulong commented on May 11, 2024

any news?

from gpu.js.

frenchfaso avatar frenchfaso commented on May 11, 2024

Me too!
Are there any news about gpu support on nodejs?
btw, gpujs is the best lib ever 🥇

PS: a webworker/threads fallback would also be awesome :-P

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

I've got a proof of concept working for nooocl, @unbornchikken, is there any way you could bump version support for opencl 2?

from gpu.js.

nsantini avatar nsantini commented on May 11, 2024

@robertleeplummerjr any way I can help on your efforts?

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

The initial work has been done here: https://github.com/gpujs/gpu.js/tree/area-52

Ideally we'd start with simple unit tests, building up simple features.

It is still a high priority, I've just been super busy using the already exposed API in https://brain.js.org. When opencl is landed, js will have an enterprise gpu accelerated platform. Preemptive huzzah!

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

mikeseven/node-opencl#55 (comment)

It installs now...

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

@nsantini Want to help still?

from gpu.js.

Steve73 avatar Steve73 commented on May 11, 2024

Any news, when gpu is supported serverside? Thank you for maintaining this great project!

from gpu.js.

arjunmehta avatar arjunmehta commented on May 11, 2024

Hi there, also a huge fan. Is there any chance of node.js support in the near future? Any help needed?

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

@arjunmehta help would be greatly appreciated. If anyone is interesting in assisting I jump on slack via bri.im, and lets talk.

from gpu.js.

arjunmehta avatar arjunmehta commented on May 11, 2024

@robertleeplummerjr I had a cursory look at the code and seems like you're using webGL instead of webCL/openCL. Have you looked into using https://github.com/mikeseven/node-webgl or https://github.com/stackgl/headless-gl ?

Seems like these are projects that would plug in very easily into this one

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

Opencl is the first planned target.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

I don't see any if the above platforms being difficult to use as a target from the existing work. Just coordinating efforts to concur the world.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

So I got it "working", but it appears that ANGLE misinterprets less than comparisons with floats, and because of the recent advances with google/node-gles#3, I think I might wait till that is ready.

from gpu.js.

arjunmehta avatar arjunmehta commented on May 11, 2024

@robertleeplummerjr nice!

Another option to consider is to use puppeteer. It is a headless chromium and has support for running webGL.

Very good cross platform support on Linux, Windows and MacOS.

It is very well maintained by the Chrome DevTools team.

https://github.com/GoogleChrome/puppeteer

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

Ty for the suggestions, I'll be sure to try it if my current path doesn't succeeded, or perhaps even add as another driver, just in case. As a positive point, I reached out to @nkreeger who manages google/node-gles#3 and he seems to be fairly helpful to advance work together. I was able to get the project to build, and though I'm not yet working with textures that output numbers, I was able to get the environment mostly working, with the exception of a few missing wrapper functions (adding uniforms, and sub frame buffers), so I'll be adding those in the coming days, and see where it goes.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

Hopping right along: https://github.com/google/node-gles/pull/4/files

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

Was thinking this through and I believe my current plan of attack is this: There is still a lot of missing functionality from node-gles having compiled it, and seeing output etc. and although I believe that it is the future, we are extremely close with headless-gl, minus a few small bugs.

Because of how much headless-gl:

I'd like to go ahead and resolve the issues that exist with it first. This will give us low hanging fruit, and a path for upgrade, rather than just waiting and hoping for node-gles to land at v1.

Note: We are sooooo cloooose!!

The flexibility with headless-gl will also give us something to meet with node-gles, and I'm not shy (as you guys know) have already having contributed there.

Verbose current plan of attack:

  • Resolve fragment parsing issue with float's using existing source, which I believe is our one big hangup. This is super important, because all methods generally work, I get stable output, etc. Also we have a ton of unit tests in gpu.js where we can gauge how close we are to full support.
  • Open up PR that adds new functionality in headless-gl.
  • Because the library isn't maintained, I'll likely reach out to see if that job can be passed on to me for the time being.
  • If this for some reason isn't accepted, I'll just open my own fork, and continue reluctantly there. Good grief, how many times can we fork this thing as actual projects? Lets combine efforts guys!
  • Resolve a few other small bugs adding primitive unit tests for each directly in the project where they can be tracked and administered.
  • Possibly upgrade to latest ANGLE and ensure tests pass.
    • If tests bork badly, leave in maintenance mode.
  • Wait and continue to help with node-gles until it reaches a point it exceeds the usefulness of headless-gl (ie, we get unit tests passing and possibly webgl2, which isn't currently being developed towards)
  • Migrate to node-gles

In either case, mark my words, this will be working shortly.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

Stepped into the parser found that the glsl is being rewritten internally, which I expected. Small steps.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

I've captured the error, glsl source before it is translated, after it is translated, and reproduction javascript test here: https://gist.github.com/robertleeplummerjr/aa0a8bb9250426e5a3e9e360482b3083

I'm now passed google angle, and into dependencies. Getting closer.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

Rather than keeping noise going here, I'm going to start tracking the bug here: stackgl/headless-gl#140

Bigger updates will come here.

from gpu.js.

wbrickner avatar wbrickner commented on May 11, 2024

Is this now supported in v2? Been following for a few years now :P
Wondering what the status is, can't seem to figure out if it's landed.

from gpu.js.

robertleeplummerjr avatar robertleeplummerjr commented on May 11, 2024

Node is now supported, there is a bug in windows with multiple render targets that will be addressed likely after the release of v2. A few small bugs related to typings and direct float handling are being resolved now. Nearly there. v2 will be a force to be reckoned with for stability.

from gpu.js.

wbrickner avatar wbrickner commented on May 11, 2024

That's amazing to hear! You've delivered a beautiful thing!

from gpu.js.

arjunmehta avatar arjunmehta commented on May 11, 2024

@robertleeplummerjr 🎉
Fantastic!!

from gpu.js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.