°£Æí°áÁ¦, ½Å¿ëÄ«µå û±¸ÇÒÀÎ
ÀÎÅÍÆÄÅ© ·Ôµ¥Ä«µå 5% (25,650¿ø)
(ÃÖ´ëÇÒÀÎ 10¸¸¿ø / Àü¿ù½ÇÀû 40¸¸¿ø)
ºÏÇǴϾð ·Ôµ¥Ä«µå 30% (18,900¿ø)
(ÃÖ´ëÇÒÀÎ 3¸¸¿ø / 3¸¸¿ø ÀÌ»ó °áÁ¦)
NH¼îÇÎ&ÀÎÅÍÆÄÅ©Ä«µå 20% (21,600¿ø)
(ÃÖ´ëÇÒÀÎ 4¸¸¿ø / 2¸¸¿ø ÀÌ»ó °áÁ¦)
Close

ÀÔ¹®ÀÚ¸¦ À§ÇÑ º´·Ä ÇÁ·Î±×·¡¹Ö

¿øÁ¦ : An Introduction to Parallel Programming
¼Òµæ°øÁ¦

2013³â 9¿ù 9ÀÏ ÀÌÈÄ ´©Àû¼öÄ¡ÀÔ´Ï´Ù.

°øÀ¯Çϱâ
Á¤°¡

30,000¿ø

  • 27,000¿ø (10%ÇÒÀÎ)

    1,500P (5%Àû¸³)

ÇÒÀÎÇýÅÃ
Àû¸³ÇýÅÃ
  • S-Point Àû¸³Àº ¸¶ÀÌÆäÀÌÁö¿¡¼­ Á÷Á¢ ±¸¸ÅÈ®Á¤ÇϽŠ°æ¿ì¸¸ Àû¸³ µË´Ï´Ù.
Ãß°¡ÇýÅÃ
  • 7/27(Åä) À̳» ¹ß¼Û ¿¹Á¤  (¼­¿ï½Ã °­³²±¸ »ï¼º·Î 512)
  • ¹«·á¹è¼Û
  • ÁÖ¹®¼ö·®
    °¨¼Ò Áõ°¡
    • À̺¥Æ®/±âȹÀü

    • ¿¬°üµµ¼­

    • »óÇ°±Ç

    AD

    Ã¥¼Ò°³

    [ÀÔ¹®ÀÚ¸¦ À§ÇÑ º´·Ä ÇÁ·Î±×·¡¹Ö]Àº MPI, Pthreads, ±×¸®°í OpenMP¸¦ ÀÌ¿ëÇÑ º´·Ä ÇÁ·Î±×·¡¹Ö °¡À̵åºÏÀÌ´Ù. Ã¥Àº Æ©Å丮¾óÀ» »ç¿ëÇÏ¿© ÀÛÀº ÇÁ·Î±×·¡¹Ö ¿¹Á¦·Î ½ÃÀÛÇؼ­ Á» ´õ ±Ô¸ð°¡ Å« ¿¹Á¦µéÀ» ±¸ÃàÇÏ°í, ºÐ»ê°ú °øÀ¯ ¸Þ¸ð¸® ÇÁ·Î±×·¥À» ¼³°èÇÏ°í, µð¹ö±ëÇϸç, Æò°¡ÇÏ´Â µ¥ ÃÊÁ¡À» ¸ÂÃß¾ú´Ù. ¾Æ¿ï·¯ MPI, Pthreads, ±×¸®°í OpenMP ÇÁ·Î±×·¡¹Ö ¸ðµ¨À» »ç¿ëÇÏ¿© º´·Ä ÇÁ·Î±×·¥¿¡ ´ëÇÑ °³¹ßÀ» °­Á¶ÇÑ´Ù.

    ÃâÆÇ»ç ¼­Æò

    MPI, Pthreads, ±×¸®°í OpenMP¸¦ ÀÌ¿ëÇÑ º´·Ä ÇÁ·Î±×·¡¹Ö ¿Ïº® °¡À̵å!
    È¿À²Àû º´·Ä ÇÁ·Î±×·¡¹Ö¿¡ °üÇÑ ¿Ïº®ÇÑ Æ©Å丮¾ó!
    »÷ÇÁ¶õ½Ã½ºÄÚ ´ëÇÐÀ» ºñ·ÔÇÑ ¼¼°è À¯¸í ´ëÇÐ ±³Àç·Î ¼±Á¤!


    º´·Ä ÇÁ·Î±×·¡¹ÖÀº ´õ ÀÌ»ó Àü¹®°¡µé¸¸À» À§ÇÑ ±â¼úÀÌ ¾Æ´Ï´Ù. ¿©·¯ºÐµéÀÌ Å¬·¯½ºÅͳª ¸ÖƼÄÚ¾î ÇÁ·Î¼¼¼­ÀÇ °­·ÂÇÑ ±â´ÉÀ» ÃæºÐÈ÷ »ç¿ëÇÏ°í ½Í´Ù¸é, ºÐ»ê ¸Þ¸ð¸® º´·Ä ÇÁ·Î±×·¡¹Ö°ú °øÀ¯ ¸Þ¸ð¸® º´·Ä ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇØ ¹è¿ö¾ß ÇÑ´Ù. ¡¶ÀÔ¹®ÀÚ¸¦ À§ÇÑ º´·Ä ÇÁ·Î±×·¡¹Ö¡·Àº ¿©·¯ºÐµéÀÌ MPI, Pthreads, OpenMP¸¦ »ç¿ëÇÏ¿© È¿À²ÀûÀÎ º´·Ä ÇÁ·Î±×·¥À» °³¹ßÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÏ°í ÀÖ´Ù. ÇлýÀÌµç ½Ç¹«¸¦ ÇÏ´Â Àü¹®°¡ÀÌµç »ó°ü¾øÀÌ ÇÇÅÍ ÆÄüÄÚÀÇ ÀÌ »õ·Î¿î Ã¥Àº ¿©·¯ºÐµé¿¡°Ô ºÐ»ê°ú °øÀ¯ ¸Þ¸ð¸® ÇÁ·Î±×·¥ÀÇ ¼º´ÉÀ» ¾î¶»°Ô ¼³°èÇÏ°í, µð¹ö±ëÇϸç, Æò°¡ÇÏ´ÂÁö ±× ¹æ¹ýÀ» ¾Ë·Á ÁÙ °ÍÀÌ´Ù.

    ¡á Æ©Å丮¾óÀ» »ç¿ëÇÏ¿© ÀÛÀº ÇÁ·Î±×·¡¹Ö ¿¹Á¦·Î ½ÃÀÛÇؼ­ Á» ´õ ±Ô¸ð°¡ Å« ¿¹Á¦µéÀ» ±¸ÃàÇÑ´Ù.
    ¡á ºÐ»ê°ú °øÀ¯ ¸Þ¸ð¸® ÇÁ·Î±×·¥À» ¼³°èÇÏ°í, µð¹ö±ëÇϸç, Æò°¡ÇÏ´Â µ¥ ÃÊÁ¡À» ¸ÂÃá´Ù.
    ¡á MPI, Pthreads, ±×¸®°í OpenMP ÇÁ·Î±×·¡¹Ö ¸ðµ¨À» »ç¿ëÇÏ¿© º´·Ä ÇÁ·Î±×·¥¿¡ ´ëÇÑ °³¹ßÀ» °­Á¶ÇÑ´Ù.

    ÀÌ Ã¥ÀÇ ±¸¼º
    1ÀåÀº º´·Ä ÄÄÇ»ÆÃÀÌ ÄÄÇ»ÅÍ ºÐ¾ß¿¡¼­ Áß¿äÇÑ ¿ªÇÒÀ» ÇÏ´Â ÀÌÀ¯¿¡ ´ëÇØ »ó´ëÀûÀ¸·Î ´ú ±â¼úÀûÀ¸·Î ¼³¸íÇÏ°í ÀÖ´Ù. ¶Ç, º´·Ä ½Ã½ºÅÛ°ú º´·Ä ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇØ °£´ÜÇÏ°Ô ¼Ò°³ÇÏ°í ÀÖ´Ù. 2ÀåÀº ÄÄÇ»ÅÍ Çϵå¿þ¾î¿Í ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÑ ±â¼úÀû ¹è°æ Áö½ÄÀ» Á¦°øÇÑ´Ù. 3Àå, 4Àå, ±×¸®°í 5ÀåÀº MPI, Pthreads, ±×¸®°í OpenMP¸¦ ÀÌ¿ëÇÑ ÇÁ·Î±×·¡¹ÖÀ» ¼Ò°³ÇÏ°í ÀÖÀ¸¸ç, 6Àå¿¡¼­´Â µÎ °³ÀÇ Å« ÇÁ·Î±×·¥À» °³¹ßÇÑ´Ù. Çϳª´Â º´·Ä n-body ¼Ö·ç¼ÇÀÌ°í, ´Ù¸¥ Çϳª´Â º´·Ä Æ®¸® °Ë»öÀÌ´Ù. ÀÌ µÎ ÇÁ·Î±×·¥Àº ¼¼ °³ÀÇ API¸¦ ¸ðµÎ »ç¿ëÇؼ­ °³¹ßÇÑ´Ù. 7ÀåÀº ´Ù¾çÇÑ Ãø¸éÀÇ º´·Ä ÄÄÇ»Æÿ¡ ´ëÇØ Ãß°¡ÀûÀÎ Á¤º¸¸¦ °£·«ÇÏ°Ô ´Ù·ç°í ÀÖ´Ù. ÀÌ Ã¥Àº C ¾ð¾î¸¦ »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» °³¹ßÇϴµ¥, ±× ÀÌÀ¯´Â ÀÌ ¼¼ °¡Áö API°¡ ¸ðµÎ C ¾ð¾î ÀÎÅÍÆäÀ̽º¸¦ °®°í ÀÖÀ¸¸ç, C ¾ð¾î´Â »ç¿ëÇϱ⿡ »ó´çÈ÷ °£´ÜÇÑ ¾ð¾îÀÌ°í ¹è¿ì±âµµ »ó´ëÀûÀ¸·Î ½¬¿î ¾ð¾îÀ̱⠶§¹®ÀÌ´Ù. C ¾ð¾îÀÇ Á¦¾î ±¸Á¶¿¡ ´ëÇØ Àͼ÷ÇÑ C++À̳ª ÀÚ¹Ù °³¹ßÀڵ鵵 ¾î·Á¿ò ¾øÀÌ ÀÐÀ» ¼ö ÀÖ´Ù.

    ¸ñÂ÷

    CHAPTER 1 ¿Ö º´·Ä ÄÄÇ»ÆÃÀΰ¡?
    1.1 ¼º´É Áõ°¡ÀÇ Çʿ伺 2
    1.2 º´·Ä ½Ã½ºÅÛÀ» ±¸ÃàÇØ¾ß ÇÏ´Â ÀÌÀ¯ 3
    1.3 º´·ÄÈ­ ÇÁ·Î±×·¡¹ÖÀÌ ÇÊ¿äÇÑ ÀÌÀ¯ 4
    1.4 º´·ÄÈ­ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Â ¹æ¹ý 8
    1.5 ¹è¿ï ³»¿ë 11
    1.6 º´Çà, º´·Ä, ºÐ»ê 13
    1.7 Ã¥ÀÇ ±¸¼º 14
    1.8 ´çºÎÀÇ ¸» 14
    1.9 ÀÌ Ã¥ÀÇ Ç¥±â ¹æ¹ý 15
    1.10 ¿ä¾à 16
    1.11 ¿¬½À¹®Á¦ 17

    CHAPTER 2 º´·Ä Çϵå¿þ¾î¿Í º´·Ä ¼ÒÇÁÆ®¿þ¾î
    2.1 ¾à°£ÀÇ ¹è°æ Áö½Ä 22
    2.1.1 Æù ³ëÀ̸¸ ¾ÆÅ°ÅØó 22
    2.1.2 ÇÁ·Î¼¼½º, ¸ÖƼŽºÅ·, ±×¸®°í ½º·¹µå 24
    2.2 Æù ³ëÀ̸¸ ¸ðµ¨ÀÇ ¼öÁ¤ 26
    2.2.1 ij½ÃÀÇ ±âº» °³³ä 26
    2.2.2 ij½Ã ¸ÅÇÎ 29
    2.2.3 ij½Ã¿Í ÇÁ·Î±×·¥: ¿¹Á¦ 30
    2.2.4 °¡»ó ¸Þ¸ð¸® 32
    2.2.5 ¸í·É¾î ·¹º§ º´·ÄÈ­ 35
    2.2.6 Çϵå¿þ¾î ¸ÖƼ½º·¹µù 39
    2.3 º´·Ä Çϵå¿þ¾î 40
    2.3.1 SIMD ½Ã½ºÅÛ 40
    2.3.2 MIMD ½Ã½ºÅÛ 44
    2.3.3 ÀÎÅÍÄ¿³Ø¼Ç ³×Æ®¿öÅ© 48
    2.3.4 ij½Ã ÀÏ°ü¼º 57
    2.3.5 °øÀ¯ ¸Þ¸ð¸®¿Í ºÐ»ê ¸Þ¸ð¸® 61
    2.4 º´·Ä ¼ÒÇÁÆ®¿þ¾î 62
    2.4.1 °æ°í 63
    2.4.2 ÇÁ·Î¼¼½º/½º·¹µåÀÇ Á¶Á¤ 63
    2.4.3 °øÀ¯ ¸Þ¸ð¸® 65
    2.4.4 ºÐ»ê ¸Þ¸ð¸® 71
    2.4.5 ÇÏÀ̺긮µå ½Ã½ºÅÛ ÇÁ·Î±×·¡¹Ö 75
    2.5 ÀԷ°ú Ãâ·Â 76
    2.6 ¼º´É 78
    2.6.1 ½ºÇǵå¾÷°ú È¿À²¼º 78
    2.6.2 ¾Ï´ÞÀÇ ¹ýÄ¢ 81
    2.6.3 È®À强 83
    2.6.4 ŸÀÌ¹Ö 84
    2.7 º´·Ä ÇÁ·Î±×·¥ µðÀÚÀÎ 88
    2.7.1 ¿¹Á¦ 89
    2.8 º´·Ä ÇÁ·Î±×·¥ÀÇ ÀÛ¼º°ú ½ÇÇà 94
    2.9 °¡Á¤ 94
    2.10 ¿ä¾à 96
    2.10.1 ½Ã¸®¾ó ½Ã½ºÅÛ 96
    2.10.2 º´·Ä Çϵå¿þ¾î 98
    2.10.3 º´·Ä ¼ÒÇÁÆ®¿þ¾î 100
    2.10.4 ÀԷ°ú Ãâ·Â 102
    2.10.5 ¼º´É 102
    2.10.6 º´·Ä ÇÁ·Î±×·¥ ¼³°è 103
    2.10.7 °¡Á¤ 104
    2.11 ¿¬½À¹®Á¦ 104

    CHAPTER 3 MPI¸¦ ÀÌ¿ëÇÑ ºÐ»ê ¸Þ¸ð¸® ÇÁ·Î±×·¡¹Ö
    3.1 ½ÃÀÛÇϱâ 112
    3.1.1 ÄÄÆÄÀÏ°ú ½ÇÇà 113
    3.1.2 MPI ÇÁ·Î±×·¥ 115
    3.1.3 MPI_Init°ú MPI_Finalize 116
    3.1.4 Ä¿¹Â´ÏÄÉÀÌÅÍ, MPI_Comm_size¿Í MPI_Comm_rank 117
    3.1.5 SPMD ÇÁ·Î±×·¥ 117
    3.1.6 Åë½Å 118
    3.1.7 MPI_Send 118
    3.1.8 MPI_Recv 121
    3.1.9 ¸Þ½ÃÁö ¸ÅĪ 121
    3.1.10 status_p Àμö 123
    3.1.11 MPI_Send¿Í MPI_RecvÀÇ µ¿ÀÛ ÀÇ¹Ì 124
    3.1.12 ¾à°£ÀÇ ½É°¢ÇÑ ¹®Á¦ 126
    3.2 MPI¸¦ »ç¿ëÇÑ »ç´Ù¸®²Ã ±ÔÄ¢ 126
    3.2.1 »ç´Ù¸®²Ã ±ÔÄ¢ 126
    3.2.2 »ç´Ù¸®²Ã ±ÔÄ¢ÀÇ º´·ÄÈ­ 128
    3.3 I/OÀÇ Ã³¸® 131
    3.3.1 Ãâ·Â 132
    3.3.2 ÀÔ·Â 133
    3.4 Ä÷ºÆ¼ºê Åë½Å 135
    3.4.1 Æ®¸® ±¸Á¶ Åë½Å 135
    3.4.2 MPI_Reduce 137
    3.4.3 Ä÷ºÆ¼ºê Åë½Å ´ë ÀÏ´ëÀÏ Åë½Å 139
    3.4.4 MPI_Allreduce 141
    3.4.5 ºê·Îµåij½ºÆ® 141
    3.4.6 µ¥ÀÌÅÍ ºÐ»ê 144
    3.4.7 ½ºÄ³ÅÍ 146
    3.4.8 °Ô´õ 148
    3.4.9 Allgather 150
    3.5 MPI ÆÄ»ý µ¥ÀÌÅÍ Å¸ÀÔ 153
    3.6 ÇÁ·Î±×·¥ÀÇ ¼º´É Æò°¡ 157
    3.6.1 ¼öÇà ½Ã°£ 159
    3.6.2 °á°ú 162
    3.6.3 ¼Óµµ Çâ»ó°ú È¿À²¼º 165
    3.6.4 È®À强 166
    3.7 º´·Ä Á¤·Ä ¾Ë°í¸®Áò 167
    3.7.1 °£´ÜÇÑ ½Ã¸®¾ó Á¤·Ä ¾Ë°í¸®Áò 168
    3.7.2 º´·Ä Ȧ¼ö-¦¼ö º¯È¯ Á¤·Ä 170
    3.7.3 MPI ÇÁ·Î±×·¥¿¡¼­ ¼¼ÀÌÇÁƼ 173
    3.7.4 º´·Ä Ȧ¼ö-¦¼ö Á¤·ÄÀÇ ¸¶Áö¸· ¼³¸í 177
    3.8 ¿ä¾à 179
    3.9 ¿¬½À¹®Á¦ 185
    3.10 ÇÁ·Î±×·¡¹Ö ¹®Á¦ 194

    CHAPTER 4 Pthreads¸¦ ÀÌ¿ëÇÑ °øÀ¯ ¸Þ¸ð¸® ÇÁ·Î±×·¡¹Ö
    4.1 ÇÁ·Î¼¼½º, ½º·¹µå, ±×¸®°í pthreads 200
    4.2 HELLO, WORLD 202
    4.2.1 ½ÇÇà 202
    4.2.2 Áغñ 204
    4.2.3 ½º·¹µåÀÇ ½ÃÀÛ 206
    4.2.4 ½º·¹µåÀÇ ½ÇÇà 208
    4.2.5 ½º·¹µåÀÇ ÁßÁö 209
    4.2.6 ¿¡·¯ üŷ 210
    4.2.7 ½º·¹µåÀÇ ½ÃÀÛ¿¡ ´ëÇÑ ´Ù¸¥ Á¢±Ù 210
    4.3 ¸ÅÆ®¸¯½º-º¤ÅÍ °ö¼À 211
    4.4 Å©¸®Æ¼Äà ¼½¼Ç 214
    4.5 ºñÁö-¿þÀÌÆà 218
    4.6 ¹ÂÅؽº 222
    4.7 ÇÁ·Îµà¼­-ÄÁ½´¸Ó µ¿±âÈ­¿Í ¼¼¸¶Æ÷¾î 227
    4.8 ¹è¸®¾î¿Í Á¶°Ç º¯¼ö 232
    4.8.1 ºñÁö-¿þÀÌÆðú ¹ÂÅؽº 233
    4.8.2 ¼¼¸¶Æ÷¾î 234
    4.8.3 Á¶°Ç º¯¼ö 236
    4.8.4 Pthreads ¹è¸®¾î 239
    4.9 Àбâ-¾²±â Àá±Ý 239
    4.9.1 ¸µÅ©µå ¸®½ºÆ® ÇÔ¼ö 239
    4.9.2 ¸ÖƼ½º·¹µå ¸µÅ©µå ¸®½ºÆ® 242
    4.9.3 Pthreads Àбâ-¾²±â Àá±Ý 246
    4.9.4 ¿©·¯ °¡Áö ±¸Çö¿¡ ´ëÇÑ ¼º´É 247
    4.9.5 Àбâ-¾²±â Àá±ÝÀÇ ±¸Çö 249
    4.10 ij½Ã, ij½Ã ÀÏ°ü¼º, ±×¸®°í °ÅÁþ °øÀ¯ 250
    4.11 ½º·¹µå ¼¼ÀÌÇÁƼ 257
    4.11.1 ¿Ã¹Ù¸£Áö ¾ÊÀº ÇÁ·Î±×·¥ÀÌ ¿Ã¹Ù¸¥ Ãâ·ÂÀ» ³¾ ¼ö ÀÖ´Ù 260
    4.12 ¿ä¾à 261
    4.13 ¿¬½À¹®Á¦ 264
    4.14 ÇÁ·Î±×·¥ ¹®Á¦ 272

    CHAPTER 5 OpenMP¸¦ »ç¿ëÇÑ °øÀ¯ ¸Þ¸ð¸® ÇÁ·Î±×·¡¹Ö
    5.1 ½ÃÀÛ 277
    5.1.1 OpenMP ÇÁ·Î±×·¥ÀÇ ÄÄÆÄÀÏ°ú ½ÇÇà ¹æ¹ý 278
    5.1.2 ÇÁ·Î±×·¥ 279
    5.1.3 ¿À·ù üũ 283
    5.2 »ç´Ù¸®²Ã ±ÔÄ¢ 284
    5.2.1 ù ¹ø° openMP ¹öÀü 285
    5.3 º¯¼öÀÇ ¹üÀ§ 290
    5.4 °¨¼Ò Ŭ¶ó¿ìÁî 291
    5.5 parallel for µð·ºÆ¼ºê 295
    5.5.1 ÁÖÀÇ »çÇ× 297
    5.5.2 µ¥ÀÌÅÍ ÀÇÁ¸¼º 298
    5.5.3 ·çÇÁ¿¡ ÀÇÇÑ ÀÇÁ¸¼º ã±â 300
    5.5.4 ÀÇ °è»ê 301
    5.5.5 º¯¼ö ¹üÀ§ 304
    5.6 OpenMP¿¡¼­ ·çÇÁÀÇ ´Ù¸¥ ¿¹Á¦: Á¤·Ä 305
    5.6.1 ¹öºí Á¤·Ä 305
    5.6.2 Ȧ¼ö-¦¼ö º¯È¯ Á¤·Ä 307
    5.7 ·çÇÁ ½ºÄÉÁÙ 310
    5.7.1 schedule Ŭ¶ó¿ìÁî 312
    5.7.2 static ½ºÄÉÁ٠ŸÀÔ 313
    5.7.3 dynamic°ú guided ½ºÄÉÁ٠ŸÀÔ 314
    5.7.4 runtime ½ºÄÉÁ٠ŸÀÔ 315
    5.7.5 ¾î¶² ½ºÄÉÁÙÀ» »ç¿ëÇØ¾ß ÇÒ±î? 316
    5.8 ÇÁ·Îµà¼­¿Í ÄÁ½´¸Ó 317
    5.8.1 ť 317
    5.8.2 ¸Þ½ÃÁö ÆÐ½Ì 318
    5.8.3 ¸Þ½ÃÁö Àü¼Û 319
    5.8.4 ¸Þ½ÃÁö ¼ö½Å 319
    5.8.5 Á¾·á °ËÃâ 320
    5.8.6 ½ÃÀÛ 321
    5.8.7 atomic µð·ºÆ¼ºê 322
    5.8.8 Å©¸®Æ¼Äà ¼½¼Ç°ú Àá±Ý 323
    5.8.9 ¸Þ½ÃÁö ÆÐ½Ì ÇÁ·Î±×·¥¿¡¼­ Àá±ÝÀÇ »ç¿ë 326
    5.8.10 critical µð·ºÆ¼ºê, atomic µð·ºÆ¼ºê, ȤÀº Àá±Ý? 327
    5.8.11 ¸î °¡ÁöÀÇ ¹®Á¦Á¡ 328
    5.9 ij½Ã, ij½Ã ÀÏ°ü¼º, °ÅÁþ °øÀ¯ 330
    5.10 ½º·¹µå ¼¼ÀÌÇÁƼ 337
    5.10.1 ¿Ã¹Ù¸£Áö ¾ÊÀº ÇÁ·Î±×·¥ÀÌ Á¤»óÀûÀÎ °á°ú¸¦ ¸¸µé¾î ³¾ ¼öµµ ÀÖ´Ù 340
    5.11 Á¤¸® 341
    5.12 ¿¬½À¹®Á¦ 346
    5.13 ÇÁ·Î±×·¡¹Ö ¹®Á¦ 352

    CHAPTER 6 º´·Ä ÇÁ·Î±×·¥ °³¹ß
    6.1 µÎ °³ÀÇ n-body ¼Ö·ç¼Ç 357
    6.1.1 ¹®Á¦ 358
    6.1.2 µÎ °³ÀÇ ½Ã¸®¾ó ÇÁ·Î±×·¥ 359
    6.1.3 ¼Ö·ç¼ÇÀÇ º´·ÄÈ­ 365
    6.1.4 I/O 369
    6.1.5 OpenMP¸¦ »ç¿ëÇÑ ±âº» ¼Ö·ç¼ÇÀÇ º´·ÄÈ­ 370
    6.1.6 OpenMP¸¦ »ç¿ëÇÑ ¸®µà½º ¼Ö·ç¼ÇÀÇ º´·ÄÈ­ 373
    6.1.7 OpenMP ÄÚµåÀÇ Æò°¡ 378
    6.1.8 Pthreads¸¦ »ç¿ëÇÑ ¼Ö·ç¼ÇÀÇ º´·ÄÈ­ 380
    6.1.9 MPI¸¦ »ç¿ëÇÑ ±âº» ¼Ö·ç¼ÇÀÇ º´·ÄÈ­ 381
    6.1.10 MPI¸¦ »ç¿ëÇÑ ¸®µà½º ¼Ö·ç¼ÇÀÇ º´·ÄÈ­ 384
    6.1.11 MPI ¼Ö·ç¼ÇÀÇ ¼º´É 391
    6.2 Æ®¸® °Ë»ö 393
    6.2.1 Àç±ÍÀû ±íÀÌ-¿ì¼± °Ë»ö 396
    6.2.2 ºñÀç±ÍÀû ±íÀÌ-¿ì¼± °Ë»ö 397
    6.2.3 ½Ã¸®¾ó ±¸ÇöÀ» À§ÇÑ ÀÚ·á ±¸Á¶ 400
    6.2.4 ½Ã¸®¾ó ±¸ÇöÀÇ ¼º´É 402
    6.2.5 Æ®¸® °Ë»öÀÇ º´·ÄÈ­ 402
    6.2.6 pthreads¸¦ »ç¿ëÇÑ Æ®¸® °Ë»öÀÇ Á¤Àû º´·ÄÈ­ 405
    6.2.7 pthreads¸¦ »ç¿ëÇÑ Æ®¸® °Ë»öÀÇ µ¿Àû º´·ÄÈ­ 408
    6.2.8 Pthreads Æ®¸®-°Ë»ö ÇÁ·Î±×·¥ÀÇ Æò°¡ 413
    6.2.9 OpenMP¸¦ »ç¿ëÇÑ Æ®¸®-°Ë»ö ÇÁ·Î±×·¥ÀÇ º´·ÄÈ­ 414
    6.2.10 OpenMP ±¸ÇöÀÇ ¼º´É 418
    6.2.11 MPI¿Í Á¤Àû ÆÄƼ¼Å´×À» »ç¿ëÇÑ Æ®¸® °Ë»öÀÇ ±¸Çö 419
    6.2.12 MPI¿Í µ¿Àû ÆÄƼ¼Å´×À» »ç¿ëÇÑ Æ®¸® °Ë»öÀÇ ±¸Çö 429
    6.3 Á¶¾ð 440
    6.4 ¾î¶² API°¡ ÃÖ¼±Àΰ¡? 440
    6.5 ¿ä¾à 441
    6.5.1 Pthreads¿Í OpenMP 443
    6.5.2 MPI 444
    6.6 ¿¬½À¹®Á¦ 448
    6.7 ÇÁ·Î±×·¡¹Ö ¿¬½À 461

    CHAPTER 7 ±× ´ÙÀ½¿¡ ÇØ¾ß ÇÒ ÀÏ

    Âü°í¹®Çå 469
    ã¾Æº¸±â 473

    º»¹®Áß¿¡¼­

    ´ëºÎºÐ »ç¿ëÇÏ°í ÀÖ´Â °øÀ¯ ¸Þ¸ð¸® ½Ã½ºÅÛÀº Çϳª ȤÀº µÎ °³ÀÇ ¸ÖƼÄÚ¾î(multicore) ÇÁ·Î¼¼¼­¸¦ »ç¿ëÇÑ´Ù. 1Àå¿¡¼­ ¼³¸íÇÑ °Íó·³ ¸ÖƼÄÚ¾î ÇÁ·Î¼¼¼­´Â ¿©·¯ °³ÀÇ CPU ȤÀº ¿©·¯ °³ÀÇ Äھ ÇϳªÀÇ Ä¨¿¡¼­ »ç¿ëÇÑ´Ù. ÀϹÝÀûÀ¸·Î °¢ ÄÚ¾î´Â ÇÁ¶óÀ̺ø ·¹º§ 1 ij½Ã¸¦ °®°í ÀÖÀ¸¸ç ´Ù¸¥ ij½Ã´Â ÄÚ¾îµé °£¿¡ °øÀ¯ÇÒ ¼öµµ ÀÖÁö¸¸ °øÀ¯ÇÒ ¼ö ¾ø±âµµ ÇÑ´Ù. _46p

    °ú°Å¿¡´Â ¸ðµç º´·Ä ÇÁ·Î±×·¥ °³¹ßÀº vi³ª Emacs¿Í °°Àº ÅؽºÆ® ¿¡µðÅ͸¦ »ç¿ëÇؼ­ °³¹ßµÆ´Ù. ±× ´ç½Ã ÇÁ·Î±×·¥Àº Ä¿¸Çµå ¶óÀÎÀ̳ª ¿¡µðÅÍ ³»ºÎ¿¡¼­ ÄÄÆÄÀÏÇÏ°í ½ÇÇàÇß´Ù. µð¹ö°Å ¿ª½Ã Ä¿¸Çµå ¶óÀο¡¼­ »ç¿ëÇß´Ù. ÇöÀç´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®³ª ÀÌŬ¸³½º(Eclipse) ÇÁ·ÎÁ§Æ® ȤÀº ´Ù¸¥ ȸ»ç³ª »çÀÌÆ®¿¡¼­ Á¦°øÇÏ´Â ÅëÇÕ °³¹ß ȯ°æ(IDE, Integrated Development Environment)¸¦ »ç¿ëÇÑ´Ù. [16, 38]À» º¸ÀÚ. _94p

    ¸ÅÆ®¸¯½º-º¤ÅÍ °ö¼À ÇÁ·Î±×·¥ÀÇ ¼º´É¿¡ ´ëÇØ »ìÆ캸µµ·Ï ÇÏÀÚ. ´ëºÎºÐÀÇ ÆÄÆ®¿¡¼­ ÇÁ·Î±×·¥ÀÇ ½ÇÇà ¼Óµµ°¡ ÃÖ´ëÇÑ ºü¸£°Ô ½ÇÇàÇÏ´Â °ÍÀ» ±â´ëÇϱ⠶§¹®¿¡ °°Àº ¹®Á¦¸¦ ÇØ°áÇÏ´Â ½Ã¸®¾ó ÇÁ·Î±×·¥º¸´Ù´Â º´·Ä·Î ÇÁ·Î±×·¥À» ÀÛ¼ºÇß´Ù. ÀÌ·¯ÇÑ ¿¹»óÀÌ ¸Â´Ù°í ¾î¶»°Ô °ËÁõÇÒ ¼ö ÀÖÀ»±î? ÀÌ¿¡ ´ëÇؼ­´Â ¼½¼Ç 2.6¿¡¼­ ³íÀÇÇß¾ú´Ù. µû¶ó¼­ ¼½¼Ç 2.6¿¡¼­ ¹è¿î ³»¿ë¿¡ ´ëÇØ ´Ù½Ã ±â¾ïÀ» µÇ»ì·Á º¸ÀÚ. _157p

    Pthreads¿¡¼­ ¹è¸®¾î¸¦ »ý¼ºÇÏ´Â ´õ ÁÁÀº ¹æ¹ýÀº Á¶°Ç º¯¼ö(condition variable)¸¦ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. Á¶°Ç º¯¼ö´Â ½º·¹µå°¡ ƯÁ¤ À̺¥Æ®³ª Á¶°Ç(condition)ÀÌ ¹ß»ýÇÒ ¶§±îÁö ½ÇÇàÀ» ¼­½ºÆæµå(suspend)ÇÏ´Â µ¥ÀÌÅÍ °´Ã¼ÀÌ´Ù. À̺¥Æ®³ª Á¶°ÇÀÌ ¹ß»ýÇÒ ¶§ ´Ù¸¥ ½º·¹µå´Â ±× ½º·¹µå¿¡°Ô ¡°¿þÀÌÅ©¾÷(wake up)¡± ½Ã±×³ÎÀ» º¸³½´Ù. Á¶°Ç º¯¼ö´Â Ç×»ó ¹ÂÅؽº¿Í °ü·ÃÀÌ ÀÖ´Ù. _236p

    Å¥(queue)´Â »õ·Î¿î Ç׸ñÀÌ Å¥ÀÇ ¡°µÚ¡±¿¡ »ðÀԵǰí Å¥ÀÇ ¡°¾Õ¡±¿¡¼­´Â »èÁ¦µÇ´Â ÇüŸ¦ ¸®½ºÆ® ±¸Á¶ÀÇ ÀÚ·á ±¸Á¶¶ó´Â °ÍÀ» ±â¾ïÇÏÀÚ. Å¥´Â ½´ÆÛ¸¶ÄÏ¿¡¼­ ¹°°ÇÀ» »ç±â À§ÇØ ÁÙÀ» ¼­ ÀÖ´Â °í°´µéÀÇ ¸ð½À°ú ºñ½ÁÇÏ´Ù. ¸®½ºÆ®ÀÇ Ç׸ñÀº °í°´ÀÌ´Ù. »õ·Î¿î °í°´Àº ÁÙÀÇ ¡°µÚ¡±¿¡ °¡¼­ ¼­°í ´ÙÀ½ °í°´ÀÌ °è»êÀ» ÇÏ°í ³ª¸é ±× ´ÙÀ½ °í°´ÀÌ ÁÙÀÇ ¡°¾Õ¡±¿¡ ¼­°Ô µÈ´Ù. _317p

    ÀúÀÚ¼Ò°³

    ÇÇÅÍ ÆÄüÄÚ [Àú] ½ÅÀ۾˸² SMS½Åû
    »ý³â¿ùÀÏ -

    ÇØ´çÀÛ°¡¿¡ ´ëÇÑ ¼Ò°³°¡ ¾ø½À´Ï´Ù.

    ±è¼º¹Î [¿ª] ½ÅÀ۾˸² SMS½Åû
    »ý³â¿ùÀÏ -

    ÇØ´çÀÛ°¡¿¡ ´ëÇÑ ¼Ò°³°¡ ¾ø½À´Ï´Ù.

    Àü°øµµ¼­/´ëÇб³Àç ºÐ¾ß¿¡¼­ ¸¹Àº ȸ¿øÀÌ ±¸¸ÅÇÑ Ã¥

      ¸®ºä

      0.0 (ÃÑ 0°Ç)

      100ÀÚÆò

      ÀÛ¼º½Ã À¯ÀÇ»çÇ×

      ÆòÁ¡
      0/100ÀÚ
      µî·ÏÇϱâ

      100ÀÚÆò

      10.0
      (ÃÑ 0°Ç)

      ÆǸÅÀÚÁ¤º¸

      • ÀÎÅÍÆÄÅ©µµ¼­¿¡ µî·ÏµÈ ¿ÀǸ¶ÄÏ »óÇ°Àº ±× ³»¿ë°ú Ã¥ÀÓÀÌ ¸ðµÎ ÆǸÅÀÚ¿¡°Ô ÀÖÀ¸¸ç, ÀÎÅÍÆÄÅ©µµ¼­´Â ÇØ´ç »óÇ°°ú ³»¿ë¿¡ ´ëÇØ Ã¥ÀÓÁöÁö ¾Ê½À´Ï´Ù.

      »óÈ£

      (ÁÖ)±³º¸¹®°í

      ´ëÇ¥ÀÚ¸í

      ¾Èº´Çö

      »ç¾÷ÀÚµî·Ï¹øÈ£

      102-81-11670

      ¿¬¶ôó

      1544-1900

      ÀüÀÚ¿ìÆíÁÖ¼Ò

      callcenter@kyobobook.co.kr

      Åë½ÅÆǸž÷½Å°í¹øÈ£

      01-0653

      ¿µ¾÷¼ÒÀçÁö

      ¼­¿ïƯº°½Ã Á¾·Î±¸ Á¾·Î 1(Á¾·Î1°¡,±³º¸ºôµù)

      ±³È¯/ȯºÒ

      ¹ÝÇ°/±³È¯ ¹æ¹ý

      ¡®¸¶ÀÌÆäÀÌÁö > Ãë¼Ò/¹ÝÇ°/±³È¯/ȯºÒ¡¯ ¿¡¼­ ½Åû ¶Ç´Â 1:1 ¹®ÀÇ °Ô½ÃÆÇ ¹× °í°´¼¾ÅÍ(1577-2555)¿¡¼­ ½Åû °¡´É

      ¹ÝÇ°/±³È¯°¡´É ±â°£

      º¯½É ¹ÝÇ°ÀÇ °æ¿ì Ãâ°í¿Ï·á ÈÄ 6ÀÏ(¿µ¾÷ÀÏ ±âÁØ) À̳»±îÁö¸¸ °¡´É
      ´Ü, »óÇ°ÀÇ °áÇÔ ¹× °è¾à³»¿ë°ú ´Ù¸¦ °æ¿ì ¹®Á¦Á¡ ¹ß°ß ÈÄ 30ÀÏ À̳»

      ¹ÝÇ°/±³È¯ ºñ¿ë

      º¯½É ȤÀº ±¸¸ÅÂø¿À·Î ÀÎÇÑ ¹ÝÇ°/±³È¯Àº ¹Ý¼Û·á °í°´ ºÎ´ã
      »óÇ°À̳ª ¼­ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯/¹ÝÇ°Àº ¹Ý¼Û·á ÆǸÅÀÚ ºÎ´ã

      ¹ÝÇ°/±³È¯ ºÒ°¡ »çÀ¯

      ·¼ÒºñÀÚÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¼Õ½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
      (´ÜÁö È®ÀÎÀ» À§ÇÑ Æ÷Àå ÈѼÕÀº Á¦¿Ü)

      ·¼ÒºñÀÚÀÇ »ç¿ë, Æ÷Àå °³ºÀ¿¡ ÀÇÇØ »óÇ° µîÀÇ °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì
      ¿¹) È­ÀåÇ°, ½ÄÇ°, °¡ÀüÁ¦Ç°(¾Ç¼¼¼­¸® Æ÷ÇÔ) µî

      ·º¹Á¦°¡ °¡´ÉÇÑ »óÇ° µîÀÇ Æ÷ÀåÀ» ÈѼÕÇÑ °æ¿ì
      ¿¹) À½¹Ý/DVD/ºñµð¿À, ¼ÒÇÁÆ®¿þ¾î, ¸¸È­Ã¥, ÀâÁö, ¿µ»ó È­º¸Áý

      ·½Ã°£ÀÇ °æ°ú¿¡ ÀÇÇØ ÀçÆǸŰ¡ °ï¶õÇÑ Á¤µµ·Î °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì

      ·ÀüÀÚ»ó°Å·¡ µî¿¡¼­ÀÇ ¼ÒºñÀÚº¸È£¿¡ °üÇÑ ¹ý·üÀÌ Á¤ÇÏ´Â ¼ÒºñÀÚ Ã»¾àöȸ Á¦ÇÑ ³»¿ë¿¡ ÇØ´çµÇ´Â °æ¿ì

      »óÇ° Ç°Àý

      °ø±Þ»ç(ÃâÆÇ»ç) Àç°í »çÁ¤¿¡ ÀÇÇØ Ç°Àý/Áö¿¬µÉ ¼ö ÀÖÀ½

      ¼ÒºñÀÚ ÇÇÇغ¸»ó
      ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó

      ·»óÇ°ÀÇ ºÒ·®¿¡ ÀÇÇÑ ±³È¯, A/S, ȯºÒ, Ç°Áúº¸Áõ ¹× ÇÇÇغ¸»ó µî¿¡ °üÇÑ »çÇ×Àº ¼ÒºñÀÚºÐÀïÇØ°á ±âÁØ (°øÁ¤°Å·¡À§¿øȸ °í½Ã)¿¡ ÁØÇÏ¿© 󸮵Ê

      ·´ë±Ý ȯºÒ ¹× ȯºÒÁö¿¬¿¡ µû¸¥ ¹è»ó±Ý Áö±Þ Á¶°Ç, ÀýÂ÷ µîÀº ÀüÀÚ»ó°Å·¡ µî¿¡¼­ÀÇ ¼ÒºñÀÚ º¸È£¿¡ °üÇÑ ¹ý·ü¿¡ µû¶ó ó¸®ÇÔ

      (ÁÖ)KGÀ̴Ͻýº ±¸¸Å¾ÈÀü¼­ºñ½º¼­ºñ½º °¡ÀÔ»ç½Ç È®ÀÎ

      (ÁÖ)ÀÎÅÍÆÄÅ©Ä¿¸Ó½º´Â ȸ¿ø´ÔµéÀÇ ¾ÈÀü°Å·¡¸¦ À§ÇØ ±¸¸Å±Ý¾×, °áÁ¦¼ö´Ü¿¡ »ó°ü¾øÀÌ (ÁÖ)ÀÎÅÍÆÄÅ©Ä¿¸Ó½º¸¦ ÅëÇÑ ¸ðµç °Å·¡¿¡ ´ëÇÏ¿©
      (ÁÖ)KGÀ̴Ͻýº°¡ Á¦°øÇÏ´Â ±¸¸Å¾ÈÀü¼­ºñ½º¸¦ Àû¿ëÇÏ°í ÀÖ½À´Ï´Ù.

      ¹è¼Û¾È³»

      • ±³º¸¹®°í »óÇ°Àº Åùè·Î ¹è¼ÛµÇ¸ç, Ãâ°í¿Ï·á 1~2Àϳ» »óÇ°À» ¹Þ¾Æ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.

      • Ãâ°í°¡´É ½Ã°£ÀÌ ¼­·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä »óÇ°À» ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.

      • ±ººÎ´ë, ±³µµ¼Ò µî ƯÁ¤±â°üÀº ¿ìü±¹ Åù踸 ¹è¼Û°¡´ÉÇÕ´Ï´Ù.

      • ¹è¼Ûºñ´Â ¾÷ü ¹è¼Ûºñ Á¤Ã¥¿¡ µû¸¨´Ï´Ù.

      • - µµ¼­ ±¸¸Å ½Ã 15,000¿ø ÀÌ»ó ¹«·á¹è¼Û, 15,000¿ø ¹Ì¸¸ 2,500¿ø - »óÇ°º° ¹è¼Ûºñ°¡ ÀÖ´Â °æ¿ì, »óÇ°º° ¹è¼Ûºñ Á¤Ã¥ Àû¿ë