友善讨论下,目前 jdk-graalvm 和 cpp 有可比性吗 小白提问,大佬轻喷
1
proxytoworld 87 天前
看你定义的是那种高性能了,以游戏服务端来举例,基本上都是 cpp ,电商的那种又是 java 多
|
2
XiLingHost 87 天前
具体是啥高性能啊,低延迟还是高吞吐量,场景是计算密集型还是 io 密集型还是啥?
|
3
paopjian 87 天前
高性能也要和开发效率妥协,你可以搜搜看一个 The One Billion Row Challenge,超级优化 java 速度也不慢了
|
4
zhuangzhuang1988 87 天前
看写代码的人。
|
5
Jinnrry 87 天前 via iPhone
这两个都支持高性能,具体最终程序能不能高性能得看写程序的人
|
6
Mithril 87 天前
主要还是看人。
你有足够的基础知识,不管 Java 还是 C++都可以最大化利用其特性,那其实区别并不大。C++你可以很方便的手写各种优化代码,从 SIMD Intrinsics 到驱动甚至网络栈都可以改。 Java 虽然 17 也引入了 Vector ,不过你要是有能力做各种底层优化的话,还是 C++顺手写。 但绝大部分人其实都用不到这些东西。你也没那么多必要去压榨硬件性能。毕竟硬件比你人工便宜得多。 而且单纯计算的话,如果纯靠编译器优化,这俩也不会相差很多的。 总之,一个可以用 C++写出满足高性能计算要求代码的人,用 Java 除非受到 API 或者 JVM 限制,不然性能也不会有太大差别。 而且,JNI 算 Java 吗。。。 |
7
xiaochun41 87 天前
笼统回答的话就是 C++
|
8
rabbbit 87 天前
搭车问个问题,c++有什么轻量级的线程池或多线程优化资料吗?
一个任务需要调用某个函数执行 4 次耗时 5ms~6ms ,上了 pthread 线程池反而速度慢了需要耗时 8~10ms ,是因为线程本身有开销吗? |
9
rabbbit 87 天前
补充一下运行环境,是 Emscripten 跑在浏览器里的
|
10
yolee599 86 天前 via Android
楼上都在说看写代码的人,那么我假设两个写 java 和写 C++ 的人技术都是顶级的,那肯定是 C++ 性能好
|
11
xuanbg 86 天前
同样算法的计算 pi 的代码,实测 C 艹和 Java 几乎没有区别。所以,程序的性能区别只在人。
|
12
me1onsoda 86 天前
难道不是看生态吗? Java 有可以调用显卡计算的库吗
|
13
iPisces77 86 天前
graalvm 这个没有 jit 性能不如 jvm 的
|
14
xgdgsc 86 天前 via Android
Julia 更优秀
|
15
dododada 86 天前
以前高性能计算都是 C++,小型机时代跑一天任务不少钱呢。
现在计算有显卡好很多了,有的任务也上超算的,程序优化不好就浪费钱 |
16
ENNRIaaa 86 天前
感觉还是看对内存是否敏感吧,其他差异应该不大。最好是具体说一下场景,在哪方面的高性能要求。
|