我如何以编程方式强调手机的CPU?

问题描述 投票:7回答:3

所以我将手机超频到1.664GHz,我知道有些应用程序可以测试手机的CPU性能和stressers,但我还是想自己做些。真正使CPU工作的最佳方法是什么?我当时只是想做一个for循环做一百万次迭代来做一些耗时的数学运算...但是那没用,因为我的手机在几毫秒内就做到了...我尝试了数万亿次迭代...应用程序冻结,但是我的任务管理器甚至没有显示该应用程序正在使用的cpu。通常压力测试应用程序显示为红色,并说cpu:85%ram:10mb ...所以我如何才能真正使我的处理器认真考虑?

android cpu processor stress-testing root
3个回答
1
投票

要编译正则表达式字符串:

Pattern p1 = Pattern.compile("a*b"); // a simple regex
// slightly more complex regex: an attempt at validating email addresses
Pattern p2 = Pattern.compile("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum)\b");

您需要在后台线程中启动它们:

class RegexThread extends Thread {
   RegexThread() {
      // Create a new, second thread
      super("Regex Thread");
      start(); // Start the thread
   } 

   // This is the entry point for the second thread.
   public void run() {
      while(true) {
        Pattern p = Pattern.compile("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum)\b");
      }
   }
}

class CPUStresser {
   public static void main(String args[]) {
      static int NUM_THREADS = 10, RUNNING_TIME = 120; // run 10 threads for 120s
      for(int i = 0; i < NUM_THREADS; ++i) {
         new RegexThread(); // create a new thread
      }
      Thread.sleep(1000 * RUNNING_TIME);
   }
}

(以上代码来自here

看看情况如何。


1
投票

我建议提出一个稍微不同的测试,这不是简单的数学算法和函数。有很多外观奇特的测试,其结果始终包含所有评论。您启动该应用程序,它会工作一段时间,然后以标准分数给出结果。点越多(或更少),则认为该设备更好。但是,比较结果在现实生活中的含义并不总是很清楚。并非全部。关于数学,首先想到的是大量计算小数位和计算数字“ pi”]的任务

确定。没问题,我们会做的:

这里是测试数字一-“ The Number Pi

”-您的手机需要多长时间才能计算出Pi的一千万位数(3.14)(如果一百年前有人说过这个短语,去了精神病医院)

当您感觉电话速度慢时。您打开/扭曲界面。但是如何衡量-目前尚不清楚。愤怒的小鸟在不同的时间在不同的设备上运行-也许测试“愤怒的小鸟”]

我们进一步考虑-进行更多测试,“重磅读物”和“大页面”。

计算算法:

  1. 测试“ Pi”
  2. 以Speed Pi。使用慢速算法“亚伯拉罕·夏普系列”计算一千万个标记。重复测量几次,取平均值。

  1. 测试“愤怒的小鸟”
  2. [开始使用愤怒的小鸟(不是必需的,但是这些版本不是最优化的)

测量从启动到开始播放音乐的时间。出口。立即一遍又一遍。重复几次并取平均值。

  1. 测试“大页面”
  2. 测量繁重站点页面的加载时间。您可以使用自己喜欢的浏览器来完成:)

您可以使用This link(对西里尔字母表示抱歉)

通过使用“计算机浏览器”和图片来维护此页面。总计6.5 Mb和99个文件(我仍在此页面上以小声音文件的存储版本)

全部99个文件都上传到手机。关闭Wi-Fi和移动互联网(这很重要!)

页面随浏览器一起打开。点击“返回”按钮。现在,单击“转发”并测量页面完全加载的时间。如此多次。后退,后退。和往常一样,我们取平均值。

所有结果均以秒为单位。

在测试所有支持microSD卡的设备时,它是同一张卡-创见16 Gb,等级10。并且所有数据都在其中。

嗯,某些设备的实际测试结果TEST RESULT


0
投票

https://play.google.com/store/apps/details?id=xcom.saplin.xOPS-应用程序对多个线程(内核数为2倍)处理数字(整数和浮点数),并建立性能和CPU温度曲线图。

© www.soinside.com 2019 - 2024. All rights reserved.