gpt4 book ai didi

C++ 代码在以 Objective-c 为主的项目中运行速度非常慢

转载 作者:搜寻专家 更新时间:2023-10-31 00:03:03 25 4
gpt4 key购买 nike

我需要在项目中添加一种奇特的图像格式。客户只提供了一个 C++ 库。一旦在一个以 Objective-C 为主的项目(也就是说,一个包含 Objective-C 中所有其余代码的项目)中编译,该库的运行速度会非常慢

我已经将性能与 Mac 和 PC 上的 C++ 实现进行了比较,将 C# 实现移植到 PC - 所有这些都在彼此相似的计算机上(CPU 和内存方面)。缓慢的性能仅存在于 Objective-C 项目中,在设备上比在模拟器上更为明显。我希望设备 (iPad) 的 CPU 低于 mac/pc,但不会从模拟器中的 0.2 秒图像解析到设备上每张图像惊人的 2.4 秒!是否所有添加到 Objective-C 项目的 C++ 代码都执行得很慢?

调整了所有编译器类型,许多编译器首选项。还对时间进行了剖析,以实现 C++ 代码在琐碎的操作上花费大量时间(简单的指令,例如++ 和 +=)。

我应该如何处理这个问题才能使 c++ 库的性能在 objective-c 项目中达到合理的水平?

最佳答案

I've compared performance with c++ implementations on a Mac and a PC, a ported C# implementation on a pc - all on similar computers CPU and memory-wise. The slow performance is only in an Objective-C project, much more evident on a device than on the simulator.

考虑到 iOS 设备的尺寸和电池限制,它们的功能相对强大,但无法与现代 Mac 或 PC 相提并论。与模拟器相比,在设备上运行时,您会发现任何代码(无论是 C++ 还是其他代码)都会明显变慢。当您说您“全部在相似的计算机上”进行测试时,您的意思是彼此相似还是类似于 iPhone 4?

我不知道将 C++ 与 Objective-C 一起使用会带来任何特定的性能损失。您可以通过提出一些非常简单的基准、用 C++ 和 Objective-C 对其进行编码并比较执行时间来进行 self 测试。

关于C++ 代码在以 Objective-c 为主的项目中运行速度非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6894872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com