读Hama代码发现的同步问题,
实际使用IncomingVertexMessageManager类作为消息管理类,
开始我看到AbstractMessageManager中init函数
this.localQueueForNextIteration = getSynchronizedReceiverQueue();
还以为加了同步,后来发现真没有。。。。
这样会存在IncomingVertexMessageManager中的
public void add(GraphJobMessage item) {
if (item.isVertexMessage()) { //没有执行singeLockQueue的同步代码,存在同步问题!
if (!storage.containsKey(item.getVertexId())) {
storage.putIfAbsent(item.getVertexId(), item);
} else {
storage.get(item.getVertexId()).addValuesBytes(item.getValuesBytes(),
item.size());
}
} else {
mapMessages.add(item);
}
}
不知道为何这样写呢?
真是坑爹啊!
分享到:
相关推荐
refined.zip,scala的简单求精类型scala的简单求精类型
赠送jar包:hppc-0.7.1.jar; 赠送原API文档:hppc-0.7.1-javadoc.jar; 赠送源代码:hppc-0.7.1-sources.jar; 赠送Maven依赖信息文件:hppc-0.7.1.pom; 包含翻译后的API文档:hppc-0.7.1-javadoc-API文档-中文...
分布式模式的Hama安装笔记,内容如下: 1.参考“hadoop安装.txt”,完成hadoop的安装。节点信息如下: 192.168.1.160 hadoop-1 192.168.1.161 hadoop-2 192.168.1.162 hadoop-3 2.添加环境变量 在/etc/profile...
汉密顿焦虑量表(HAMA) 填表注意事项:在最适合病人情况中划一个钩“√”,所有项目采用0~4分的5级评分法,各级的标准为:(0)为无症状;(1)轻;(2)中等;(3)重;(4)极重。 无症状 轻 中等 重 极重 1、...
1.Hama-0.6.0,里面含有安装版和源码两部分,与hadoop-1.0.3 结合使用,已在Linux(RHEL和Ubuntu)平台测试通过。 2. Hama是基于HDFS上的BSP模型实现。
基于Hama并行计算框架的多层级作业调度算法的研究及实现 胡月胜
HAMA焦虑量表.doc
HAMA抑郁量表.pdf
2021年HAMA焦虑量表
汉密尔顿焦虑量表HAMA项打印版.pdf
将Hadoop集群构建成master-slave对等结构,解决全局同步和局部同步问题。最后,在Hadoop集群上,利用有限体积法和黎曼问题来求解MHD方程。实验结果表明,该仿真器能够精确模拟MHD,同时大大缩短了仿真计算时间。
汉密顿焦虑量表(HAMA)(Hamilton Anxiety Scale.doc
汉密尔顿焦虑量表HAMA(14项打印版)-2页.pdf
基于Hama并行计算框架的多层级作业调度算法的研究及实现.pdf
综合护理干预对无肝素血液透析患者HAMA凝血程度及不良反应率的影响分析
哈马珠 Hama Beads 编辑器
我的废话:Hama中最关键的就是BSP(BulkSynchronousParallel-“大型”同步模型)模型,BSP的概念由Valiant(1990)提出的,“块”同步模型,是一种异步MIMD-DM模型,支持消息传递系统,块内异步并行,块间显式同步,该模型...