回答
的CPU密集型任務的幾個簡單的例子:
- 尋找素數(涉及大量的BigInteger師)
- 例如計算階乘大2000! ((涉及大量BigInteger乘法)
- 許多Math.tan()計算(這很有趣,因爲Math.tan是本地的,所以您使用兩個調用堆棧:一個用於Java調用,另一個用於C調用。)
乘以兩個矩陣。矩陣應該很大並且存儲在磁盤上。
字符串搜索。或者,索引一個巨大的文檔(檢測並計算每個單詞或字母串的出現次數)例如,您可以爲大型軟件項目的源代碼中的所有標識符編制索引。
計算pi。
旋轉2D矩陣或圖像。
壓縮一些大文件。
...
或者只是在N秒內追加到StringBuilder的forloop。 – tidwall 2010-09-12 00:13:26
這也會涉及到很多的IO,所以資源消耗會比CPU強烈的IO激烈 – vikkyhacks 2016-04-03 16:22:57
- Official RSA Challenge
- 非官方RSA挑戰。 - 抓住一些密文要在純文本閱讀讓電腦在它如果妳使用隨機算法,有一個小但不爲零的機會,你會成功的
PDP-11的CPU浸泡測試爲tan(atan(tan(atan(...)))
等。對FPU非常困難,並且還有堆棧和寄存器。
計算斐波納契數列,其中n是大於70(耗時)大量
計算階乘的第n項。 (費時)
查找所有可能的 兩個節點之間的路徑,如圖所示。 (內存消耗)
我用Java BigInteger嘗試過,甚至計算斐波那契數列中的第5000個數字的速度非常快。 – 2016-06-15 01:38:01
@iamcreasy你可以發佈一些工作代碼來做到這一點(也許在ideone上)?我很好奇它是如何發生如此之快的。 – Rushil 2016-06-15 12:12:46
當然,[這裏](http://pastebin.com/RaqQ9rwm)。如果我犯了一個錯誤,請告訴我。 – 2016-06-15 18:26:50
我在搞Java中的線程優先級,並使用下面的代碼。它似乎保持CPU足夠忙,線程優先權有所不同。
@Test
public void testCreateMultipleThreadsWithDifferentPriorities() throws Exception {
class MyRunnable implements Runnable {
@Override
public void run() {
for (int i=0; i<1_000_000; i++) {
double d = tan(atan(tan(atan(tan(atan(tan(atan(tan(atan(123456789.123456789))))))))));
cbrt(d);
}
LOGGER.debug("I am {}, and I have finished", Thread.currentThread().getName());
}
}
final int NUMBER_OF_THREADS = 32;
List<Thread> threadList = new ArrayList<Thread>(NUMBER_OF_THREADS);
for (int i=1; i<=NUMBER_OF_THREADS; i++) {
Thread t = new Thread(new MyRunnable());
if (i == NUMBER_OF_THREADS) {
// Last thread gets MAX_PRIORITY
t.setPriority(Thread.MAX_PRIORITY);
t.setName("T-" + i + "-MAX_PRIORITY");
} else {
// All other threads get MIN_PRIORITY
t.setPriority(Thread.MIN_PRIORITY);
t.setName("T-" + i);
}
threadList.add(t);
}
threadList.forEach(t->t.start());
for (Thread t : threadList) {
t.join();
}
}
- 1. CPU密集型XmlTextWriter
- 2. 非CPU密集型任務
- 3. 時間密集型計算和SWT
- 4. 計算總CPU使用率
- 5. 計算CPU執行時間
- 6. Android:PSS(比例集大小)計算
- 7. 計算CPU使用率統計
- 8. 谷歌計算引擎:增加實例的內存/ CPU
- 9. 顯示列表應該是cpu密集型的嗎?
- 10. 計算例子
- 11. 集羣計算
- 12. 集計算機
- 13. 使用Java的WebServices計算器示例
- 14. 用蘋果auriotouch示例計算頻率
- 15. ifclse的SugarCRM字段計算示例
- 16. 計算時間複雜度示例
- 17. 用負值(CLLocation示例)計算'timeIntervalSinceNow'?
- 18. Flink字數計算示例缺少庫
- 19. 通過示例的CRC計算
- 20. GPU上的Tensorflow matmul計算比CPU上的計算速度慢
- 21. Java:不計算CPU玩家價值
- 22. CPU使用情況如何計算?
- 23. 解釋如何計算CPU時間
- 24. top命令的CPU使用率計算
- 25. 爲Java函數計算CPU週期
- 26. 預先計算CPU上的頂點
- 27. 計算總計查詢集
- 28. 計算hash_multimap中的密鑰
- 29. Android屏幕密度計算
- 30. 谷歌計算引擎虛擬機實例:我的root密碼?
@Martin:大家都知道那就是42. – 2010-09-12 01:13:23
@Martin:「42 + 0 =?」聽起來像是一個很好的選擇:)對不起,發送meursault的問題,我發現它太有趣,不能抵擋。我現在就停下來去檢查我的百萬只猴子和打字機在地下室裏的項目。 – 2010-09-12 01:27:13