Android Studio 性能是否与 CPU 个核心数相适应?

Does Android Studio Performance Scale Well With Number Of CPU Cores

例如 AMD Ryzen 5 1600 有 6 个(每个物理 2 个逻辑内核)内核,时钟速度:3.2 GHz 涡轮速度:3.6 GHz。

相比之下,Intel Core i5-7600 有 4 个内核,时钟速度:3.5 GHz 涡轮速度:4.1 GHz。

我的经验是,Ryzen 1600 的性能比 i5 7600 好一点我见过很多游戏基准测试,两个处理器并驾齐驱,Ryzen 的性能仅在视频渲染、编码、文件压缩等情况下不可或缺,否则无处可去我发现主要 difference.Even 主要是我发现 i5 7600 性能更好。

总而言之,这是我的问题....

在我看来,作为最近组装了一台开发 PC 并且经常大量使用 Android Studio 和 Intellij(基本上是 Android Studio)的人,您的 CPU 很少你的瓶颈。相反,我会说这是您的内存量和驱动器的 read/write 时间。打开任务管理器或其他一些硬件监控小工具和 运行 构建,您经常会看到 CPU 处于 40-60%,驱动器 read/write 达到 100% 并且 Android Studio、模拟器(如果您使用它)和所有 Java 运行时间东西正在侵蚀您的记忆。

所以我想说这取决于个人喜好。我相信任何一个都会很好地工作。

我认为这取决于您项目的结构,尤其是在编译时。 Gradle 启用并行构建的选项仅影响多模块项目的编译时间。如果您的整个应用程序只有一个整体模块,gradle 将只会有限地使用多核,如果有的话。

有关多项目构建的详细信息,请参阅 https://docs.gradle.org/current/userguide/multi_project_builds.html

在为 Android 开发构建或购买机器时要考虑的另一件事:英特尔芯片允许您在模拟器中虚拟化基于英特尔的图像。与模拟基于 ARM 的图像或 运行 AMD 芯片上的模拟器相比,这会显着提高测试应用程序的速度。

我有这个问题很久了,刚刚从 Intel i5-3570K @ 3.4 GHz(4 核)跳转到 AMD Ryzen 7 2700 @ 3.2 GHz(8 核)。让我分享一下我的测试结果。

+--------------------------------+--------------------------+---------------------------+
|                                | Intel i5-3570K @ 3.4GHz  | AMD Ryzen 7 2700 @ 3.2GHz |
|                                | (4-core) 32GB DDR3 RAM   | (8-core) 32GB DDR4 RAM    |
+--------------------------------+--------------------------+---------------------------+
| Rebuild the debug version of   | 2m 15s                   | 1m 3s                     |
| an app after cleaning it.      |                          |                           |
+--------------------------------+--------------------------+---------------------------+
| Build, copy and FTP a release  | 5m 5s                    | 4m 5s                     |
| package after the above task   |                          |                           |
+--------------------------------+--------------------------+---------------------------+

第二个测试主要用于 Proguard 的缩小和混淆。我在使用新主板、CPU 和 RAM 升级 PC 前后的 24 小时内完成了所有测试。两个驱动器(一个 SSD 和一个 HD)保留了下来。

Thanks to Microsoft、Android 模拟器现在可以在基于 AMD CPU 的 PC 上 运行。这台 Ryzen 7 机器上的模拟器速度快得令人难以置信。冷启动 Marshmallow 6.0 - API 23 模拟器仅需 14 秒。启动任何应用程序都是即时的。我严重怀疑任何物理 Android 设备都能胜过模拟器。

一直希望看到专为软件开发设计的基准测试。几乎所有基准测试似乎都针对游戏。

两种配置:

可能有点旧线程,但这是我使用 I7 4710HQ(4 cores/8 线程)和 Ryzen 1600 AF @3.9 GHz 的经验:编译项目时使用 I7 CPU 加载大部分时间为 100%,比 Ryzen 慢,后者在编译期间也以 100% 加载。所以 android studio 和大多数 gradle 编译器在编译期间使用所有可用的 CPU 核心和线程。

嗯,那是我在开始构建项目后 CPU 的用法。所以我会说它确实使用所有内核 - 只是不是所有时间。

但我也觉得我的 Android 工作室很奇怪。不太确定。

可能有点旧线程,但如果您使用 Kotlin 并处理单个模块项目,由于当前 Gradle 的限制,编译在很大程度上是单线程的。我知道很多开发者抱怨编译速度比 java 慢。对于一个大项目,使用多模块可以显着加快速度,因为它减少了重建整个模块的机会,除非对它们进行修改。如果启用 Gradle parrelel 选项,也可以在 parrelel 中编译不同的模块,因此可以充分利用您喜欢的硬件规格。