由于Android可以安装在各种设备上,因此我想知道RAM和CPU速度对设备性能的重要性。当增加某项而减少另一项时,总会有权衡!

对于一般的浏览和较少的多任务处理,是否需要更多的RAM或更快的处理器?如果我对游戏或一次做很多事情感兴趣怎么办?是否会用更多的RAM来弥补速度较慢的处理器?反之亦然?

评论

顺便说一句:请记住,CPU时钟与CPU速度不同。更有用的度量指标是CPU时钟是Mflops,平均每秒百万条指令(MIPS)等。在某些优化(例如JIT优化)中可以看到Mflops和MIPS之间的差异,因为某些处理器具有特殊的指令,使您可以立即计算微粒。但是,除非应用程序已在这些说明的支持下进行编译,否则它们不会应用在本机代码中。

#1 楼

在Android上下文中,更多的RAM意味着Android可以在RAM中保留更多的睡眠程序,因此当您返回到应用程序时,它们将准备快速恢复。更多的RAM意味着Android将花费更少的时间从内置内存/ SD卡中删除和重新加载应用程序,而是花费更多的时间进行您关心的实际工作。这意味着更多的RAM通常可以为您提供更好/更快的任务切换。另外,更多的RAM意味着您的主屏幕不会被杀死;而且您永远不会经历10秒钟的等待感觉。具有更多的RAM还可以让您运行自然需要大量内存的复杂应用,例如照片/视频编辑器,复杂的游戏等。
更高的CPU能够更快地计算事物,虽然乍一看似乎很诱人,但值得注意的是,大多数程序-除了游戏和综合基准测试以及可能的闪存-繁重的网页-受I / O限制,而不受CPU限制;换句话说,大多数程序都在等待网络传输,闪存读取,DMA读取,触摸事件处理等完成,而不是等待某些计算。在受CPU限制的应用程序中,提高CPU速度可以减少触摸屏幕与更新屏幕以反映触摸事件之间的延迟。但是,在一定程度上,添加更多的CPU将不再有任何明显的好处。超过某个点,输入周转时间将比我们大脑的周转时间(大约100-200ms)快得多,并且我们将无法感知到增加更快的CPU的好处。另外,请注意,输入到输出的周转时间取决于许多其他因素,例如其次,拥有一些额外的CPU时间用于空闲还意味着Android可以将这些空闲的CPU周期分配给后台进程,以便后台进程可以更好地运行。
摘要
更多RAM:

更好的任务切换
可以运行更复杂的应用程序或打开更大/更复杂的文件

更多的CPU:

在受CPU约束的应用程序上,输入和响应之间的转换速度更快(延迟更少)
更好的后台处理

简而言之,两者同等重要;您自己的个人使用方式将决定哪种对您更有价值。如果您通常停留在单个程序中并且对输入到输出延迟敏感,那么拥有更快的CPU对您来说更有价值。如果您经常在许多不同的应用程序之间切换任务,或者需要运行需要大量内存的复杂应用程序来打开复杂的大文件,那么拥有额外的RAM对您来说将更有价值。

评论


做得好,谎言...到目前为止最好的答案。

–mlevit
2011-2-21在22:37

#2 楼

嗯,这是非常主观的,因为这取决于您在做什么。首先,真正的多任务处理(运行多个应用程序)需要更快的CPU,以便所有进程都可以正常运行速度。没错,要让所有这些应用程序都保留在内存中,就需要更多的RAM。

我有512 MB RAM,并且只有当我运行诸如《愤怒的小鸟》之类的东西时,我的进程才会开始被杀死。另一方面,我有一个1 GHz处理器,无论我在做什么,我都不会注意到速度下降(除了在长时间播放中愤怒的小鸟陷入困境之外)。

如果您正在发送电子邮件, Twitter,Facebook,Web等,那么您可能需要更多RAM。如果您想玩游戏,则需要大量的RAM,但是处理器和图形芯片将变得更加重要。一般来说。

另一个重要的考虑因素是I / O速度。如果您有使用RFS的三星手机,请安装EXT4 lagfix-您会发现一个巨大的改进。如果您正在录制高清视频,则可能需要更快的SD卡(对此我们有疑问),依此类推。

存储大小在很大程度上与性能无关,但是您需要考虑一下也一样许多用户在安装了一些应用程序并发现空间用完后会踢自己。我强烈推荐像我的Vibrant这样的设备,该设备具有过多的2 GB内部(系统+数据)存储(和14 GB内部SD,以及外部SD卡)。

评论


我编辑了我的问题,以减少主观性。

–星期六
2011-02-20 17:13

大多数时候,我们并不是真正的“多任务”。我们可能有几个正在运行的应用程序,但在后台运行的应用程序通常没有积极地执行任何操作,因此主要问题是使它们保持打开状态,这会占用内存。如果他们正在积极运行,例如听流媒体,浏览互联网或玩游戏,那么我会说处理器速度更为重要(在正常的硬件标准内,如果拥有1kb的RAM,那么拥有快速处理器显然是没有意义的)。

–马特
2011-02-20 21:56

马特,我要写些类似的东西。但是,我认为后台任务通常不会占用大量CPU。它们可以使用某些I / O,并且在某些情况下(例如,下载文件,复制文件)它们可能会占用大量I / O,但似乎不太可能会占用大量CPU。因此,如另一篇文章中所述,CPU对于密集单任务(例如游戏)可能更重要,而RAM对于密集任务切换更重要。

– v6ak
2011-3-8在7:17

好吧,音乐播放器是一个例外:它们可能占用大量CPU,并且很可能在后台运行。

– v6ak
2011-3-8在7:57

@ v6ak:I / O密集型后台应用程序可能会干扰前台的I / O以及编写不佳的应用程序(例如,在UI线程中执行I / O的应用程序),这也可能是响应速度较慢或延迟的原因,但我不知道Android是否将前台I / O优先。

– Lie Ryan
2011-3-15在11:04



#3 楼

在电话中,您将使用的大多数程序都是电子邮件,IM,Web浏览器之类的。。。

这类应用不需要强大的CPU,但是考虑到您将使用Android Phone您将同时运行多个应用程序,这需要一些额外的CPU时间,但更重要的是,需要足够的RAM内存来容纳所有应用程序。

,一个或多个,重要的是和Android手机保持平衡。使用2Ghz CPU和512MB RAM,您将浪费CPU能力,因为电话将没有足够的内存来容纳足够的应用程序来消耗该数量的CPU周期。 500Mhz CPU和2Gb或RAM也会发生同样的情况,处理器将没有足够的周期来执行足够的应用程序以消耗该数量的RAM。

因此,必须考虑BALANCE。 1Ghz的CPU和512至1Gb RAM是一个很好的组合。对于具有256Mb至512Mb的600Mhz(对于最新版本的Andorid而言,动力不足),或者具有712Mb或更高RAM的新的两核1Ghz CPU,也是如此。如果要搜索具有1Ghz或更高CPU和1Gb或更高RAM的手机,那么这款手机将足够强大,可以运行未来2年所需的所有应用程序,这是您将使用手机说明了移动技术的发展速度。

评论


...损害了您的长子;至少在世界某些地区。

– Lie Ryan
2011-2-21在11:46

@Lie Ryan,是的,但是很遗憾,这是拥有最后一个小工具的代价。

– Doliveras
2011-2-21在16:39

#4 楼

实际上,最大的限制是内存带宽。其次,要在规格上取得良好的平衡,包括RAM大小,处理器速度和并行性。