ããã«ã¡ã¯ ç§ã¯ãä»®æ³ãã·ã³å
ã§ã®ã¹ããŒã«ã®åºçŸã®ã¡ã«ããºã ãšã圌ã®ç 究äžã«çºèŠã§ããããã€ãã®æçœã§ãªãã¢ãŒãã£ãã¡ã¯ãã«ã€ããŠãããããããèšèã§äŒããããšæããŸãã ãã©ãããã©ãŒã ã¯KVMã§å®è¡ãããŸãã
CPUã¹ããŒã«æéã¯ãä»®æ³ãã·ã³ãå®è¡ã®ããã«ããã»ããµãªãœãŒã¹ãåãåããªãæéã§ãã ãã®æéã¯ãä»®æ³åç°å¢ã®ã²ã¹ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§ã®ã¿èæ
®ãããŸãã ãããã®éåžžã«å²ãåœãŠããããªãœãŒã¹ã人çã®ããã«è¡ãçç±ã¯éåžžã«ãããŸãã§ãã ããããç§ãã¡ã¯ãããç解ããäžé£ã®å®éšå
šäœãèšå®ããããšã«ããŸããã çã¿ã«é¢ãããã¹ãŠãç¥ã£ãŠããããã§ã¯ãããŸããããä»ããäœãé¢çœãããšãã話ãããŸãã
1.ã¹ããŒã«ãšã¯
ãããã£ãŠãã¹ããŒã«ã¯ãä»®æ³ãã·ã³å
ã®ããã»ã¹ã®ããã»ããµãŒæéã®äžè¶³ã瀺ãã¡ããªãã¯ã§ãã
KVMã«ãŒãã«ãããã§èª¬æã
ããŠãããã
ã« ãã¹ããŒã«ã¯ããã€ããŒãã€ã¶ãŒããã¹ãOSäžã§ä»ã®ããã»ã¹ãå®è¡ããæéã§ãããå®è¡ã®ããã«ä»®æ³ãã·ã³ããã»ã¹ããã¥ãŒã«å
¥ããŠããŸãã ã€ãŸããã¹ããŒã«ã¯ãããã»ã¹ãå®è¡ããæºåãã§ããæéãšãããã»ããµã«ããã»ã¹æéãå²ãåœãŠãæéãšã®å·®ãšèŠãªãããŸãã
ä»®æ³ãã·ã³ã®ã«ãŒãã«ã¯ããã€ããŒãã€ã¶ãŒããã¹ããŒã«ã¡ããªãã¯ãåãåããŸãã åæã«ããã€ããŒãã€ã¶ãŒã¯ããããå®è¡ããä»ã®ããã»ã¹ãæ£ç¢ºã«æå®ãããåã«ãå¿ããéãæéãäžããããšãã§ããŸããã KVMã§ã¯ã
ãããã«ã¹ããŒã«ã«ãŠã³ãã®ãµããŒããè¿œå ãããŸããã ããã«ã¯2ã€ã®éèŠãªãã€ã³ãããããŸãã
- ä»®æ³ãã·ã³ã¯ããã€ããŒãã€ã¶ãŒããã®ã¹ããŒã«ã«ã€ããŠåŠç¿ããŸãã ã€ãŸããæ倱ã®èŠ³ç¹ãããä»®æ³ãã·ã³èªäœã®ããã»ã¹ã®å Žåãããã¯ããŸããŸãªæªã¿ã®åœ±é¿ãåããå¯èœæ§ãããéæ¥çãªæž¬å®å€ã§ãã
- ãã€ããŒãã€ã¶ãŒã¯ãä»ã®ãŠãŒã¶ãŒãšäœãããŠãããã«ã€ããŠã®æ
å ±ãä»®æ³ãã·ã³ãšå
±æããŸãã-äž»ãªããšã¯ãæéã«å°å¿µããªãããšã§ãã ãã®ãããä»®æ³ãã·ã³èªäœã¯ã¹ããŒã«ã€ã³ããã¯ã¹ã®æªã¿ãæ€åºã§ããŸãããããã¯ã競åããããã»ã¹ã®æ§è³ªã«ãã£ãŠæšå®ãããå¯èœæ§ããããŸãã
2.çã¿ã«åœ±é¿ãããã®
2.1ã èšç®ã¹ããŒã«
å®éãã¹ããŒã«ã¯éåžžã®CPU䜿çšæéãšã»ãŒåããšèŠãªãããŸãã å»æ£ãã©ã®ããã«èæ
®ããããã«ã€ããŠã®æ
å ±ã¯ããŸããããŸããã ãããã倧å€æ°ããã®è³ªåãæçœã ãšèããŠããããã§ãããã ããããããã«ãèœãšãç©ŽããããŸãã ãã®ããã»ã¹ã«æ
£ããããã«
ãBrendann Greggã®
èšäºãèªãããšãã§ããŸãã䜿çšçã®èšç®ã«ããã
å€ãã®ãã¥ã¢ã³ã¹ãšã次ã®çç±ã§ãã®èšç®ã誀ã£ãŠããç¶æ³ã«ã€ããŠåŠã³ãŸãã
- ã¯ããã¯ãµã€ã¯ã«ãã¹ããããããããã»ããµã®éç±ã
- ã¿ãŒãããŒã¹ãã®ãªã³/ãªããåãæ¿ããŸãããã®çµæãããã»ããµã®ã¯ããã¯åšæ³¢æ°ãå€ãããŸãã
- SpeedStepãªã©ã®ããã»ããµã®çãšãæè¡ã䜿çšããå Žåã«çºçããæéã®é·ãã®æéã®å€åã
- å¹³åã®èšç®ã®åé¡ïŒ80ïŒ
ã§1å以å
ã®äœ¿çšçã®èŠç©ããã¯ã100ïŒ
ã®çæããŒã¹ããé ãããšãã§ããŸãã
- 埪ç°ããã¯ïŒã¹ãã³ããã¯ïŒã«ãããããã»ããµã¯ç Žæ£ãããŸããããŠãŒã¶ãŒããã»ã¹ã¯å®è¡ã®é²è¡ç¶æ³ã確èªã§ããŸããã ãã®çµæãããã»ã¹ãããã»ããµæéãç©ççã«æ¶è²»ããããšã¯ãããŸããããããã»ã¹ã«ããæšå®ããã»ããµäœ¿çšçã¯100ïŒ
ã«ãªããŸãã
çã¿ã®åæ§ã®èšç®ã説æããèšäºã¯èŠã€ãããŸããã§ããïŒãåãã®å Žåã¯ãã³ã¡ã³ããå
±æããŠãã ããïŒã ããããçºçæºããå€æãããšãèšç®ã¡ã«ããºã ã¯å»æ£ã®å Žåãšåãã§ãã KVMããã»ã¹ïŒä»®æ³ãã·ã³ããã»ã¹ïŒã®ããã«ãã«ãŒãã«ã«çŽæ¥å¥ã®ã«ãŠã³ã¿ãŒãè¿œå ãããã ãã§ãKVMããã»ã¹ãããã»ããµãŒæéã®ã¹ã¿ã³ãã€ç¶æ
ã«ããæéã®é·ããã«ãŠã³ãããŸãã ã«ãŠã³ã¿ãŒã¯ããã®ä»æ§ããããã»ããµã«é¢ããæ
å ±ãååŸãããã¹ãŠã®ãã£ãã¯ãä»®æ³ããã»ã¹ã«ãã£ãŠäœ¿çšãããŠãããã©ããã確èªããŸãã ããããã¹ãŠã§ããã°ãããã»ããµã¯ä»®æ³ãã·ã³ããã»ã¹ã§ã®ã¿äœ¿çšãããŠãããšèããããŸãã ãã以å€ã®å Žåãããã»ããµãäœãä»ã®ããšãè¡ã£ãŠããããšãéç¥ããã¹ããŒã«ã衚瀺ãããŸãã
ã¹ããŒã«ã«ãŠã³ãããã»ã¹ã«ã¯ãéåžžã®ãªãµã€ã¯ã«ã«ãŠã³ããšåãåé¡ããããŸãã ãã®ãããªåé¡ãé »ç¹ã«çŸãããšèšãããã§ã¯ãããŸãããããããã¯èœèããããã«èŠããŸãã
2.2ã KVMã§ã®ä»®æ³åã®çš®é¡
äžè¬çã«ãä»®æ³åã«ã¯3ã€ã®ã¿ã€ããããããããã¯ãã¹ãŠKVMã§ãµããŒããããŠããŸãã ä»®æ³åã®ã¿ã€ãã«ãã£ãŠãã¹ããŒã«ãçºçããã¡ã«ããºã ã決ãŸãå ŽåããããŸãã
æŸé ãã®å Žåããã€ããŒãã€ã¶ãŒã®ç©çããã€ã¹ã䜿çšããä»®æ³ãã·ã³ã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®æäœã¯ãã»ãŒæ¬¡ã®ããã«è¡ãããŸãã
- ã²ã¹ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã¯ãã²ã¹ãããã€ã¹ã«ã³ãã³ããéä¿¡ããŸãã
- ã²ã¹ãããã€ã¹ãã©ã€ããŒã¯ã³ãã³ããåãå
¥ããããã€ã¹ã®BIOSã«å¯ŸããèŠæ±ãçæããããããã€ããŒãã€ã¶ãŒã«éä¿¡ããŸãã
- ãã€ããŒãã€ã¶ãŒããã»ã¹ã¯ãã³ãã³ããç©çããã€ã¹ã®ã³ãã³ãã«å€æãããšãããå®å
šæ§ãé«ããŸãã
- ç©çããã€ã¹ãã©ã€ããŒã¯ãå€æŽãããã³ãã³ããåãå
¥ããç©çããã€ã¹èªäœã«éä¿¡ããŸãã
- ã³ãã³ãã®å®è¡çµæã¯åããã¹ã«æ²¿ã£ãŠæ»ããŸãã
翻蚳ã®å©ç¹ã¯ãä»»æã®ããã€ã¹ããšãã¥ã¬ãŒãã§ããããšãšããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ã«ãŒãã«ãç¹å¥ã«æºåããå¿
èŠããªãããšã§ãã ãããããŸãã¯ã¹ããŒãã§ãããæããªããã°ãªããŸããã
ããŒããŠã§ã¢ä»®æ³å ã ãã®å ŽåãããŒããŠã§ã¢ã¬ãã«ã®ããã€ã¹ã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ããã®ã³ãã³ããç解ããŸãã ãããæéãã€æè¯ã®æ¹æ³ã§ãã ãã ããæ®å¿µãªããããã¹ãŠã®ç©çããã€ã¹ããã€ããŒãã€ã¶ãŒãã²ã¹ãOSã§ãµããŒããããŠããããã§ã¯ãããŸããã çŸåšãããŒããŠã§ã¢ä»®æ³åããµããŒãããäž»ãªããã€ã¹ã¯ããã»ããµã§ãã
æºä»®æ³åïŒæºä»®æ³åïŒ ã KVMã§ã®ããã€ã¹ä»®æ³åã®æãäžè¬çãªããŒãžã§ã³ã§ãããäžè¬ã«ã²ã¹ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§æãäžè¬çãªä»®æ³åã¢ãŒãã§ãã ãã®ç¹åŸŽã¯ããã€ããŒãã€ã¶ãŒã®äžéšã®ãµãã·ã¹ãã ïŒãããã¯ãŒã¯ãŸãã¯ãã£ã¹ã¯ã¹ã¿ãã¯ãªã©ïŒã§åäœããããšããŸãã¯äœã¬ãã«ã®ã³ãã³ããå€æããã«ãã€ããŒãã€ã¶ãŒAPIã䜿çšããŠã¡ã¢ãªããŒãžã®å²ãåœãŠãçºçããããšã§ãã ãã®ä»®æ³åæ¹æ³ã®æ¬ ç¹ã¯ãã²ã¹ãAPIã䜿çšããŠãã€ããŒãã€ã¶ãŒãšå¯Ÿè©±ã§ããããã«ã²ã¹ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ã«ãŒãã«ãå€æŽããå¿
èŠãããããšã§ãã ããããéåžžãããã¯ã²ã¹ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã«ç¹å¥ãªãã©ã€ããŒãã€ã³ã¹ããŒã«ããããšã§è§£æ±ºãããŸãã KVMã§ã¯ããã®APIã¯
virtio APIãšåŒã°ã
ãŸã ã
æºä»®æ³åã§ã¯ãå€æãšæ¯èŒããŠãä»®æ³ãã·ã³ãããã¹ããã€ããŒãã€ã¶ãŒããã»ã¹ã«ã³ãã³ããçŽæ¥éä¿¡ããããšã«ãããç©çããã€ã¹ãžã®ãã¹ã倧å¹
ã«åæžãããŸãã ããã«ãããä»®æ³ãã·ã³å
ã®ãã¹ãŠã®åœä»€ã®å®è¡ãé«éåã§ããŸãã KVMã§ã¯ãvirtio APIããããæ
åœãããããã¯ãŒã¯ããã£ã¹ã¯ã¢ããã¿ãŒãªã©ã®ç¹å®ã®ããã€ã¹ã§ã®ã¿æ©èœããŸãã ãã®ãããvirtioãã©ã€ããŒã¯ä»®æ³ãã·ã³å
ã«é
眮ãããŸãã
ãã®é«éåã®è£åŽã¯ãä»®æ³ãã·ã³å
ã§å®è¡ããããã¹ãŠã®ããã»ã¹ãä»®æ³ãã·ã³å
ã«æ®ãããã§ã¯ãªããšããããšã§ãã ããã«ãããçã¿åºãããå¯èœæ§ã®ããç¹æ®å¹æãäœæãããŸãã
ä»®æ³I / Oã®APIïŒvirtioã䜿çšããŠããã®åé¡ã®è©³çŽ°ãªèª¿æ»ãéå§ããããšããå§ãã
ãŸã ã
2.3ã å
¬æ£ãªã¹ã±ãžã¥ãŒãªã³ã°
å®éããã€ããŒãã€ã¶ãŒã§ã®ä»®æ³åã¯ãLinuxã«ãŒãã«ã§ã®ã¹ã±ãžã¥ãŒãªã³ã°ïŒããã»ã¹éã®ãªãœãŒã¹ã®å²ãåœãŠïŒã®æ³åã«åŸãéåžžã®ããã»ã¹ã§ããããã詳现ã«æ€èšããŸãã
Linuxã¯ãããããCFSãCompletely Fair Schedulerã䜿çšããŸããããã¯ãã«ãŒãã«2.6.23ããããã©ã«ãã®ãã£ã¹ãããã£ã«ãªããŸããã ãã®ã¢ã«ãŽãªãºã ãç解ããã«ã¯ãLinux Kernel ArchitectureãŸãã¯ãœãŒã¹ãèªãããšãã§ããŸãã CFSã®æ¬è³ªã¯ãããã»ã¹ã®å®è¡æéã«å¿ããŠãããã»ã¹éã®ããã»ããµãŒæéãåæ£ãããããšã§ãã ããã»ã¹ã«å¿
èŠãªããã»ããµæéãé·ãã»ã©ãåä¿¡ããæéãçããªããŸãã ããã«ããããã¹ãŠã®ããã»ã¹ã®ãæ£çŽãªãå®è¡ãä¿èšŒãããŸãããã®ããã1ã€ã®ããã»ã¹ããã¹ãŠã®ããã»ããµãåžžã«å æããããšã¯ãªããä»ã®ããã»ã¹ãå®è¡ã§ããŸãã
æã
ããã®ãã©ãã€ã ã¯èå³æ·±ãã¢ãŒãã£ãã¡ã¯ãã«ã€ãªãããŸãã é·å¹Žã®LinuxãŠãŒã¶ãŒã¯ãããããã³ã³ãã€ã©ãŒã®ãããªèŠæ±ã®å³ããã¢ããªã±ãŒã·ã§ã³ãå®è¡ããªããããã¹ã¯ãããäžã®éåžžã®ããã¹ããšãã£ã¿ãŒã®ãã§ãŒããèŠããŠããã§ãããã ããã¯ããã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ã®ãªãœãŒã¹ãæ¶è²»ããªãã¿ã¹ã¯ããã³ã³ãã€ã©ãªã©ã®ãªãœãŒã¹ãç©æ¥µçã«æ¶è²»ããã¿ã¹ã¯ãšç«¶åããããã«çºçããŸããã CFSã¯ãããäžæ£ãšã¿ãªããŸãããããã£ãŠãå®æçã«ããã¹ããšãã£ã¿ãŒãåæ¢ããããã»ããµãŒãã³ã³ãã€ã©ãŒã¿ã¹ã¯ãåŠçã§ããããã«ããŸãã ããã¯
sched_autogroupã¡ã«ããºã ã䜿çšããŠä¿®æ£ãããŸããããã¿ã¹ã¯éã®CPUæéã®åæ£ã«é¢ããä»ã®å€ãã®æ©èœãæ®ã£ãŠããŸããã å®éããã®è©±ã¯CFSã®æªãã«é¢ãããã®ã§ã¯ãªããããã»ããµãŒæéã®ãæ£çŽãªãååžãæãäºçŽ°ãªäœæ¥ã§ã¯ãªããšããäºå®ã«æ³šæãåããããšããè©Šã¿ã§ãã
ã·ã§ããŒã®ãã1ã€ã®éèŠãªãã€ã³ãã¯ããªãšã³ãã·ã§ã³ã§ãã ããã¯ãããã»ããµããã¹ããã«ãŒããã»ã¹ãé§åããä»ã®ãŠãŒã¶ãŒãåäœã§ããããã«ããããã«å¿
èŠã§ãã è¿œæŸããã»ã¹ã¯ãã³ã³ããã¹ãã¹ã€ããã³ã°ãããã»ããµã³ã³ããã¹ãã¹ã€ããã³ã°ãšåŒã°ããŸãã åæã«ãã¿ã¹ã¯ã®ã³ã³ããã¹ãå
šäœïŒã¹ã¿ãã¯ã®ç¶æ
ãã¬ãžã¹ã¿ãªã©ïŒãä¿åãããŸãããã®åŸãããã»ã¹ã¯åŸ
æ©ããå¥ã®ããã»ã¹ãå®è¡ãããŸãã ããã¯OSã«ãšã£ãŠé«äŸ¡ãªæäœã§ããããã£ãã«äœ¿çšãããŸããããå®éã«ã¯äœãåé¡ã¯ãããŸããã ã³ã³ããã¹ãã®é »ç¹ãªåãæ¿ãã¯ãOSã®åé¡ã瀺ããŠããå ŽåããããŸãããéåžžã¯ç¶ç¶çã«çºçããç¹ã«äœã瀺ããŠããŸããã
1ã€ã®äºå®ã説æããã«ã¯ããã®ãããªé·ãã¹ããŒãªãŒãå¿
èŠã§ããæ£çŽãªLinuxã·ã§ãã©ãŒãæ¶è²»ããããšããããã»ããµãŒãªãœãŒã¹ãå€ããªãã°ãªãã»ã©ãä»ã®ããã»ã¹ãåäœã§ããããã«éãåæ¢ããŸãã ãããæ£ãããã©ããã¯è€éãªåé¡ã§ãããè² è·ãç°ãªããšç°ãªãæ¹æ³ã§è§£æ±ºãããŸãã Windowsã§ã¯ãæè¿ãŸã§ãã·ã§ãã©ãŒã¯ãã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ã®åªå
åŠçã«éç¹ã眮ããŠããŸãããããã¯ãããã¯ã°ã©ãŠã³ãããã»ã¹ããã³ã°ããå¯èœæ§ãããããã§ãã Sun Solarisã«ã¯5ã€ã®ç°ãªãã¯ã©ã¹ã®ã·ã§ããŒããããŸããã ä»®æ³åãéå§ãããšãã«ãåã®5ã€ã¯Solaris Zoneä»®æ³åãšã®é£æºãäžååã ã£ãããã6çªç®ã®
Fair share schedulerãè¿œå ããŸããã
Solaris InternalsïŒSolaris 10 and OpenSolaris Kernel ArchitectureãŸãã¯
Linux Kernelã®ç解ã®ãããªæ¬ã§ãã®åé¡ã®è©³çŽ°ãªèª¿æ»ãéå§ããããšããå§ãããŸãã
2.4ã çã¿ãç£èŠããæ¹æ³ã¯ïŒ
ä»ã®ããã»ããµã¡ããªãã¯ãšåæ§ã«ãä»®æ³ãã·ã³å
ã®ã¹ããŒã«ãç£èŠããããšã¯ç°¡åã§ããããã»ããµã¡ããªãã¯ãåé€ããæ段ã¯ãã¹ãŠäœ¿çšã§ããŸãã äž»ãªããšã¯ãä»®æ³ãã·ã³ãLinuxäžã«ããããšã§ãã äœããã®çç±ã§ãWindowsã¯ãã®ãããªæ
å ±ããŠãŒã¶ãŒã«æäŸããŸããã :(
äžã®ã³ãã³ãåºåïŒCPUè² è·ã®è©³çŽ°ãå³ç«¯ã®å-ã¹ããŒã«ãã€ããŒãã€ã¶ãŒãããã®æ
å ±ãååŸããããšãããšãè€éããçããŸãã ããšãã°ãè² è·å¹³åïŒLAïŒãã©ã¡ãŒã¿-ãã¥ãŒã§å®è¡ãåŸ
æ©ããŠããããã»ã¹ã®å¹³åå€ã«ãã£ãŠããã¹ããã·ã³ã§ã®ã¹ããŒã«ãäºæž¬ã§ããŸãã ãã®ãã©ã¡ãŒã¿ãŒã®èšç®æ¹æ³ã¯åçŽã§ã¯ãããŸããããäžè¬ã«ãããã»ããµã¹ã¬ããã®æ°ã§æ£èŠåãããLAã1ãã倧ããå ŽåãLinuxãµãŒããŒãå€å°éè² è·ã§ããããšã瀺ããŠããŸãã
ãããã®ããã»ã¹ã¯ãã¹ãŠäœãåŸ
ã£ãŠããŸããïŒ æçœãªçãã¯ããã»ããµãŒã§ãã ããããçãã¯å®å
šã«æ£ããããã§ã¯ãããŸãããããã»ããµãŒãç¡æã§ãLAãããŒã«ãªãŒããŒããããšãããããã§ãã
NFSãã©ã®ããã«èœã¡ãLAãæé·ããããèŠããŠãããŠãã ããã ãã£ã¹ã¯ãããã³ä»ã®å
¥åºåããã€ã¹ãšã»ãŒåãã«ãªãå ŽåããããŸãã ãããå®éã«ã¯ãããã»ã¹ã¯ãI / Oããã€ã¹ã«é¢é£ä»ããããç©ççããã¯ãšãmutexãªã©ã®è«ççããã¯ã®äž¡æ¹ã®çµäºãäºæã§ããŸãã ããã«ã¯ãããŒããŠã§ã¢ã¬ãã«ã§ã®ããã¯ïŒãã£ã¹ã¯ããã®åãåçïŒããŸãã¯ããžãã¯ïŒå€æ°ã®ãšã³ãã£ãã£ããã¥ãŒããã¯ã¹ã¢ãããã£ãããã³ã¹ãã³ãã»ããã©ãæ¡ä»¶å€æ°ãrwããã¯ãipcããã¯ãªã©ãå«ãããããããã¯ããªããã£ãïŒãå«ãŸããŸãã
LAã®ãã1ã€ã®ç¹åŸŽã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®å¹³åå€ãšèŠãªãããããšã§ãã ããšãã°ã1ã€ã®ãã¡ã€ã«ã«ã€ããŠ100åã®ããã»ã¹ã競åããLA = 50ãšãªããŸãã ãã®ãããªå€§ããªäŸ¡å€ã¯ãOSãæªãããšã瀺åããŠããããã«æããŸãã ããããä»ã®äžæ£ã«äœæãããã³ãŒãã®å Žåãããã¯åœŒã«ãšã£ãŠã®ã¿æªããã®ã§ããããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ä»ã®ããã»ã¹ã¯åœ±é¿ãåããªããšããäºå®ã«ãããããããéåžžã®ç¶æ
ã«ãªããŸãã
ãã®å¹³ååã®ããïŒ1å以äžïŒãLAã€ã³ãžã±ãŒã¿ã§äœããå€æããããšã¯æãæè¬ãã¹ãã¿ã¹ã¯ã§ã¯ãªããç¹å®ã®ã±ãŒã¹ã§ã¯çµæãéåžžã«äžç¢ºå®ã§ãã ç解ããããšãããšãæãç°¡åãªã±ãŒã¹ã®ã¿ããŠã£ãããã£ã¢ã®èšäºããã®ä»ã®å©çšå¯èœãªãªãœãŒã¹ã«èšèŒãããŠãããããã»ã¹ã®è©³çŽ°ãªèª¬æã¯ãããŸããã
ããã§ããé¢å¿ã®ãããã¹ãŠã®äºº
ããã¬ã³ãã³ã»ã°ã¬ãã°ã«éããŸã-ãªã³ã¯ã«ã€ããŠã è±èªã§ã®æ lazã¯ã
LAã«ã€ããŠã®åœŒã®äººæ°èšäºã®ç¿»èš³ã§ã ã
3.ç¹æ®å¹æ
ããã§ãééããã¹ããŒã«ã®å€èŠ³ã®äž»ãªã±ãŒã¹ã«ã€ããŠèª¬æããŸãã åè¿°ããã©ã®ããã«é²ã¿ããã€ããŒãã€ã¶ãŒã®ã€ã³ãžã±ãŒã¿ãŒã«ã©ã®ããã«é¢é£ãããã説æããŸãã
ãªãµã€ã¯ã« ã æãåçŽã§é »ç¹ãªãã®ïŒãã€ããŒãã€ã¶ãŒãåå©çšãããŸãã å®éãå®è¡äžã®ä»®æ³ãã·ã³ã¯å€æ°ããããããã®å
éšã§å€§éã®ããã»ããµãæ¶è²»ãããå€ãã®ç«¶åããããLAã®äœ¿çšçã¯1ãè¶
ããŠããŸãïŒããã»ããµã¹ã¬ããã«ãã£ãŠæ£èŠåãããŠããŸãïŒã ãã¹ãŠã®virtualoksã®å
éšã§ã¯ãã¹ãŠãé
ããªããŸãã ãã€ããŒãã€ã¶ãŒããéä¿¡ãããã¹ããŒã«ãå¢å ããŠããŸããè² è·ãååæ£ãããã誰ãããªãã«ããå¿
èŠããããŸãã äžè¬ã«ããã¹ãŠã¯è«ççã§ç解ãããããã®ã§ãã
æºä»®æ³åãšåäžã€ã³ã¹ã¿ã³ã¹ ã ãã€ããŒãã€ã¶ãŒã«ã¯åäžã®ä»®æ³ãã·ã³ãããããã®äžéšãæ¶è²»ããŸããããã£ã¹ã¯ãªã©ã®å
¥å/åºåã«å€§ããªè² è·ãäžããŸãã ãããŠããã®äžã®ã©ãããããæ倧10ïŒ
ã®å°ããªã¹ããŒã«ã衚瀺ãããŸãïŒããã€ãã®å®éšã§ç€ºãããŠããŸãïŒã
ã±ãŒã¹ã¯èå³æ·±ãã§ãã ççšã¯ãæºä»®æ³åãã©ã€ããŒã®ã¬ãã«ã§ã®ããã¯ã®ããã«è¡šç€ºãããŸãã ä»®æ³ãã·ã³å
ã§å²ã蟌ã¿ãäœæããããã©ã€ããŒã«ãã£ãŠåŠçããããã€ããŒãã€ã¶ãŒã«éãããŸãã ä»®æ³ãã·ã³ã®ãã€ããŒãã€ã¶ãŒã§ã®å²ã蟌ã¿åŠçã«ãããéä¿¡ãããèŠæ±ã®ããã«èŠããå®è¡æºåãæŽããããã»ããµãŒãåŸ
æ©ããŠããŸãããããã»ããµãŒæéã¯äžããããŸããã Virtualkaã¯ãä»åãçãŸãããšèããŠããŸãã
ããã¯ããããã¡ãŒãéä¿¡ããããã€ããŒãã€ã¶ãŒã®ã«ãŒãã«ã¹ããŒã¹ã«ç§»åãããšãã«çºçããåŸ
æ©ãéå§ããŸãã ããããvirtualkaã®èŠ³ç¹ããã圌ã¯ããã«æ»ãã¹ãã§ãã ãããã£ãŠãã¹ããŒã«èšç®ã¢ã«ãŽãªãºã ã«ããã°ããã®æéã¯çãŸãããšèŠãªãããŸãã ã»ãšãã©ã®å Žåããã®ãããªç¶æ³ã§ã¯ä»ã®ã¡ã«ããºã ïŒããšãã°ãä»ã®sysåŒã³åºãã®åŠçïŒãååšããå¯èœæ§ããããŸããããããã«å€§ããªéãã¯ãããŸããã
éè² è·ã®virtualoksã«å¯Ÿããã·ã§ã㌠ã ããä»®æ³ãã·ã³ãä»ã®ä»®æ³ãã·ã³ãããçã¿ã«èŠããå Žåãããã¯ã·ã§ãã©ãŒãšæ£ç¢ºã«æ¥ç¶ãããŸãã ããã»ã¹ãããã»ããµã«ããŒãããè² è·ãé«ãã»ã©ãã·ã§ããŒã¯ãããããæ©ãæåºããä»ã®ããã»ããµãåäœã§ããããã«ããŸãã ä»®æ³ãã·ã³ãå°ãæ¶è²»ããå Žåã圌女ã¯ã»ãšãã©çã¿ãããŸããïŒåœŒå¥³ã®ããã»ã¹ã¯æ£çŽã«åº§ã£ãŠåŸ
ã£ãŠããŸããã圌ã«ãã£ãšæéãäžããå¿
èŠããããŸãã ä»®æ³ãã·ã³ããã¹ãŠã®ã³ã¢ã§æå€§è² è·ãçæããå Žåãå€ãã®å Žåãããã»ããµããè¿œæŸãããå€ãã®æéãäžããªãããã«ããŸãã
ããã«æªãããšã«ãä»®æ³ãã·ã³å
ã®ããã»ã¹ã¯ãããŒã¿åŠçã«å¯Ÿå¿ã§ããªããããããå€ãã®ããã»ããµãååŸããããšããŸãã ããããããã€ããŒãã€ã¶ãŒäžã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã¯ãæ£çŽãªæé©åã«ãããããã»ããµãŒæéãççž®ããŸãã ãã®ããã»ã¹ã¯éªåŽ©ã®ããã«èµ·ãããçã¿ã¯ç©ºã«é£ã³ãŸãããä»ã®ããŒãã£ã«ã¯ã»ãšãã©æ°ã¥ããŸããã ãããŠãã³ã¢ãå€ããã°å€ãã»ã©ããã·ã³ã¯ãã£ã¹ããªãã¥ãŒã·ã§ã³ã®å¯Ÿè±¡å€ã«ãªããŸããã èŠããã«ãå€ãã®ã³ã¢ãåããè² è·ã®é«ãä»®æ³ãã·ã³ãæã被害ãåããŸãã
äœLAã§ãããçã¿ããããŸãã LAãçŽ0.7ã®å ŽåïŒã€ãŸãããã€ããŒãã€ã¶ãŒã®è² è·ãäœãããã§ããïŒãåã
ã®ä»®æ³ãã·ã³å
ã§ã¹ããŒã«ã芳å¯ãããå ŽåïŒ
- äžèšã®æºä»®æ³åãªãã·ã§ã³ã ä»®æ³ãã·ã³ã¯ãçãããšãæãã¡ããªãã¯ãåãåãããšãã§ããŸããããã€ããŒãã€ã¶ãŒã¯ãã¹ãŠåé¡ãããŸããã ç§ãã¡ã®å®éšã®çµæã«ãããšããã®ãããªã¹ããŒã«ãªãã·ã§ã³ã¯10ïŒ
ãè¶
ãããä»®æ³ãã·ã³å
ã®ã¢ããªã±ãŒã·ã§ã³ããã©ãŒãã³ã¹ã«å€§ããªåœ±é¿ãäžããããšã¯ãããŸããã
- ãã©ã¡ãŒã¿ãŒLAã¯èª€ã£ãŠèæ
®ãããŸãã ããæ£ç¢ºã«ã¯ãç¹å®ã®ç¬éããšã«çã§ãããšèŠãªãããŸããã1åéå¹³åãããšãéå°è©äŸ¡ãããŸãã ããšãã°ã1ã€ã®ä»®æ³ãã·ã³ããã¹ãŠã®ããã»ããµããã€ããŒãã€ã¶ãŒã®3åã®1ããã30åæ£ç¢ºã«æ¶è²»ããå Žåããã€ããŒãã€ã¶ãŒã®1åãããã®LAã¯0.15ã«ãªããŸãã åæã«åäœãããã®ãããª4ã€ã®ä»®æ³ãã·ã³ã¯0.6ã«ãªããŸãã ãããŠããããã®ããããã§30åéãLAã§25ïŒ
ã®ã¯ã€ã«ãã¹ãã£ãŒã«ããã£ããšããäºå®ã¯ããã¯ãåŒãåºããŸããã
- ç¹°ãè¿ããŸããã誰ããé£ã¹ããã ãšæ±ºããã·ã§ãã©ãŒã®ããã«ããããåŸ
ã£ãŠãã ããã ãã®éãã³ã³ããã¹ããåãæ¿ããå²ã蟌ã¿ãåŠçãããã®ä»ã®éèŠãªã·ã¹ãã åŠçãè¡ããŸãã ãã®çµæãåé¡ãçºçããªãä»®æ³ãã·ã³ãããã°ãããã©ãŒãã³ã¹ã倧å¹
ã«äœäžããä»®æ³ãã·ã³ããããŸãã
4.ãã®ä»ã®æªã¿
ä»®æ³ãã·ã³ã§ã®ããã»ããµæéã®æ£çŽãªè¿éããããããã1ã€ã®çç±ããããŸãã ããšãã°ããã€ããŒãã¬ãããšNUMAã¯èšç®ãè€éã«ããŸãã ã·ã§ãã©ãŒã¯ä¿æ°ã䜿çšãããããããã»ã¹ã®å®è¡ã®ããã«ã«ãŒãã«ã®éžæãå®å
šã«æ··ä¹±ãããŸã-éã¿ã¯ãã³ã³ããã¹ããåãæ¿ãããšãã«èšç®ãããã«å°é£ã«ããŸãã
ã¿ãŒãããŒã¹ããéã«ãçãšãã¢ãŒããªã©ã®æè¡ã«èµ·å ããæªã¿ããããŸãããããã®ã¢ãŒãã¯ã䜿çšçãèšç®ãããšãã«ããµãŒããŒäžã®åšæ³¢æ°ãã¿ã€ã ã¹ã©ã€ã¹ã人工çã«å¢æžãããããšãã§ããŸãã ã¿ãŒãããŒã¹ãããªã³ã«ãããšãå¥ã®ããã»ããµã¹ã¬ããã®ããã©ãŒãã³ã¹ãåäžããããã1ã€ã®ããã»ããµã¹ã¬ããã®ããã©ãŒãã³ã¹ãäœäžããŸãã çŸæç¹ã§ã¯ãçŸåšã®ããã»ããµåšæ³¢æ°ã«é¢ããæ
å ±ã¯ä»®æ³ãã·ã³ã«éä¿¡ãããã誰ããæéãçžã£ãŠãããšèããŠããŸãïŒããšãã°ã2 GHzãèŠæ±ããããååã¯åä¿¡ããïŒã
äžè¬ã«ãæªã¿ã®åå ã¯ããŸããŸã§ãã ç¹å®ã®ã·ã¹ãã ã§ã¯ãä»ã®äœããèŠã€ããããšãã§ããŸãã äžèšãžã®ãªã³ã¯ãæäŸããæ¬ããå§ããŠãperfãsysdigãsystemtapãªã©ã®ãŠãŒãã£ãªãã£ã䜿çšããŠãã€ããŒãã€ã¶ãŒããçµ±èšãååŸãããšããã§ãããã
5.çµè«
- æºä»®æ³åã«ãããäžå®éã®ã¹ããŒã«ãçºçããå¯èœæ§ããããæ£åžžãšèŠãªãããšãã§ããŸãã ã€ã³ã¿ãŒãããã§ã¯ããã®å€ã¯5ã10ïŒ
ã«ãªãå¯èœæ§ããããšæžããŠããŸãã ããã¯ãä»®æ³ãã·ã³å
ã®ã¢ããªã±ãŒã·ã§ã³ãšãç©çãã·ã³ã«ãããè² è·ã®çš®é¡ã«äŸåããŸãã ä»®æ³ãã·ã³å
ã®ã¢ããªã±ãŒã·ã§ã³ãã©ã®ããã«æãããã«æ³šæãæãããšãéèŠã§ãã
- ãã€ããŒãã€ã¶ãŒã®è² è·ãšä»®æ³ãã·ã³å
ã®ã¹ããŒã«ã®æ¯çã¯ãåžžã«äžæã«çžäºæ¥ç¶ãããŠããããã§ã¯ãããŸãã;äž¡æ¹ã®ã¹ããŒã«æšå®ã¯ãç°ãªãè² è·ã®äžã§ç¹å®ã®ç¶æ³ã§èª€ã£ãŠããå¯èœæ§ããããŸãã
- Shedulerã¯ãå€ãã®è³ªåãããããã»ã¹ãæ±ããŸããã 圌ã¯ãããå€ããæ±ããŠãã人ã«ã¯ããŸãäžããªãããã«ããŠããŸãã 倧èŠæš¡ãªä»®æ³ãã·ã³ã¯æªã§ãã
- å°ããªã¹ããŒã«ã¯æºä»®æ³åãªãã®æšæºã«ãªããŸãïŒä»®æ³ãã·ã³å
ã®è² è·ãè¿é£ã®è² è·ã®ç¹æ§ãã¹ã¬ããéã®è² è·åæ£ãããã³ãã®ä»ã®èŠå ãèæ
®ã«å
¥ããŸãïŒã
- ç¹å®ã®ã·ã¹ãã ã§ã¹ããŒã«ãèŠã€ãããå Žåã¯ãããŸããŸãªãªãã·ã§ã³ã調æ»ããã¡ããªãã¯ãåéããæ
éã«åæããŠãè² è·ãåçã«åæ£ããæ¹æ³ãæ€èšããå¿
èŠããããŸãã å®éšãã確èªããããã«ãŒãã«ãããã¬ãŒã§è¡šç€ºããå¿
èŠãããå Žåã¯ãã©ã®ã±ãŒã¹ãããéžè±ããå¯èœæ§ããããŸãã