Unix/Solaris °ü·Ã°Ô½ÃÆÇ

2000/09/23(20:54) from 203.254.154.69
ÀÛ¼ºÀÚ : °­ÁÙ±â (jkkang65@hanmail.net) Á¶È¸¼ö : 3056 , ÁÙ¼ö : 990
Beowulf HOWTO
 

 Jacek Radajewski ¿Í Douglas Eadline
 v1.1.1, 22 November 1998
 ¿ªÀÚ : ¹ÚÀ缺, ospace@chollian.net ,
 kida@inet.cheju.ac.kr
 ÀϽà : 1999³â 5¿ù ??ÀÏ

 ÀÌ ¹®¼­´Â º£¿À¿ïÇÁ ½´ÆÛÄÄÇ»ÅÍ ±¸Á¶¸¦ ¼Ò°³ÇÏ°í º´·Ä ÇÁ·Î±×·¥¹Ö¿¡¼­ÀÇ
 ±âº»ÀûÀÎ Áö½ÄÀ» Á¦°øÇÏ´Â °Í ¿Ü¿¡ ´Ù¸¥ ƯÁ¤ ¹®¼­¿Í À¥ÆäÀÌÁö·ÎÀÇ ¸µÅ©µµ
 Æ÷ÇÔÇÏ°í ÀÖ´Ù.
 ______________________________________________________________________

 ¸ñÂ÷

 1. ¸Ó¸®¸»
    1.1 Disclaimer
    1.2 ÆDZÇ
    1.3 ÀÌ ¹®¼­¿¡ ´ëÇØ
    1.4 ÀúÀڵ鿡 °üÇØ
    1.5 °¨»çÀÇ ¸»

 2. °³¿ä
    2.1 ´©°¡ ÀÌ HOWTO ¹®¼­¸¦ Àоî¾ß Çϴ°¡?
    2.2 º£¿À¿ïÇÁ¶õ?
    2.3 ºÐ·ù

 3. ±¸Á¶ °³¿ä
    3.1 ¹«¾ù ó·³ º¸À̴°¡?
    3.2 ´Ù¸¥ ³ëµå¸¦ ¾î¶»°Ô ÀÌ¿ëÇÒ °ÍÀΰ¡?
    3.3 º£¿À¿ïÇÁ°¡ COW¿Í ¾î¶»°Ô ´Ù¸¥°¡?

 4. ½Ã½ºÅÛ µðÀÚÀÎ
    4.1 º´·Ä °è»ê¿¡À־ ¹è°æ ¿ä¾à.
    4.2 º´·Ä °è»ê ¹æ¹ý
       4.2.1 ¿Ö ÇÑ °³ ÀÌ»óÀÇ CPU°¡ ÇÊ¿äÇÑ°¡?
       4.2.2 º´·Ä ó¸® °¡°è
          4.2.2.1 Single-tasking Operating System
          4.2.2.2 Multi-tasking Operating System:
          4.2.2.3 Multitasking Operating Systems with Multiple CPUs:
          4.2.2.4 Threads on a Multitasking Operating Systems extra CPUs
          4.2.2.5 Sending Messages on Multitasking Operating Systems with extra CPUs:
    4.3 º´·Ä °è»êÀ» À§ÇÑ ±¸Á¶
       4.3.1 Çϵå¿þ¾î ±¸Á¶
       4.3.2 ¼ÒÇÁÆ®¿þ¾î API ±¸Á¶
          4.3.2.1 ¸Þ½ÃÁö
          4.3.2.2 ¾²·¹µå
       4.3.3 Ç®±×¸² ±¸Á¶
    4.4 ÀûÇÕ¼º
    4.5 º´·Ä ¼ÒÇÁÆ®¿þ¾î ÀÛ¼º°ú Æ÷ÆÃ
       4.5.1 ÇÁ·Î±×·¥ÀÇ º´Çà ºÎºÐ °áÁ¤
       4.5.2 º´·Ä È¿À² °è»ê
       4.5.3 ÇÁ·Î±×·¥¿¡¼­ º´Çà ºÎºÐÀ» ±â¼ú
          4.5.3.1 ¸í½ÃÀû ¹æ¹ý
          4.5.3.2 ¾Ï½ÃÀû ¹æ¹ý

 5. º£¿À¿ïÇÁ ÀÚ¿øµé
    5.1 ½ÃÀÛÁ¡
    5.2 ¹®¼­
    5.3 ³í¹®
    5.4 ¼ÒÇÁÆ®¿þ¾î
    5.5 º£¿À¿ïÇÁ ¸Ó½Åµé
    5.6 ´Ù¸¥ Àç¹ÌÀÖ´Â »çÀÌÆ®
    5.7 ¿ª»ç

 6. ¹Ø±×¸²
    6.1 sum.c
    6.2 sigmasqrt.c
    6.3 prun.sh

 ______________________________________________________________________

 1.  ¸Ó¸®¸»

 1.1.  Disclaimer

 ¿ì¸®´Â ÀÌ ¹®¼­¿¡¼­ ¾î¶² ºÎÁ¤È®ÇÑ Á¤º¸¿¡ ´ëÇÑ, ȤÀº À̸¦ Àû¿ëÇÕÀ¸·Î¼­
 ÀϾ¼ö ÀÖ´Â ¾î¶°ÇÑ ÇÇÇØ¿¡ ´ëÇÑ Ã¥ÀÓÀ» ÁöÁö ¾Ê´Â´Ù.  We will not
 accept any responsibility for any incorrect information within this
 document, nor for any damage it might cause when applied.
 1.2.  ÆDZÇ

 Copyright ? 1997 - 1998 Jacek Radajewski and Douglas Eadline.  ÀÌ
 ¹®¼­ÀÇ ¹èÆ÷¿Í ¼öÁ¤ÀÇ ±ÇÇÑÀº GNU General Public Licence¸¦ µû¸¥´Ù.

 1.3.  ÀÌ ¹®¼­¿¡ ´ëÇØ

 Jacek Radajewski´Â 1997³â¿¡ ÀÌ ¹®¼­¿¡ ´ëÇÑ ÀÛ¾÷À» Âø¼öÇÏ¿´°í, °ð
 Douglas Eadline¿Í °°ÀÌ µ¿ÂüÇÏ¿´´Ù. ¸î ´ÞÀÌ Áö³­ÈÄ º£¿À¿ïÇÁ HOWTO´Â
 ¸¹Àº ¾çÀÇ ¹®¼­·Î ´Ã¾î ³µ°í, 1998³â 8¿ù¿¡ ¸Þ¾î¿ïÇÁ HOWTO, º£¿À¿ïÇÁ ±¸Á¶
 µðÀÚÀÎ HOWTO, ±×¸®°í º£¿À¿ïÇÁ ¼³Ä¡¿Í °ü¸® HOWTO·Î ¼¼ Á¾·ùÀÇ ¹®¼­·Î
 ³ª´©¾î Á³´Ù. º£¿À¿ïÇÁ HOWTO ¹öÀü 1.0.0Àº 1998³â 11¿ù¿¡ Linux
 Documentation Project(LDP)·Î ¹ßÇ¥ µÇ¾ú´Ù. ¿ì¸®´Â ÀÌ ÀÛ¾÷ÀÌ ¿Ïº®ÇÑ
 º£¿À¿ïÇÁ ¹®¼­È­ ÇÁ·ÎÁ§Æ®·Î °¡´Â Ãʼ®ÀÌ µÇ±â¸¦ ¹Ù¶ö»ÓÀÌ´Ù.

 1.4.  ÀúÀڵ鿡 °üÇØ

 Jacek Radajewski´Â ³×Æ®¿öÅ© °ü¸®Àڷμ­ ÀÏÇÏ°í ÀÖ°í, ¿À½ºÆ®·¹¸®¾ÆÀÇ
 Southern Queensland ´ëÇп¡¼­ ÄÄÇ»ÅÍ °úÇко߿¡¼­ ¸í¾Ö ÇÐÀ§(?)¸¦ ¹Þ°í
 ÀÖ´Ù. JacekÀÇ ¸®´ª½º¿ÍÀÇ Ã¹ ¸¸³²Àº 1995³âÀÌ°í, ù ´«¿¡ ¹ÝÇß´Ù°í ÇÑ´Ù.
 Jacek´Â ù º£¿À¿ïÇÁ Ŭ·¯½ºÅ͸¦ 1997³â 5¿ù¿¡ ¸¸µé¾ú°í, ±× ÀÌÈÄ·Î °è¼Ó
 ÀÌ ±â¼úÀ» »ç¿ëÇÏ°í ÀÖ´Ù. Ç×»ó, »õ·Ó°í ´õ ÁÁÀº ¼³Ä¡ ¹æ¹ýÀ» ã°í ÀÖ´Ù.
 jacek@usq.edu.au ·Î e-mail¸¦ º¸³»¸é Jacek¿Í
 ¿¬¶ôÀ» ÃëÇÒ ¼ö ÀÖ´Ù.  Douglas Eadline´Â ¹Ì±¹ ÆҽǺ£´Ï¾Æ(PA?)
 º£µå·¹ÇÜÀÇ Paralogic¿¡¼­ Principal ScientistÀÌÀÚ President·Î Ph.DÀÌ´Ù.
 ±×´Â Physical/Analytical Chemist·Î¼­ ÇØ¿Ô¾ú°í, 1978³â¿¡ È­ÇÐ
 ½ÇÇèÀåÄ¡¿Í »ç¿ëÇÒ ½Ì±Û º¸µå ÄÄÇ»Å͸¦ óÀ½ Á¦ÀÛÇϸ鼭 ºÎÅÍ ´É·ÂÀ»
 Çâ»ó½ÃÄÑ ¿Ô´Ù. Eadline ¹Ú»çÀÇ °ü½É ºÐ¾ß´Â ¸®´ª½º, º£¿À¿ïÇÁ Ŭ·¯½ºÅ͵é,
 ±×¸®°í º´·Ä ¾Ë°í¸®ÁòµéÀ» Á¢¸ñ ½ÃÅ°´Â °ÍÀÌ´Ù.  Eadline ¹Ú»ç¿Í ¿¬·ÂÀ»
 ÃëÇÏ°í ½Í´Ù¸é deadline@plogic.com À¸·Î
 emailÀ» º¸³»¸é µÈ´Ù.

 1.5.  °¨»çÀÇ ¸»

 º£¿À¿ïÇÁ HOWTO¸¦ ÀúÀÛ¿¡ À־ ¸¹Àº ½Ã°£ÀÌ °É·È°í, °á±¹ ¿Ï¼ºÀ» Çß´Ù.
 ÀÌ¿¡ µµ¿ÍÁֽŠºÐµé¿¡ °¨»ç¸¦ µå¸°´Ù. ÀÌ HOWTO¿¡ ´ÙÀ½ »ç¶÷µéÀÇ µµ¿ò°ú
 ±â¿©¿¡ °¨»ç µå¸®°í ½Í´Ù.  Becky ±×³àÀÇ »ç¶÷, Áö¿ø°ú ÀÌÇØ.  Tom
 Sterling, Don Becker, ±×¸®°í NASA¿¡ ÀÖ´Â ´Ù¸§ »ç¶÷µé, ÀÌµé ´ö¿¡
 º£¿À¿ïÇÁ ÇÁ·ÎÁ§Æ®°¡ ½ÃÀ۵Ǿú´Ù.  Thanh Tran-Cong°ú Faculty of
 Engineering and Surverying, topcat º£¿À¿ïÇÁ ¸Ó½ÅÀ» ½ÇÇèÇØÁÙ ¼ö ÀÖ°Ô
 ÇØÁÖ¾ú´Ù.  ³ªÀÇ supervisorÀÎ CHristopher Vance, ¸¹Àº ÁÖµÈ »ý°¢À»
 ÁÖ¾ú´Ù.  ³ªÀÇ Ä£±¸ Russell WaldronÀÇ ÈǸ¢ÇÑ ÇÁ·Î±×·¡¹Ö Âø»ó, ÀÌ
 ÇÁ·ÎÁ§Æ®¿¡ ´ëÇÑ Àü¹ÝÀûÀÎ °ü½É°ú Áö¿øÀ» ÇØÁÖ¾ú´Ù.  ?  My friend Russell
 Waldron for great programming ideas, his general interest in the
 project, and support.  ³ªÀÇ Ä£±¸ David Smith, ÀÌ ¹®¼­¸¦ ±³Á¤ ÇØÁÖ¾ú´Ù.
 º£¿À¿ïÇÁ ¸ÞÀϸµ ¸®½ºÆ®¿¡ ¸¹Àº ¿©·¯ »ç¶÷µé, ³ª¿¡°Ô Çǵå¹é°ú »ý°¢À»
 Á¦°øÇØÁÖ¾ú´Ù.  ¸®´ª½º ¿î¿µÃ¼Á¦, ±×¸®°í  topcat°ú ´Ù¸¥ º£¿À¿ïÇÁ
 ¸Ó½ÅµéÀÌ »ç¿ëÇÏ°í ÀÖ´Â °ø°³ ¼ÒÇÁÆ®¿þ¾î ÆÐÅ°Áö¸¦ ´ã´çÇÏ´Â ¸ðµç ºÐµé¿¡°Ô
 °¨»ç¸¦ µå¸°´Ù.

 2.  °³¿ä

 ÄÄÇ»ÅÍ¿Í ³×Æ®¿öÅ© Çϵå¿þ¾îÀÇ ¼º´É Çâ»ó¿¡ µû¶ó¼­ À̵éÀÇ °¡°Ýµµ °¨¼ÒÇÏ°Ô
 µÇ°í, ¸Å¿ì ºñ½Ñ ½´ÆÛÄÄÇ»Å͵éÀÇ CPU ½Ã°£À» »ç´Â °Í º¸´Ù Ưº° ÁÖ¹®ÀÌ
 ¾Æ´Ñ ±¸¼º ¿ä¼Òµé·Î ºÎÅÍ º´·Ä °è»ê¿¡ °üÇÑ ½Ã½ºÅÛµéÀÇ ±¸¼ºÀÌ ´õ¿í´õ
 ½Ç¿ëÀûÀ¸·Î µÇ¾î Á³´Ù. »ç½Ç, º£¿À¿ïÇÁ ÇüÅÂÀÇ ¸Ó½ÅÀÇ ¼º´ÉºñÀ²´ç °¡°ÝÀº
 ÀüÅëÀûÀÎ ½´ÆÛÄÄÇ»ÅÍ º¸´Ù 3-10¹è Á¤µµ ´õ ¿ì¼öÇÏ´Ù. º£¿À¿ïÇÁ ±¸Á¶ ±Ô¸ð´Â
 Àû´çÇÏ´Ù.  ½±°Ô ±¸¼ºÇÒ ¼ö ÀÖÀ¸¸ç, ´ÜÁö Çϵå¿þ¾î ºñ¿ë¸¸ ÁöºÒÇÏ°í
 ´ëºÎºÐÀÇ ¼ÒÇÁÆ®¿þ¾î ºñ¿ëÀº ¹«·áÀÌ´Ù.

 2.1.  ´©°¡ ÀÌ HOWTO ¹®¼­¸¦ Àоî¾ß Çϴ°¡?

 ÀÌ ¹®¼­´Â ÃÖ¼ÒÇÑ ¸®´ª½º ¿î¿µÃ¼Á¦¿¡ Á¢ÇØÀÖ´Â »ç¶÷À» À§ÇØ ¸¸µé¾î Á³´Ù.
 º£ÀÌ¿ïÇÁ ±â¼úÀÇ Áö½ÄÀ̳ª ´õ º¹ÀâÇÑ ¿î¿µÃ¼Á¦ÀÇ ÀÌÇØ¿Í ³×Æ®¿öÅ· °³³äÀº
 ÇʼöÀûÀÎ °ÍÀº ¾Æ´Ï´Ù. ±×·¸Áö¸¸, º´·Ä°è»êÀ» ÇÒ ¼ö ÀÖ´Â ¾î´À Á¤µµÀÇ
 »óȲÀº µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù(°á±¹ ¾î¶² ÀÌÀ¯·Î À̵çÁö ÀÌ ¹®¼­¸¦ ÀÐÀ»
 Å×Áö¸¸).  ÀÌ ¹®¼­´Â º£¿À¿ïÇÁ¿¡ °üÇÑ ¸ðµç °¡´ÉÇÑ Áú¹®¿¡ ´ëÇØ ´ë´äÇØ ÁÙ
 ¼ö´Â ¾øÁö¸¸, À߸¸ µÇ¸é, Âø»óÀ» ÁÖ°í ¿Ã¹Ù¸¥ ¹æÇâÀ¸·Î Á¦½ÃÇØÁÙ °ÍÀÌ´Ù.
 ÀÌ ¹®¼­ÀÇ ¸ñÀûÀº ±âº» Á¤º¸, ¸µÅ©µé°ú Á»´õ ¹ßÀüÀûÀÎ Âü°í ¹®ÇåµéÀ»
 Àü´ÞÇϴµ¥ ÀÖ´Ù.

 2.2.  º£¿À¿ïÇÁ¶õ?

 º£¿À¿ïÇÁ: far flew the boast of him, son of Scyld, in the Scandian
 lands.  So becomes it a youth to quit him well with his father's
 friends, by fee and gift, that to aid him, aged, in after days, come
 warriors willing, should war draw nigh, liegemen loyal: by lauded
 deeds shall an earl have honor in every clan. (¿ªÀÚÁÖ:À̺κÐÀº ¼­»ç½Ã
 ºÎºÐ, ¹ø¿ª¿¡ ÇÑ°è°¡  ^^;) º£¿À¿ïÇÁ´Â ÀÏÂïÀÌ °í´ë ¿µ¾î·Î ¾¯¾îÁø
 ¼­»ç½ÃÀÌ´Ù. GrerdelÀ̶ó´Â ±«¹°À» ¸·¾Æ³½ ¸Å¿ì ÈûÀÌ ½ê°í, ¿ë°¨ÇÑ ¿µ¿õ¿¡
 ´ëÇÑ À̾߱âÀÌ´Ù. º£¿À¿ïÇÁ ¿µ¿õ¿¡ ´ëÇØ ´õ ¾Ë°í ½ÍÀ¸¸é "¿ª»ç"ºÎºÐÀ» ã¾Æ
 º¸¾Æ¶ó.  º£¿À¿ïÇÁ ½´ÆÛÄÄÇ»ÅÍ ½Ã¼³µéÀ» ¸¸µé°Å³ª »ç¿ëÇÏ´Â »ç¶÷µé
 ¸¸Å­À̳ª ¸¹Àº º£¿À¿ïÇÁ Á¤ÀÇ°¡ ÀÖÀ» °ÍÀÌ´Ù. ¸î¸î »ç¶÷µéÀº NASAÀÇ °íÀ¯ÀÇ
 ¸Ó½Å°ú °°Àº ¹æ¹ýÀ¸·Î ¸¸µé¾îÁø ±×µéÀÇ ½Ã½ºÅÛ¸¸À» º£ÀÌ¿ïÇÁ¶ó°í ÁÖÀåÇÑ´Ù.
 ±Ø´ÜÀÇ ´Ù¸¥ »ç¶÷µéÀº º´·Ä ÄÚµåÀ» ¼öÇàÇÏ´Â ¾î¶² ¿öÅ©½ºÅ×À̼ǵµ
 º£ÀÌ¿ïÇÁ¶ó°í Çϱ⵵ ÇÑ´Ù. ³ªÀÇ º£¿À¿ïÇÁÀÇ Á¤ÀÇ´Â À§ÀÇ ±â¼úÇÑ µÎ°¡Áö
 °üÁ¡ÀÇ Ã¶ÃæÀ¸·Î, º£¾î ¿ïÇÁÀÇ ¸ÞÀϸµ ¸®½ºÆ®¿¡ Æ÷½ºÆÃµÈ ±ÛÀ» ¹ÙÅÁÀ¸·Î
 ±â¼úÇϸé:

 º£¿À¿ïÇÁ´Â º´·Ä °è»êÀ» À§ÇØ »ç¿ëµÉ ¼öÀÖ´Â ´ÙÁß ÄÄÇ»ÅÍ ±¸Á¶ÀÌ´Ù. ÀÌ´Â
 ÀÌ´õ³ÝÀ̳ª ´Ù¸¥ ³×Æ®¿öÅ©¸¦ ÅëÇØ ¼­·Î ¿¬°áµÈ ÇϳªÀÇ ¼­¹ö ³ëµå¿Í Çϳª
 ÀÌ»óÀÇ Å¬¶óÀ̾ðÆ® ³ëµå·Î ±¸¼ºµÇ¾îÁø ½Ã½ºÅÛÀÌ´Ù. ÀÌ´Â ¸®´ª½º¸¦ µ¹¸® ¼ö
 ÀÖ´Â PC¿Í °°Àº ÀϹÝÀûÀÎ Çϵå¿þ¾î ±¸¼ºµé, Ç¥ÁØ ÀÌ´õ³Ý ¾îµªÅ͵é, ±×¸®°í
 ½ºÀ§Ä¡µé·Î ÀÌ·ç¾îÁø´Ù. ÀÌ´Â ¾î¶² ÁÖ¹®Çü Çϵå¿þ¾î ±¸¼º¿ä¼Ò¿Í trivially
 reproducible¸¦ Æ÷ÇÔÇÏÁö ¾Ê´Â´Ù. ¶ÇÇÑ, º£¿À¿ïÇÁ´Â ¸®´ª½º ¿î¿µÃ¼Á¦,
 Parallel Virtual Machine (PVM)°ú Message Passing Interface (MPI)¿Í
 °°Àº ÀϹÝÀûÀÎ ¼ÒÇÁÆ®¿þ¾î ¸¦ »ç¿ëÇÑ´Ù. ¼­¹ö ³ëµå´Â ¸ðµç Ŭ·¯½ºÅ͵éÀ»
 Á¶ÀýÇÏ°í Ŭ¶óÀ̾ðÆ® ³ëµå¿¡°Ô ÆÄÀÏÀ» Á¦°øÇÑ´Ù. ´õ¿íÀÌ, Ŭ·¯½ºÅÍÀÇ
 Äְܼú ¿ÜºÎ·Î ÅëÇÏ´Â °ÔÀÌÆ®¿þÀ̵µ Á¦¾î¸¦ ÇÑ´Ù. °Å´ëÇÑ º£¿À¿ïÇÁ ¸Ó½Å
 Çϳª ÀÌ»óÀÇ ¼­¹ö ³ëµå¸¦ °¡Áö°í °¡´ÉÇÏ´Ù¸é ´Ù¸¥ ³ëµåµéÀÌ Äܼ³À̳ª
 ¸ð´ÏÅ͸µ ½ºÅ×À̼ǰú °°Àº ƯÁ¤ ÀÛ¾÷µéÀ» ¸Ã¾Æ¼­ ó¸®ÇÏ°Ô ÇÑ´Ù. ´ëºÎºÐÀÇ
 °æ¿ì º£¿À¿ïÇÁ ½Ã½ºÅÛ¿¡¼­ Ŭ¶óÀ̾ðÆ® ³ëµåµéÀº º¡¾î¸®ÀÌ°í, À̵éÀº ´õ
 º¡¾î¸®Àϼö·Ï ´õ¿í ÁÁ´Ù. ³ëµåµéÀº ¼­¹ö ³ëµå¿¡ ÀÇÇØ Á¶ÀýµÇ°í °ü¸®µÈ´Ù.
 ±×¸®°í, ´ÜÁö ±×µéÀÌ ¹«¾ùÀ» ÇÒ·Á°í ÇÏ´ÂÁö´Â ¸»Çϱ⸸ ÇÏ¸é µÈ´Ù.
 µð½ºÅ©°¡ ¾ø´Â Ŭ¶óÀ̾ðÆ® ¼³Á¤¿¡¼­ Ŭ¶óÀ̾ðÆ® ³ëµåµéÀº À̵éÀÇ IP ÁÖ¼Ò¿Í
 À̸§À» ¼­¹ö°¡ ¾Ë¸®±â Àü±îÁö À̰͵é Á¶Â÷ ¾ËÇÊ¿ä°¡ ¾ø´Ù.  º£¿À¿ïÇÁ¿Í
 Cluster of Workstations (COM)°úÀÇ °¡Àå Å« Â÷ÀÌÁ¡Àº º£¿À¿ïÇÁ´Â ¿©·¯
 °³ÀÇ ¿öÅ©½ºÅ×ÀÌ¼Çµé º¸´Ù ÇϳªÀÇ ¸Ó½Å ÇüÅ·ΠÀÛµ¿ÇÑ´Ù´Â »ç½ÇÀÌ´Ù.  ¸¹Àº
 °æ¿ìÀÇ Å¬¶óÀ̾ðÆ® ³ëµåµéÀº Å°º¸µå³ª ¸ð´ÏÅ͸¦ °¡Áö°í ÀÖÁö ¾Ê°í, ´ÜÁö
 ¿ø°Ý ·Î±×ÀÎÀ̳ª °¡´ÉÇÏ´Ù¸é Á÷·Ä Å͹̳θ¦ ÅëÇؼ­¸¸ ¿¢¼¼½ºÇÒ ¼ö ÀÖ´Ù.
 º£¿À¿ïÇÁ ³ëµåµéÀº ¸¶´õº¸µå¿¡ CPU³ª ¸Þ¸ð¸® ¸ðµâÀ» ²È¾Æ³Ö´Â ÇüÅÂó·³
 Å¬·¯½ºÅÍ¿¡ ²È¾Æ³ÖÀ» ¼ö ÀÖ´Â CPU + ¸Þ¸ð¸® ÆÑÅ°Áö °°Àº °ÍÀ̶ó ÇÒ ¼ö
 ÀÖ´Ù.

 º£¿À¿ïÇÁ´Â ƯÁ¤ÇÑ ½ºÇÁÆ®¿þ¾î ÆÑÅ°Áö, »õ·Î¿î ³×Æ®¿öÅ© À§»óÀ̳ª ÃÖ½Å
 Ä¿³ÎÀ» ÆÄÇØÄ£°Íµµ ¾Æ´Ï´Ù. º£¿À¿ïÇÁ´Â º´·ÄÇüÅÂÀÇ °¡»ó ½´ÆÛÄÄÇ»ÅÍ·Î
 ¸®´ª½º ÄÄÇ»Å͵éÀ» Ŭ·¯½ºÅ͸µÇÑ ±â¼úÀÌ´Ù. ¶ÇÇÑ, º£¿À¿ïÇÁ¸¦ ´õ ºü¸£°í,
 ´õ ½±°Ô ±¸¼ºÇÏ°í, ´õ À¯¿ëÇÏ°Ô ÇÒ Ä¿³Î º¯°æ, PVM°ú MPI ¶óÀ̺귯¸®,
 ±×¸®°í ¼³Á¤ Åøµé°ú °°Àº ¸¹Àº ¼ÒÇÁÆ®¿þ¾î ÆÐÅ°ÁöµéÀÌ ÀÖÀ» »ÓÀÌ´Ù. ¾î¶²
 Ãß°¡ÀûÀÎ ¼ÒÇÁÆ®¿þ¾î ¾øÀÌ À̸¦ ÀÌ¿ëÇؼ­ Ç¥ÁØ ¸®´ª½º ¹èÆ÷À» »ç¿ëÇÏ¿©
 º£¿À¿ïÇÁ Ŭ·¡½º ¸Ó½ÅÀ» ±¸¼ºÇÒ ¼ö ÀÖ´Ù. ´ç½ÅÀÌ ³×Æ®¿öÅ©¿¡ ¿¬°áµÈ µÎ
 ´ëÀÇ ¸®´ª½º Ä¿Ç»Å͵éÀ» °¡Áö°í ÀÖ°í, ÃÖ¼ÒÇÑ /home ÆÄÀÏ ½Ã½ºÅÛÀÌ NFS¸¦
 ÅëÇÏ¿© °øÀ¯ÇÏ°í ÀÖ°í, ¿ø°Ý ½©(rsh)¸¦ ½ÇÇàÇÒ ¼ö ÀÖÀ» ¸¸Å­ ½Å¿ëÇÏ°í ÀÖ°í
 ÀÖ´Ù¸é, ´ç½ÅÀº ÇϳªÀÇ °£´ÜÇÑ 2 ³ëµåÀÇ º£¿À¿ïÇÁ ¸Ó½ÅÀ» °¡Áö°í ÀÖ´Ù°í
 ¸»ÇÒ ¼ö ÀÖ´Ù.

 2.3.  ºÐ·ù

 º£¿À¿ïÇÁ ½Ã½ºÅÛµéÀº ´Ù¾çÇÑ ºÎºÐµé·Î ±¸¼ºµÇ¾îÁ® ¿Ô´Ù. ¼º´É Çâ»óÀÇ ¸ñÀû
 À» °¡Áø ºñ-ÀϹÝÀûÀÎ ±¸¼º¿ä¼Ò ( ÇϳªÀÇ Á¦Á¶¾÷ÀÚ°¡ µ¶´ÜÀûÀ¸·Î »ý»êÇÑ °Í)
 µéµµ ¼ö¿ëÇØ ¿Ô´Ù. ½Ã½ºÅÛµéÀÇ ´Ù¸¥ ŸÀԵ鸦 ¼³¸íÇϰųª Á» ´õ ½±°Ô
 ¸Ó½Å¿¡ ´ëÇØ Åä·ÐÇϱâ À§Çؼ­, ¿ì¸®´Â ´ÙÀ½°ú °°Àº °£´ÜÇÑ ºÐ·ù¾ÈÀ»
 Á¦¾ÈÇÑ´Ù: CLASS I º£¿À¿ïÇÁ: ÀÌ ¸Ó½ÅÀÇ Å¬·¡½º´Â ÀϹÝÀûÀÎ "Ưº° ÁÖ¹®ÀÌ
 ¾Æ´Ñ" ºÎºÐÀ¸·Î ±¸¼ºµÈ´Ù. ÀϹÝÀûÀÎ "Ưº° ÁÖ¹®ÀÌ ¾Æ´Ñ" ºÎºÐµéÀ» Á¤ÀÇÇϱâ
 À§ÇÑ "Computer Shopper" Áõ¸í °Ë»ç¸¦ »ç¿ëÇÒ °ÍÀÌ´Ù. (Computer Shopper´Â
 PC ½Ã½ºÅÛµé°ú ±¸¼º¿ä¼Ò¿¡ ´ëÇÑ 1ÀÎÄ¡ µÎ²²ÀÇ ¿ù°£ ÀâÁö/¸ñ·ÏÀ» ¸»ÇÑ´Ù.)
 ÀÌ ½ÃÇèÀº ´ÙÀ½°ú °°´Ù:

 CLASS I º£¿À¿ïÇÁ´Â ÃÖ¼ÒÇÑ ¼¼ °³ÀÇ ±¹°¡ÀûÀ¸·Î/Àü¼¼°èÀûÀ¸·Î ¹èºÎµÈ ±¤°í
   ¸ñ·Ïµé¿¡¼­ ¹ß°áÇÒ ¼ö ÀÖ´Â ºÎÇ°µé·Î ºÎÅÍ Á¶¸³ °¡´ÉÇÑ ¸Ó½ÅÀ» ¸»ÇÑ´Ù.
 CLASS I ½Ã½ºÅÛÀÇ ÀÌÁ¡:
    ¿©·¯°¡Áö Á¦Ç°µéÀ» ÀÌ¿ëÇÏ¿© ±¸¼ºÇÒ ¼ö ÀÖ´Â Çϵå¿þ¾î ( ³·Àº °¡°Ý, ½¬¿î
      À¯Áö)
    ÇϳªÀÇ Çϵå¿þ¾î ȸ»ç¿¡ ÀÇÁ¸ÇÏÁö ¾ÊÀ½
    ¸®´ª½º commodity¿¡¼­ Áö¿øµÇ´Â µå¶óÀ̹ö
    ÀϹÝÀûÀ¸·Î Ç¥ÁؾÈÀ» ±âº»À» µÐ °Í (SCSI, ÀÌ´õ³Ý, µîµî.)
 CLASS I ½Ã½ºÅÛÀÇ ´ÜÁ¡:
    ÃÖ°íÀÇ ¼º´ÉÀ» À§Çؼ­´Â CLASS II Çϵå¿þ¾î¸¦ ¿ä±¸
 CLASS II º£¿À¿ïÇÁ
 CLASS II º£¿À¿ïÇÁÆ®´Â ´Ù¸¸  Computer Shopper ÀÎÁõ ½ÃÇè¿¡ Åë°úÇÏÁö ¾ÊÀº
   ¾î¶² ¸Ó½ÅÀÌ¶óµµ µÈ´Ù. ÀÌ´Â ³ª»Û °Í¸¸Àº ¾Æ´Ï´Ù. ½ÇÁ¦·Î´Â, ´ÜÁö ¸Ó½ÅÀÇ
   ºÐ·ùÀÏ»Ó ÀÌ´Ù.
 CLASS II ½Ã½ºÅÛÀÇ ÀÌÁ¡:
    ¸Å¿ì ÁÁÀº ¼º´ÉÀ» º¸¿©ÁÜ!
 CLASS II ½Ã½ºÅÛÀÇ ´ÜÁ¡:
    µå¶óÀ̹ö Áö¿øÀÌ º¯µ¿Àû
    ÇϳªÀÇ Çϵå¿þ¾î ȸ»ç¿¡ ÀÇÁ¸Àû
    CLASS I ½Ã½ºÅ۵麸´Ù °í°¡

 ÇϳªÀÇ CLASS´Â ´Ù¸¥ °Í º¸´Ù ´õÁÁÀ» ÇÊ¿ä´Â ¾ø´Ù. ÀÌ´Â ´ç½ÅÀÇ ÇÊ¿ä¿Í
 ¿¹»ê ¿¡ µû¸¦»ÓÀÌ´Ù. ÀÌ·± ºÐ·ù ½Ã½ºÅÛÀº º£¿À¿ïÇÁ ½Ã½ºÅ۵鿡 °üÇÑ ³íÀǸ¦
 ´õ¿í °£°áÇÏ°Ô ÇϱâÀ§ÇÑ °ÍÀÌ´Ù. "½Ã½ºÅÛ µðÀÚÀÎ"ºÎºÐ¿¡¼­ ´ç½ÅÀÇ ¿ä±¸¿¡
 °¡Àå ÀûÇÕÇÑ ½Ã½ºÅÛÀÇ Á¾·ù°¡ ¹«¾ùÀÎÁö °áÁ¤Çϴµ¥ µµ¿òÀ» ÁÙ °ÍÀÌ´Ù.

 3.  ±¸Á¶ °³¿ä

 3.1.  ¹«¾ù ó·³ º¸À̴°¡?

 ³» »ý°¢¿¡´Â º£¿À¿ïÇÁ ½´ÆÛÄÄÇ»ÅÍ ±¸Á¶¸¦ ±â¼úÇϱâÀ§ÇÑ °¡Àå ÁÁÀº ¹æ¹ýÀº
 ½ÇÁ¦ º£¿À¿ïÇÁ¿Í ¸Å¿ì ºñ½ÁÇÑ ¿¹¸¦ µå´Â °ÍÀÌ´Ù. ±×·¯³ª, ´ëºÎºÐÀÇ ½Ã½ºÅÛ
 °ü¸®Àڵ鿡°Ô Àͼ÷ÇÑ °ÍÀ̾î¾ß ÇÑ´Ù. ±× ¿¹·Î, º£¿À¿ïÇÁ ½Ã½ºÅÛ°ú °¡Àå
 ±ÙÁ¢ÇÑ °ÍÀÌ ÇϳªÀÇ ¼­¹ö¿Í ¿©·¯°³ÀÇ Å¬¶ó¾ðÆ®µé·Î ±¸¼ºµÈ À¯´Ð½º ÄÄÇ»ÅÍ
 ¿¬±¸½Ç ÀÌ´Ù. Á» ´õ ±¸Ã¼ÀûÀ¸·Î ¸»Çϸé, ¿¹¸¦ µé¾î ³ª´Â USQÀÇ Faculty of
 Sciences¿¡ ÄÄÇ»ÅÍ ¿¬±¸½Ç¿¡ ÀçÇÐÁß¿¡ DEC AlpahÀ» »ç¿ëÇÏ·ÁÇÑ´Ù°í ÇÏÀÚ.
 ÀÌ ¼­¹ö ÄÄÇ»ÅÍ´Â beldinÀ̶ó ÇÏ°í Ŭ¶óÀ̾ðÆ® ¸Ó½ÅµéÀº scilab01,
 scilab02, scilab03¿¡¼­ scilab20±îÁö ÀÖ´Ù°í ÇÏÀÚ. ¸ðµç Ŭ¶óÀ̾ðÆ®µéÀº
 Digital Unix 4.0 ¿î¿µÃ¼Á¦ÀÇ Áö¿ª Ä«ÇǺ»À¸·Î ¼³Ä¡µÇ¾îÀÖÁö¸¸, »ç¿ëÀÚ
 ÆÄÀÏ °ø°£ (/home)°ú /usr/localÀº NFS (Network File System)¸¦ ÅëÇؼ­
 °øÀ¯µÇ¾î Áø´Ù.  °¢°¢ÀÇ Å¬¶óÀ̾ðÆ® °¢ /etc/hosts.equiv ÆÄÀÏ¿¡ ¼­¹ö³ª
 ´Ù¸¥ ¸ðµç Ŭ¶óÀ̾ðÆ®µé ¿¡´ëÇÑ ¿£Æ®¸®°¡ Æ÷ÇԵǾî À־, ¸ðµç
 Å¬¶óÀ̾ðÆ®´Â ´Ù¸¥ °÷À¸·Î ¿ø°Ý ½© (rsh)¸¦ ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¼­¹ö ¸Ó½ÅÀº
 ¸ðµç ¿¬±¸½Ç¿¡ ´ëÇÑ NIS ¼­¹ö·Î¼­, ´Ù¸¥ ¸Ó½ÅµéÀ» ³¢¸® °èÁ¤ Á¤º¸¸¦
 °øÀ¯ÇÑ´Ù. ¾î¶² »ç¶÷ÀÌ scilab02 Äֿܼ¡ ¾É¾Æ¼­, ·Î±×ÀÎÇϸé, ±×°¡ ¼­¹ö³ª
 scilab15¿¡ Á¢¼ÓÇÑ´Ù Çصµ °°Àº ȯ°æÀ» °¡Áö°Ô µÈ´Ù. ÀÌ·¯ÇÑ ÀÌÀ¯·Î ¸ðµç
 Å¬¶óÀ̾ðÆ®´Â ¶È°°Àº °üÁ¡°ú ´À³¦À» °¡Áø´Ù. ÀÌ ÀÌÀ¯´Â ¸ðµç ¸Ó½Å¿¡ °°Àº
 ¹æ¹ýÀ¸·Î ¿î¿µÃ¼Á¦°¡ ¼³Ä¡µÇ¾ú°í ¼³Á¤ µÇ¾úÀÖ°í, »ç¿ëÀÚÀÇ /home°ú
 /usr/local ¿µ¿ª µÑ´Ù ¹°¸®ÀûÀ¸·Î´Â ¼­¹ö¿¡ ÀÖÁö¸¸ Ŭ¶óÀ̾ðÆ®´Â NFS¸¦
 °ÅÃļ­ ¿¢¼¼½º ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. NIS³ª NFS¿¡ ´ëÇÑ ´õ ¸¹Àº Á¤º¸¸¦
 ¿øÇϸé NIS¿Í NFS HOWTO¸¦ Àо±â ¹Ù¶õ´Ù.

 3.2.  ´Ù¸¥ ³ëµå¸¦ ¾î¶»°Ô ÀÌ¿ëÇÒ °ÍÀΰ¡?

 Áö±ÝºÎÅÍ ¿ì¸®´Â ½Ã½ºÅÛ ±¸Á¶¿¡ ´ëÇÑ ¾î¶² »ý°¢À» °¡Áö°í ÀÖ°í, ÄÄÇ»ÅÍ
 ¿¬±¸½Ç¿¡ ÀÖ´Â ¸Ó½ÅÀÇ »ç¿ë°¡´ÉÇÑ CPU »çÀÌŬµéÀ» »ç¿ëÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ»
 Ã£¾Æº¸±â·Î ÇÏÀÚ.  ¾î¶² »ç¶÷ÀÌ ÀÓÀÇÀÇ ¸Ó½Å¿¡ ·Î±×ÀÎ ÇÒ ¼ö ÀÖ°í, ±×µéÀÇ
 È¨ µð·ºÅ丮¿¡¼­ ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¼öµµ ÀÖÁö¸¸, °°Àº ÀÏÀ» ¿ø°Ý ½©À»
 °¡Áö°í ¿©·¯ °³¸¦ ½ÇÇà ÇÒ¼öµµ ÀÖ´Ù. ¿¹¸¦ µé¾î, ¿ì¸®°¡ 1¿¡¼­ 10À» Æ÷ÇÔÇÑ
 ¸ðµç Á¤¼ö °ªÀÇ Æò¹æ±ÙÀÇ ÇÕÀ» °è»êÇÒ·Á°í ÇÑ´Ù. À̸¦ ¿Ïº®È÷ ½ÇÇàÇÒ
 sigmasqrt("¼Ò½º ÄÚµå" ºÎºÐÀ» º¸¾Æ¶ó)¶ó´Â °£´ÜÇÑ ÇÁ·Î±×·¥À» ÀÛ¼ºÀ»
 ÇÑ´Ù. 1¿¡¼­ 10±îÁöÀÇ Æò¹æ±Ù ÀÇ ÇÕÀ» °è»êÇÏ´Â °ÍÀ» ½ÇÇàÇϸé:

 [jacek@beldin sigmasqrt]$ time ./sigmasqrt 1 10
   22.468278
 real    0m0.029s
   user    0m0.001s
   sys     0m0.024s

 time ¸í·É¾î´Â ÀÌ ÀÛ¾÷ ½ÇÇàÇÏ´Â wall-clock(³¡¸¶Ä¡´Â ½Ã°£)À» È®ÀÎÇÒ ¼ö
 ÀÖ´Ù. À§¿¡ º¸À̵íÀÌ, ÀÌ ¿¹Á¦´Â ½ÇÇàÇϵ¥ ÀÛÀº ºñÀ²ÀÇ ½Ã°£(0.029ÃÊ)¸¸
 °É¸°´Ù. ±×·¯³ª, 1¿¡¼­ 1 000 000 000±îÁöÀÇ Á¤¼ö°ªÀÇ Æò¹æ±Ù ÇÕÀ»
 ±¸ÇÒ·Á°í ÇÏ´Ù¸é ¾î¶»°Ô µÉ±î? ÀÌ°ÍÀ» °¡Áö°í wall-clock ½Ã°£À» ´Ù½Ã
 ±¸Çغ¸ÀÚ.

 [jacek@beldin sigmasqrt"]$ time ./sigmasqrt 1 1000000000
   21081851083600.559000
 real    16m45.937s
   user    16m43.527s
   sys     0m0.108s

 ÀÌ ÇÁ·Î±×·¥ÀÇ ½ÇÇà ½Ã°£Àº ²Ï ±æ¾îÁ³´Ù. ±×·¯¸é, ¾î¶»°Ô Çϸé ÀÏÀ» ¼öÇà
 ÇÏ´Â ½Ã°£À» Á» ´õ »¡¸® ÇÒ ¼ö ¾ø´Â°¡ÇÏ´Â Áú¹®À» ÇÏ°ÔµÉ °ÍÀÌ´Ù. ÀÏÀ»
 ¾î¶»°Ô ¹Ù²Ù¾î¾ß wall-clock ½Ã°£ÀÌ ÃÖ¼Ò·Î µÉ±î? È®½ÇÇÑ ´ë´äÀº ÀÏÀ» ¿©·¯
 °³ÀÇ ÇÏÀ§ Àϵé·Î ³ª´©¾î¼­ °¢°¢ÀÇ ÇÏÀ§ ÀϵéÀ» ¸ðµç ÄÄÇ»Å͵鿡¼­ º´·Ä·Î
 ¼öÇàÇÏ´Â °ÍÀÌ´Ù. ¿ì¸®´Â ÀÛ¾÷À» Å©°Ô 20°³ ºÎºÐÀ¸·Î ³ª´©¾î¼­, Æò¹æ±ÙÀÇ
 ÇÑ ¹üÀ§¸¦ °è»êÇؼ­ °¢°¢ÀÇ ³ëµå¿¡ ÀÌ °ªÀ» ´õÇÏ°Ô Çß´Ù. ¸ðµç ³ëµå°¡
 ÀÛ¾÷À» ¸¶Ä¡°í °ªÀ» ¹ÝȯÇÒ¶§, 20°³ÀÇ °á°ú¸¦ ¸ðµÎ ´õÇؼ­ ¸¶Áö¸· Çظ¦
 ¾ò°ÔµÈ´Ù. ÀÏÀ» ¼öÇàÇϱâ Àü¿¡ ¸ðµç ÇÁ·Î¼¼½º°¡ °ªµéÀ» ±â·ÏÇÒ ¸í¸í
 ÆÄÀÌÇÁ(named pipe)¸¦ »ý¼ºÄ×´Ù.

 [jacek@beldin sigmasqrt"]$ mkfifo output
   [jacek@beldin sigmasqrt"]$ ./prun.sh & time cat output | ./sum
   [1] 5085
   21081851083600.941000
   [1]+  Done                    ./prun.sh
 real    0m58.539s
   user    0m0.061s
   sys     0m0.206s

 ¾à 58.5 ÃÊÀÇ ½Ã°£À» ¾ò¾ú´Ù. ÀÌ ½Ã°£Àº ÀÏÀÌ ½ÃÀÛÇÒ¶§ ºÎÅÍ ¸ðµç ³ëµåµé°¡
 °è»êÀ» ¸¶Ä¡°í °¢ °á°ú¸¦ ÆÄÀÌÇÁ¿¡ ±â·ÏÇÏ´Â ½Ã°£±îÁö¸¦ ¸»ÇÑ´Ù. ÀÌ ½Ã°£Àº
 ¸¶Áö¸· 20°³ÀÇ µ¡¼ÀÀº Æ÷ÇÔÇÏÁö ¾Ê¾ÒÁö¸¸, ¸Å¿ì ÀÛÀº ½Ã°£À̹ǷΠ¹«½ÃÇÒ ¼ö
 ÀÖ´Ù. ¿ì¸®´Â º´·Ä·Î ÀÏÀ» ¼öÇàÇÔ¿¡¼­ Àǹ̽ÉÀåÇÑ Çâ»óÀÌ ÀÖ¾îÀ½À» º¼ ¼ö
 ÀÖÀ» °ÍÀÌ´Ù. À§ÀÇ ¿¹Á¦ÀÇ ¸ñÀûÀº °¡Àå °£´ÜÇÑ º´·ÄÈ­µÇ´Â º´Çà ÄÚµåÀÇ
 ¹æ¹ýÀ» º¸¿©ÁÖÀڴµ¥ ÀÖ´Ù. ½ÇÁ¦·Î ÀÌ¿Í °°Àº ¿¹´Â ¸Å¿ì µå¹°°í ´Ù¸¥ ±â¼ú
 (PVM°ú PMI APIµé)ÀÌ º´Ç༺À» ÀÌ·ç´Âµ¥ »ç¿ëµÇÁö°ï ÇÑ´Ù.

 3.3.  º£¿À¿ïÇÁ°¡ COW¿Í ¾î¶»°Ô ´Ù¸¥°¡?

 ¾Õ¿¡¼­ ±â¼úÇÑ ÄÄÇ»ÅÍ ¿¬±¸½ÇÀº Cluster of Workstations(COW)ÀÇ ¿Ïº®ÇÑ
 ¿¹ÀÌ´Ù. ±×·¡¼­, º£¿À¿ïÇÁÀÇ Æ¯Â¡ÀÌ ¹«¾ùÀÌ°í COW¿Í ¾î¶»°Ô ´Ù¸¥°¡?¸¦ ¾Ë¾Æ
 º¸ÀÚ. ±×·¸°Ô ´Ù¸¦ °ÍÀº ¾øÁö¸¸, º£¿À¿ïÇÁÆ®´Â ¾à°£ÀÇ µ¶Æ¯ÇÑ Æ¯Â¡µéÀ»
 °¡Áø´Ù. ¸ÕÀú, º£¿À¿ïÇÁ Ŭ·¯½ºÅÍ¿¡¼­ ¸ðµç Ŭ¶óÀ̾ðÆ® ³ëµåµéÀÇ °æ¿ì¿¡´Â
 Å°º¸µå, ¸¶¿ì½º, ºñµð¿À Ä«µå, ±×¸®°í ¸ð´ÏÅÍ Á¶Â÷ ¾ø´Ù. ¼­¹ö ³ëµå, ÄܼÖ
 Àü¿ë ³ëµå, ¶Ç´Â ½Ã¸®¾ó Äֿܼ¡¼­ÀÇ Å¬¶óÀ̾ðÆ® ³ëµéÀÇ ¸ðµç ¿¢¼¼½º´Â ¿ø°Ý
 Á¢¼ÓÀ» ÅëÇؼ­ ÀÌ·ç¾îÁø´Ù. Ŭ¶óÀ̾ðÆ® ³ëµå°¡ Ŭ·¯½ºÅÍ ¿ÜºÎÀÇ ¸Ó½ÅÀ»
 ¿¢¼¼½ºÇϰųª, Ŭ·¯½ºÅÍ ¿ÜºÎÀÇ ¸Ó½ÅÀÌ Å¬¶óÀ̾ðÆ® ³ëµå¸¦ Á÷Á¢ ¿¢¼¼½ºÇÒ
 ÇÊ¿ä°¡ ¾ø±â ¶§¹®¿¡, Ŭ¶óÀ̾ðÆ® ³ëµå´Â 10.0.0.0/8 À̳ª 192.168.0.0/13
 ÁÖ¼Ò ¹üÀ§ ((RFC 1918 www.alternic.net/rfcs/1900/rfc1918.txt.html
 )¿Í °°Àº »ç¼³ IP
 ÁÖ¼ÒµéÀÌ ÀϹÝÀûÀ¸·Î ¸¹ÀÌ »ç¿ëÇÑ´Ù. º¸Åë µÎ ¹ø° ³×Æ®¿öÅ© Ä«µå·Î ¿ÜºÎ·Î
 ¿¬°áµÇ´Â ¸Ó½ÅÀº ¼­¹ö ³ëµå¸¸ÀÌ ÇÒ ¼ö ÀÖ´Ù. ½Ã½ºÅÛÀ» »ç¿ëÇÏ´Â °¡Àå
 ÀϹÝÀûÀÎ ¹æ¹ýÀº ¼­¹ö Äֿܼ¡¼­ Á÷Á¢ ¿¢¼¼½ºÇϰųª, °³ÀÎ ¿öÅ©½ºÅÛÀ̼ǿ¡¼­
 ÅÚ³ÝÀ̳ª ¿ø°Ý ·Î±×ÀÎÀ¸·Î ¼­¹ö ³ëµå¸¦ ¿¢¼¼½ºÇÑ´Ù. ¼­¹ö ³ëµå »ó¿¡¼­
 »ç¿ëÀÚ°¡ Äڵ带 ÆíÁýÇÏ°í ÄÄÆÄÀÏ ÇÏ°í, Ŭ·¯½ºÅÍ¿¡ ÀÖ´Â ¸ðµç ³ëµåµé¿¡°Ô
 ÀÏÀ» ½ÃÅ°°Ô µÈ´Ù. ´ëºÎºÐÀÇ °æ¿ì COWÀº ¹ã¿¡ º´·Ä °è»êÇϴµ¥
 »ç¿ëµÇ°ïÇÏ°í, »ç¶÷µéÀÌ »ç¿ëÇÏÁö¾ÊÀº ÁÖ¸»¿¡ »ç¿ëµÇ±âµµ ÇÑ´Ù. ±×·¯¹Ç·Î,
 »ç¿ëÇÏÁö ¾ÊÀº CPU ½Ã°£À» ÀÌ¿ëÇÏ´Â °ÍÀÌ´Ù. ´Ù¸¥ °üÁ¡¿¡¼­ º£¿À¿ïÇÁ´Â
 ÀϹÝÀûÀ¸·Î º´·Ä °è»êÀ» Çϱâ À§ÇÑ Àü¿ë ¸Ó½ÅÀÌ°í ÀÌ·¯ÇÑ ¸ñÀû¿¡ ¸Â°Ô
 ÃÖÀûÈ­µÇ¾ú´Ù. ¶ÇÇÑ, º£¿À¿ïÇÁ´Â off-the-shelf ¿ä¼Òµé·Î ÀÌ·ç¾îÁö°í ÁÖ·Î
 °ø°³ ¼ÒÇÁÆ®¿þ¾î¸¦ »ç¿ëÇϱ⠴빮¿¡ °¡°Ý/¼º´É ºñ°¡ ¸Å¿ì ÁÁ´Ù. ¿©·¯
 ½Ã½ºÅÛÀ» °¡Áö°í ÀÖ´Â º£¿À¿ïÇÁ´Â »ç¿ëÀÚ°¡ º£¿À¿ïÇÁ Ŭ·¯½ºÅÍÀ» ¹Ù¶óº¼¶§
 ÇϳªÀÇ °è»ê ¿öÅ©½ºÅ×ÀÌ¼Ç À¸·Î º¸À̴ Ư¡À» °¡Áö°í ÀÖ´Ù.

 4.  ½Ã½ºÅÛ µðÀÚÀÎ

 Çϵå¿þ¾î¸¦ ±¸ÀÔÇϱâ Àü¿¡ ½Ã½ºÅÛÀÇ µðÀÚÀÎÀ» °í·ÁÇغ¸´Â °ÍÀÌ ÁÁ´Ù.
 º£¿À¿ïÇÁ ½Ã½ºÅÛÀÇ µðÀÚÀÎÀ» Çϱâ À§ÇÑ ±âº»ÀûÀÎ 2°¡Áö Çϵå¿þ¾î
 ¹®Á¦Á¡·Î´Â: ´ç½ÅÀÌ »ç¿ëÇÒ ³ëµå³ª ÄÄÇ»ÅÍÀÇ Á¾·ù; ÄÄÇ»ÅÍ ³ëµåµéÀ»
 ¿¬°áÇϱâÀ§ÇÑ ¹æ¹ý. Çϵå¿þ¾î¸¦ °áÁ¤Çϴµ¥ À־ ¿µÇâÀ» ¹ÌÄ¡´Â
 ¼ÒÇÁÆ®¿þ¾î ¹®Á¦Á¡ÀÌ Åë½Å ¶óÀ̺귯¸®³ª API ÀÌ´Ù. ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÑ
 ÀÚ¼¼ÇÑ »çÇ×Àº ÀÌ ¹®¼­ ÈĹݺο¡¼­ ´Ù·ç±â·Î ÇÏ°Ú´Ù.  ¼±ÅÃÀÇ ÆøÀÌ ±×·¸°Ô
 ³ÐÁö´Â ¾ÊÀº ¹Ý¸é¿¡, º£¿À¿ïÇÁ ½Ã½ºÅÛÀ» ±¸¼ºÇÒ¶§ ¸î °³ÀÇ Áß¿äÇÑ µðÀÚÀÎ
 °áÁ¤ÀÌ ÀÖ´Ù. º´·Ä °è»êÀÇ °úÇÐ(¶Ç´Â ¿¹¼ú)Àº ¸¹Àº ´Ù¸¥ Çؼ®ÀÌ ÀÖÀ» ¼ö
 Àֱ⶧¹®¿¡,  °³¿ä´Â ´ÙÀ½¿¡ Á¦°øÇÏ°Ú´Ù.(?)  ¹è°æÀÌ µÇ´Â ¿ä¼Ò¸¦ Àаí
 ½ÍÁö ¾ÊÀ¸¸é, ÀÌ ÀýÀ» ¶Ù¾î ³Ñ¾îµµ ÁÁÁö¸¸, ¸¶Áö¸· Çϵå¿þ¾î °áÁ¤À» Çϱâ
 Àü¿¡ "ÀûÇÕ¼º"À̶ó´Â ÀýÀ» Àд °ÍÀ» ±ÇÇÏ´Â ¹ÙÀÌ´Ù.

 4.1.  º´·Ä °è»ê¿¡À־ ¹è°æ ¿ä¾à.

 ÀÌ ÀýÀº º´·Ä °è»ê °³³ä¿¡ ´ëÇÑ ¹è°æÁö½ÄÀ» Á¦°øÇÒ °ÍÀÌ´Ù. º´·Ä °è»ê
 °úÇаú ±â¼úÀ» ¿Ïº®È÷ ´Ù·çÁö´Â ¾ÊÀ» °ÍÀÌ´Ù. º£¿À¿ïÇÁ µðÀÚÀ̳ʿÍ
 »ç¿ëÀÚ¿¡°Ô Áß¿äÇÑ ¹®Á¦Á¡¿¡ ´ëÇÑ °£¶ôÇÑ ±â¼úÀ» ÇÒ °ÍÀÌ´Ù. ´ç½ÅÀÇ
 º£¿À¿ïÇÁ¸¦ µðÀÚÀÎÇÏ°í ±¸¼ºÇÔ¿¡ À־, ´ç½ÅÀÇ °áÁ¤°úÁ¤¿¡ À־ ´ÙÀ½¿¡
 ±â¼úµÉ ¸¹Àº ¹®Á¦Á¡ÀÌ Áß¿ä ÇÏ°Ô µÇ°Ô µÉ °ÍÀÌ´Ù. º£¿À¿ïÇÁ ±¸¼º¿ä¼ÒÀÇ
 Æ¯¼ºÀ¸·Î ÀÎÇؼ­ º£¿À¿ïÇÁ ½´ÆÛÄÄÇ»ÅÍ´Â ¸¹Àº ÀÎÀÚµéÀÌ »ç¿ëÀÚÀÇ Á¦¾îÇÏ¿¡
 Àֱ⠶§¹®¿¡ Á¶½É½º·´°Ô °í·ÁÇÏ´Â °ÍÀ» ¿ä±¸ÇÑ´Ù.  ÀϹÝÀûÀ¸·Î, º´·Ä
 °è»ê°ú °ü·ÃµÈ ¹®Á¦Á¡µéÀ» ÀÌÇØÇϱ⠾î·Á¿î °Í¸¸Àº ¾Æ´Ï´Ù.  »ç½Ç,
 ¹®Á¦Á¡À» ÀÌÇØÇϱ⸸ Çϸé, ´ç½ÅÀÇ ±â´ë´Â ´õ¿í Çö½ÇÀûÀÌ°Ô µÇ°í ¼º°øÀº
 ´õ¿í Çö½Ç°ú °¡±î¿öÁö°Ô µÉ °ÍÀÌ´Ù. °¡Àå Áß¿äÇÑ ÀÎÀÚÀÎ ÇÁ·Î¼¼¼­ ¼Óµµ´Â
 "¼øÂ÷ ¼¼°è"¿Í´Â ´Þ¶ó¼­, "º´·Ä ¼¼°è"¿¡¼­ ÇÁ·Î¼¼¼­ ¼Óµµ´Â Àüü ½Ã½ºÅÛ
 ¼º´É°ú È¿À²¸¦ °áÁ¤ÇÏ´Â ¸î°¡Áö ÀÎÀÚÁß¿¡ ÇϳªÀÌ´Ù.

 4.2.  º´·Ä °è»ê ¹æ¹ý

 º´·Ä °è»êÀº ¸¹Àº ÇüŸ¦ °¡Áö°í ÀÖ´Ù. »ç¿ëÀÚ °üÁ¡¿¡¼­ °¢°¢ÀÇ ¹æ¹ý·ÐÀÇ
 ÀåÁ¡°ú ´ÜÁ¡¸¦ °í·ÁÇغ¸´Â °ÍÀÌ Áß¿äÇÏ´Ù. ´ÙÀ½ ÀýÀº º´·Ä °è»êÀÇ ¹æ¹ý»óÀÇ
 ¸î°¡Áö °üÁ¡À» Á¦°øÇÏ°í, ¸Ó½ÅÀÌ ÀÏ·ÃÀÇ °úÁ¤Áß¿¡ ¾î´À °÷ÀÇ º£¿À¿ïÇÁ
 ¸Ó½ÅÀÌ ½ÇÆÐÇÏ¿´´ÂÁö¸¦ °¡¸£Ä¡·Á°í ÇÑ´Ù.

 4.2.1.  ¿Ö ÇÑ °³ ÀÌ»óÀÇ CPU°¡ ÇÊ¿äÇÑ°¡?

 ÀÌ Áú¹®ÀÇ ´ë´äÀº Áß¿äÇÏ´Ù. 8°³ÀÇ CPU¸¦ °¡Áö°í ¿öµåÇÁ·Î¼¼¼­¸¦
 ½ÇÇàÇÑ´Ù°í Çϸé "over-kill"ó·³ µé¸®°í, ¶ÇÇÑ ±×·¸´Ù. À¥ ¼­¹ö,
 µ¥ÀÌÅͺ£À̽º, ·£´õ¸µ ÇÁ·Î±×·¥, ¶Ç´Â ÇÁ·ÎÁ§Æ® ÀÏÁ¤Ç¥¿¡ ´ëÇؼ­´Â
 ¾î¶°ÇÑ°¡? ¿©ºÐÀÇ CPU°¡ ÀÖ´Ù¸é µµ¿òÀÌ µÉ °ÍÀÌ´Ù. º¹ÀâÇÑ ½Ã¹Ä·¹À̼Ç,
 À¯Ã¼¿ªÇÐ ÄÚµå, ¶Ç´Â µ¥ÀÌŸ ¸¶ÀÌ´× Ç®±×¸²Àº ¾î¶°ÇÑ°¡? ÀÌ·± »óȲ¿¡¼­´Â
 ¿©ºÐÀÇ CPU´Â ÂðÂ¥·ç µµ¿òÀÌ µÈ´Ù. »ç½Ç, ´ÙÁß CPUÀº ´õ¿í´õ ¸¹Àº ¹®Á¦µéÀ»
 Ç®±âÀ§ÇØ »ç¿ëµÇÁö°ï ÇÑ´Ù: º¸Åë ´ÙÀ½ Áú¹® À¸·Î: "¿Ö µÎ °³ ¶Ç´Â ³× °³ÀÇ
 CPU°¡ ÇÊ¿äÇÑ°¡, ³ª´Â 986 Åͺ¸-ÇÏÀÌÆÛ Ä¨ÀÌ ³ª¿À±â¸¦ ±â´Ù¸®·Á°í ÇÑ´Ù."
 ÀÌ·¯ÇÑ ÀÌÀ¯·Î´Â:

 1. ¸ÖƼ Å×½ºÅ· ¿î¿µ üÁ¦ÀÇ »ç¿ëÀ¸·Î, ¸î°¡ÁöÀÇ °ÍµéÀ» ÇÑ ¹ø¿¡ ½ÇÇà ÇÒ
    ¼ö ÀÖ´Ù. Çϳª ÀÌ»óÀÇ Àú·ÅÇÑ CPU¸¦ °¡Áö°í ½±°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â °íÀ¯ÀÇ
    "º´·Ä¼º"À» ¸»ÇÑ´Ù.

 2. ÇÁ·Î¼¼¼­ ¼Óµµ´Â ¸Å 18 °³¿ù ¸¶´Ù µÎ ¹è·Î Çâ»óµÇ¾î ¿Ô´Ù. ±×·¯³ª,
    ¸Þ¸ð¸® ¼Óµµ³ª ÇÏµå µð½ºÅ© ¼Óµµ´Â ¾î¶°ÇÑ°¡? ºÒÇàÇÏ°Ôµµ ÀÌ·± ¼Óµµ´Â
    CPU ¼Óµµ ¸¸Å­À̳ª ºü¸£°Ô Áõ°¡È÷Áö ¸øÇß´Ù. ÁÖ¸ñ ÇÒ °ÍÀº ¸ðµç
    Ç®±×¸²Àº "out of cache memory access"¿Í ÇÏµå µð½ºÅ© ¿¢¼¼½º¸¦
    ¿ä±¸ÇÑ´Ù´Â °ÍÀÌ´Ù. º´Çà¿¡ À־ ÀÌ·± °ÍÀ» Çϱâ À§Çؼ­´Â ¸î°¡Áö
    Á¦ÇÑÁ¡À» ȸÇÇÇÏ´Â ¹æ¹ýÀ» »ç¿ë ÇØ¾ß ÇÑ´Ù.

 3. ¿¹»óÇϱ⸦ ÇÁ·Î¼¼½º ¼Óµµ´Â 2005³â ÀÌÈķδ 18°³¿ù ¸¶´Ù 2¹è·Î Áõ°¡
    ÇÏÁö ¸øÇÒ °ÍÀ̶ó°í ÃßÃøÇÑ´Ù. ÀÌ·± °æÇâÀ» ±Øº¹ÇϱâÀ§Çؼ­´Â ¸Å¿ì
    ½É°¢ÇÑ Àå¾Ö¹°µéÀÌ ³õ¿©ÀÖ´Ù.

 4. Ç®±×¸²¿¡ µû¶ó¼­, º´·Ä °è»êÀº 2¿¡¼­ 500¹èÁ¤µµ±îÁö ´õ ºü¸£°Ô ¼Óµµ¸¦
    Çâ»ó ½Ãų ¼ö ÀÖ´Ù( ¸î¸îÀÇ °æ¿ì ´õ ºü¸£´Ù). ÀÌ¿Í °°Àº ¼º´ÉÀº ´ÜÀÏ
    ÇÁ·Î¼¼¼­¸¦ »ç¿ëÇÏ´Â °÷¿¡¼­´Â ºÒ°¡´ÉÇÏ´Ù. ½´ÆÛÄÄÇ»ÅÍ Á¶Â÷µµ ¸Å¿ì
    ºü¸¥ ÁÖ¹®Çü ÇÁ·Î¼¼½ºÀ» »ç¿ëÇÏ´Â °Í¿¡¼­ ´ÙÁß "commodity-off-the-
    shelf" CPU¸¦ °¡Áö°í ¸¸µé°í ÀÖ´Ù.

    °è»ê ÇÑ°è ¹®Á¦Á¡ ¶§¹®À̳ª I/O ÇÑ°è ¹®Á¦Á¡À¸·Î ÀÎÇؼ­ ¼Óµµ¸¦
    ¿äÇÑ´Ù¸é, º´·ÄÀ» »ý°¢Çغ¸´Â °ÍÀÌ ¹Ù¶÷Á÷ÇÏ´Ù. º´·Ä °è»êÀÌ ´Ù´çÇÑ
    ¹æ¹ýÀ¸·Î ±¸ÇöÀÌ °¡´ÉÇϱ⠶§¹®¿¡ º´·Ä·Î ¹®Á¦¸¦ ÇØ°áÇÏ´Â °ÍÀº ¸Å¿ì
    Áß¿äÇÑ °á½ÉÀ» ÇؾßÇÒ °ÍÀÌ´Ù. ÀÌ·¯ÇÑ °áÁ¤Àº ÈÞ´ë¼®, ¼º´É, ±×¸®°í
    Ç®±×¸²ÀÇ °¡°Ý¿¡ ´ëÇÑ È¿°ú¸¦ ±Ø´ëÈ­ÇÒ ¼ö ÀÖ´Ù.  ±â¼úÀûÀ¸·Î µé¾î°¡±â
    Àü¿¡, Ä£¼÷ÇÑ ¿¹Á¦ÀÎ »óÁ¡¿¡¼­ ±æ°Ô ´Ã¾î¼­ ÁÙ¿¡¼­ ´ë±â¸¦ °¡Áö°í ½ÇÁ¦
    "º´·Ä °è»ê ¹®Á¦Á¡"¿¡ ´ëÇØ ´Ù·ç¾î º¸°Ú´Ù.

 4.2.2.  º´·Ä ó¸® °¡°è

 ¾ÆÁÖ Å« °¡°è ¾Õ¿¡ 8°³ÀÇ Çö±Ý °è»ê´ë·Î ÇÔ²² ÀÖ´Ù°í ÇÏÀÚ. °¢°¢ÀÇ
 °è»ê´ë´Â ÇϳªÀÇ CPUÀÌ°í °¢ °í°´Àº ÄÄÇ»ÅÍ ÇÁ·Î±×·¥ÀÌ¶ó °¡Á¤ÇÏÀÚ.
 ÄÄÇ»ÅÍ ÇÁ·Î±×·¥ÀÇ Å©±â(ÀÏÀÇ ¾ç)Àº °¢ °í°´ÀÇ ¿ä±¸ÀÇ Å©±âÀÌ´Ù. ´ÙÀ½
 analogyµéÀº º´·Ä °è»ê °è³äÀ» ¼³¸íÇÒ¶§ »ç¿ëµÇ°ï ÇÑ´Ù.

 4.2.2.1.  Single-tasking Operating System

 ÇϳªÀÇ Çö±Ý °è»ê´ë´Â ¿­·ÁÀÌ°í(»ç¿ëÁß) Çѹø¿¡ ÇϳªÀÇ °í°´À» ó¸®ÇÑ´Ù.

 ¿¹: MS DOS

 4.2.2.2.  Multi-tasking Operating System:

 ÇϳªÀÇ Çö±Ý °è»ê´ë´Â ¿­·Á ÀÖÁö¸¸, ÇöÀç Çѹø¿¡ °¢ ¿ä±¸ÀÇ ºÎºÐ¸¸À» ó¸®
 ÇÑ°í ´ÙÀ½ »ç¶÷ÀÇ ¿ä±¸ÀÇ ÀϺθ¦ ó¸®ÇÑ´Ù. ¸ðµÎ°¡ ÁÙÀ» °°ÀÌ Áö³ª°¡´Â °Í
 Ã³·³ º¸ÀÏÅ×Áö¸¸, ¾Æ¹«µµ ÁÙ¿¡ ¾ø´Ù¸é, ´õ »¡¸® Áö³ª°¡°Ô µÉ °ÍÀÌ´Ù.

 ¿¹: UNIX, NT using a single CPU

 4.2.2.3.  Multitasking Operating Systems with Multiple CPUs:

 ÇöÀç °¡°Ô¿¡ ¸î°³ÀÇ Çö±Þ °è»ê´ë°¡ ¿­·ÁÀÖ´Ù. °¢ ¿ä±¸´Â µû·Îµû·Î Çö±Ý
 °è»ê´ë°¡ ó¸®ÇÏ°í ÁÙÀº ´õ »¡¸® À̵¿ÇÏ°Ô µÈ´Ù. À̸¦ SMP (Symetric
 Multi- processing)¶ó ÇÑ´Ù. ¿©ºÐÀÇ Çö±Ý °è»ê´ë´Ù ¿­·Á ÀÖÀ» Áö¶óµµ,
 ÇÑ°³ÀÇ Çö±Ý °è»ê´ë¸¦ »ç¿ëÇÏ´Â °Í º¸´Ù ´õ »¡¸® Áö³ª°¡Áö´Â ¸øÇÑ´Ù.

 ¿¹: UNIX and NT with multiple CPUs

 4.2.2.4.  Threads on a Multitasking Operating Systems extra CPUs

 ¿ä±¸ Áß¿¡ "break-up"À̶ó´Â ¾ÆÀÌÅÛÀÌ ÀÖ´Ù¸é, Çѹø¿¡ ¿©·¯ Çö±Ý °è»ê´ë¸¦
 »ç¿ëÇÏ¿© ÁÙÀ» ´õ ºü¸£°Ô À̵¿ÇÒ ¼ö ÀÖ´Ù. ¸ÕÀú, ¿©·¯°³ÀÇ Çö±Ý °è»ê´ë¸¦
 »ç¿ëÇÒ·Á¸é "´ç½ÅÀÇ ¿ä±¸¸¦ Á¶°¢³¿"½Ã°£À» µé¿©¾ß Çϱ⠶§¹®¿¡ ¸¹Àº ¾çÀÇ
 ¹°°ÇÀ» °¡Áö°í ÀÖ´Ù°í ÇÏÀÚ. ÀÌ·ÐÀûÀ¸·Î´Â Àüº¸´Ù "n"¹è Á¤µµ ´õ ºü¸£°Ô
 ÁÙÀ» Åë°úÇÒ ¼ö ÀÖ´Ù(¿©±â¼­ "n"Àº Çö±Ý °è»ê´ë °³¼ö). Ãâ³³¿øÀÌ ÃÑ Çհ踦
 ±¸ ÇÒ¶§, ´Ù¸¥ "Áö¿ª" Çö±Þ °è»ê´ë¸¦ º¸°Å³ª ¸»À» ÇÏ¿© Àçºü¸£°Ô Á¤º¸¸¦
 ±³È¯ ÇÑ´Ù. ±×µéÀÌ Á¤º¸¸¦ ã±â À§ÇØ ´Ù¸¥ Çö±Ý °è»ê´ë¸¦ ±â¿ô°Å¸± Áö¶óµµ,
 ±×µéÀº ´õ »¡¸® ÀÏÀ» ó¸®Çϱ⸦ ¿øÇÑ´Ù.(?) ±×·¯³ª ¾ó¸¶³ª ¸¹Àº Çö±Þ
 °è»ê´ë°¡ °¡°è¿¡ ÀÖ¾î¾ß ÇÏ°í ¾î´À Àå¼Ò¿¡ À§Ä¡ÇØ¾ß È¿°úÀûÀΰ¡ÇÏ´Â Á¦ÇÑ¿¡
 ºÎµúÄ¡°Ô µÈ´Ù.  Amdals ¹ýÄ¢¿¡¼­ Ç®±×¸²ÀÇ ¼ÓµµÇâ»óÀº ÇÁ·Î±×·¥ÀÇ °¡Àå
 ´ÊÀº ÀÏ·ÃÀÇ ºÎºÐÀ¸·Î Á¦ÇÑÇØ¾ß µÈ´Ù´Â °ÍÀÌ´Ù.  ¿¹: °°Àº ¸¶´õº¸µå¿¡¼­
 ¿©ºÐÀÇ CPU¸¦ °¡Áø UNIX ³ª NT¿¡¼­ ´ÙÁß ¾²·¹µåÈ­µÈ ÇÁ·Î±×·¡µé ¼öÇà.

 4.2.2.5.  Sending Messages on Multitasking Operating Systems with
 extra CPUs:

 ¼º´É Çâ»ó¿¡ À־, °¡°è µÚ¿¡ 8°³ÀÇ °è»ê´ë¸¦ Ãß°¡ÇÏ¿´´Ù. »õ·Î¿î Çö±Þ
 °è»ê´ë´Â Á¤¸é Çö±Þ °è»ê´ë¿Í´Â ¶³¾îÁ® Àֱ⠶§¹®¿¡, Ãâ³³¿øÀº À̵éÀÇ ÃÑ
 ÇÕ°èÀ» »óÁ¡ Á¤¸éÀ¸·Î º¸³»±â À§Çؼ­´Â ÀüÈ­¸¦ »ç¿ëÇÏ¿©¾ß ÇÑ´Ù. ÀÌ·±
 °Å¸®´Â Ãâ³³¿ø »çÀÌÀÇ Åë½Å¿¡ À־ Ãß°¡ÀûÀÎ ¿À¹öÇìµå(½Ã°£)¸¦ µé°Ô
 ÇÑÁö¸¸, Åë½ÅÀ» Àû°ÔÇÑ´Ù¸é, ÀÌ°ÍÀº ¹®Á¦µµ ¾Æ´Ï´Ù. ¸ðµç °è»ê´ë¸¦ ÇÊ¿ä·Î
 ÇÒ ¸¸Å­ ÁøÂ¥·ç Å« ¿ä±¸°¡ ÀÖ´Ù¸é, °°Àº ½Ã°£¿¡ ¸ðµç Çö±Ý °è»ê´ë¸¦
 »ç¿ëÇÏ¿© ¼Óµµ¸¦ Çâ»ó½ÃÅ°±â Àü¿¡ Ãß°¡ÀûÀÎ ¿À¹öÇìµå°¡ ¹ß»ýÇÒ ¼ö ÀÖÀ½À»
 °í·ÁÇØ¾ß ÇÑ´Ù.  ¸î¸îÀÇ °æ¿ì¿¡ ¸ðµç »óÁ¡À» ÅëƲ¾î ÇÑ°³ÀÇ Çö±Ý
 °è»ê´ë(¶Ç´Â Çö±Ý °è»ê´ë ¼¶)¸¦ °¡Áö°í ÀÖ´Ù°í º¼¼ö ÀÖ´Ù(°¢°¢ÀÇ Çö±Ý
 °è»ê´ë(¶Ç´Â ¼¶)Àº ÀüÈ­¸¦ ÅëÇؼ­ Åë½ÅÇØ¾ß ÇÑ´Ù). Çö±Ý °è»ê´ë¿¡ ÀÛ¾÷ÇÏ´Â
 ¸ðµç Ãâ³³¿øÀº ÀüÈ­¸¦ ÅëÇؼ­ °¢ÀÚ ¾ê±â¸¦ ÇÒ ¼ö ÀÖ´Ù¸é, ±×µéÀÌ ¾îµð¿¡
 ÀÖµçÁö »ó°üÀÌ ¾ø´Ù.

 ¿¹: One or several copies of UNIX or NT with extra CPUs
   on the same or different motherboard communicating through messages.

 À§ÀÇ ½Ã³ª¸®¿À°¡ Á¤È®ÇÏÁö ¾ÊÀ» Áö¶óµµ º´·Ä ½Ã½ºÅÛÀÇ Á¦ÇÑÁ¡À» Àß Ç¥Çö
 ÇÏ°í ÀÖ´Ù. ÇÑ°³ÀÇ CPU(¶Ç´Â Çö±Þ °è»ê´ë) Åë½Åµµ ´Ù¸¥ ¹®Á¦Á¡ÀÌ´Ù.

 4.3.  º´·Ä °è»êÀ» À§ÇÑ ±¸Á¶

 º´·Ä °è»êÀÇ º¸ÆíÀû ¹æ¹ý°ú ±¸Á¶Àº ´ÙÀ½¿¡ ³ªÅ¸³ª ÀÖ´Ù. ¿ÏÀüÇÏ°Ô ¼³¸íÇÏÁö
 ¾ÊÀ» Áö¶óµµ, º£¿À¿ïÇÁ µðÀÚÀο¡ °ü·ÃµÈ ±âº»ÀûÀÎ ¹®Á¦Á¡À» ÀÌÇØÇϴµ¥
 ÃæºÐÇÏ´Ù.

 4.3.1.  Çϵå¿þ¾î ±¸Á¶

 ´ÙÀ½ µÎ ¹æ¹ýÀ» »ç¿ëÇÏ´Â ±âº»ÀûÀÎ º´·Ä ÄÄÇ»ÅÍ:

 1. ¸Þ½ÃÁö¸¦ °¡Áö°í Åë½ÅÇÏ´Â Áö¿ª ¸Þ¸ð¸® ¸Ó½Å(º£¿À¿ïÇÁ Ŭ·¯½ºÅ͵é)

 2. ¸Þ¸ð¸®¸¦ ÅëÇØ Åë½ÅÇÏ´Â °øÀ¯ ¸Þ¸ð¸® ¸Ó½Åµé(SMP ¸Ó½Åµé) ÀüÇüÀûÀÎ
    º£¿À¿ïÇÁ´Â °í¼Ó ÀÌ´õ³ÝÀ» »ç¿ëÇÏ¿© ´ÜÀÏ CPU ¸Ó½ÅÀ» ¿¬°áÇÑ ÁýÇÕÀ̱⿡
    Áö¿ª ¸Þ¸ð¸® ¸Ó½ÅÀ̱⵵ ÇÏ´Ù. 4 way SMP ¹Ú½º´Â °øÀ¯ ¸Þ¸ð¸® ¸Ó½ÅÀÌ°í
    º´·Ä °è»êÀ¸·Î »ç¿ëµÇÁö°í ÀÖ´Ù. - º´·Ä Ç®±×¸²Àº °øÀ¯ ¸Þ¸ð¸®¸¦
    ÀÌ¿ëÇÏ¿© Åë½ÅÇÑ´Ù. ÄÄÇ»ÅÍ °¡°è¿¡¼­ À¯ÃßÇÑ´Ù¸é, Áö¿ª ¸Þ¸ð¸® ¸Ó½Åµé
    (°³°³ÀÇ Çö±Ý °è»ê´ë)Àº ¸¹Àº ¼öÀÇ CPUµé·Î È®ÀåÇÒ¼ö ÀÖ´Â ¹Ý¸é¿¡ °øÀ¯
    ¸Þ¸ð¸® ¸Ó½ÅµéÀÇ CPU¼ö´Â ¸Þ¸ð¸® ¿¬°á·Î ÀÎÇÏ¿© Á¦ÇÑÀûÀÌ´Ù.  ±×·¯³ª,
    "È¥ÇÕ" °øÀ¯ ¸Þ¸ð¸® ¸Ó½ÅÀ¸·Î ¸¸µé¸é ¸¹Àº ¼öÀÇ °øÀ¯ ¸Þ¸ð¸® ¸Ó½ÅµéÀ»
    ¿¬°áÇÒ ¼ö ÀÖ´Ù. ÀÌ·± È¥ÇÕ ¸Ó½ÅÀº »ç¿ëÀÚ¿¡°Ô´Â ÇÑ°³ÀÇ °Å´ëÇÑ SMP
    ¸Ó½ÅÀ¸·Î º¸ÀÌ°í, ±Û·Î¹ß ¸Þ¸ð¸®´Â ÇÁ·Î±×·¡¸Ó¿¡ ÀÇÇØ º¸¿©Áö°í ¸ðµç
    CPUµé¿¡ÀÇÇØ °øÀ¯µÇ¾î ´Ù¸¥ ·¹ÅϽõéÀ» °¡Áö°í Àֱ⠶§¹®¿¡ NUMA (non
    uniform memory access) ¸Ó½ÅÀÌ¶óµµ ÇÑ´Ù. ±×·¸Áö¸¸, ¸î°³ÀÇ ´Ü°è¿¡¼­
    NUSA ¸Ó½ÅÀº Áö¿ª °øÀ¯¸Þ¸ð¸® Ç®µé »çÀÌ¿¡¼­ ¸Þ½ÃÁö¸¦ Åë°úÇÏ¿©¾ß¸¸
    ÇÑ´Ù.  ¶ÇÇÑ, ³ëµåµéÀ» °è»êÇÏ´Â Áö¿ª ±â¾ïÀå¼Ò·Î¼­ÀÇ SMP ¸Ó½ÅÀ¸·Î
    ¿¬°áÀÌ °¡´ÉÇÏ´Ù.  ÀüÇüÀûÀÎ CLASS I ¸¶´õº¸µå´Â 2 °³³ª 4 °³ÀÇ CPU¸¦
    °¡Áö°í Àü¹ÝÀûÀÎ ½Ã½ºÅÛ ºñ¿ëÀ» °¨¼ÒÇϴµ¥ »ç¿ëµÈ´Ù. ¸®´ª½º ³»ºÎ
    ½ºÄÉÁÙ·¯´Â ¾î¶»°Ô CPUµéÀ» °øÀ¯ÇÒÁö¸¦ °áÁ¤ÇÑ´Ù. »ç¿ëÀÚ´Â (ÀÌ
    ½ÃÁ¡¿¡¼­) ƯÁ¤ SMP ÇÁ·Î¼¼¼­¿¡¼­ ƯÁ¤ ÀÏÀ» ÇÒ´çÇÒ ¼ö ¾ø´Ù. ±×·¯³ª,
    »ç¿ëÀÚ´Â µÎ°³ÀÇ µ¶¸³µÈ ÇÁ·Î¼¼½º³ª ¾²·¹µåµÈ ÇÁ·Î¼¼½ºµé ½ÇÇàÇÒ ¼ö
    ÀÖ°í, ÇÑ°³ÀÇ CPU ½Ã½ºÅÛ¿¡¼­ ¼º´É Çâ»óÀ» ±â´ëÇÒ ¼ö ÀÖ´Ù.

 4.3.2.  ¼ÒÇÁÆ®¿þ¾î API ±¸Á¶

 ÇÁ·Î±×·¥¿¡¼­ º´Ç༺À» Ç¥ÇöÇÏ´Â ±âº»ÀûÀΠǥÇö µÎ °¡Áö ¹æ¹ý:

 1. ÇÁ·Î¼¼¼­µé°£ ¸Þ½ÃÁö Àü¼Û »ç¿ë

 2. ¿î¿µÃ¼Á¦ ¾²·¹µå »ç¿ë ´Ù¸¥ ¹æ¹ýµµ ÀÖÁö¸¸, À§ÀÇ 2 °¡Áö°¡ Æø³Ð°Ô
    »ç¿ëµÈ´Ù. º´Çü¼ºÀÇ Ç¥ÇöÀº Çϵå¿þ¾îÀÇ ±âÃÊ·Î Á¶ÀýÇÒ ÇÊ¿ä´Â ¾ø´Ù´Â
    °ÍÀ» ±â¾ïÇÏ´Â °ÍÀÌ Áß¿äÇÏ´Ù.  ¸Þ½ÃÁö³ª ¾²·¹½º µÑ´Ù´Â SMP, NUMA-SMP,
    ±×¸®°í Ŭ·¯½ºÅÍ¿¡ ÀÇÇØ ±¸ÇöµÇ¾îÁ® ÀÖ´Ù. - ³ªÁß¿¡ È¿À²ÀûÀÌ°í
    È޴뼺¿¡´ëÇØ ¼³¸íÇÏ°Ú°í ÀÌ´Â Áß¿äÇÑ ³íÀïÁ¡ ÀÌ´Ù.(?)

 4.3.2.1.  ¸Þ½ÃÁö

 ¿ª»çÀûÀ¸·Î, ¸Þ½ÃÁö Àü¼Û ±â¼úÀº Ãʱâ Áö¿ª ¸Þ¸ð¸® º´·Ä ÄÄÇ»ÅÍ µðÁöÀο¡¼­
 °¡Á®¿Ô´Ù. ¾²·¹µå´Â °°Àº Àå¼Ò¿¡¼­ µ¥ÀÌÅ͸¦ »ç¿ëÇÏ´Â ¹Ý¸é¿¡ ¸Þ½ÃÁö´Â
 µ¥ÀÌÅÍ º¹»ç¸¦ °¡Á®´Ù ¾´´Ù. º¹»çµÇ¾î Áú¼ö ÀÖ´Â ¸Þ½ÃÁöµé¿¡¼­ ´ë±â½Ã°£¿Í
 ¼ÓµµÀº ¸Þ½ÃÁö Àü¼Û ¸ðµ¨¿¡ µû¶ó Á¦ÇÑ ÀÎÀÚ°¡ ÀÖ´Ù. ¸Þ½ÃÁö´Â ¾ÆÁÖ
 °£´ÜÇÏ´Ù.  : ¸î¸î µ¥ÀÌÅÍ¿Í ¸ñÀû ÇÁ·Î¼¼¼­. °øÅë ¸Þ½ÃÁö Àü¼Û APIµéÀº
 PVM¶Ç´Â MPIÀÌ´Ù.  ¸Þ½ÃÁö Àü¼ÛÀº ¾²·¹µå¿Í ¸Þ½ÃÁö°¡Áö°í È¿°úÀûÀ¸·Î
 ±¸ÇöµÈ´Ù. µÑ´Ù SMP ¸Ó½Å°ú ¸Ó½ÅµéÀÇ Å¬·¯½ºÅÍ »çÀÌ¿¡¼­µµ Àß ÀÛµ¿ÇÑ´Ù.
 SMP ¸Ó½Å¿¡¼­ ¸Þ½ÃÁö¸¦ »ç¿ëÇÔ À¸·Î¼­ ¾ò¾îÁö´Â ÀÌÁ¡Àº ¾²·¹µå ¹Ý´ë·Î
 ¾ÕÀ¸·Î Ŭ·¯½ºÅ͵éÀ» »ç¿ëÇÒ °á½ÉÀ» Çß´Ù¸é ¸Ó½ÅµéÀÇ Ãß°¡³ª Ç®±×¸² È®ÀåÀ»
 ½±°Ô ÇÒ ¼ö ÀÖ´Ù.

 4.3.2.2.  ¾²·¹µå

 ¿î¿µ üÁ¦ ¾²·¹µå´Â °øÀ¯ ¸Þ¸ð¸® SMP (Symmetrical Multiprocessing)Àº
 ÇÁ·Î±×·¥ º´Çà ºÎºÐµé »çÀÌ¿¡¼­ ´õ ºü¸¥ °øÀ¯ ¸Þ¸ð¸® Åë½Å°ú µ¿±âÈ­ À»
 °¡´ÉÇÏ°Ô µðÀÚÀÎ Çϱâ À§ÇÏ¿© °³¹ßµÇÁ³´Ù. ¾²·¹µå´Â °øÀ¯ ¸Þ¸ð¸®¸¦ ÅëÇÏ¿©
 Åë½ÅÀ» Çϱ⠶§¹®¿¡ SMP ½Ã½ºÅ۵鿡¼­ Àß ÀÛµ¿ÇÑ´Ù. ÀÌ·¯ÇÑ ÀÌÀ¯·Î
 »ç¿ëÀÚ´Â ±Û·Î¹ß µ¥ÀÌÅÍ¿¡¼­ Áö¿ª µ¥ÀÌÅ͸¦ ºÐ¸®ÇØ¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é,
 ÇÁ·Î±×·¥Àº Àß ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù. ¸Þ½ÃÁö¿¡ ºñ±³Çϸé, ÇÁ·Î¼¼½ºµé(¾²·¹µåµé)
 »ó¿¡ µ¥ÀÌÅ͸¦ °øÀ¯Çϱ⠶§¹®¿¡ ¸¹Àº ¾çÀÇ º¹»ç°¡ »ý·«µÈ´Ù. ±×·¸Áö¸¸,
 cache coherence À̶ó´Â ¿À¹öÇìµå°¡ µ¡ºÙÀÌ°Ô µÇ¾ú´Ù. ¾²·¹µå´Â SMP °æ°è
 ÀúÆíÀ¸·Î ¿¬ÀåµÇ´Â NUMA ±â¼úÀ» ¿äÇÑ´Ù. ÀÌ ±â¼úÀº »çÄ¡½º·´°í Àü¿¡
 ¸®´ª½º¿¡ ÀÇÇØ Áö¿øµÇÁö ¾È¾Ò¾ú´Ù. ¸Þ½ÃÁö À§¿¡¼­ ¾²·¹µå¸¦ ±¸ÇöÇØ ¿À°í
 ÀÖÁö¸¸ (syntron.com/ptools/ptools_pg.htm
 ), ¾²·¹µå°¡ ¸Þ½ÃÁö¸¦ ÀÌ¿ëÇÏ¿©
 ±¸ÇöÇÏ¿´À» ¶§ Á¾Á¾ ºñÈ¿À²ÀûÀÌ°Ô µÈ´Ù.  ´ÙÀ½Àº ¼º´É¿¡ °üÇÑ »óŸ¦
 º¸¿©ÁÖ°í ÀÖ´Ù:

             SMP ¸Ó½Å       ¸Ó½ÅµéÀÇ Å¬·¯½ºÅÍ     È®À强
                 ¼º´É              ¼º´É
             -----------     -------------------  -----------
   ¸Þ½ÃÁö      ÁÁÀ½              ¸Å¿ì ÁÁÀ½         ¸Å¿ì ÁÁÀ½
 ¾²·¹µå    ¸Å¿ì ÁÁÀ½             ³ª»Ý*             ³ª»Ý*

 * »çÄ¡½º·± NUMA ±â¼úÀ» ¿ä±¸.

 4.3.3.  Ç®±×¸² ±¸Á¶

 ´ÙÁß CPU¿¡¼­ º´·Ä·Î Ç®±×¸²À» ½ÇÇàÇϱâ À§Çؼ­´Â º´Çà ºÎºÐÀ¸·Î È®½ÇÈ÷
 ÂÉ°³¾ß ÇÑ´Ù. Ç¥ÁØ ´ÜÀÏ CPU Ç®±×¸²Àº ´ÙÁß ÇÁ·Î¼¼¼­¿¡¼­ ´ÜÀÏ CPU Ç®±×¸²
 º¸´Ù ´õ ºü¸£Áö´Â ¾ÊÀ» °ÍÀÌ´Ù. ÇÁ·Î±×·¥À» ÂÉ°³Á®¾ßÇÒ ¸î°¡Áö Åøµé°ú
 ÄÄÆÄÀÏÇÏÁö¸¸, º´·Ä ÄÚµåÀº "plug and play" ÀÛµ¿À» ÇÏÁö ¾Ê´Â´Ù. Ç®±×¸²¿¡
 ÀÇÁ¸ÀûÀ¸·Î º´·Ä ÄÚµå´Â ½±°í, ±Øµµ·Ï ¾î·Æ°Å³ª, ¾Ë°í¸®Áò ÀÇÁ¸¿¡ µû¶ó
 ºÒ°¡´ÉÇÑ °æ¿ìµµ ÀÖÀ» ¼ö ÀÖ´Ù.  ¼ÒÇÁÆ®¿þ¾î ¹®Á¦Á¡ÀÇ ¼³¸íÀÌ ÇÊ¿äÇÑ
 ÀûÇÕ¼º °³³äÀ» ¤°í°¡ÀÚ.
 4.4.  ÀûÇÕ¼º

 º´·Ä °è»ê¿¡ ´ëÇÑ ´ëºÎºÐÀÇ Áú¹®µéÀº ºñ½ÁÇÑ ´äº¯À» °¡Áø´Ù: "¸ðµç °ÍÀº
 Ç®±×¸²¿¡ ´Þ·ÈÀÖ´Ù."  ³íÀïÁ¡À¸·Î µé¾î°¡±â Àü¿¡, ¸¸µé¾îÁú ÇÊ¿ä°¡
 Àִ°¡¿¡ ´ëÇÑ ¸Å¿ì Áß¿äÇÑ ±¸º°ÀÌ Çϳª ÀÖ´Ù - º´Çà°ú º´·Ä»çÀÌÀÇ Â÷ÀÌ.
 ÀÌ·± ³íÀǸ¦ ÇÑ ¸ñÀûÀº ´ÙÀ½¿¡ ¿À´Â µÎ °¡Áö °³³äÀ» Á¤ÀÇÇϱâ À§Çؼ­ ÀÌ´Ù:
 ÇÁ·Î±×·¥ÀÇ º´Çà ºÎºÐÀº µ¶¸³ÀûÀ¸·Î °è»êÀÌ µÇ´Â °ÍÀÌ´Ù.  ÇÁ·Î±×·¥ÀÇ º´·Ä
 ºÎºÐµéÀº ±×µéÀÇ º´Çà ºÎºÐÀ¸·Î °°Àº ½Ã°£¿¡ ºÐ¸®µÈ ó¸® ´ÜÀ§¿¡¼­
 ½ÇÇàµÈ´Ù.  ÀÌ·± ±¸º°Àº ¸Å¿ì Áß¿äÇÏ´Ù. ¿Ö³ÄÇϸé, º´Ç༺Àº ÇÁ·Î±×·¥ÀÇ
 ¼Ó¼ºÀÌ°í È¿À²ÀûÀÎ PARALLELISHÀº ¸Ó½ÅÀÇ ¼Ó¼ºÀ̱⠶§¹®ÀÌ´Ù. ÀÌ»óÀûÀ¸·Î,
 º´·Ä ½ÇÇàÀº ´õ ºü¸¥ ¼º´ÉÀ¸·Î ³¡¸¶ÃÄ¾ß ÇÑ´Ù. º´·Ä ¼º´É¿¡¼­ ÀçÇÑ ¿äÀÎÀº
 Åë½Å ¼Óµµ¿Í °è»ê ³ëµåµé »çÀÌÀÇ ´ë±â½Ã°£ÀÌ´Ù. (¶ÇÇÑ, ´ë±â½Ã°£Àº cache
 coherency·Î ÀÎÇØ ¾²·¹µåÈ­µÈ SMP Ç®±×¸²¿¡µµ ÀÖ´Ù.) ¸¹Àº ÀÏ¹Ý º´·Ä Æò°¡
 Å×½ºÆ®Àº ³ôÀº º´·Ä, Åë½Å, ±×¸®°í ´ë±â½Ã°£ÀÌÁö, º´¸ñÇö»ó¿¡ ÀÖÁö ¾Ê´Ù.
 ÀÌ·± ÇüÅÂÀÇ ¹®Á¦¸¦ "obviously parallel"À̶ó ÇÑ´Ù. ´Ù¸¥ Ç®±×¸²µéÀº
 º´·Ä¿¡¼­ ÇÁ·Î±×·¥ÀÇ º´Çà ºÎºÐÀÌ ±×·¸°Ô °£´ÜÇÏ°í ½ÇÇàÇÒ ¼ö ÀÖ´Â °ÍÀÌ
 ¾Æ´Ï±â¿¡ »ç½Ç ÇÁ·Î±×·¥ÀÌ ´õ ´À¸®°Ô ½ÇÇàÇÏ´Â ¿øÀÎÀÌ µÇ±âµµ ÇÑ´Ù. ±×·¸±â
 ¶§¹®¿¡ ÇÁ·Î±×·¥ÀÇ ´Ù¸¥ º´Çà ºÎºÐ¿¡ ¾ò¾îÁø ÀÓÀÇ ¼º´ÉÇâ»óÀ» ¶³¾î¶ß¸®°Ô
 µÈ´Ù. ªÀº ±â°£¿¡¼­ Åë½Å ½Ã°£ ºñ¿ëÀ» °è»ê ½Ã°£À¸·Î º¸ÃæÇØ¾ß ÇÑ´Ù.
 ±×·¸Áö ¾ÊÀ¸¸é, º´Çà ºÎºÐÀÇ º´·Ä ½ÇÇàÀº ºñÈ¿À²ÀûÀÌ´Ù.  ÇÁ·Î±×·¡¸ÓÀÇ
 ÀÓ¹«´Â ÇÁ·Î±×·¥ÀÇ º´Çà ºÎºÐµéÀ» º´·Ä·Î ½ÇÇàÇØ¾ß ÇÏ´Â °Í°ú ÇÏÁö ¸»¾Æ¾ß
 ÇÒ °ÍÀ» °áÁ¤ÇÏ´Â °ÍÀÌ´Ù. ÀÌ ´ë´äÀº Ç®±×¸²ÀÇ È¿À²·Î °áÁ¤ÇÒ ¼ö ÀÖ´Ù.
 ´ÙÀ½ ±×·¡ÇÁ´Â ÇÁ·Î±×·¥ÀÇ »óȲÀ» °£·«È÷ º¸¿©ÁÖ°í ÀÖ´Ù.

            | *
            | *
            | *
    % of    | *
    appli-  |  *
    cations |  *
            |  *
            |  *
            |    *
            |     *
            |      *
            |        ****
            |            ****
            |                ********************
            +-----------------------------------
             communication time/processing time

 ¿Ïº®ÇÑ º´·Ä ÄÄÇ»ÅÍ¿¡¼­ Åë½Å/ó¸® ºñÀ²ÀÌ °°ÀÌÁö°Ô µÉ °ÍÀÌ°í, ¾î¶²
 °ÍÀ̵çÁö º´·Ä·Î º´ÇàÀ» ±¸ÇöµÇ¾î Áø´Ù. °øÀ¯ ¸Þ¸ð¸®¸¦ °¡Áö°í ÀÖ´Â ½ÇÁ¦
 º´·Ä ÄÄÇ»ÅÍ¿¡¼­´Â ÀÌ ±×·¡ÇÁ¿¡¼­ º¸¿©ÁÖ´Â È¿°ú¿¡ µû¶ó¿À°Ô µÈ´Ù.
 º£¿À¿ïÇÁ µðÀÚÀÎ ÇÒ ¶§, º´·Ä È¿À²Àº ƯÁ¤ º´·Ä ÄÄÇ»ÅÍ¿¡ ´ëÇÑ Åë½Å ½Ã°£°ú
 Ã³¸® ½Ã°£ÀÇ ºñÀ²¿¡ ÀÇÁ¸ÀûÀ̱⠶§¹®¿¡ »ç¿ëÀÚ ÀÌ ±×·¡ÇÁ¸¦ ¸¶À½¿¡
 »õ°ÜµÎ±â ¹Ù¶õ´Ù. Ç®±×¸²Àº º´·Ä ÄÄÇ»ÅÍµé »çÀÌ¿¡ À̵¿ÇÒ ¼ö ÀÖ¾î¾ß
 ÇÏÁö¸¸, ´Ù¸¥ Ç÷§Æû»óÀÇ È¿À²Àº º¸ÀåÇÒ ¼ö ¾ø´Ù.  ÀϹÝÀûÀ¸·Î
 À̽İ¡´ÉÇϸ鼭 È¿À²ÀûÀÎ º´·Ä ÇÁ·Î±×·¥Àº Á¸ÀçÇÏÁö ¾Ê´Â´Ù.

 À§ÀÇ ±×·¡ÇÁ¸¦ ÅëÇØ ¶Ç ´Ù¸¥ ÇÑ°¡Áö¸¦ À¯ÃßÇÒ ¼ö ÀÖ´Ù. º´·Ä ¼öÇà È¿À²Àº
 Åë½Å/ó¸® ºñÀ²¿¡ ÀÇÁ¸ÇÏ´Â °ÍÀ̱⠶§¹®¿¡, ´ÜÁö ÀÌ ºñÀ² ¿ä¼ÒÀÇ ÇÑ
 ºÎºÐ¸¸À» (Áï, Åë½Å ¼º´É ¶Ç´Â ó¸® ¼º´É µÑ Áß Çϳª¸¸À») º¯È­½ÃÅ°´Â
 °ÍÀ¸·ÎºÎÅÍ ¾î¶² ƯÁ¤ ÀÀ¿ëÇÁ·Î±×·¥Àº ´õ »¡¶óÁú °ÍÀ̶ó´Â ±â´ë¸¦ Ç×»ó ÇÒ
 ¼ö ÀÖ´Â °ÍÀº ¾Æ´Ï´Ù¶ó´Â °ÍÀÌ´Ù. Åë½Å¼Óµµ´Â º¯ÇÏÁö ¾ÊÀº »óÅ¿¡¼­ ó¸®
 ¼Óµµ¸¸ÀÇ º¯È­´Â ÇÁ·Î±×·¥¿¡ ¿¹»óÄ¡ ¾ÊÀº ¿µÇâÀ» ÁÙ ¼ö ÀÖ´Ù. ¿¹¸¦µé¾î,
 Åë½Å¼Óµµ´Â ±×´ë·Î À¯ÁöÇÑä CPU ¼Óµµ¸¦ µÎ¹è ¶Ç´Â ¼¼¹è Áõ°¡½ÃŲ °æ¿ì
 º¯°æ ÀÌÀü º´·Ä ¼öÇàÀÌ È¿À²ÀûÀ̾ú´ø ÇÁ·Î±×·¥ÀÇ ºÎºÐÀ» ¼øÂ÷ÀûÀ¸·Î
 ¼öÇàÇϵµ·Ï ¼öÁ¤ÇÏ´Â °ÍÀÌ ´õ¿í È¿À²ÀûÀÎ °æ¿ìµµ ÀÖ´Ù. ¸»ÇÏÀÚ¸é ÀÌÀüÀÇ
 º´·Ä½ÇÇàºÎºÐÀ» ÀÌÁ¦´Â ¼øÂ÷ÀûÀ¸·Î ¼öÇà½ÃÅ°´Â °ÍÀÌ ¼Óµµ°¡ ´õ ºü¸¦ ¼ö
 ÀÖ´Ù´Â °ÍÀÌ´Ù.  ´õ ³ª¾Æ°¡, º´·ÄÈ­ÇÏ¸é ºñÈ¿À²ÀûÀÎ ºÎºÐÀ» º´·Ä¼öÇàÇÏ°Ô
 µÇ¸é °á±¹ ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ÃÖ°í ¼Óµµ¸¦ ³»Áö ¸øÇÏ°Ô µÈ´Ù. ÀÌ·¯ÇÑ °æ¿ì, ´õ
 ºü¸¥ ÇÁ·Î¼¼¼­¸¦ Ãß°¡ÇÏ¿© º´·Ä¼öÇà½ÃÅ°¸é ¿ÀÈ÷·Á ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¼Óµµ°¡
 ¶³¾îÁö°Ô µÈ´Ù.(±× ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ÃÖ°í ¼Óµµ¸¦ ³»µµ·Ï Çϱâ À§Çؼ­´Â
 »õ·Î¿î CPU¸¦ Ãß°¡ÇÏÁö ¸»¾Æ¾ß ÇÑ´Ù.)  ±×·¡¼­, °á·ÐÀ¸·Î º´·Ä Çϵå¿þ¾î
 È¯°æÀ» »ç¿ëÇØ¾ß ÇÒÁö ÇÏÁö ¸»¾Æ¾ß ÇÒÁö¸¦ ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù. ±×·¸±â
 ¶§¹®¿¡, º´·Ä ¸Ó½ÅÀÇ ÀûÇÕ¼ºÀÌ Ç®±×¸²¿¡ ¸Â´ÂÁö °£ÆÄÇؾßÇÒ ÇÊ¿ä°¡ ÀÖ´Ù.
 CPU ¼Óµµ, ÄÄÆÄÀÏ·¯, ¸Þ½ÃÁö Àü¼Û API, ³×Æ®¿öÅ© µîµîÀ» Æ÷ÇÔÇÑ ¸¹Àº
 ³íÀïÁ¡À» »ìÆ캼 ÇÊ¿ä°¡ ÀÖ´Ù. Ç®±×¸²ÀÇ À±°ûÀÏ »ÓÀÌÁö ÀüüÀûÀÎ À̾߱⸦
 ÁÖ´Â °ÍÀÌ ¾Æ´ÔÀ» ÁÖÀÇÇ϶ó. ÇÁ·Î±×·¥ÀÇ Áß¿äÇÑ ºÎºÐÀ» ±¸ºÐÇÒ ¼ö ÀÖÁö¸¸,
 ÀÌ ºÎºÐ¿¡ ´ëÇÑ Åë½Å ºñ¿ëÀ» ¾Ë ¼ö ´Â ¾ø´Ù. ÁÖ¾îÁø ½Ã½ºÅÛ´ëÇؼ­µµ, Åë½Å
 ºñ¿ëÀº ÄÚµå È¿À²À» º´·ÄÈ­ÇÒ ¼ö´Â ¾ø´Ù.  ¸¶Áö¸·À¸·Î ÀϹÝÀûÀÎ ¿ÀÇظ¦
 º¸µµ·Ï ÇÏÀÚ. ÀÚÁÖ "º´·ÄÈ­µÈ ÇÁ·Î±×·¥"À̶ó ÇÏÁö¸¸, ½ÇÁ¦·Î´Â ÇÁ·Î±×·¥ÀÇ
 CONCURRENT ºÎºÐÀ¸·Î¸¸ À§Ä¡ÇÏ°í ÀÖ´Ù. È¿°úÀûÀÎ PARALLELIZATIONÀº ¸Ó½ÅÀÇ
 ¼Ó¼ºÀÌ´Ù.

 4.5.  º´·Ä ¼ÒÇÁÆ®¿þ¾î ÀÛ¼º°ú Æ÷ÆÃ

 º´·Ä °è»êÀÌ ÇÊ¿äÇÑ´Ù°í °áÁ¤Çß°í º£¿À¿ïÇÁ¸¦ µðÀÚÀÎÇÏ°í ±¸¼ºÇϱ⸦
 ¿øÇÑ´Ù¸é, Àá½Ã ÀüÀÇ ³íÀÇµÈ ³»¿ëÀ» »ìÆì º¸´Â °ÍÀÌ ÁÁÀ» °Í °°´Ù.
 ÀϹÝÀûÀ¸·Î ´ÙÀ½ µÎ °¡Áö¸¦ ÇØ¾ß ÇÑ´Ù:

 1. CLASS I º£¿À¿ïÇÁ¸¦ ±¸¼ºÇغ¸°í ³­ÈÄ¿¡ ´ç½ÅÀÇ Ç®±×¸²À» ±×°Í¿¡ ¸Â°Ô
    ÀÛ¼ºÇØ º¸ÀÚ. ¾Æ´Ï¸é º£¿À¿ïÇÁ¿¡¼­ ÀÛµ¿ÇÏ´Â º´·Ä Ç®±×¸²À» ½ÇÇຸ¶ó
    (±×·¯³ª ¾Õ¿¡¼­ ¾ð±ÞÇß´ø À̵¿¼º°ú È¿À²ÀÇ ³íÀïÁ¡À» ÁÖÀÇÇضó)

 2. º£¿À¿ïÇÁ¿¡ ½ÇÇàÇÒ Ç®±×¸²À» »ìÆ캸°í ÇÊ¿ä·Î ÇÏ´Â Çϵå¿þ¾î¿Í
    ¼ÒÇÁÆ®¿þ¾î ÇüÅ¿¡ ´ëÇÑ Æò°¡¸¦ Çغ¸¾Æ¶ó.

    ÀÌ·± °æ¿ì ÀÏÁö¶óµµ, ¸î¸î °üÁ¡¿¡¼­ È¿°ú¿¡ ´ëÇÑ ¹®Á¦À» »ìÆ캼 ÇÊ¿ä°¡
    ÀÖ´Ù.  ÀϹÝÀûÀ¸·Î ´ÙÀ½ÀÇ ¼¼ °¡Áö¸¦ »ý°¢ Çغ¼ ÇÊ¿ä°¡ ÀÖ´Ù:

 1. ÇÁ·Î±×·¥¿¡¼­ º´Çà ºÎºÐÀ» °áÁ¤

 2. º´·Ä È¿À²À» °è»ê

 3. ÇÁ·Î±×·¥¿¡¼­ º´Çà ºÎºÐÀ» ±â¼ú ÀÚ! Áö±ÝºÎÅÍ À̵éÀ» »ìÆ캸ÀÚ.

 4.5.1.  ÇÁ·Î±×·¥ÀÇ º´Çà ºÎºÐ °áÁ¤

 ÀÌ ´Ü°è´Â ºó¹øÇÏ°Ô "ÇÁ·Î±×·¥ º´·ÄÈ­Çϱâ"À̶ó Çϱ⵵ ÇÑ´Ù.
 Parallelization °áÁ¤Àº µÎ ¹ø° ´Ü°è¿¡¼­ ÇÒ °ÍÀÌ´Ù. ÀÌ ´Ü°è¿¡¼­´Â
 µ¥ÀÌÅÍ ÀÇÁ¸À» °áÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù.  >½ÇÁúÀûÀÎ ÀÔÀå¿¡¼­, Ç®±×¸²Àº µÎ
 °¡Áö º´Çà ÇüŸ¦ º¸ÀÌ°í ÀÖ´Ù: °è»ê (number crunching)°ú I/O
 (µ¥ÀÌÅͺ£À̽º). ¸¹Àº °æ¿ì¿¡ °è»ê°ú I/O º´Ç༺Àº orthogonalÀÌÁö¸¸,
 Ç®±×¸²Àº µÑ ´Ù¸¦ ¿ä±¸ÇÑ´Ù. ±âÁ¸ÀÇ Ç®±×¸²¿¡ ´ëÇÑ º´Çà ºÐ¼®À» ¼öÇàÇÒ ¼ö
 ÀÖ´Â µµ±¸µéÀÌ ÀÖ´Ù. ÀÌµé ´ëºÎºÐÀÇ µµ±¸µéÀº Æ÷Æ®¶õ¿¡ ÀÇÇØ ÀÛ¼ºµÇ¾ú´Ù.
 Æ÷Æ®¶õÀ» »ç¿ëÇÏ´Â ÁÖµÈ µÎ °¡Áö ÀÌÀ¯: ´ëºÎºÐÀÇ crunching Ç®±×¸²µéÀÌ
 Æ÷Æ®¶õÀ¸·Î ÀÛ¼ºµÇ¾ú°í ºÐ¼®ÇϱⰡ ½±´Ù. µµ±¸µéÀÌ ¾ø´Ù¸é, ÀÌ ´Ü°è´Â ±âÁ¸
 Ç®±×¸²¿¡ ´ëÇØ ´Ù¼Ò ¾î·Á¿ï °ÍÀÌ´Ù.

 4.5.2.  º´·Ä È¿À² °è»ê

 µµ±¸µéÀÇ µµ¿òÀÌ ¾øÀ¸¸é, ½ÃÇàÂø¿À¸¦ °ÅÄ¡°Å³ª ¿¾³¯ Áö½Ä¿¡ ÀÇÇØ ÃßÃøÀ»
 °¡Áö°í ÇؾßÇÒ °ÍÀÌ´Ù. ƯÁ¤ Ç®±×¸²À» »ý°¢ÇÏ°í ÀÖÀ¸¸é CPU ÇÑ°è(°è»ê
 ¹üÀ§)¿Í ÇÏµå µð½ºÅ© ÇÑ°è(I/O ¹üÀ§)¸¦ °áÁ¤Çغ¸¾Æ¶ó. º£¿À¿ïÇÁÀÇ ¿ä±¸
 »çÇ×Àº ´ç½ÅÀÇ ¿ä±¸¿¡ µû¶ó ¸Å¿ì ´Ù¾çÇÏ´Ù. ¿¹¸¦ µé¾î, °è»ê ÇÑ°è¿¡¼­ÀÇ
 ¹®Á¦Àº ¸î°³ÀÇ ¸Å¿ì ºü¸¥ CPU¿Í °í¼ÓÀÇ ³·Àº ´ë±â ½Ã°£ÀÇ ³×Æ®¿öÅ©¸¦
 ÇÊ¿ä·Î ÇÑ´Ù. ¹Ý¸é¿¡ I/O ÇÑ°è ¹®Á¦´Â ´õ ´À¸° CPU¿Í ºü¸¥ ÀÌ´õ³ÝÀÌ ´õ
 È¿°úÀûÀ¸·Î ÀÛµ¿À» ÇÑ´Ù.  ÀÌ·± ±Ç°í´Â Á¾Á¾ ´ëºÎºÐÀÇ »ç¶÷µéÀ» ³î¶ó°Ô
 ÇÑ´Ù. ¿Ö³ÄÇϸé, º¸ÆíÀûÀÎ »ý°¢À¸·Î´Â ´õ ºü¸¥ ÇÁ·Î¼¼¼­°¡ Ç×»ó ´õ
 ÁÁ´Ù¶ó°í ¿©±â±â ¶§¹®ÀÌ´Ù.  ¿¹»êÀÌ ÇÑ°è°¡ ¾ø´Ù¸é ¸Â´Â ¸»ÀÏÁö ¸ð¸£Áö¸¸,
 ½ÇÁ¦ ½Ã½ºÅÛÀº ºñ¿ë¿¡ À־ Á¦ÇÑÀÌ ÀÖ´Ù. I/O ÇÑ°è ¹®Á¦¿¡ ´ëÇؼ­ Á¶±Ý
 ¾Ë·ÁÁø ±ÔÄ¢(Eadline-Dekov ¹ýÄ¢À̶ó ºÒ¸²)ÀÌ Àִµ¥ ²Ï µµ¿òÀÌ µÈ´Ù: ¶È
 °°Àº ´©Àû CPU ¼º´É »öÀÎÀ» °¡Áø ÁÖ¾îÁø µÎ °³ÀÇ º´·Ä ÄÄÇ»ÅÍ¿¡¼­, ´ÊÀº
 ÇÁ·Î¼¼¼­(±×¸®°í ¾Æ¸¶ ÇÁ·Î¼¼½º°£ Åë½Å ³×Æ®¿öÅ©µµ ´À·ÁÁú°ÍÀÌ´Ù)Àº I/O°¡
 ¸¹Àº Ç®±×¸²¿¡ ´ëÇؼ­ ´õ ÁÁÀº ¼º´ÉÀ» º¸¿©ÁÙ °ÍÀÌ´Ù.  ÀÌ·± ¹ýÄ¢ÀÇ Áõ¸íÀº
 ÀÌ ¹®¼­ÀÇ ³ªÁß¿¡ ³ª¿Ã °ÍÀÌÁö¸¸, Èï¹Ì°¡ ÀÖ´Ù¸é Performance
 Considerations for I/O-Dominant Applications on Parallel Computers
 (Postscript format 109K ) (www.plogic.com/pub/papers/exs-pap6.ps
 ) ³í¹®À» ¹Þ¾Æ¼­ º¸¸é
 µÈ´Ù.  ´ç½ÅÀÇ Ç®±×¸²¿¡¼­ º´ÇàÀÇ ÇüŸ¦ ¹«¾ùÀÎÁö¸¦ °áÁ¤À» Çß¾ú´Ù¸é,
 º´·Ä·Î ÇßÀ» °æ¿ì ¾ó¸¶³ª È¿À²ÀÌ ÀÖ´ÂÁö °è»êÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. ¼ÒÇÁÆ®¿þ¾î
 µµ±¸¿¡ ´ëÇÑ ¼³¸íÀº "¼ÒÇÁÆ®¿þ¾î"ÀýÀ» º¸¾Æ¶ó.  µµ±¸¸¦ °¡Áö°í ÀÖÁö ¾ÊÀ¸¸é
 ÀÌ ´Ü°è¸¦ °ÅÄ¡´Â ¹æ¹ýÀ» ÃßÃàÇؾßÇÒ °ÍÀÌ´Ù. °èÇÑ ÇÑ°è ·çÇÁ¸¦ ºÐ´ÜÀ§·Î
 ÃøÁ¤ÇÏ°í ÃÊ´ÜÀ§·Î µ¥ÀÌÅÍ Àü¼ÛÀ» ÃøÁ¤Çß´Ù¸é, parallelization¸¦ À§ÇÑ
 ÁÁÀº ÈÄ¿øÀÚ°¡ µÇ¾î¾ß ÇÑ´Ù.(?) ±×·¯³ª ±â¾ïÇØ¾ß ÇÒ °ÍÀº 16ºÐÀÌ °É¸®°í 32
 ºÎºÐÀ¸·Î ºÐ¸®ÇÏ¿´´Ù¸é, ±×¸®°í °¢ ºÎºÐ ¸¶´Ù µ¥ÀÌÅÍ Àü¼ÛÇϴµ¥ ¸î ÃÊÀÇ
 ½Ã°£ÀÌ °É¸°´Ù¸é, ±× °ÍÀº ¿©À¯¸¦ °¡Áú ¼ö°¡ ¾ø°Ô µÉ °ÍÀÌ´Ù. °¨¼ÒÇϱâ
 À§ÇÑ ¹ÝȯÁ¡À¸·Î µµ´ÞÇÒ °ÍÀÌ´Ù.

 4.5.3.  ÇÁ·Î±×·¥¿¡¼­ º´Çà ºÎºÐÀ» ±â¼ú

 ÇÁ·Î±×·¥ÀÇ º´º´ ºÎºÐÀ» ±â¼úÇϱâ À§ÇÑ ¹æ¹ýÀÌ ¸î°¡Áö°¡ ÀÖ´Ù:

 1. ¸í½ÃÀû º´Çà ½ÇÇà

 2. ¾Ï½ÃÀû º´Çà ½ÇÇà

    ÀÌµé °£ÀÇ ÁÖ¿äÇÑ Â÷ÀÌÁ¡Àº ¸í½ÃÀû º´·Ä¼ºÀº »ç¿ëÀÚ¿¡ ÀÇÇØ °áÁ¤ÀÌ
    µÇ°í, ¾Ï½ÃÀû º´·Ä¼ºÀº ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ °áÁ¤ÀÌ µÈ´Ù.

 4.5.3.1.  ¸í½ÃÀû ¹æ¹ý

 ±âº»ÀûÀÎ ¹æ¹ýÀ¸·Î º´·Ä ÄÄÇ»Å͸¦ À§ÇØ ¹Ø±×¸²ÀÇ Æ¯Á¤ ºÎºÐÀ» »ç¿ëÀÚ°¡
 º¯°æÇؾ߸¸ ÇÑ´Ù. »ç¿ëÀÚ´Â ¹Ýµå½Ã PVMÀ̳ª MPIÀ» Ãß°¡Çϰųª POSIX
 ¾²·¹µå¸¦ »ç¿ëÇÏ´Â ¾²·¹µå¸¦ Ãß°¡ÇؾßÇÑ´Ù. (±×·¯³ª ¸¶À½¿¡ ±â¾ïÇصξî¾ß
 ÇÒ °ÍÀº ¾²·¹µå SMP ¸¶´õº¸µåµé »çÀÌ·Î À̵¿ÇÒ ¼ö ¾ø´Ù.)  ¸í½ÃÀû ¹æ¹ýÀº
 ±¸Çö°ú ¹ú·¹Àâ±â°¡ ¸Å¿ì ¾î·Á¿î °æÇâÀÌ ÀÖ´Ù. ÀüÇüÀûÀ¸·Î »ç¿ëÀÚ°¡ Ç¥ÁØ
 Æ÷Æ®¶õ 77À̳ª C/C++ ¹Ø±×¸²¿¡¼­ ¸í½ÃÀû ÇÔ¼ö¶ó ºÒ¸®´Â °ÍÀ» Æ÷ÇÔÇؾß
 ÇÑ´Ù.  MPI ¶óÀ̺귯¸®Àº ¸î°¡Áö Ç¥ÁØ º´·Ä ¹æ¹ýÀ» ½±°Ô ±¸ÇöÇÒ ¼ö ÀÖ´Â
 ¸î°¡Áö ÇÔ¼ö¸¦ °¡Áö°í ÀÖ´Ù.(¿¹·Î, Èð¾îÁÖ´Â/¸ðÀ¸´Â ÇÔ¼öµé).  Ãß°¡ÀûÀ¸·Î
 º´·Ä ÄÄÇ»ÅÍÀ» À§ÇØ ¾¯¿©Áø Ç¥ÁØ ¶óÀ̺귯¸®¸¦ ÀÌ¿ëÇÏ´Â °Íµµ °¡´ÉÇÏ´Ù.
 ±×·¸Áö¸¸, ÁÖ¸ñÇÒ °ÍÀº À̵¿¼º°ú È¿À²¼ºÀº ¸ð¼øÀûÀÌ´Ù.  ¿ª»çÀûÀÎ
 ÀÌÀ¯·ÎÇؼ­ ¸¹Àº ¼ýÀÚÀÇ cruching ÄÚµåµéÀº FORTRANÀ¸·Î ÀÛ¼ºµÇ¾î Á® ÀÖ´Ù.
 ÀÌ·¯ÇÑ ÀÌÀ¯·ÎÇؼ­ FORTRANÀº º´·Ä °è»ê¿¡ À־ °¡Àå ¸¹Àº ¾çÀÇ
 Áö¿ø(µµ±¸µé, ¶óÀ̺귯¸®µé, µîµî)À» °¡Áö°í ÀÖ´Ù. ÇöÀç C¸¦ »ç¿ëÇÏ°í ÀÖ´Â
 ¸¹Àº ÇÁ·Î±×·¡¸ÓµéÀÌ C°¡ ´õ»¡¸® ½ÇÇàµÅ´Ù´Â »ý°¢À¸·Î ±âÁ¸ FORTRAN
 Ç®±×¸²À» C·Î ÀçÀÛ¼ºÇÏ°í ÀÖ´Ù. ÀÌ·¯ÇÑ »ý°¢ÀÌ º¸ÆíÀûÀÎ ¸Ó½Å Äڵ忡¼­ C·Î
 µÈ °ÍÀº »ç½ÇÀÏÁö ¸ô¶óµµ, ¸î°¡Áö ÁÖ¿äÇÑ °áÁ¡À» °¡Áö°í ÀÖ´Ù. C¿¡¼­
 Æ÷ÀÌÅÍÀÇ »ç¿ëÀº µ¥ÀÌÅÍ ÀÇÁ¸¼ºÀ» °áÁ¤Çϴµ¥ À־ ±Øµµ·Ï ¾î·Æ°Ô
 ¸¸µç´Ù. Æ÷ÀÎÅÍÀÇ ÀÚµ¿ ºÐ¼®Àº ±Øµµ·Î ¾î·Æ´Ù. ±âÁ¸ Æ÷Æ®¶õ ÇÁ·Î±×·¥À»
 °¡Áö°í ÀÖ°í ¾ÕÀ¸·Î º´·Ä·Î ó¸®ÇÒ·Á°í ÇÑ´Ù¸é, C·Î ¹Ù²ÙÁö ¸»¶ó.

 4.5.3.2.  ¾Ï½ÃÀû ¹æ¹ý

 ¾Ï½ÃÀû ¹æ¹ýÀº »ç¿ëÀÚ°¡ ÄÄÆÄÀÏÇϱâ À§ÇØ º´·ÄÈ­ °áÁ¤ÀÇ ÀϺÎ(¶Ç´Â ¸ðµå)¸¦
 Æ÷±âÇØ¾ß ÇÑ´Ù. Æ÷Æ®¶õ 90ÀÇ ¿¹·Î °í¼º´É Æ÷Æ®¶õ(High Performance
 FORTRAN: HPF), Bluk Bynchronous Parallel (BSP), ±×¸®°í ´Ù¸¥ ¹æ¹ýÀÇ
 ÃÑüÀû ¸ðÀÓµéÀº ¾ÆÁ÷µµ °³¹ßÁß¿¡ ÀÖ´Ù.  ¾Ï½ÃÀû ¹æ¹ýÀº »ç¿ëÀÚ°¡ ±×µé
 Ç®±×¸²ÀÇ º´Çà ¼ºÁú¿¡ ´ëÇÑ ¸î°¡Áö Á¤º¸ Á¦°øÀ» ¿ä±¸ÇÏÁö¸¸, ÄÄÆÄÀÏ·¯´Â
 ¾î¶»°Ô ÀÌ º´ÇàÀ» º´·Ä·Î ½ÇÇàÇϴ°¡¿¡ ´ëÇÑ ¸¹Àº °áÁ¤À» ³»·Á¾ß ÇÒ
 °ÍÀÌ´Ù. ÀÌ ¹æ¹ýÀº À̵¿¼º°ú È¿À²¼ºÀÇ ¸î°¡Áö ´Ü°è¸¦ Á¦°øÇÏÁö¸¸, º´·Ä
 ÄÄÇ»ÅÍ¿¡ ´ëÇÑ º´Çà ¹®Á¦ÀÇ ±â¼úÀ» ÇÏ´Â "°¡Àå ÁÁÀº ¹æ¹ý"Àº ¾ÆÁ÷±îÁö´Â
 ¾Æ´Ï´Ù.

 5.  º£¿À¿ïÇÁ ÀÚ¿øµé

 5.1.  ½ÃÀÛÁ¡

 º£¿À¿ïÇÁ ¸ÞÀϸµ ¸®½ºÆ®. beowulf-request@cesdis.gsfc.nasa.gov
 ·Î ¸Þ½ÃÁö¿¡ subscribe¸¦
 ³Ö¾î ¸ÞÀÏÀ» º¸³»¸é ±¸µ¶ÀÌ µÈ´Ù.  º£¿À¿ïÇÁ ȨÆäÀÌÁö www.beowulf.org
 

 ?  Extreme Linux www.extremelinux.org

 ?  Extreme Linux Software from Red Hat www.redhat.com/extreme
 

 5.2.  ¹®¼­

 º£¿À¿ïÇÁ HOWTOÀÇ ÃÖ±Ù ¹®¼­ ?  The latest version of the Beowulf HOWTO
 www.sci.usq.edu.au/staff/jacek/beowulf <
 http://www.sci.usq.edu.au/staff/jacek/beowulf>

 /º£¿À¿ïÇÁ ½Ã½ºÅÛ ±¸¼º ?  Building a Beowulf System
 www.cacr.caltech.edu/beowulf/tutorial/building.html
 

 JacekÀÇ º£¿À¿ïÇÁ ¿¬°áµé ?  Jacek's Beowulf Links
 www.sci.usq.edu.au/staff/jacek/beowulf
 

 º£¿À¿ïÇÁ ¼³Ä¡°ú °ü¸® HOWTO (DRAFT) ?  Beowulf Installation and
 Administration HOWTO (DRAFT) www.sci.usq.edu.au/staff/jacek/beowulf
 

 ¸®´ª½º º´·Ä ó¸® HOWTO ?  Linux Parallel Processing HOWTO
 yara.ecn.purdue.edu/~pplinux/PPHOWTO/pphowto.html
 

 5.3.  ³í¹®

 ?  Chance Reschke, Thomas Sterling, Daniel Ridge, Daniel Savarese,
 Donald Becker, and Phillip Merkey A Design Study of Alternative
 Network Topologies for the Beowulf Parallel Workstation.  Proceedings
 Fifth IEEE International Symposium on High Performance Distributed
 Computing, 1996.

 www.beowulf.org/papers/HPDC96/hpdc96.html <
 http://www.beowulf.org/papers/HPDC96/hpdc96.html>

 ?  Daniel Ridge, Donald Becker, Phillip Merkey, Thomas Sterling
 Becker, and Phillip Merkey. Harnessing the Power of Parallelism in a
 Pile-of-PCs.  Proceedings, IEEE Aerospace, 1997.

 www.beowulf.org/papers/AA97/aa97.ps
 

 ?  Thomas Sterling, Donald J. Becker, Daniel Savarese, Michael R.
 Berry, and Chance Res. Achieving a Balanced Low-Cost Architecture for
 Mass Storage Management through Multiple Fast Ethernet Channels on the
 Beowulf Parallel Workstation.  Proceedings, International Parallel
 Processing Symposium, 1996.

 www.beowulf.org/papers/IPPS96/ipps96.html
 

 ?  Donald J. Becker, Thomas Sterling, Daniel Savarese, Bruce Fryxell,
 Kevin Olson. Communication Overhead for Space Science Applications on
 the Beowulf Parallel Workstation.  Proceedings,High Performance and
 Distributed Computing, 1995.

 www.beowulf.org/papers/HPDC95/hpdc95.html
 

 ?  Donald J. Becker, Thomas Sterling, Daniel Savarese, John E.
 Dorband, Udaya A. Ranawak, Charles V.  Packer. BEOWULF: A PARALLEL
 WORKSTATION FOR SCIENTIFIC COMPUTATION.  Proceedings, International
 Conference on Parallel Processing, 95.

 www.beowulf.org/papers/ICPP95/icpp95.html <
 http://www.beowulf.org/papers/ICPP95/icpp95.html>

 ?  º£¿À¿ïÇÁ »çÀÌÆ®¿¡ ÀÖ´Â ³í¹®µé

 www.beowulf.org/papers/papers.html
 

 5.4.  ¼ÒÇÁÆ®¿þ¾î

 ?  PVM - Parallel Virtual Machine www.epm.ornl.gov/pvm/pvm_home.html
 

 ?  LAM/MPI (Local Area Multicomputer / Message Passing Interface)
 www.mpi.nd.edu/lam < http://www.mpi.nd.edu/lam>

 ?  BERT77 - FORTRAN conversion tool  
 º£¿À¿ïÇÁ ÇÁ·ÎÁ§Æ® ÆäÀÌÁö¿¡ ÀÖ´Â º£¿À¿ïÇÁ ¼ÒÇÁÆ®¿þ¾î
 beowulf.gsfc.nasa.gov/software/software.html <
 http://beowulf.gsfc.nasa.gov/software/software.html>

 JacekÀÇ º£¿À¿ïÇÁ-À¯Æ¿µé ?  ftp.sci.usq.edu.au/pub/jacek/beowulf-utils
 

 bWatch - Ŭ·¯½ºÅÍ °¨½Ã µµ±¸ ?  bWatch - cluster monitoring tool
 www.sci.usq.edu.au/staff/jacek/bWatch
 

 5.5.  º£¿À¿ïÇÁ ¸Ó½Åµé

 ?  ¾Æ¹ß·ÐÀº 140°³ÀÇ ¾ËÆÄ ÇÁ·Î¼¼¼­, 36GB ¸Þ¸ð¸®·Î ±¸¼º µÇ¾ú°í, Top 150
 ¸ñ·Ï¿¡¼­ 144¹ø°¸¦ ±â·ÏÇϸç, ¾Æ¸¶ ¼¼°è¿¡¼­ °¡Àå ºü¸¥ º£¿À¿ïÇÁ ¸Ó½ÅÀÏ
 °ÍÀÌ´Ù.  swift.lanl.gov/avalon/

 ?  MPACTRÀº 14°³ÀÇ 4 CPU ÆäƼ¾ö ÇÁ·Î 200°ú 14GM ¸Þ¸ð¸®·Î ÀÌ·ç¾îÁü.
 megalon.ca.sandia.gov/description.html
 

 theHIVEÀº ´Ù¸¥ ºü¸¥ º£¿À¿ïÇÁ ½´ÆÛ ÄÄÇ»ÅÍÀÌ´Ù. theHIVEÀº 64°³ÀÇ ³ëµå·Î
 128 CPU ¸Ó½Å°ú 4GB ¸Þ¸ð¸®·Î ±¸¼º.
 megalon.ca.sandia.gov/description.html
 

 MAGI Ŭ·¯½º´õ - ¸Å¿ì Èï¹ÌÀÖ´Â »çÀÌÆ®·Î ±¦ÂúÀº ¿¬°áµéÀÌ ÀÖÀ½.
 noel.feld.cvut.cz/magi/

 5.6.  ´Ù¸¥ Àç¹ÌÀÖ´Â »çÀÌÆ®

 ?  SMP Linuxwww.linux.org.uk/SMP/title.html
  ?  Paralogic - Buy a
 Beowulfwww.plogic.com

 5.7.  ¿ª»ç

 ?  Àü¼³ - º£¿À¿ïÇÁ  legends.dm.net/beowulf/index.html
 

 ?  º£¿À¿ïÇÁÀÇ ¸ðÇè www.lnstar.com/literature/beowulf/beowulf.html
 
 6.  ¹Ø±×¸²

 6.1.  sum.c

 /* Jacek Radajewski jacek@usq.edu.au */

   /* 21/08/1998 */
 #include
   #include
 int main (void) {
   double result = 0.0;
     double number = 0.0;
     char string[80];

   while (scanf("%s", string) != EOF) {
     number = atof(string);
       result = result + number;
     }
   printf("%lf\n", result);
   return 0;
 }

 6.2.  sigmasqrt.c

 /* Jacek Radajewski jacek@usq.edu.au */

   /* 21/08/1998 */
 #include
   #include
 int main (int argc, char** argv) {
   long number1, number2, counter;
     double result;
   if (argc < 3) {
       printf ("usage : %s number1 number2\n",argv[0]);
       exit(1);
     } else {
       number1 = atol (argv[1]);
       number2 = atol (argv[2]);
       result = 0.0;
     }
   for (counter = number1; counter <= number2; counter++) {
       result = result + sqrt((double)counter);
     }
   printf("%lf\n", result);
   return 0;
 }

 6.3.  prun.sh

 #!/bin/bash # Jacek Radajewski jacek@usq.edu.au
 

   # 21/08/1998
 export SIGMASQRT=/home/staff/jacek/beowulf/HOWTO/example1/sigmasqrt
 # $OUTPUT must be a named pipe
   # mkfifo output
 export OUTPUT=/home/staff/jacek/beowulf/HOWTO/example1/output
 rsh scilab01 $SIGMASQRT         1  50000000 > $OUTPUT < /dev/null&
   rsh scilab02 $SIGMASQRT  50000001 100000000 > $OUTPUT < /dev/null&
   rsh scilab03 $SIGMASQRT 100000001 150000000 > $OUTPUT < /dev/null&
   rsh scilab04 $SIGMASQRT 150000001 200000000 > $OUTPUT < /dev/null&
   rsh scilab05 $SIGMASQRT 200000001 250000000 > $OUTPUT < /dev/null&
   rsh scilab06 $SIGMASQRT 250000001 300000000 > $OUTPUT < /dev/null&
   rsh scilab07 $SIGMASQRT 300000001 350000000 > $OUTPUT < /dev/null&
   rsh scilab08 $SIGMASQRT 350000001 400000000 > $OUTPUT < /dev/null&
   rsh scilab09 $SIGMASQRT 400000001 450000000 > $OUTPUT < /dev/null&
   rsh scilab10 $SIGMASQRT 450000001 500000000 > $OUTPUT < /dev/null&
   rsh scilab11 $SIGMASQRT 500000001 550000000 > $OUTPUT < /dev/null&
   rsh scilab12 $SIGMASQRT 550000001 600000000 > $OUTPUT < /dev/null&
   rsh scilab13 $SIGMASQRT 600000001 650000000 > $OUTPUT < /dev/null&
   rsh scilab14 $SIGMASQRT 650000001 700000000 > $OUTPUT < /dev/null&
   rsh scilab15 $SIGMASQRT 700000001 750000000 > $OUTPUT < /dev/null&
   rsh scilab16 $SIGMASQRT 750000001 800000000 > $OUTPUT < /dev/null&
   rsh scilab17 $SIGMASQRT 800000001 850000000 > $OUTPUT < /dev/null&
   rsh scilab18 $SIGMASQRT 850000001 900000000 > $OUTPUT < /dev/null&
   rsh scilab19 $SIGMASQRT 900000001 950000000 > $OUTPUT < /dev/null&
   rsh scilab20 $SIGMASQRT 950000001 1000000000 > $OUTPUT < /dev/null&



Modify Delete Post Reply Backward Forward List
Powered by Kang Jul Ki