· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Linuxdoc Sgml/Beowulf-HOWTO

Beowulf HOWTO

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

¿ì¸®´Â ÀÌ ¹®¼­¿¡¼­ ¾î¶² ºÎÁ¤È®ÇÑ Á¤º¸¿¡ ´ëÇÑ, ȤÀº À̸¦ Àû¿ëÇÕÀ¸·Î¼­ ÀϾ¼ö ÀÖ´Â ¾î¶°ÇÑ ÇÇÇØ¿¡ ´ëÇÑ Ã¥ÀÓÀ» ÁöÁö ¾Ê´Â´Ù. 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 º´·Ä °è»ê ¹æ¹ý

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

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

º´·Ä ó¸® °¡°è

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

Single-tasking Operating System

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

¿¹: MS DOS

Multi-tasking Operating System:

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

¿¹: UNIX, NT using a single CPU

Multitasking Operating Systems with Multiple CPUs:

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

¿¹: UNIX and NT with multiple CPUs

Threads on a Multitasking Operating Systems extra CPUs

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

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 º´·Ä °è»êÀ» À§ÇÑ ±¸Á¶

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

Çϵå¿þ¾î ±¸Á¶

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

  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 ½Ã½ºÅÛ¿¡¼­ ¼º´É Çâ»óÀ» ±â´ëÇÒ ¼ö ÀÖ´Ù.

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

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

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

¸Þ½ÃÁö

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

¾²·¹µå

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


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

Ç®±×¸² ±¸Á¶

´ÙÁß 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. ÇÁ·Î±×·¥¿¡¼­ º´Çà ºÎºÐÀ» ±â¼ú ÀÚ! Áö±ÝºÎÅÍ À̵éÀ» »ìÆ캸ÀÚ.

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

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

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

µµ±¸µéÀÇ µµ¿òÀÌ ¾øÀ¸¸é, ½ÃÇàÂø¿À¸¦ °ÅÄ¡°Å³ª ¿¾³¯ Áö½Ä¿¡ ÀÇÇØ ÃßÃøÀ» °¡Áö°í ÇؾßÇÒ °ÍÀÌ´Ù. ƯÁ¤ Ç®±×¸²À» »ý°¢ÇÏ°í ÀÖÀ¸¸é 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 ºÎºÐÀ¸·Î ºÐ¸®ÇÏ¿´´Ù¸é, ±×¸®°í °¢ ºÎºÐ ¸¶´Ù µ¥ÀÌÅÍ Àü¼ÛÇϴµ¥ ¸î ÃÊÀÇ ½Ã°£ÀÌ °É¸°´Ù¸é, ±× °ÍÀº ¿©À¯¸¦ °¡Áú ¼ö°¡ ¾ø°Ô µÉ °ÍÀÌ´Ù. °¨¼ÒÇϱâ À§ÇÑ ¹ÝȯÁ¡À¸·Î µµ´ÞÇÒ °ÍÀÌ´Ù.

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

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

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

¸í½ÃÀû ¹æ¹ý

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

¾Ï½ÃÀû ¹æ¹ý

¾Ï½ÃÀû ¹æ¹ýÀº »ç¿ëÀÚ°¡ ÄÄÆÄÀÏÇϱâ À§ÇØ º´·ÄÈ­ °áÁ¤ÀÇ ÀϺÎ(¶Ç´Â ¸ðµå)¸¦ Æ÷±âÇØ¾ß ÇÑ´Ù. Æ÷Æ®¶õ 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

/º£¿À¿ïÇÁ ½Ã½ºÅÛ ±¸¼º ? 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

? 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

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

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

? BERT77 - FORTRAN conversion tool http://www.plogic.com/bert.html º£¿À¿ïÇÁ ÇÁ·ÎÁ§Æ® ÆäÀÌÁö¿¡ ÀÖ´Â º£¿À¿ïÇÁ ¼ÒÇÁÆ®¿þ¾î 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 Linux www.linux.org.uk/SMP/title.html ? Paralogic - Buy a Beowulf www.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 <stdio.h>
  #include <math.h>
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 <stdio.h>
  #include <math.h>
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&
  


ID
Password
Join
You love your home and want it to be beautiful.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2003-08-10 11:52:29
Processing time 0.0026 sec