Navigator: hardwareConcurrency ããããã£
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2022å¹´3æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
navigator.hardwareConcurrency ã¯èªã¿åãå°ç¨ã®ããããã£ã§ãã¦ã¼ã¶ã¼ã®ã³ã³ãã¥ã¼ã¿ã¼ä¸ã§ã¹ã¬ãããå®è¡ããããã«ä½¿ç¨å¯è½ãªè«çããã»ããµã¼æ°ãè¿ãã¾ãã
å¤
è«çããã»ããµã¼ã®ã³ã¢æ°ãç¤ºãæ°å¤ã§ãã
ç¾ä»£ã®ã³ã³ãã¥ã¼ã¿ã¼ã¯ CPU ã«è¤æ°ã®ç©çããã»ããµã¼ã®ã³ã¢ãããã¾ã (é常㯠2 ã³ã¢ã 4 ã³ã¢)ãããããé常ããããã®ç©çã³ã¢ã¯é«åº¦ãªã¹ã±ã¸ã¥ã¼ãªã³ã°æè¡ãç¨ãã¦ãä¸åº¦ã«è¤æ°ã¹ã¬ãããå®è¡ãããã¨ãã§ãã¾ãã ãããã£ã¦ãä¾ãã° 4 ã³ã¢ã® CPU 㯠8 åã®è«çããã»ããµã¼ã³ã¢ãæä¾ãããã¨ãã§ãã¾ããè«çããã»ããµã¼ã®ã³ã¢æ°ã¯ãã³ã³ããã¹ãåãæ¿ããå¿ è¦ã¨ããã«ä¸åº¦ã«å¹æçã«å®è¡ã§ããã¹ã¬ããã®æ°ã測å®ããããã«å©ç¨ã§ãã¾ãã
ããããªããããã©ã¦ã¶ã¼ã¯ããå°ãªãè«çã³ã¢æ°ãå ±åãããã¨ã鏿ãããã¨ã§ãä¸åº¦ã«å®è¡ã§ãã Worker ã®æ°ãããæ£ç¢ºã«è¡¨ããã¨ãããã¾ãããããã£ã¦ããã®æ°å¤ãã¦ã¼ã¶ã¼ã®ã·ã¹ãã ã®ã³ã¢æ°ã®çµ¶å¯¾çãªæ¸¬å®å¤ã¨ãã¦æ±ããªãããã«ãã¦ãã ããã
ä¾
ãã®ä¾ã§ã¯ããã©ã¦ã¶ã¼ãå ±åããè«çããã»ããµã¼ãã¨ã« Worker ã 1 ã¤ä½ãããæ°ããã¯ã¼ã«ã¼ã¸ã®åç
§ã¨ããã®ã¯ã¼ã«ã¼ãã¾ã 使ç¨ãã¦ãããã©ããã示ãè«çå¤ã®å¤ãå«ãã¬ã³ã¼ããä½ã£ã¦ãã¾ãããããã®ãªãã¸ã§ã¯ãã¯å¾ã§ä½¿ç¨ããããã«é
åã«é ã
ã«æ ¼ç´ããã¦ãã¾ããå¾ã§ãªã¯ã¨ã¹ããå¦çããããã«ä½¿ãã¯ã¼ã«ã¼ã®ãã¼ã«ãä½ã£ã¦ãã¾ãã
let workerList = [];
for (let i = 0; i < window.navigator.hardwareConcurrency; i++) {
let newWorker = {
worker: new Worker("cpuworker.js"),
inUse: false,
};
workerList.push(newWorker);
}
仿§æ¸
| 仿§æ¸ |
|---|
| HTML > # dom-navigator-hardwareconcurrency-dev > |