Size: a a a

WebAssembly — русскоговорящее сообщество

2020 June 26

К

Константин in WebAssembly — русскоговорящее сообщество
и все на ас3, 3 уже на тс
источник

К

Константин in WebAssembly — русскоговорящее сообщество
в сорцах версии не написаны
источник

К

Константин in WebAssembly — русскоговорящее сообщество
не от хорошей жизни.
У нас трабла, что наш AVM2 компилятор делает оч тупой код
источник

К

Константин in WebAssembly — русскоговорящее сообщество
и бокс внешний гораздо быстрее, чем тот который на лету компилируется
источник

К

Константин in WebAssembly — русскоговорящее сообщество
Ну у меня сейчас в игре 0.1FPS просто из-за миллиона проксирований, который порождает бокс, когда общитывает мир в нашей виртуальной машине (привет тупой шамвей)
источник

К

Константин in WebAssembly — русскоговорящее сообщество
Пока мы AVM2 на тот же раффл переведем, чтобы был наш рендер, а от него только сама машина - 33 года пройдет
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Ну перевидете вы box2d на wasm допустим, потом оказеться что какая то другая библиотека тормозит, вам снова придется ее переводить и т д. Как по мне вам нужно решить эту проблему в самом основании, а имнно написать нормальные оптимизирующие проходы для вашей виртуальной машины. Про LLVM забудьте. он медленный в плане компиляции и около 150 мб занимает на жестком диске
источник

К

Константин in WebAssembly — русскоговорящее сообщество
MaxGraey
Ну перевидете вы box2d на wasm допустим, потом оказеться что какая то другая библиотека тормозит, вам снова придется ее переводить и т д. Как по мне вам нужно решить эту проблему в самом основании, а имнно написать нормальные оптимизирующие проходы для вашей виртуальной машины. Про LLVM забудьте. он медленный в плане компиляции и около 150 мб занимает на жестком диске
Да не, у нас поток.
У нас есть сорцы, не все. Мы знаем что бокс тормозит
источник

К

Константин in WebAssembly — русскоговорящее сообщество
Что машину надо менять - ежу понятно.
Ток для этого нужно иметь спеку по авм2
источник

К

Константин in WebAssembly — русскоговорящее сообщество
которую адоб зажал, а шамвей конечно часть запорол
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Ну шамвей не зря запорол, насколько я понял сделать avm2 быстрым ни у кого не получилось, поэтому кстати Haxe пощел по другому пути и сделали свою VM (Neko), а потом и вовсе стали транспилировать в c++ и js, java и т д
источник

К

Константин in WebAssembly — русскоговорящее сообщество
Мы тоже сделали недо-транспилятор
источник

К

Константин in WebAssembly — русскоговорящее сообщество
который для примера генерит такое гомно
источник

К

Константин in WebAssembly — русскоговорящее сообщество
источник

К

Константин in WebAssembly — русскоговорящее сообщество
Это 1 метод 1 класса
источник

К

Константин in WebAssembly — русскоговорящее сообщество
с боксом таких методов 20к получается
источник

К

Константин in WebAssembly — русскоговорящее сообщество
оно компилируется то около 5 сек из байткода
источник
2020 June 27

M

MaxGraey in WebAssembly — русскоговорящее сообщество
А профилировать js портянку эту не пробовали? Меня очень смущает findScopeProperty, вот такие штуки как temp['$BgcurrentFrame’] и т д. Попробуйте прогнать все это через Closure Compiler
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Вот ребята из гугла для Java bytecod -> JS транспайлера именно так и делают здесь https://github.com/google/j2cl
источник

К

Константин in WebAssembly — русскоговорящее сообщество
MaxGraey
А профилировать js портянку эту не пробовали? Меня очень смущает findScopeProperty, вот такие штуки как temp['$BgcurrentFrame’] и т д. Попробуйте прогнать все это через Closure Compiler
Это реалтайм компиляция
источник