gpujs / gpujs/gpu.js

Collaboration? HSA Compute

オープン
#280 コメント 4 件 リアクション 2 件 担当者 0 名 GitHub で見る
主要言語
JavaScript
スター
15.5k
フォーク
663
PR マージ指標
30日以内にマージされた PR はありません

説明

Hello there, I'm the creator of Hamsters.js a 100% vanilla parallel execution library using web workers, one of my original goals for the project was to hopefully be able to leverage webGL via compute shaders but never really got around to it.

I see great strides have been made in this regard with GPU.js and I want to do the following.

1. Say great work!, its awesome to see more compute capacity brought to the web
2. Propose a collaboration initiative where we combine the best features of our libraries into a unified HSA compute system, this would essentially mean the following.

1. When executing logic the system can leverage GPU and CPU resources at the exact same time to complete a single problem, this would mean for example utilizing the GPU via webGL compute shaders to complete say 50% of the solution while in parallel utilizing all 8 or 16 CPU threads to complete the other half of the problem, this should result in an extremely massive performance increase for certain problems.

2. My library already incorporates a fully working thread pool system, using a parameter based execution system problems could be dedicated to the GPU or the CPU or both depending on what is the optimal resource allocation for the problem at hand with on the fly dynamic switching between GPU and CPU and even spread pieces of execution to the GPU while the CPU works on other parts

3. Bring true HSA capability into a single unified architecture that allows us developers to extract 100% of the resources available in a system with a single simplified API.

You can read more about HSA and the promises it holds here http://www.hsafoundation.com/ , I think if it was done correctly this could have a major impact on the future of web development (possibly negating the need for things like web assembly).

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

ソースファイル、テスト、エントリーポイントのいずれも指定されていません。まず、GPU.js および Hamsters.js とともに提案された連携を確認し、統一された CPU/GPU 実行モデルと API が実現可能かどうかを判断してください。実装の前に、範囲を限定した設計と受け入れ基準が必要です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
javascript
領域
computer-graphics, performance, web-dev
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
15/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。