如何对 EC2 macOS 实例中的性能问题进行故障排除?

1 分钟阅读
0

我的 Amazon Elastic Compute Cloud (Amazon EC2) macOS 实例在调用、更新或呈现数据或运行应用程序时处理速度很慢。或者,我用 Amazon Elastic Block Store (Amazon EBS) 快照启动的 macOS 实例的性能很慢。

解决方法

检查您的 APFS 配置

基于 ARM 的 M1 和 M2 芯片等硅芯片设备使用 Apple 文件系统 (APFS)、高性能内核(P 核)和高效能内核(E 内核)来优化性能。这些设备使用 P 内核来处理仅消耗大量电能或资源的高强度工作负载。E 内核适用于要求较低的工作负载,以减少资源使用并处理轻型应用程序或 Web 浏览等任务。有关详细信息,请参阅 Apple 网站上的 Optimize for Apple Silicon with performance and efficiency cores。请直接使用 APFS 来优化您的工作站。有关详细信息,请参阅 Apple 网站上的 Tuning your code's performance for Apple Silicon

启动实例时,选择符合您的性能要求的专属主机

分配专属主机时,请确保选择最能满足架构需求的资源。使用 mac1mac2 处理标准工作负载,使用 mac2-m1ultra.metalmac2-m2.metalmac2-m2pro.metal 来获得额外的处理能力。

启动实例时,选择符合您的性能要求的 Amazon EBS 设备

您的 Amazon EBS 设置会影响 APFS 的整体性能。作为 macOS 的默认文件系统,APFS 针对 SSD 存储进行了优化。因此,最佳做法是使用支持 SSD 的 EBS 卷,例如 gp3io。或者,查看每种 EBS 卷类型以确定满足您的环境需求的卷。最佳做法是从使用 5000 IOPS 和 200 吞吐量的配置开始。

恢复实例后,初始化该实例以避免延迟加载

当您使用快照恢复 EBS 卷时,Amazon EBS 会从 Amazon Simple Storage Service (Amazon S3) 提取您的数据。Amazon EBS 预热磁盘时的初始化周期取决于磁盘大小、EBS 容量和数据类型。通过延迟加载,Amazon EBS 从快照中读取数据并根据需要进行恢复。如果您访问新启动的磁盘上卸载的数据,则会遇到高延迟。为避免延迟加载,请手动初始化卷并运行 fio 或 dd 命令

fio --filename=/dev/device --rw=read --bs=128k --iodepth=32 -- ioengine=libaio --direct=1 --name=volume-initialize

**注意:**最佳做法是使用 fio。但是,如果您的设备上没有 fio,请使用 dd

-或-

dd if=/dev/deviceName of=/dev/null bs=1M

**注意:**将 devicedeviceName 替换为磁盘名称。

或者,使用快速快照恢复 (FSR)

手动初始化过程可能需要几个小时,具体取决于磁盘大小和数据类型。但是,该过程比 Amazon EBS 初始化您的磁盘时要快。手动初始化完成后,磁盘已“预热”并可供使用。

AWS 官方
AWS 官方已更新 3 个月前