emscripten-core / emscripten-core/emscripten
How to avoid repeated downloading of dynamic library under multithreading
- 主要言語
- C++
- スター
- 27.6k
- フォーク
- 3.6k
- 平均マージ
- 1日 16時間
- マージ済み PR(30日)
- 117
説明
Version of emscripten/emsdk: 3.1.15
If I use Multi-Thread and Side-Module, my project can run successful. But my dynamic libraries(about 30MB) will download some times,
one in main thread and others by my worker.js(PTHREAD_POOL_SIZE=30), this will waste lots of time and network bandwidth(about 1G).
① But in fact, I should only need to load it once,it will be fast and more reasonable, how can I share thoes dynamic libraries for other thread?
② What's more, the path of the dynamic library has changed。 When I set my dynamic libraries as below.
var Module = {
dynamicLibraries : [
"libs/XXX.so",
.....
],
}
it downloads libraries from //libs in main thread, however,it downloads libraries from ///libs/ in worker.js thread。 so I need copyt it to other path.
コントリビューションガイド
調査の方向性
dynamicLibraries を使用したマルチスレッドの side-module セットアップを再現し、メインスレッドと worker.js のリクエスト、およびそれらで解決されたパスを比較します。完了条件は、ライブラリが一度だけダウンロードされるかどうか、また同じライブラリパスが両方の実行コンテキストから機能するかどうかを判断することです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript, wasm
- 領域
- build-system, web-dev
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100