ãã¡ãããç§ã¯çŽæããç±å¿ã«ä»äºã«åãæãããŸããããé¢çœãçµæããåŸãŸãã...ããããååãªç±æããªããéå±ã§ãã©ããã§ããã ãã®çµæãç§ã®å®ç§äž»çŸ©è ã¯ç§ã®åœè£ ãããŠããªãå 延ã°ãè ãšååããäºäººãšãç§ãæã¡è² ããããã©ããèæ¡ã§é·ãéæé£ããç§ã®è¯å¿ã§ããå¿ããããèŠåºããèŠãŠéããŸããã§ããã
ãããããã¹ãŠãå€åããæ°ãããã¯ãããžãŒãçŸããå€ããã¯ãããžãŒãã¢ãŒã«ã€ãããæ¶ããç§ã¯çªç¶åéãè¿æžããŠçŽæãå®ãæã ãšæ±ºããŸããã 眰ãšããŠãç§ã¯ãã¹ãŠããŒãããæžãçŽããªããã°ãªããŸããã§ããããã貪欲ãªäººãäºåºŠæ¯æããªããæ ãè ã¯äºåºŠãªã¡ã€ã¯ããã®ã§ãããããå¿ èŠããããŸãã
ã¯ããKDPVã«ã€ããŠãaã³ç³ãäžããŸã-ãã¡ãããããã¯å®å šã«ç°ãªãäž»é¡åéããã®ãã®ã§ãããããã«ããããããããããŒéã®çžäºäœçšã瀺ãã®ã«å®å šã«é©åããŸãã
ããã§ãã«ãã§ã³ã¯äœãç®èŠããããã®ã§ãããã
è¡åã®ç¥äººã玹ä»ããŸã
èšèªD
-C ++ã€ãã£ãªã ãç¶æ¿ãã匷åã«åé²ãããåæã«ããã€ã³ã¿ãŒãå«ãæå¹ãªäœã¬ãã«ããŒã«ãä¿æãããéåžžã«æŠå¿µçã«çŸããèšèªã ãããããã®ãããç§ã®æèŠã§ã¯ãæšæºã©ã€ãã©ãªDã«ã¯ããã€ãã®äºåæ³ããããŸã-ã»ãšãã©ã®æ©èœã¯ãããã¯ã¹ãããã·ã³ãã«ã§ç°¡åãªæ¹æ³ã§ããŸãã¯ãã€ãã£ãã€ã³ã¿ãŒãã§ã€ã¹ã«è¿ãã€ã³ã¿ãŒãã§ã€ã¹ãä»ããŠãã·ã¹ãã ã®ãªãœãŒã¹ãšæ©èœãå®å
šã«äœ¿çšããŠåŒã³åºãããšãã§ããŸãã C ++ãé£ç¶ã¹ãã¯ãã«ã§ç¯å²å
šäœãã«ããŒããŠããå ŽåãDã§ã¯ãã®åºåãéåžžã¯ã£ãããšèŠããŸãã æéééã枬å®ããå¿
èŠããããŸããçŽ æŽãããã¢ãžã¥ãŒã«std.datetimeããããŸããã枬å®éã¯100 nsã§ããããã¯çµ¶å¯Ÿã«ååã§ã¯ãããŸãããçŽ æŽãããã¢ãžã¥ãŒã«core.timeããããŸãã å¶éãŸã§è»œé㪠javascriptã®ãã㪠std.concurrency.spawnã¯ã ããªãã«ã¯åããŠããŸãã -è±æå
šäœãcore.threadãã䜿çšã§ããŸãã ãã®ãããã»ãŒãã¹ãŠã®å Žæã§ã1ã€ãé€ããéåžžã«éèŠãªå Žæ-ã¹ããªãŒã éã®ããŒã¿ã®åé¢ã ã¯ããã¯ããç¹å®ã®ã¹ã¬ããã®ãã¹ãŠã®ããŒã«ã«å€æ°ã¯ã¹ã¬ããããŒã«ã«ã¹ãã¬ãŒãžã«é
眮ãããä»ã®ã¹ã¬ããã«ã¢ãã¬ã¹ã匷å¶çã«è¡šç€ºãããããšã¯ã§ããŸããã ãããŠãããŒã¿äº€æã®ããã«ãçµã¿èŸŒã¿ã®ãã¥ãŒãæäŸãããŸããããã¯éåžžã«äŸ¿å©ã§ãããšèªèãããå¿
èŠããããŸã-å€åœ¢æ§ãéèŠãªã¡ãã»ãŒãžã®äžŠå€ããéä¿¡ãšéåžžã«çŽ æŽãããã€ã³ã¿ãŒãã§ãŒã¹ã®å¯èœæ§ã å€ãŸãã¯äžå€ãªã³ã¯ã®ããããã䜿çšããŠãããŒã¿ãèªç¶ã«éä¿¡ã§ããŸãã åããŠããã«ã€ããŠèªãã ãšããç§ã¯åã«digãããé£ã³åºããŸãã-ãããªãã®äžæœãªæã¯ã©ã®ããã«äžãã£ãã®ã§ãã...ã ãããããåæ Œããªãã®ã¯æ確ãªèšèšãšã©ãŒã§ãã
é¡æšãç¶ããå¿
èŠã¯ãªããç§ã¯åœŒã人ã
ããã²ã©ãé¢ããŠãããšèšãã€ããã¯ãªãã£ã
ããã§ããåé¡ã¯å®ã«æµ®ããŠããŸã-Dã®ã©ã€ã³ã¯ã©ãã»ã©å¹æçã§ããïŒ ããã§ãªãå Žåãèšèªã®ä»ã®ãã¹ãŠã®æå¹æ§ãã€ãŸãçµã¿èŸŒã¿ã®ããã«ããã¯ãç¡å¹ã«ãªããŸãã ããã§ç®ãèŠãŸããåã³æž¬å®ãå§ããŸããã
äœãæ£ç¢ºã«æž¬å®ããŸããïŒ
質åã¯å®éã«ã¯åçŽã§ã¯ãªããååæžããã®ã§ãããããç¹°ãè¿ããŸãã Nã¡ãã»ãŒãžãéä¿¡ãããšãã®éåžžã®ãåçŽãªãã¢ãããŒãã§ã¯ãåèšæéã枬å®ããNã§é€ç®ããããšã¯ã§ããŸãã ã èŠãŠã¿ãŸãããã ãã¥ãŒã®ããã©ãŒãã³ã¹ã枬å®ããŸãããïŒ ãããã£ãŠã枬å®ããã»ã¹äžã«ã¡ãã»ãŒãžãžã§ãã¬ãŒã¿ãŒãšã¡ãã»ãŒãžã¬ã·ãŒããŒã®é床ãç¡éã«ãªããããŒã¿ããã¥ãŒå ã«ã³ããŒãããªããšããåççãªä»®å®ã§ã å¯èœãªéãå€ãã®ããŒã¿ããã¥ãŒã«é 眮ããå éšãã€ã³ã¿ãŒã1åéä¿¡ããã ãã§ããŒã¿ãæ¢ã«ååšããããšãæçã§ããããšãããããŸãã ãã®å Žåã ã¡ãã»ãŒãžãããã®å¹³åæéã¯1 / NïŒå®éã«ã¯æ°ããç§ã®æ¿å ¥/åé€æéã«ãã£ãŠäžããå¶éãããŸãïŒã«ãªããŸãããçè«çã«ã¯åã¡ãã»ãŒãžã®é ä¿¡æéã¯äžå®ã§ãããå®éã«ã¯OïŒNïŒã«ãªããŸãã
代ããã«ãç§ã¯å察ã®ã¢ãããŒãã䜿çšããŸã-åã¡ãã»ãŒãžãéä¿¡ãããæéã枬å®ãããŠããã次ã®ã¡ãã»ãŒãžïŒ ã¬ã€ãã³ã· ïŒãéä¿¡ãããŸãã ãã®çµæãçµæã¯ãX軞-æéãY軞-ãã®æéäžã«é ä¿¡ããããã±ããã®æ°ã«æ²¿ã£ãŠããã¹ãã°ã©ã ã®åœ¢åŒã§è¡šç€ºãããŸãã æ°å€çã«æãèå³æ·±ãã®ã¯ãå¹³åé ä¿¡æéã®äžå€®å€ãšãäœããã®ïŒä»»æã®ïŒäžéã«é©åããªãã£ãã¡ãã»ãŒãžã®å²åã®2ã€ã®ãã©ã¡ãŒã¿ãŒã§ãã
å³å¯ã«èšãã°ããã®ã¢ãããŒããé©åã§ã¯ãããŸããããããã©ãŒãã³ã¹èŠä»¶ãã¯ããã«æ£ç¢ºã«èšè¿°ããŠããŸãã çµè«ãšããŠå°ãèªå·±æ¹å€ãè¡ããŸããå®å šãªèª¬æã«ã¯ããã¹ãŠã®å¯èœãªã¿ã€ãã®ãã©ãã£ãã¯ã®çæãšçµ±èšçææ³ã«ããåæãå«ãŸãããšèšããŸã§ãQAçè«ã®åéããæ¬æ Œçãªç§åŠçä»äºãåŸãããããã«å 延ã°ãã®æ»æã«è¿œãã€ãã§ãããã
å¥ã®ç¹ãšããŠãæåŸã«é·ãè°è«ããã£ãã®ã§ãã¡ãã»ãŒãžãžã§ãã¬ãŒã¿ãŒã¯ãããããã¥ãŒã«ä»»æã«ãã°ããæ¿å ¥ã§ããŸãããåä¿¡è ãå¹³åããŠããããæœåºããŠåŠçããããšãæ¡ä»¶ã«ãããšãããã«èšåããŸããããã§ãªãå Žåã枬å®å šäœã¯åã«ç¡æå³ã§ãã åä¿¡ã¹ããªãŒã ãããŒã¿ã¹ããªãŒã ãåŠçã§ããªãå Žåãã³ãŒããé«éåããåŠçã䞊ååããã¡ãã»ãŒãžãããã³ã«ãå€æŽããå¿ èŠããããŸããããããã«ããŠãããã¥ãŒèªäœã¯ãããšã¯ç¡é¢ä¿ã§ãã ããã¯åçŽãªã¢ã€ãã¢ã®ããã«æããŸãããæåŸã®ã³ã¡ã³ãã¯ã³ã¡ã³ãã§äœåºŠãç¹°ãè¿ããªããã°ãªããŸããã§ããã çªç¶ãã¥ãŒã«å€§éã®ã¡ãã»ãŒãžãååšããå Žåãé床ã®å€åã¯éåžžã«å¯èœæ§ããããé¿ããããªãããšããããŸãããããã¯é©åã«èšèšãããã¢ã«ãŽãªãºã ãå¹³æ»åããèŠå ã®1ã€ã«ãããŸããããããã¯æ倧åä¿¡é床ãå¹³åéä¿¡é床ããã倧ããå Žåã«ã®ã¿å¯èœã§ãã
ã§å§ãŸã
ããã¯äœïŒ ãããå®éã®çµæã§ãããç§ã®äœåã¯ãã¹ãŠ1ã€ã®åçã«åãŸããŸãããããã§äœãããªãæãããŠããã®ããé·ãé説æããŸãã
ãã³ã¯ æšæºã®ã¢D
5ãã€ã¯ãç§ãããã¯ããããã§ããããããšãå°ãã§ããïŒ ã»ãšãã©ãã¹ãŠã®å Žåãããã¯å°ããã§ãïŒã€ãŸããéåžžã«åªããŠããŸãïŒã å®éã®ãããžã§ã¯ãã®å€§éšåã§ã¯ãããã¯ååãªé床ãäžåã£ãŠããŸããããã«ããã®ãããªäŒéæéã¯ãç¹å¥ãªéããã³/ãŸãã¯éåžžã«ç¹å¥ãªãœãããŠã§ã¢ã®å©ããåããŠã®ã¿åŸãããŸãã ããã«ã¯ãæšæºã©ã€ãã©ãªã®ããŒã«ãšãä»ã®å€ãã®ãããããã³ãããããã¹ãŠã®å®çšçãªããŒãºã«ååãªé床ã§å¯Ÿå¿ããŠããŸãã è©äŸ¡ã¯çŽ æŽãããã§ãã ãããããã®å®è£ ã«ã¯é床ã«é¢é£ããªãããã€ãã®æ¬ ç¹ããããããããã¯çŽ æŽãããããšã§ã¯ãããŸãããèåŸ ã®éšåã§èª¬æããŸãã
ç¹°ãè¿ãã«ãªããŸãããããã°ã©ãã³ã°ã®äž»ãªéæ³ã¯éæ³ããªãããšã§ãã ããªããå éšã«å ¥ããšïŒãã¡ãããç§ã¯èŠããããåŸãŸããã§ããïŒãã³ãŒãã¯å®å šã«æ®éã§ããããšãããããŸã-ãã¥ãŒããã¯ã¹ã«ãã£ãŠä¿è·ãããåçŽã«æ¥ç¶ããããªã¹ãã ã©ã€ã³ãå®è£ ãããšããæå³ã§ã圌ã¯ç§ãã¡ã«æ°ããããšãäœãèšããªãã®ã§ãç§ã¯åœŒãããã«é£ããŠããŸããã ãããããã³ããããã³ã°ã¢ã«ãŽãªãºã ãå«ããããé«éãªã¢ã«ãŽãªãºã ãæ¬åœã«å¿ èŠãšããå°æ°ã®äººã¯ã䟿å©ã ãé床ã®é ããã³ããã¹ãŠåé€ããããšã§ãç¬èªã®ããŒãžã§ã³ãç°¡åã«æžãããšãã§ããŸãã ããããDãã©ãã»ã©ç°¡æœã§è¡šçŸåè±ããªèšèªã§ãããã瀺ãããã ãã«ã³ãŒããæäŸããŸãã
å³ã®ã³ãŒã
import std.stdio, std.concurrency, std.datetime, core.thread; void main() { immutable int N=1000000; auto tid=spawn(&f, N); foreach(i; 0..N) { tid.send(thisTid, MonoTime.currTime.ticks); // wait for receiver to handle message receiveOnly!int(); } } void f(int n) { foreach(i; 0..n) { auto m=receiveOnly!(Tid,long)(); writeln(MonoTime.currTime.ticks-m[1]); // ask for the next message m[0].send(0); } }
é æ¿ãããŠåœè£ ãããŠããªãC ++ã
400ããç§ïŒ ãã³ãŽïŒ 䞊ãã§ããã¹ãŠã®éããããã³ã°ããã³ãã®ä»ã®ããªãããŒãªã¢ã«ãŽãªãºã ïŒ ãããšããŸã ãªãã§ããïŒ
ãã¡ãããããã¯ã²ã©ãæçºã§ããå®éããã®ããŒãžã§ã³ã§ã¯ãèªã¿åãã¹ããªãŒã ãã¹ãªãŒãç¶æ ã«ãªãããšã¯ãªããã«ãŒãå ã§çä¿¡ã¡ãã»ãŒãžã®ãã¥ãŒãç¶ç¶çã«ãã§ãã¯ãç¶ããŸãã ãã®ãªãã·ã§ã³ã¯ã競åããããã»ã¹ã衚瀺ããããšããã«CPUãå®è¡ããå¿ èŠããªãã ãã§æ©èœããŸããç¹ã«ãå ±æãªãœãŒã¹ã«ã€ããŠåæ§ã«äžæ³šæãªå Žåããã¹ãŠãäºæž¬äžèœã«æ»ãå§ããŸãã ã¯ãããã®ã¹ã¬ãããåŠçããã³ã¢ã®1ã€ã匷å¶çã«æå®ãããªãã·ã§ã³ããããŸãããã¢ãŒããã¯ãã£äžãããã¯éåžžã«æªã決å®ã§ããåŸã§ããã«æ»ããŸãã ãããæ£åœåãããããŸãã¯å¿ èŠãªå ŽæãããããŸãããããªãããã®ãããªå Žæã§åããŠãããªããããããããªãã¯ãã§ã«ããªãèªèº«ãã¹ãŠãç¥ã£ãŠããã§ãããããã®æçš¿ã¯ããªãã«ãšã£ãŠå®å šã«äžèŠã§ãã
ããããéèŠãªæ å ±ãåãåããŸãã-çŸä»£ã®ã·ã¹ãã ã§ã¯ããã©ã³ã¶ã¯ã·ã§ã³ã®é床ã¯ãã¥ãŒããã¯ã¹ãŸãã¯ããŒã¿ã®ã³ããŒã®é床ã«ãã£ãŠãŸã£ãã決å®ããããäž»ãªèŠå ã¯åŒ·å¶çãŸãã¯èªçºçãªäžæåæ¢åŸã®ã¹ããªãŒã ã®ãŠã§ã€ã¯ã¢ããæéã§ãã ãããã£ãŠãã¢ã©ã«-ãã¥ãŒããã®ã¡ãã»ãŒãžãåŠçããããã®å°çšã®CPUãå¿ èŠãšããªãããäœè£ããªãå Žåã¯ãé«éã§è€éã ããœãªã¥ãŒã·ã§ã³ã䜿çšããã®ã¯äžäŸ¿ã§ããåã«ããèããŠãã ããããã©ã³ã¶ã¯ã·ã§ã³äžã®ã¢ã«ãŽãªãºã èªäœã ãããŠãã¯ããããã§ç§ã¯æå³ããŸã
ããŒã¹ã::ããã¯ããªãŒ
ããã¯éããããã³ã°ãã¥ãŒã®å®è£
äŸã§ãããã¡ãã»ãŒãžã¿ã€ãã«ã¯ç°¡åãªãã¹ãã©ã¯ã¿ãšä»£å
¥æŒç®åãå¿
èŠã§ãããããC ++ã®æ¡ä»¶ã¯éåžžã«æ®é
·ãªã®ã§ãå®éã«ã³ãŒããæçµè£œåã«æã¡èŸŒãããšã¯ãããŸããã§ããã
ããã§ã¯ãçæ§ã®ç¯å²å ã«çãŸãããšã§äœãã§ããã§ããããïŒ
èµ€ åççã§ãã©ã³ã¹ã®åããC ++ã
usleepïŒïŒãªã©ãä»ã®äººã®é ã«æµ®ããã å Žåãå¿ããªãã§ãã ãããå¿çæéãå°ãªããšã40ãã€ã¯ãç§ã«å¢ããããšãä¿èšŒãããŠããŸããããã¯ãææ°ã®ã«ãŒãã«ãä¿èšŒã§ããæåã®æ¹æ³ã§ãã YieldïŒïŒã¯ãããã«åªããŠããŸãããããããªè² è·ã§ãååã«æ©èœããŸãããCPUæéã誰ãšã§ãå ±æããåŸåããããŸãã
ãã¡ããããã¯ãã¹ãŠç«ã®ããã§ã
å¯äžã®æ¹æ³ããããããã¯æããã§ã-åæçšã®mutexã¯ãã§ã«äœ¿çšãããŠãããã³ãŒãã®å€æŽã¯æå°éã«ãªãããã std :: condition_variableã䜿çšããŸãã ãã®å®æœåœ¢æ
ã§ã¯ãåŸ
ã¡è¡åã空ã§ããå Žåãåä¿¡è
ã¯å€æ°ã§ç ãã«èœã¡ãããŒãããŒãç ã£ãŠããå¯èœæ§ããããšçãå Žåãã¡ãã»ãŒãžçæåšã¯ä¿¡å·ãéä¿¡ããã ãã®å Žåãã«ãŒãã«ã«ã¯æé©åã®ãã¹ãŠã®å¯èœæ§ãããã3ãã€ã¯ãç§ãšããçµæãåŸãããŸãã åºæ¬çãªã³ãŒãã¯éåžžã«ã·ã³ãã«ã§ãããããããå Žé¢ã«é©å¿ãããããšãã§ããŸãããããããç§ãã¡ã¯æåéãããããçš®é¡ã®ããªãããŒãªå®è£
ã®çã£onäžã«ãããšèšãããšãã§ããŸãã ãã¡ãããããã§ã¯Dã®ãããªå€æ
æ§ã¯ãããŸããã§ããããã»ãŒ2åã®éãã§å€æããŸããã åè«ã§ã¯ãããŸãããããã¯ãã³ããããã³ã°ã¢ã«ãŽãªãºã ãšã®éåžžã«æ¬åœã®ç«¶äºçžæã§ãã
çµéšäžãåãµãŒããŒã«ã¯å°ãªããšã1ã€ã®ç«ãæç»ããããã»ã¹ããããã€ã³ã¿ãŒãããäžã®ãã¹ãŠã®ç«ãæ
éã«æç»ããŠã¯ãªãã¯ãããŸã§ãCPUã誰ã«ãäžããŸããã
ç·è² ã¹ã±ãŒã©ããªãã£ãã¹ã±ãŒã©ããªãã£ã
çµæã¯éåžžã«ã·ã³ãã«ã«èŠããŸãããããã¯ç§ãé·ãéæ¢ãæ±ããæã¡æ©ããŠããã¢ãŒããã¯ãã£ãœãªã¥ãŒã·ã§ã³ã§ãã 人ã ã¯ãã°ãã°ããã¥ãŒãªã©ãä»ããŠæ¯ç§ããã€ã®ã¡ãã»ãŒãžãéä¿¡ã§ããããå°ããéã®ç¶æ³ãããã»ã©é »ç¹ã«çºçããªãããšãå¿ããŠ-ç¹å®ã®æ°ã®ã¹ã¬ãããããžãã¹ã«æã¡ãããŸãé »ç¹ã§ã¯ãªããæã ã¡ãã»ãŒãžãéä¿¡ããããã«ããŸããããéèŠã§ãã ãã®ãããªã¹ããªãŒã ããšã«å¥ã ã®ãªã¹ããŒããã³ã°ã¢ãããããããªãã®ã§ãã»ãšãã©ã®å Žåã¯ã¹ãªãŒãç¶æ ã®ãŸãŸã«ãªããŸãããã®ããããã¹ãŠã®ãã¥ãŒãããŒãªã³ã°ããå°çæã«ã¡ãã»ãŒãžãåŠçããå ±éã®åŠçã»ã³ã¿ãŒã1ã€äœæããå¿ èŠããããŸãã ããããä»æ¥ã¯é·ãã³ãŒãã®å€ã¹ã§ã¯ãªããçãæŠå¿µã®æçã®å€ã¹ãªã®ã§ã boost :: asioã倧ããªããŒãã¹ãšããŠäœ¿çšããããšããå§ãããŸãããã®ã¹ããªãŒã ã¯ãœã±ãããšã¿ã€ããŒã«ã察å¿ã§ããŸãã ããã§ããšããã§ã転éãããé¢æ°ã§çŽæ¥ããŒã¿ããã£ããã£ãããã¥ãŒãªãã§ç°¡åã«å®è¡ã§ããŸãããã¥ãŒã¯ãããŒã¿ã®ã¢ã°ãªã²ãŒã¿ãŒããã³ãããã¡ãŒãšããŠããŸãåã®äŸãšã®ã»ãã³ãã£ãã¯ãªã³ã¯ãšããŠãæ©èœããŸãã
ãããŠãç§ãã¡ã¯äœãåŸãŸããïŒ 1ã€ã®ãžã§ãã¬ãŒã¿ãŒããã®ããã»ã¹ã§ã¯4.3ãã€ã¯ãç§ã§ããŸã£ããæªããããŸããã å€ãã®ã¹ã¬ãããåæã«ã¡ãã»ãŒãžãæžã蟌ãã·ã¹ãã ã§ã¯çµæãå¿ ç¶çã«æªåããããšã念é ã«çœ®ãå¿ èŠããããŸãããã¹ã±ãŒã©ããªãã£ã¯äºå®äžç¡å¶éã§ãããã³ã¹ããããããŸãã
ç¹°ãè¿ãã«ãªããŸããããã®ãã©ã°ã¡ã³ãã®å²åŠçãªæå³ã匷調ããããšæããŸããããŒã¿ã ãã§ãªããããŒã¿ã«å ããŠãã¯ãã¹ã¹ã¬ããä»®æ³ã®ãããªããŒã¿ã®æäœæ¹æ³ãç¥ã£ãŠãããã¡ã³ã¯ã¿ãŒãå¥ã®ã¹ããªãŒã ã«éä¿¡ããŠããŸãã ããã¯éåžžã«äžè¬çãªæŠå¿µã§ãããããããããå¥ã®ãã¶ã€ã³ãã¿ãŒã³ã®ã¿ã€ãã«ã䞻匵ã§ããŸãã
ãã¹ãŠã®ãã¹ãã«ã³ãŒããå¿ èŠãªå Žåãããã§å®éšéšåã¯çµäºããŸãã 泚æãããã¯æ¢è£œã®ã©ã€ãã©ãªã§ã¯ãªããããäžæ³šæã«ã³ããŒããããšã¯ãå§ãããŸããããã³ãŒããéçºããããã®éåžžã«æçšãªãã¥ãŒããªã¢ã«ãšããŠåœ¹ç«ã¡ãŸãã è¿œå ãæ¹åãæè¿ããŸãã
ã±ãŒã¹ã§ã¯ãªããéåžžã«ç°ãªãæšè«ã
ã¡ãã»ãŒãžãã¥ãŒãå¿ èŠãªçç± äŸDãæããŠããããã«ãããã¯ãã«ãã¹ã¬ããã·ã¹ãã ãèšèšããããã®æãã³ãŒã·ã£ãã¿ãŒã³ã§ãããæªæ¥ã¯æªæ¥ãšãã¥ãŒãæå³ããŸãã ãããããã¹ãŠã®ãã¥ãŒã¯åãã§ããïŒ ãªãã·ã§ã³ã¯äœã§ããïŒéãã¯äœã§ããïŒ ããã«ã€ããŠã話ããŸãã
ãŸãã ããŒã¿ ã¹ããªãŒã ãšã¡ãã»ãŒãžãããŒãåºå¥ããå¿ èŠããããŸã ã ããŒã¿ã¹ããªãŒã ã§ã¯ããã¹ãŠãæ¯èŒçåçŽã§ãããéä¿¡ãããåãã©ã°ã¡ã³ãã¯ã»ãã³ãã£ãã¯ããŒããæããããã©ã°ã¡ã³ãéã®å¢çã¯éåžžã«arbitraryæçã§ãã ã³ããŒã®ã³ã¹ãã¯ããã¥ãŒèªäœãæ¶è²»ãããªãœãŒã¹ã«å¹æµãããããããäžåããŸãããã®å Žåã®ã¬ã·ãã¯éåžžã«åçŽã§ããå¯èœãªéãå éšãããã¡ãŒãå¢ãããšãä¿¡ããããªãã»ã©ã®é床ãåŸãããŸãã ããšãã°ãããŒã¿ã¯ã©ã³ã¿ã ïŒå€§ããªãã¡ã€ã«ïŒã¯ã1ã€ã®ã¡ãã»ãŒãžãšèŠãªãããšãã§ãããããæè¡çã«ã¯äžåºŠã«éä¿¡ã§ããŸããã ãŸããããã ãã§ãããããããã以äžèšãããšã¯ãããŸããã ããããã¡ãã»ãŒãžãããŒã§ã¯ãåŸç¶ã®åãã©ã°ã¡ã³ããå®å šãªæ å ±ã®å¡ãéã³ãå³æã®åå¿ãåŒãèµ·ããã¯ãã§ããä»æ¥ãããã«ã€ããŠè©±ããŸãã
æ¥ç¶æ§ ãäœãäœã«æ¥ç¶ããããšãã芳ç¹ããã¢ãŒããã¯ãã£ãåæããããšã圹ç«ã¡ãŸãã æãåçŽãªã¿ã€ãã®ããã€ããã¯ãã©ã€ã¿ãŒãšãªãŒããŒã®2ã€ã®ã¹ããªãŒã ãæ¥ç¶ããŸãããã®äž»ãªç®çã¯ãå ¥åã¹ããªãŒã ãšåºåã¹ããªãŒã ã®åé¢ãæäŸããããšã§ããçæ³çã«ã¯ãã©ã¡ããä»ã®åé¡ãç¥ããªãã¯ãã§ãã ãã¥ãŒã®2çªç®ã®ã¢ãããã¯ã¿ã€ãã¯ããã¡ã³ãã«ãã§ãä»»æã®æ°ã®ã¹ã¬ãããæžã蟌ãããšãã§ããŸãããèªã¿åãã¹ã¬ããã¯1ã€ã ãã§ãã ããã¯ããããæãäžè¬çãªã±ãŒã¹ã§ãããæãåçŽãªäŸã¯ãã¬ãŒã§ãã ãããŠå®éã¯ããã ãã§ãã1ã€ã®ã¹ã¬ãããè€æ°ã®ã¹ã¬ãããèªã¿æžãããå Žåã®å察ã®ã±ãŒã¹ã¯ãããã€ããã®æã䜿çšããŠå®è£ ããããããã¢ãããã¯ã§ã¯ãããŸãããäžè¬çãªç掻ãç¹ã«ãã«ãã¹ã¬ããã·ã¹ãã ã®èšèšã«å¯Ÿããæ 床ãåèããããšã匷ããå§ãããŸãã
å ¥åã¹ããªãŒã ãšåºåã¹ããªãŒã ã®åé¢ã«æ»ããšãããã¯å¿ ç¶çã«çæ³çãªãã¥ãŒãç¡æ¬¡å ã§ããå¿ èŠããããšããçµè«ã«ã€ãªãããŸããã€ãŸããå¿ èŠã«å¿ããŠç¡éã«å€ãã®ã¡ãã»ãŒãžãå«ãŸããŸãã ç°¡åãªäŸïŒéåžžã«éèŠã§è²¬ä»»ã®ããã¹ããªãŒã ãçãã¡ãã»ãŒãžããã°ã«æžã蟌ã¿ããã®éåžžã«éèŠãªäºé ã«æ»ããããšããŸãããã ãã ããåºå®ãµã€ãºã®ãããã¡ãåãããã¥ãŒã«åºã¥ããŠäœæãããã°ã¯ã誰ãããæŠäºãšå¹³åããå®å šã«æããã ãã§ãã ã©ããã ãã¬ãŒãªã©ã®åªå 床ã®äœãã¿ã¹ã¯ã§åŒã³åºãã¹ã¬ããããããã¯ãããšã©ãŒãŸãã¯äŸå€ãè¿ãããšã¯ãã¢ãŒããã¯ãã£ã®èŠ³ç¹ããã¯éåžžã«æãŸãããããŸããïŒåŒã³åºãæ©èœã«è²¬ä»»ã移ãããã¹ãŠã®å¯èœãªçµæãââç£èŠããããšã矩åä»ããåŒã³åºãã³ãŒããšãšã©ãŒã®ç¢ºçãéåžžã«è€éã«ããŸããã代ããã«äœãåŸãããªã-äœããã¹ããã¯ãŸã æ確ã§ã¯ãªãïŒã ãããŠãäžè¬ã«ãããã§ç§ãã¡ã®ç®ã®åã«ããã®ã§ããã°ããã³ããããã³ã°ãã¥ãŒã«é¢ãããã®ãã¹ãŠã®è©±ã®ãã€ã³ãã¯äœã§ãããïŒ ãã®ãããæšæºDãã¥ãŒã¯ã¹ã¬ããééä¿¡ã®æ®éçãªãœãªã¥ãŒã·ã§ã³ã§ã¯ãªããããã«ããªãã·ã§ã³ã®1ã€ã«ãããã³ããããã³ã°ããŒã¹ã::ããã¯ããªãŒ::ãã¥ãŒãåºå®ãããã¡ãŒã䜿çšããå®éã«ã¯ãã³ããããã³ã°ã¢ã«ãŽãªãºã ã§ã¯ãããŸããããéããããã³ã°ãã¥ãŒã§ã¯ãªãããšãæ¢ã«è¿°ã¹ãçç±ã§ãã
幞ããªããšã«ãRAMã¯æãå®äŸ¡ãªãªãœãŒã¹ã®1ã€ã§ããããã é©å¿æŠç¥ã¯ããããæ±çšã®ãã®ã®äžã§æãæé©ã§ã-ã¡ã¢ãªã¯å¿ èŠã«å¿ããŠããŒãããå²ãåœãŠããïŒ
æåŸã«ããã©ãã£ãã¯ã®çµ±èšçãªæ§è³ªããããŸãã ããŒã¿è»¢éãšã¡ãã»ãŒãžè»¢éã®éãã«ã€ããŠã¯ãã§ã«èª¬æããŸããããã¡ãã»ãŒãžã«ã¯ç°ãªãæéååžããããŸãã å¥åŠãªããšã«ãæãç°¡åãªã±ãŒã¹ã¯ãããŒã¿ãã§ããã ãæ©ãïŒãã ãããã¥ãŒããåé€ãããããéããªãïŒãåæã«åçã«å°çããå Žåã§ãã åæã«ãã¹ãã³ããã¯ããã·ã¹ãã ã«çµã¿èŸŒãŸããããŒã«ãŸã§ãããŸããŸãªã¢ã¯ã»ã©ã¬ãŒã¿ãå¯èœãªéãå¹ççã«æ©èœããŸãã ããè€éãªã®ã¯ãåŠçé床ãè¶ ããããšãä¿èšŒãããŠããã¡ãã»ãŒãžãããŒã§åŒ·åãªã¹ãã€ã¯ãçºçããå Žåã§ãã ãã®ã¢ãŒãã§ã¯ããã¥ãŒã¯çä¿¡ã¡ãã»ãŒãžãå¹ççã«èç©ããå¿ èŠã«å¿ããŠã¡ã¢ãªãå²ãåœãŠãå€§å¹ ãªã¹ããŒããŠã³ãèš±å¯ããŸããã
ããã¯ç§ãããŸãããå Žæã§ã
ãã ããæãé£ããã¢ãŒãã¯å¯èœã§ã-ã¡ãã»ãŒãžãéåžžã«ãŸãã«å°çããããããã«å¿çããå¿
èŠãããå Žåã ãã®ãããªå Žåãã¹ã¯ããã«é¥ããªã©ãäœã§ãèµ·ããåŸãŸãã ééã®æ£èŠååžã§ãã®ãããªã€ãã³ãããã£ãã«çºçããããã¹ãã§æåŠããå²åã®å²åã«è©²åœããå Žåããã®å Žåãå¹çã¯æ¡éãã«äœäžããå¯èœæ§ããããŸãã
ãã¹ãã§ã¯ãã¡ãã»ãŒãžã¯äžåºŠã«1ã€ãã€å³å¯ã«éä¿¡ãããŸããã¬ã³ãŒããããã¯ãããšãã®Dãã¥ãŒã®åäœããŸãã¯å¿
èŠã«å¿ããŠã¡ã¢ãªãå²ãåœãŠãããã®Cãã¥ãŒã®åäœã¯èª¿æ»ããŸããã§ããã ç¹ã«ç©çCPUãããå€ãã®ã¹ã¬ãããããå Žåãè€æ°ã®ã¹ã¬ããã®ãªãœãŒã¹ã«å¯Ÿããçžäºã®åœ±é¿ãšéäºã«ã€ããŠã¯ãŸã æ€èšããŠããŸããã ããªã¥ãŒã ã®é¢ã§ã¯ãå¥ã®ãã¹ãã«ç°¡åã«æç»ãããŸãã
åšåº«ã®ã¬ãŒãã®äžå®å šãªãªã¹ãã
- æžã蟌ã¿ãšèªã¿åãã®ãã©ã³ã¹ãä¿ã¡ãŸã ïŒèªã¿åãã¹ããªãŒã ã倱æããå Žåãã¢ã«ãŽãªãºã ã¯ããªããæããŸããã ããªãããããã¹ããŒãã¢ããããããã®ã¯äœã§ãããŸãããã©ã€ã³ãéé£ããªãã§ãã ããã
- 环ç©çãªã¹ããŒããŠã³ ïŒå®è£ ã«ãã£ãŠã¯ããã¥ãŒã®é床ããã®äžã®ã¡ãã»ãŒãžã®æ°ã«äŸåããå ŽåããããŸãããã®åŸãã¢ã¯ãã£ããã£ã®ã©ã³ãã ãªããŒã¹ãã«ãããã¥ãŒãéåžžã«é ããªãã次ã®ããŒã¹ããŸã§ãã©ãã£ãã¯ãžã£ã ã®ããã«è§£æŸãããŸããã ãã®ãããªäžå®å®æ§ã¯ããã¹ãäžã«ã¢ãã«åããã®ã¯ããªãå°é£ã§ãã
- å€èŠçå矀 ïŒOSã®èŠ³ç¹ããã¯ãã¡ãã»ãŒãžãéåžžã«ãŸãã«1æéã«1åããŸãã¯1æ¥1åã§ããããšããããŸãããããã¯åžžã«æ°žé ã§ãã ãã¹ãã®ç£èŠå¡ã座ã£ãŠã¢ã©ãŒã ãåŸ æ©ããŠãããã圌ã®ç涯ã«äžåºŠãä¿¡å·ããªãã£ãå Žåã圌ã¯éèŠãªç¬éã«äœãããŸããïŒ ãã®ãããªèªç¶ã«ç ãã«èœã¡ãã®ãšæŠãããšã¯å°é£ã§ãã
- ãã£ã¹ããªãã¥ãŒã·ã§ã³ã®ããŒã«ã«ã€ããŠèããŠã¿ãŸããããäžèšã®ãã¹ãã§ã¯ã1000ããšã«2ã3åã®ã¡ãã»ãŒãžãé·æéç°åžžã«åŠçãããŸãããããã¯ããã¹ãŠã®æ±çšãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã«å ±éã®æ©èœã§ãã çªç¶ãã®æ°ãæžããå¿ èŠãããå Žåã¯ãäžçæžåœåãå¿ èŠããããŸãã
- å°çšCPUã«é Œããªãã§ãã ãã ãããã¯åŒ·åãªå éèŠå ã§ãããã¹ã±ãŒã©ãã«ã§ã¯ãããŸããã ã¡ã¢ãªãšã¯ç°ãªããCPUã¯é«äŸ¡ãªãªãœãŒã¹ã§ãã ã·ã¹ãã ã«100500ã®ã³ã¢ãããå Žåã§ãã100500 + 1人ã®éçºè
ã1ã€ã®ããšãæãã§ããŸã å人çãªäœ¿çšã®ããã1幎åã«ãã¥ãŒãé«éåããããã«ã³ã¢ãäºçŽããããšãææ¡ããåãPMã¯ãæ£çŽãªéãç®ã§éã調ã¹ããããã³ããšã³ãã®äººãç§ã«æ¥ããäŒç€Ÿã®ããŽã¯ã¡ã€ã³ããŒãžã®ã¡ã€ã³ããŒãžã«åæç»ãããŸãããšèšããŸãã 圌ãã¯ããªãã«ã³ã¢ã®1ã€ãå²ãåœãŠãããã«é Œã¿ãŸããããªãã¯ç解ããŠããŸã-ããã¯æ·±å»ã§ããã顧客ãæè¿æ³šæãæã£ããšããŠã誰ã§ãèŠãããšãã§ããŸã ãããŠãããªãã®ãµãŒããŒã¯ãã§ã«åäœããŠããããã§ããšã«ãã誰ããããèŠãŸãããã ãããçºçããå Žåãæ·±åŒåžãããŠãã£ãã10ãŸã§æ°ããããšããå§ãããŸããããããªããšãç Žå£ãšç ç²ãé¿ããããŸããã
- ãã£ãšãããããããŸã ïŒããããç§ã¯æ£ç¢ºã«äœãå¿ããŸãã
楜芳çãªã¡ã¢ã§çµããã®ãæ £ç¿ã§ãïŒãã«ãã¹ã¬ããã®å Žåãããã¯æªæ¥ã§ã¯ãªããçŸåšã§ãã ãããŠã匷åã§ãæè»ã§ãæ®éçãªã¡ãã»ãŒãžã³ã°ã¡ã«ããºã ã®ããã«-æªæ¥ã§ããããŸã æ確ã«æžãããŠããããæããã«ç§ãã¡ãåŸ ã£ãŠããŸãã
ãã¹ãŠæåã