什么是基于 PPC 的好的 >MACHINE< 用于分析有序处理器的代码

Posted

技术标签:

【中文标题】什么是基于 PPC 的好的 >MACHINE< 用于分析有序处理器的代码【英文标题】:What's a good PPC based >MACHINE< for profiling code for in-order processors 【发布时间】:2011-08-05 15:28:39 【问题描述】:

我知道较旧的 Mac 具有 PPC 处理器,这是完美的,但哪些特定型号适合将 linux 发行版放入其中?我已经有 10 多年没有使用过 Mac 了,所以我不知道该选择哪一个。特别是,我问那些接受 Linux 的人,因为我相信 Apple 会要求你付费在他们的机器上进行开发,或者是否可以在 mac 上免费使用 c++ 和 gcc 和 LLVM?

我需要能够在有序 RISC 处理器上分析代码,而 PPC 似乎是最好的起点,但还有哪些其他 CPU 可以提供类似的编码体验?也就是说,由于指令集大大减少,在浮点/整数/向量表示之间切换时会出现分支、微码指令和加载命中存储问题。

【问题讨论】:

你真的需要PPC吗?或者您只想使用有序 CPU(Intel Atom 是现代有序的)? 感谢您指出,是的,它是有序的,但它没有 risc 指令集,我将编辑我的问题。 【参考方案1】:

在 Mac 上开发是免费的。在 iPhone 上安装 ios 产品需要付费,通过 App Store 销售 Mac 产品需要付费。但是您可以在 Mac 上免费构建 c++ 应用程序。 Xcode 本身是免费的。

任何 PowerBook G4 都适合这种工作,如果你想这样做的话,有很多关于在 PowerBook G4 上安装 Linux 的页面(尽管我可能只是 Xcode 而不是麻烦)。

【讨论】:

是的。 Xcode 一直是免费的。但是,您需要下载 Xcode 3。 Xcode 4 不再附带 10.4 或 10.5 SDK,并且没有 PPC 编译器。有一些方法可以重新配置 Xcode 4 以构建 PPC(我这样做),但出于您的目的,它可能不值得麻烦。 Xcode 3 可能非常适合您的需求。 Xcode 3.2.6 仍可在 Apple 网站上使用。 抱歉,3.2 本身不会在 PPC 上运行(它只会为 PPC 构建)。你需要 3.1。【参考方案2】:

使用 Mac OS X 并获得来自 Apple (Xcode 3.x) 的免费 Xcode 开发人员工具以及免费的 CHUD 性能工具包,其中包括 Shark非常 很好的示例分析器,您会发现它非常有用。

【讨论】:

【参考方案3】:

有点跑题了,但是

有序

这完全取决于您所说的有序! PowerPC 有各种同步指令,如synclwsynceieio 来强制(不同类型的!)内存排序,以及刷新指令管道的isync。 IBM has a decent summary.

RISC 处理器

我真的不会将 PPC 称为“减少”;)

分支时停止

IIRC,一个正确预测的分支,其目标位于指令​​缓存中,不会使 G4 停顿(我忘记了 G4 的不同模型有何不同)。 OTOH,如果分支目标是 16 字节对齐的(关于分支目标缓冲区),G5 的性能会更好。

微码指令

我认为 RISC 的一半目的是避免微码?无论如何,我不知道微码更新。

在浮点/整数/向量表示之间切换时的加载命中存储问题

我不确定这意味着什么......

“传统”ARM 可能更接近您正在寻找的东西,但我怀疑更新的处理器具有一些更“现代”的处理器功能。我选择的 ARM 机箱可能是 SheevaPlug 或类似产品,不过如果您不介意限制为 64 MB,WZR-HP-G300NH 路由器更便宜(并且带有 Wi-Fi)。

【讨论】:

以上是关于什么是基于 PPC 的好的 >MACHINE< 用于分析有序处理器的代码的主要内容,如果未能解决你的问题,请参考以下文章

什么是用于 Objective-C 和 Cocoa 编程的好的 IRC 频道 [关闭]

什么是学习机器学习的好的第一个实现? [关闭]

什么是PPC?为什么你会用到它?

什么是用于决策树的好的 Python 库? [关闭]

PPC是啥意思?

什么是适用于 OSX 或 Windows XP 或 DOS 的好的 C 编译器?