дошел - посмотрел. основная головная боль для Dart VM это целые числа из-за этой их "бесконечной" семантики (dart2js эту семантику не реализует).
Мы пытаемся их садить на машинное слово, чаще всего получается, но иногда нет - по историческим причинам, поэтому на границах Uint32/Int32 наблюдаются вот такие артефакты производительности.
Попробуй x64 build там все будет быстро :)
$ ~/src/v8/v8/out/ia32.release/d8 ~/src/dart/dart/sdk/lib/_internal/compiler/js_lib/preambles/d8.js out.js
loading image...
received 149321 bytes.
decompressing 50 times...
t=2571 ms
$ ~/src/dart/dart/out/ReleaseIA32/dart spi.dart
loading image...
received 149321 bytes.
decompressing 50 times...
t=5918 ms
$ ~/src/v8/v8/out/x64.release/d8 ~/src/dart/dart/sdk/lib/_internal/compiler/js_lib/preambles/d8.js out.js
$ ~/src/dart/dart/out/ReleaseX64/dart spi.dart
loading image...
received 149321 bytes.
decompressing 50 times...
t=1893 ms
Я сделал баг на это дело http://dartbug.com/21557 - хотя вообщем-то это давно известная проблема, надо просто до нее добраться.
no subject
Date: 2014-11-10 12:29 pm (UTC)Мы пытаемся их садить на машинное слово, чаще всего получается, но иногда нет - по историческим причинам, поэтому на границах Uint32/Int32 наблюдаются вот такие артефакты производительности.
Попробуй x64 build там все будет быстро :)
Я сделал баг на это дело http://dartbug.com/21557 - хотя вообщем-то это давно известная проблема, надо просто до нее добраться.