什么是Azul“Zing”?[已关闭]

什么是Azul“Zing”平台?
访问Azul网站(链接)变成了一个营销恐怖 - 在涉足其中的每一点之后,我仍然没有线索。

有人有经验吗?您的申请需要“Zing”编辑什么?(Zing-able?例如,如果我有一个应用程序,它将对象图加载到内存中并不断遍历其中的大块(因此其中大部分是“暖的” - 无法将部分存储在慢速数据存储中) - Azul可以帮助我吗?(我已经知道兵马俑大记忆不能...)

我想澄清一下 - 我正在寻找那些实际上“激活”了他们的产品并将其成功放在Azul VM上的人的反馈(或者看到它不起作用)。

跑。

[编辑1 - 添加页面链接][编辑2-经验需求]


答案 1

记住Azul曾经做过的事情:制作定制的多核Java设备。Azul机器可能有60或100个内核,并且有各种各样的聪明来利用并行化(给我留下深刻印象的是乐观锁定:一个应该获得锁定的线程只是假设它有锁并向前发展,如果后来证明, 不,它应该已经被阻止了,它以某种方式解开了所有的更改并返回并等待)。

当然,问题在于定制硬件是一个墓地。Azul花了这么多时间为没人会买的硬件开发软件。因此,作为一家公司,他们模仿自己的产品:他们备份,解开他们的更改,并将他们所有的聪明之处(乐观锁定,虚拟机管理程序,其他东西)从定制硬件移植到商品多核机器,这样你就可以花20,000美元购买云中的10台八核机器*。

[ *所有数字都是从我的解剖结构中手术提取的。

这是个好主意吗?它有效吗?我不知道,但我希望如此。我在2003年的JavaOne上遇到了所有的Azul人,他们给我留下了深刻的印象。


答案 2

我曾经阅读过关于垃圾收集的研究论文,为了好玩(我现在感觉好多了,谢谢你的提问)。通过它们的一个共同点是,“如果我们有对写入障碍的硬件支持,这些算法将更快/可行”。

GC 存在读写锁定问题。如果你试图清点库存时,应用程序不断移动指针,你就无法弄清楚什么是垃圾。人们一遍又一遍地尝试的一个技巧是改变编写指针的工作方式以跟踪更改。这被称为写障碍,因为你不能不做簿记来写。这允许应用程序和GC同时运行,但在许多情况下,结果导致应用程序运行得太慢。

英特尔必须解决类似的写入障碍问题才能使虚拟化顺利运行 - 如何在已经在执行虚拟内存的操作系统中运行正在执行虚拟内存的应用程序?据报道,Zing使用这些功能使JVM成为字面上的虚拟机,并利用这些功能使GC快速。GC 的速度越快,您可以管理的堆就越大。


推荐