由买买提看人间百态

topics

全部话题 - 话题: emscripten
1 (共1页)
t*****n
发帖数: 4908
n****6
发帖数: 570
2
来自主题: Programming版 - 玩了玩emscripten
用clang 和emscripten
10000行c code。生成文件很大。几个函数就几百k
计算结果啥问题。不过文档少了点。指针数组javadcript 调用费劲。速度不错。不过
ie 8 9 不支持。微软太差,老要自己搞一套最后又不了了之。
h*******n
发帖数: 82
3
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
1.已经相当牛逼了,诸如Qt,Bullet Physics Engine之类大的C++ library都编译成了
asm.js了,你可以去网上搜搜,多线程应该差点,C++也是到了11才有多线程支持的再
加上javascript本身不支持shared memory state。但是确定的是多线程在emscripten
里用HTML5 webworker模拟了。
low level的pthread支持还在试验阶段:https://kripken.github.io/emscripten-
site/docs/porting/pthreads.html#running-code-and-tests
C++11的支持要等emscripten的衍生WebAssembly来实现了。几大家族都在work on it.
memory model要follow C++11,我感觉意味着可能multi core programming 在浏览器
端会成为可能, lock-free那一堆算法有可能在浏览器里跑。https://github.com/
WebAssembly/design/blob/maste... 阅读全帖
h*******n
发帖数: 82
4
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
你仔细看了么,这个不是像threejs那样的wrapper. 你先搜搜什么是asm.js,看看这个
比普通的JS快多少倍,然后再看看emscripten是什么,效率估计比native c++ opengl
慢2倍,但是已经很牛逼了。unity3d,unreal或者Cocos2D都支持emscripten。而且这
个emscripten可以把普通C/C++翻译成ASM.JS,不光是渲染的webgl程序
t*****n
发帖数: 4908
5
来自主题: Programming版 - javascript是要统一江湖的
https://github.com/kripken/emscripten/wiki
你看这里的demo。C/C++几十年积累的程序都可搬到web上去。这是划时代的变革。无论
前端还是后端。可以重用已有的代码,大大节省开发时间。而且emscrpiten搞出来的js
程序,只比native code慢一倍。这个已经非常惊人了。估计速度已经超过java/C#等等
。更让人吃惊的是,还有个东东叫Duetto,比emscripten还快。
http://allievi.sssup.it/techblog/?p=798
估计和native code一个级别了。以后大家会都其中精力搞llvm到js的优化和js本省的
优化。
未来是web和云计算的时代,少不了c/c++和javascript。
n****1
发帖数: 1136
6
来自主题: Programming版 - 看来2013还是Javascript最流行
你见过dart编出来的js长啥样么? 见过emscripten编出的js啥样么? 都是SSA式代码,
啥类型都没有.
汇编就那么几个operator, 几个寄存器, 可以等价于任何语言的一个只有+/x/and/or运
算的子集.
dart/emscripten不过是把语言全部编译成js中只包括数字的那个子集, 然后由v8机械
地转化成真正的汇编语言而已. 真不知道你们得汇编和微机原理咋学的.
m*********t
发帖数: 527
7
这帖子偏的。。前面就不说了。从 c++ physics engine 和 java 3d 游戏
performance 扯到赚不赚钱。
就事论事,physics engine 只是 3D 游戏的核心部分之一,一般来说都用 C/C++ 来写
。因为里面不管是粒子系统,软物体(有限元),流体,动力学,全都涉及到大量的矩
阵运算(而且一般还是 sparse 的)以及相关优化问题。这些矩阵运算不仅仅是做个加
法乘法的事情。比如 linear/nonlinear complementarity problem. 而且这种运算一般
都要求 real time。
在这上面你想要怎么 call opengl 渲染爱用啥用啥,js 也好 java 也好。。。然后大
型游戏你服务器那边底层构架 code 爱用啥用啥。。。
另外,ASM.js 其实本来就不是让人自己来读的。emscripten 编译出来的接近 llvm
byte code 一样。。还记得昨天 google 主页的 pony express 游戏吧,你可以看看那
段 js 代码,就是 emscripten 搞出来的。
h*******n
发帖数: 82
8
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
STL的一堆东西(iostream)被emscripten转后生成的JS file好像上1M了太大,建议file
system可以考虑用https://github.com/floooh/oryol提供的,特别轻便。
ORYOL还挺不错的,FIPS封装了CMAKE编译,各大平台都支持,web上走emscripten。
n****l
发帖数: 3375
9
来自主题: Military版 - 再次开贴科普比特币
开个帖子科普果然没有人真的认真看
一切就是为喷而喷
在本版众多人谈论比特币之前我从来不在这个地方提比特币
因为这种小众的东西自己研究行了
我写的代码也全部是无偿贡献给社区
难道在一个整天小将老将的地方提这种专业类的事情?
敝人喜欢各种类型的东西
无论是gnuradio arduino usrp proxmark3 RaspberryPi Crazyflie开源硬件
还是jekyll angularjs emscripten openresty各种有意思的开源软件
比特币是这类话题的几百几千分之一
估计会有人说你写的都是些什么名词我听不懂
那当然,生物缩男也肯定不会把养老鼠的专业名词放了本版讨论吧?
我反正把我知道的这方面的无论优点缺点全部科普完了
再别的地方能够形成讨论气氛
本版倒好直接人身攻击
所以对本版这类人我想说话我都说到了爱听不听
以后我也懒得讲这方面的事儿
另外可以统计下本版99.99999%的比特币帖子全是这种人发的
N*******t
发帖数: 66
10
来自主题: Programming版 - 牛人们来看看这个Dao语言怎么样
应该可以算虚拟机解释,但考虑到Dao
有支持即时编译的模块,可以将部分虚
拟机指令编译到机器码,所以这个解释
与编译的界限不那么明显了。当然从源
代码到虚拟机字节码这个过程也可以算
编译。
在线运行的是一个JavaScript实现的Dao
语言虚拟机,是是用Emscripten从Dao
虚拟机的C实现翻译出来的。这个JS实现
除了不支持多线程,其他特性基本上都是
完整的支持了。
当然可以支持多个文件/目录组成的程序。
同一个虚拟机环境可以多次运行不同的程序,
实际上网站上那个就是一个虚拟机环境多次
运行不同demo,直到用户刷新页面为止。
需要通讯的话,有网络模块。
t*****n
发帖数: 4908
11
划时代的东东,无人顶?
l*********s
发帖数: 5409
12
this kind of stuff is completely out of my reach : -(
t*****n
发帖数: 4908
13
来自主题: Programming版 - Node.js 有用过的么 什么评价
c/c++ + emscripten + node.js 前后通吃
t*****n
发帖数: 4908
14
来自主题: Programming版 - javascript是要统一江湖的
Emscripten是把LLVM bitcode编译成JavaScript,然后在JavaScript虚拟机里运行。所
以效率应该不差。至于是否能到native的级别,有待观察。
p***o
发帖数: 1252
15
来自主题: Programming版 - 玩了玩emscripten
ipad支持不?
t*****n
发帖数: 4908
16
来自主题: Programming版 - 玩了玩emscripten

已经相当于汇编了,当然很大,不是一对一翻译。
s***o
发帖数: 2191
17
前些天看了一个用emscripten/asmjs port过来的unreal engine 的游戏demo。效果只
能用惊人来形容。
就是不知道真跑起来是不是很耗电,而且现在也只能在firefox里面才跑得动
N*******t
发帖数: 66
18
来自主题: Programming版 - 来看用什么来把nodejs给干死掉
没以go为目标,我提到的那些特性只有defer, panic和channel是向go学的,其他在go
出来之前就有了。javascript不容易替换,要让浏览器都支持别的语言太难了。
我的虚拟机倒是可以在浏览器里运行,是通过emscripten把虚拟机的c实现翻译成了
javascript。dao网站上的demo(http://daovm.net/demo.html)就是在浏览器里跑的。
t*****n
发帖数: 4908
19
小心被人拍。后端不敢说,前端java没什么优势。而且emscripten吧C/C++/Pyhton/
java统统搞成js了。

5
n****1
发帖数: 1136
20
来自主题: Programming版 - 看了一下Meteor很不错
连着所有库一起编译成js啊, 最后的runtime已经没有python的影子了. 难道还有其他
的编译方式么?
难道在c语言里你不会写static linked executable么? 而且连C都能用emscripten编译
成js运行,有啥runtime问题?
Y**G
发帖数: 1089
21
来自主题: Programming版 - JavaScript现在很彪悍
看看这个俄罗斯方块吧,没有flash照样玩
http://vps2.etotheipiplusone.com:30176/redmine/emscripten-qt-ex
k**********g
发帖数: 989
22

至於底层、效率,现在年轻一辈可不在乎。反正都是玩票。初生之犊不畏虎。
Just found on news.ycombinator.com...
Javascript OCR. A port of GNU Ocrad to Javascript using emscripten.
http://antimatter15.github.io/ocrad.js/demo.html
k**********g
发帖数: 989
23
来自主题: Programming版 - C语言能干嘛?

C can be compiled to LLVM bytecode and then to Javascript via emscripten.
t*****n
发帖数: 4908
24
来自主题: Programming版 - c++ -> js
emscripten,出来好久。去年版上就讨论过。我都port了好几计算项目。一个,爽!
p***o
发帖数: 1252
25
你的解决方案似乎和通常的差别比较大,没市场自然也就没人做。
一般都手写个HAL把硬件相关的东西独立出来,剩下的都是标准C/C++,用LLVM处理成
IR再编译到你的芯片。LLVM的好处是可以从IR开始加自己的东西,啥都可以,比如
emscripten和AutoESL。
h*******n
发帖数: 82
26
WEB前途是 Emscripten 把 C/C++ 编译成asm.js, 运行效率可以达到原生C/C++一半左
右,大家都看到unreal和 Mozilla当时的demo吧
unity3d之类的都在做这个
https://hacks.mozilla.org/2014/10/unity-games-in-webgl-owlchemy-labs-
conversion-of-aaaaa-to-asm-js/
游戏之类复杂点的app都可以用这个方法来移到web上,包含3D渲染,运算的东西绝对不
要用JAVA这种慢点要死的东西写,根本不能和C/C++或者ASM.JS相提并论。
http://www.i-programmer.info/news/167-javascript/6238-java-asmj
https://blog.mozilla.org/javascript/2013/08/01/staring-at-the-sun-dalvik-vs-
spidermonkey/
t****m
发帖数: 135
27
来自主题: Programming版 - Server release了
我还想试试emscripten,代码都不用改。
P**H
发帖数: 1897
28
来自主题: Programming版 - 基於WebGL的3D rendering庫哪個好?
webgl成熟的库不多。threejs算一个。cocos2d也出了web版,没用过。用过babylonjs
写过helloworld级别的,画几个球,贴几个图,主要想弄半透明的效果。
如果有c++的了,可以考虑Emscripten转。也没试过,多大的坑不知道。
r*****i
发帖数: 234
29
来自主题: Programming版 - 基於WebGL的3D rendering庫哪個好?
多謝,兄弟
Emscripten真是太好了,可以解決我很多問題,不用重新寫很多算法,哈哈,感謝

babylonjs
h*******n
发帖数: 82
30
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
web3d 应该走C++ emscripten
http://floooh.github.io/oryol-samples/index.html
c******n
发帖数: 16666
31
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
嗯 我知道asm.js是什么
刚才又去稍微看了下emscripten 看完了整个tutorial 不过没试着写
但是我还是之前的意见
对我而言太复杂 我这边真还有个刚结束的单场景unity webgl项目
不过当时忙着把4代一个demo改改弄出来结束
没仔细研究怎么它们是怎么编译的js
现实就是 你说如果我个人项目我自己多花点时间也行
但我们这边就是要催活 我都恨不得直接unreal的blueprint来出东西
用unity也就是不想手写webgl外加他家商店东西多
不过你这个确实有点启发 我现在在脑补这玩意下次怎么用一下这个
不都说resume-oriented-development吗?
我有个 个人项目倒是可以试一下

opengl
n******7
发帖数: 12463
32
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
去年研究过emscripten
有个问题,这个东西从C转到js完美吗?
我看他例子说转个游戏一天搞定
总觉得too good too be true
不然什么firefoxOS之类的就NB大了
还有google类似的NaCl,要是都这么容易,chromeOS也不用搞playstore了吧

opengl
h*******n
发帖数: 82
33
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
不能支持文件???
这是什么
https://kripken.github.io/emscripten-site/docs/api_reference/Filesystem-API.
html
n******7
发帖数: 12463
34
来自主题: Programming版 - pixi.js webgl加速的2d 矢量lib
谢谢,确实相当牛逼了,值得一试

emscripten
z*******n
发帖数: 1034
35
来自主题: MobileDevelopment版 - Google Released LiquidFun 1.1
http://google-opensource.blogspot.com.es/2014/07/flowing-into-y
We are thrilled to announce the 1.1 release of LiquidFun, an open-source 2D
physics engine. It adds particle simulation to Erin Catto’s popular Box2D
engine, and can be used as a drop-in replacement for Box2D. If your program
is written in C++, Java, or JavaScript, you can easily use LiquidFun.
Today’s release adds some exciting new features to LiquidFun. Some
highlights:
LiquidFun now runs in your browser! Using Emscripten, we’... 阅读全帖
1 (共1页)