2016-09-17 3 views
2

私は、emscripten 1.34.1でC++からjavascriptにコンパイルされた数学ウェブアプリケーション(http://www-fourier.ujf-grenoble.fr/%7eparisse/xcasen.html)を開発しています。パフォーマンスはFirefox 45の中で良いです。たとえば、Firefox 45の場合、ifactor(2^128 + 1)は0.1秒==時間(ifactor(2^128 + 1))で2^128 + 1〜59649589127497217×5704689200685129054721になります。しかしFirefox 48の中では、夜間のFirefoxでも、最初の実行では10 *〜20 *遅く、次の実行では2 *〜10 *遅くなります。 [^ 128 + 1)& + time(ifactor(2^128 + 1)&)asm.js 10 *ファイアフォックス48よりも遅いfirefox 45

emscriptenのバージョンに関連していますか? Firefoxのインストールをダウングレードしてアップグレードを停止するように指示する以外の回避策がありますか?

答えて

4

アプリケーションでasm.jsのメモリが増加しているようです(ALLOW_MEMORY_GROWTH emccオプション)。ブラウザにはdecided to stop supporting thatがあります。これは、asm.js +メモリの増加がasm.jsの最適化を取得しなくなることを意味します。

メモリの増加を避けることができれば、アプリは以前と同じように完全なasm.jsの速度で実行する必要があります。

+0

実際、-s ALLOW_MEMORY_GROWTH = 1を-s TOTAL_MEMORY = 64000000に置き換えると、問題を解決するようです。 –

関連する問題