1 概括
Piccolo是New York大学在OSDI 2000上发表的paper Piccolo: Building Fast, Distributed Programs with Partitioned Tables【1】提出来的一个新的分布式计算编程模型,Piccolo允许计算单元跑在不同的机器上,更重要的是它对计算过程中的共享状态数据的访问有很好的本地性,同时解决了在运行时写数据的冲突等问题。
它和MapReduce的区别在于能够轻松访问中间状态(其实就是中间结果,之后都采用中间结果的说法),由于MapReduce需要把中间结果保存到HDFS,开销比较大,所以对需要频繁访问中间结果的运算效率不高,而Piccolo把中间结果保存在内存中,Piccolo中叫做in-memory table,Piccolo对in-memory table抽象出key-value简单的操作接口,方便操作。
当然用MPI等传统的编程框架,再加上shared-memory也可以解决这种问题,但是MPI这种low-level的编程框架编写代码非常复杂,而shared-memory的性能不高。
对于之前提到的对中间结果访问密集型的场景,论文中举了几个例子:
1、PageRank,在计算一个网页的PageRank分值的时候,需要访问这个网页周围的网页的PageRank值,它周围网页的PageRank值就是被频繁访问的中间结果。
2、K-means聚类算法【2】。K-Means先选取k个对象作为初始的聚类中心,然后计算剩下的对象和聚类中心的距离,根据他们与聚类中心的距离将他们分配到就近的聚类中心,然后得出新的聚类中心,再计算其它对象和新的聚类中心的距离,重复如此,直到收敛为止。在重新计算聚类中心的时候,需要这个聚类下所有对象到之前的中心的距离,它也是分布在不同节点,同时需要被频繁访问的。
可以知道的是,类似的场景大部分出现在数据挖掘的场景下。
好了废话少说,下面分析一下Piccolo是如何实现的
2 Piccolo编程模型
//TODO
Reference
1. http://www.usenix.org/event/osdi10/tech/full_papers/Power.pdf
2. http://baike.baidu.com/view/31854.htm
分享到:
相关推荐
【标题】《基于FPGA平台的Piccolo功耗分析安全性评估》 知识点: 1. FPGA(现场可编程门阵列):FPGA是一种可以通过编程来配置的集成电路,适用于硬件加速、原型设计、测试设备和特定应用集成电路(ASIC)的设计。...
《深入解析Piccolo DSP开发:基于TI公司的低成本源码实践》 ...总的来说,"piccolo源码"是一个宝贵的教育资源,通过深入学习和实践,开发者可以熟练掌握Piccolo DSP的开发技术,为各种嵌入式应用提供强大的计算支持。
Piccolo 算法的相关密钥-不可能差分...6. Piccolo 算法的安全性分析:Piccolo 算法的安全性分析是密码学研究的热点,研究人员可以使用各种攻击方法来攻击 Piccolo 算法,如相关密钥-不可能差分攻击、biclique 分析等。
本文基于前人研究成果的基础上,进一步扩展了对Piccolo结构的研究范围,提出了32种类Piccolo结构,并对其差分安全性进行了深入分析。具体来说,本文的工作主要包括以下几个方面: 1. **活动轮函数和活动S盒个数的...
《Piccolo数据手册》深入解析:TMS320F2802x系列微控制器关键技术与特性 一、引言 《Piccolo数据手册》是针对TI(德州仪器)旗下的TMS320F2802x系列微控制器(以下简称Piccolo MCU)的技术文档。该系列MCU以其高度...
《C2000 Piccolo LaunchPad 快速入门指南》是针对TI(Texas Instruments)C2000 Piccolo...同时,对于希望在FFT算法上有更深入了解的用户,这份指南也提供了实用的指导,能够帮助他们在实际项目中有效地运用这一技术。
《TMS320x2806x Piccolo Technical Reference Manual》是德州仪器(Texas Instruments,简称TI)为TMS320x28069系列数字信号处理器(Digital Signal Processor,简称DSP)提供的一份技术参考手册。这份手册详细介绍...
Piccolo系统可能包含丰富的报告和图表功能,帮助管理层快速理解和分析薪资数据。 10. **版本控制**:作为开源项目,Piccolo可能采用了Git等版本控制系统,便于开发者协作和追踪代码变更。 11. **文档**:压缩包中...
在C2000 Piccolo LaunchPad评估套件中,用户可以找到C2000 Piccolo系列微控制器的相关资源,包括PDF文档中的详细技术规格、电路图、开发环境设置指南等。这些资料对于理解微控制器的内部结构、外设功能、以及如何...
在MCU上实现SFSK调制是一种将数字信号转换为模拟信号的技术,特别是在嵌入式系统中,如Piccolo F28027微控制器(MCU)。这个项目是针对Piccolo F28027 MCU设计的,旨在利用SFSK(频移键控)调制方式来传输数据。SFSK...
尽管PRESENT和PICCOLO在设计时已经考虑了对这种攻击的防护,但随着攻击技术的演进,对这些密码算法的持续安全评估和改进仍然是必要的。 综上,RFID的安全性依赖于有效的密码算法,如PRESENT和PICCOLO,它们在资源...
综上所述,该研究为RFID标签的安全提供了新的思路,通过结合阈值技术和Piccolo算法,实现了低功耗、高安全性的密码算法,对于防止DPA攻击有显著效果。这种方法不仅考虑了硬件资源的限制,还兼顾了运行效率,是解决...
随着技术进步,传统的模拟控制逐渐被数字控制所取代,这归功于微电子技术、计算机技术的发展,以及新型电力电子功率器件的不断涌现。数字化控制能够提供更高的精度和性能,同时具有灵活性和扩展性,适应了更为复杂的...
- **Workshop**:此处指的是一种技术培训材料或实验室手册,旨在指导学习者如何使用C2000™ Piccolo™微控制器进行项目开发。 **深入解读:** - **培训目标**:通过一系列实验和教程,帮助工程师和学生熟悉C2000™ ...
- **第十三章至第十五章**:这部分内容可能包括综合案例分析、实验指导和项目实践等,帮助学生将理论知识应用于实践中。 #### DSP原理及其在移动通信中的应用 这本书由申敏等人编写,深入浅出地介绍了DSP技术在...
TMS320F2803X中文手册提供了详细的技术信息和开发参考,是开发人员深入了解和使用这款微控制器的宝贵资源。手册中列出了多个型号,包括TMS320F28030、TMS320F28031、TMS320F28032、TMS320F28033、TMS320F28034和TMS...