建筑中粗粒/细粒度的定义

时间:2010-02-22 16:55:37

标签: architecture api-design

在讨论API时,会使用“粗粒度”或“细粒度”这两个术语。这些是什么意思/有什么例子?

由于

2 个答案:

答案 0 :(得分:3)

经常参考FPGA(Field Programmable Gate Arrays)最小的逻辑元件。例如,如果是NAND门,则认为它是细粒度的。如果它是一个复杂的逻辑块,能够实现许多NAND等价,那么它就是粗粒度的。很容易看出,如果合成器选择一个复杂的块来做一些逻辑上很少的门,那就浪费了芯片面积和利用率,最好留给细粒度的架构。如果你想用一个“nand gate of sea”进行浮点数学运算,那就不会像那个有浮点的粗粒度FPGA那样高效,甚至整数,加法器,桶形移位器和/或它们中的PLA元素都可以级联为更大的位词。这将使得快速加法器占用的面积小于细粒度,并且可以使用接近100%的复杂逻辑块。

答案 1 :(得分:1)

我已经看到这种区别在SOA中使用了很多,例如:

http://www.ibm.com/developerworks/webservices/library/ws-soa-granularity/

基本上,粗粒度系统的方法调用比细粒度系统少。显而易见的粗粒度方法将比分解的细粒度版本更少并且做得更多。

例如,在分布式系统中,粗粒度接口通常会在调用昂贵的地方更好。

相关问题