主流设计软件的内存占用对比
本文原作者bjango壹手设计编译,部分内容有少量删改
设计工具内存使用情况
空白文档
下面的图表显示了当Figma、Sketch、Illustrator、Photoshop和Affinity Designer同时打开0、5、10或15个空白文档时会发生什么。对于需要文档大小或位深度的应用程序,我使用了512×512像素和每通道8位。
图表显示空白文档使用的内存量。从差到好:Figma、Illustrator、Affinity Designer、Photoshop、Sketch。
结果显示随着创建更多文档,内存使用量呈线性增长。这是可以预期的,但测试一下你的假设总是很好的。Figma的使用量远高于其他工具,而Sketch的使用量最低。
2048个圆
大量圆形网格
下一个测试涉及打开一个包含2048个圆形网格的SVG。这个测试的主要目的是检查图层/对象开销。这些对象本身很简单,只是数量很多。
图表显示测试文档使用的内存量。从差到好:Figma、Illustrator、Photoshop、Affinity Designer、Sketch。
结果再次显示所有工具的线性增长。Figma的使用量最高,而Sketch的使用量最低,再次如此。这一次,当15个测试文档的副本被打开时,Figma的使用量略低于7 GB。
2048个点
一朵有8片花瓣的花形图案
这一次,我们将使用一个包含2048个点的SVG,其中只有一个路径。路径看起来类似于上面显示的路径,但是有2048个点。每个花瓣都是一个贝塞尔路径段。这个测试检查路径数据的存储优化程度。
图表显示测试文档使用的内存量。从差到好:Figma、Affinity Designer、Illustrator、Photoshop、Sketch。
顺序与上次类似,但Affinity Designer上升了两个位置。Figma再次是使用最多内存的工具。我相信Figma每个标签页加载了一个完整的应用程序副本,这可能是其高内存使用的一部分原因。每个标签页的内存限制为2GB,最大可能的文档可使用约1.75 GB的内存。换句话说,如果你购买了一台具有192 GB内存的Mac Studio,你只能打开使用不到1%内存的文档。这与其他测试的应用程序不同,它们可以使用Mac Studio的全部192 GB内存,减去系统使用的内存。Figma同时使用了所有测试工具中最多的内存,并且受到最多的限制。
老虎
老虎插图
下面的老虎是一个常见的测试SVG,包含大约1000个路径和许多群组。这个测试与前面的测试类似——打开0、5、10和15个副本,然后查看使用了多少内存。下面的结果显示了相同的情况。
图表显示测试文档使用的内存量。从差到好:Figma、Illustrator、Affinity Designer、Photoshop、Sketch。
如果我们将100、200和300个图像导入到单个文档中会怎样?这个测试使用
300个图像
用于测试的明亮色彩几何图像
如果我们将100、200和300个图像导入到单个文档中会怎样?这个测试使用的图像每个都是1024×1024像素,并且都是唯一的(如上所示)。
图表显示测试文档使用的内存量。从差到好:Photoshop、Figma、Affinity Designer、Illustrator、Sketch。
白鲸
下面的测试是基于Jesse Grosjean的白鲸训练。这个想法很简单——创建一个文本框,并将整个《白鲸记》的内容粘贴到其中。然后,复制文本框并测试使用5、10和15个副本时的内存使用情况。
《白鲸记》大约有1.3MB。这是一段庞大的文本,但对于现代计算机来说并不算很大。
图表显示将多个副本的《白鲸记》粘贴到文档中所使用的内存量。不显示Figma和Sketch。Illustrator、Affinity Designer和Photoshop几乎相同。
上面的图表看起来有点空,因为Sketch和Figma在处理《白鲸记》时都遇到了问题。Sketch在粘贴文本后不久就卡住了。Figma在粘贴后冻结了55秒,然后内存不足。再次使用200KB的文本文件对这两个应用程序进行测试得到了类似的结果。
其他应用程序可以处理15个完整《白鲸记》文本的副本。我没有测试超过这个点。请注意,每个额外的文本框的内存使用量似乎很小,这是可以预期的,因为只有1.3MB的文本。
方法论
在每组测试之前,应用程序都是全新启动的。在测试过程中没有打开其他大型应用程序。由于需要进行大量的测试(通常我会考虑对多次测试进行平均),只进行了一次测试。Photoshop无法直接打开保持矢量对象的SVG文件,因此使用Affinity Designer将SVG文件转换为PSD文件以供Photoshop使用。
测试是在最新版本的应用程序上进行的,使用了一台具有32 GB内存的M1 Pro MacBook Pro。使用了主要应用程序进程的内存,并且将后台进程排除在结果之外。
后台进程
所有经过测试的应用程序都会创建Open and Save Panel服务和QuickLook服务进程。每个应用程序使用约30MB的内存,并且在关闭应用程序时停止运行。即使在关闭应用程序时,Figma的FigmaAgent进程仍然在运行(它用于将字体上传到其服务器)。FigmaAgent在我的Mac上使用了约10MB的内存。这些进程没有计入结果,但它们都很小,不会对图表产生重大影响。
Adobe安装了大量的后台进程,即使关闭了Photoshop和Illustrator,它们仍然运行。我发现了7个后台进程,使用了大约480MB的内存,即使主Creative Cloud应用程序关闭了也是如此。