רÀûÃû³Æ£ºÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å·½·¨
¼¼ÊõÁìÓò£º
±¾·¢Ã÷Éæ¼°Ò£¸ÐÊý¾Ý´¦Àí¼¼ÊõÁìÓò£¬ÌرðÉæ¼°Ò»ÖÖÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ ²¢Ðл¯±à³ÌÄ£°å·½·¨¡£
±³¾°¼¼Êõ£º
Ëæ×ÅÒ£¸Ð¼¼ÊõµÄ·¢Õ¹Óë¹ã·ºÓ¦Óã¬Ò£¸Ð¶ÔµØ¹Û²âÊý¾ÝÁ¿ÕýÒÔÿÈÕTB¼¶µÄËÙ¶ÈÔö ³¤£¬µØÑ§¼ÆËãËùÒª½â¾öµÄÎÊÌâÒ²Ô½À´Ô½¸´ÔÓ¡£È»¶øºóÓÉÓÚÒ£¸ÐÊý¾Ý¾ßÓжನ¶Î½á¹¹ºÍ¼¸ºÎ ÌØÐÔ£¬Ê¹´¦ÀíËã·¨´æÔÚÖØ¸´¼ÆËãÐÔ£¬Òò¶ø¾ßÓÐÌìÈ»µÄÄÚÔÚ²¢ÐÐÐÔ¡£Òò´Ë£¬»ùÓÚ»úȺ¼Ü¹¹µÄ¸ß ÐÔÄܲ¢ÐмÆËã¼¼ÊõÒѳÉΪ½â¾ö´óÊý¾Ý¹æÄ£ºÍ¸´ÔÓËã·¨´øÀ´µÄ³¬´ó¼ÆËãÁ¿ÎÊÌâµÄ³£ÓÃÊֶΡ£Ä¿Ç°²¢ÐÐÒ£¸ÐÊý¾Ý´¦ÀíËã·¨µÄ²¢ÐвßÂÔͨ³£¾ßÓÐÒ»¶¨µÄÕë¶ÔÐÔ£¬ÆäÖÐËã·¨ÖеÄÊý ¾Ý·Ö²¼·½Ê½¡¢¸ºÔؾùºâ²ßÂԵȶ¼Ö»ÊÇÕë¶Ôij¸ö¾ßÌåËã·¨¶øÉè¼ÆµÄ¡£Ã¿Ôö¼ÓÒ»¸ö´¦ÀíËã·¨£¬ ÔòÐèÒªÕë¶ÔÐÔµÄÑо¿Æä²¢Ðл¯·½·¨£¬²¢½øÐв¢Ðбà³ÌʵÏÖ¡£¶øÇÒ²¢ÐÐËã·¨¿ª·¢ÐèÒªÒ»¶¨ µÄ²¢ÐÐÌåϵ½á¹¹¼°ÏûÏ¢´«µÝ½Ó¿Ú(MPI)²¢Ðбà³Ì֪ʶ£¬Õâ¶ÔÓÚµØÑ§ÁìÓòר¼ÒÀ´ËµÒ²ÊǸö ÄÑÌâ¡£ÓÈÆäËæ×ŶàºË¼¼ÊõµÄÆÕ±é£¬ÈçºÎ³ä·ÖÀûÓöàºË´¦ÀíÆ÷µÄÐÔÄÜ£¬Õë¶Ô¶àºËÖÐоƬÄÚ²¿ (intra-chip)£¬Ð¾Æ¬¼ä(inter-chip)Óë½ÚµãÍøÂçÐÔÄÜÖ®¼äÐÔÄܲîÒì¶Ô²¢ÐÐË㷨ģÐͽøÐÐ ÓÅ»¯£¬ÒÔ¼°Õë¶ÔI/OÐÔÄÜÆ¿¾±ÎÊÌâ½øÐÐÓÅ»¯ÎÊÌâÒ²¶¼²»ÊÇÒ£¸ÐÁìÓòר¼ÒËùÉó¤µÄ¡£Òò´Ë£¬Èç ºÎÌṩһÖÖÒ£¸Ð´¦ÀíËã·¨µÄ¿ìËÙ×Ô¶¯²¢Ðл¯·½·¨½«ÊÇÒ»¸öÆÈÇÐÐèÒª½â¾öµÄÎÊÌâ¡£¶øÊÂʵÉÏ£¬´ó¶àÒ£¸ÐÊý¾Ý´¦ÀíËã·¨ÔÚ²¢Ðл¯ÉÏ´æÔÚÒ»¶¨µÄ¹²ÐÔ£¬¿ÉÒÔ¹²ÏíÒ»¸ö²¢ ÐÐģʽ£¬Êý¾Ý·Ö²¼²ßÂÔ»ò¸ºÔؾùºâ²ßÂÔ¡£Òò´Ë£¬Í¨¹ý½¨Á¢ÓÚijÖÖÒ£¸Ð´¦ÀíËã·¨Ïà¶ÔÓ¦µÄ¿ÉÖØ Óò¢ÐÐËã·¨±à³ÌÄ£ÐÍ£¬²¢ÔÚÄ£ÐÍÖÐÕë¶Ô¶àºËºÍI/OÐÔÄܽøÐÐÓÅ»¯£¬½ø¶øÌṩһÖÖÄܹ»½øÐÐ Ò£¸Ð´¦ÀíËã·¨µÄ¿ìËÙ×Ô¶¯²¢Ðл¯·½·¨½«¿ÉʹµÃÁìÓòר¼Ò´Ó¸´ÔÓ·±ËöµÄ²¢Ðбà³ÌÖнâÍѳö À´¡£
·¢Ã÷ÄÚÈÝ
±¾·¢Ã÷µÄÄ¿µÄÊÇÌṩһÖÖÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å·½·¨£¬Í¨ ¹ý¹¹½¨±à³ÌÄ£°å¿â£¬²¢Àà¼Ì³Ð±à³ÌÄ£°å£¬Äܹ»×Ô¶¯¼ÓÔØÏàÓ¦µÄÒ£¸ÐͼÏñ²¢Ðд¦ÀíÁ÷³Ì£¬×Ô¶¯ ½øÐÐÊý¾Ý/ÈÎÎñ»®·Ö¡¢Êý¾ÝͨÐź͸ºÔص÷¶È£¬Ê¹Ö®ÔÚ¶à½áµã¡¢¶àºËÉϲ¢ÐÐÖ´ÐУ¬½â¾öÒ£¸Ð´¦ ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯ÊµÏÖÎÊÌâ¡£±¾·¢Ã÷µÄÄ¿µÄÊÇͨ¹ýÒÔϼ¼Êõ·½°¸À´ÊµÏÖ¡ªÖÖÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å·½·¨£¬°üÀ¨ÒÔϲ½Öè1)Ìáȡң¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍ£¬¸ù¾Ý¼ÆËãÓëÊý¾ÝµÄ¾Ö²¿Ïà¹ØÐÔ£¬Èç¾Ö²¿Ïà¹Ø¡¢²¨¶Î ¼äÏà¹Ø»òÈ«¾ÖÏà¹Ø£¬·ÖÎöÕâÖÖÖØ¸´¼ÆËãÌØÐÔ²¢½øÐÐËã·¨·ÖÀ࣬ÔÚËã·¨·ÖÀàµÄ»ù´¡ÉÏ£¬ÎªÃ¿Àà Ëã·¨¹éÄɲ¢¶¨Òå³ö¹«¹²µÄ²¢ÐÐÒ£¸ÐͼÏñ´¦ÀíËã·¨Á÷³Ì¡¢½áµã¼äÊý¾ÝͨÐźͽ»»¥·½Ê½£¬²¢Îª ÆäÉè¼ÆÍ¨ÓõÄÊý¾Ý/ÈÎÎñ»®·Ö²ßÂԺͽڵã¼ä¶¯Ì¬µ÷¶È²ßÂÔ£¬×îÖÕÌáÁ¶³öÏàÓ¦µÄÒ£¸ÐͼÏñ²¢ Ðд¦ÀíÄ£ÐÍ£¬ÔÚÕâЩģÐÍÖУ¬ÆäÊý¾Ý/ÈÎÎñ»®·Ö²ßÂÔÔÚ½áµã¼äÊý¾Ý»®·ÖµÄ»ù´¡ÉÏ£¬¿ÉÕë¶Ô¶à ºË¼Ü¹¹½øÐжþ´Î»®·Ö£¬³ä·ÖÀûÓöàºË²¢ÐÐÐÔ£»Æä²¢ÐÐËã·¨´¦ÀíÁ÷³ÌÉÏ£¬³ä·ÖÀûÓÃI/OԤȡ²ß
3ÂÔµ÷Õû²¢ÐÐÁ÷³Ì£¬Ê¹I/OºÍ¼ÆËã³ä·ÖÖØµþ£¬¶ÔÄ£ÐͽøÐÐÓÅ»¯£»2)¹¹½¨¿ìËÙ²¢Ðл¯±à³ÌÄ£°å¿â£¬¿ìËÙ²¢Ðл¯±à³ÌÄ£°å¿â£¬»ùÓÚMPI²¢ÐмÆËã»·¾³£¬ ÒÔ¼°Ò£¸ÐÊý¾Ý¶ÔÏó²¢Ðд洢ϵͳ(HPGFS)ÌṩµÄ¸ßËÙ²¢ÐÐI/OºÍµØÀíÐÅÏ¢·ÃÎÊת»»½Ó¿Ú£¬ ÀûÓÃMPIºÍ¶àÏ̼߳¼Êõ(pthread)½«ÒÔÉÏÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍʵÏÖ²¢¹Ì»¯µ½ÏàÓ¦µÄ±à³Ì Ä£°åÖУ¬Æä¹¹½¨·½·¨ÈçÏÂÊ×ÏÈ£¬Ê¹ÓÃÈí¼þÉè¼ÆÄ£Ê½¶ÔÉÏÊöÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍÖв¢Ðд¦ÀíÁ÷³ÌµÄ»ù±¾´¦ Àí²½Öè½øÐнӿڳéÏóÉè¼Æ£¬Ã¿¸öÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£Ðͱ»³éÏóΪһ¸ö²¢Ðбà³ÌÄ£°åÀࣻģ ÐÍÖв¢Ðд¦ÀíÁ÷³ÌµÄ¸÷¸ö»ù±¾²¢Ðд¦Àí²½ÖèÒ²±»³éÏóΪ¸ÃÄ£°åÀàÖÐÏàÓ¦µÄ²Ù×÷½Ó¿Ú(º¯ Êý½Ó¿Ú)£»×îÖÕ£¬Ä£ÐÍÖеIJ¢Ðд¦ÀíÁ÷³Ì£¬¼´¸÷¸ö»ù±¾´¦Àí²½ÖèµÄ¼ÆËãÁ÷³ÌºÍÂß¼£¬Ó³ÉäΪ ±à³ÌÄ£°åÀàÖÐÏàÓ¦µÄ¸÷¸ö²Ù×÷½Ó¿ÚµÄµ÷ÓÃÁ÷³ÌºÍÂß¼£¬´ËÁ÷³ÌºÍÂß¼±»¹Ì»¯µ½Ä£°åÀàµÄÖ÷ º¯Êý²Ù×÷½Ó¿ÚÖУ»Æä´Î£¬ÀûÓÃMPIºÍ¶àÏ̼߳¼Êõ(Pthread)¶Ô±à³ÌÄ£°åÀàÖеĸ÷¸ö²Ù×÷½Ó¿Ú½øÐÐ ²¢ÐÐʵÏÖ£¬ÀûÓÃMPI±à³ÌÓïÑÔʵÏÖ±à³ÌÄ£°åÀàÖÐ¶à¼ÆËã½áµã¼äµÄ²¢ÐмÆËãºÍ½áµãͨÐÅ£» Pthread¶àÏß³ÌʵÏÖ¼ÆËã½áµãÄڵĶàºË²¢Ðд¦Àí£¬²¢Í¨¹ýI/OԤȡ²ßÂÔ£¬Ê¹µÃ¼ÆËãºÍI/O³ä ·ÖÖØµþ£»ÀûÓÃHPGFSµÄ»ùÓÚͨÓò¢ÐÐÎļþϵͳµÄMPI-I0½Ó¿ÚÌṩȫ¾ÖÎļþ¾µÏñ¼°²¢ÐÐI/O Ö§³Ö£¬±ÜÃâÊý¾Ý·Ö·¢ºÍ»ØÊÕ¼°½Úµã¼äƵ·±µÄÊý¾Ý½»»¥£¬¶ÔI/OÐÔÄܺͲ¢ÐÐÁ÷³Ì½øÐÐÓÅ»¯£»Ê¹ ÓÃHPGFSµÄµØÀíÐÅÏ¢·ÃÎʺͲÙ×÷½Ó¿Ú£¬¼ò»¯²¢Ðд¦Àí¹ý³ÌÖеØÀíÐÅÏ¢µÄ¹ÜÀíºÍת»»£¬´ËÍ⣬ ²¢ÐÐÄ£ÐÍÖÐÉè¼ÆµÄÊý¾Ý»®·Ö²ßÂÔ¡¢¶¯Ì¬µ÷¶È²ßÂÔµÈҲʵÏֹ̻¯ÔÚÄ£°åÀàÖУ»×îºó£¬½«±à³ÌÄ£°åÀà·â×°³É²¢Ðл¯±à³ÌÄ£°å¿â£¬ÀûÓÃÈí¼þÉè¼ÆÄ£Ê½¶Ô²¢Ðбà³ÌÄ£ °å¿â½øÐпÉÀ©Õ¹Éè¼Æ£¬Ê¹Æä¾ßÓпª·Å¼Ü¹¹£¬¸ÃÄ£°å¿âÖÐÉè¼ÆÒ»¸ö±à³ÌÄ£°åÀàµÄ¸¸À࣬À©Õ¹ ¸Ã¸¸Àà¿ÉÅÉÉú³ö¶à¸ö²¢Ðл¯±à³ÌÄ£°åÀ࣬²¢¶Ô²¢ÐгÌÐòÖеÄËùÓлù±¾²ÎÊýºÍ˽ÓвÎÊý½øÐÐ ¹ÜÀí£¬½«ÉÏÊöÕâЩ²¢Ðл¯±à³ÌÄ£°åÀà·â×°µ½¾ßÓпª·Å¼Ü¹¹µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å¿â£¬ÒÔ¿â (lib)ÐÎʽÌṩ¿É¿ìËÙ½øÐÐÒ£¸ÐͼÏñ´¦ÀíËã·¨²¢Ðл¯µÄͨÓñà³Ì¿ª·¢°ü¡£3)¼Ì³Ð²¢Ðл¯±à³ÌÄ£°å£¬ÀûÓÃÀà¼Ì³ÐµÄ±à³Ì˼Ï룬ÔÚÓû§´¦Àí³ÌÐòÖм̳ÐÉÏÊö¿ì ËÙ²¢Ðл¯±à³ÌÄ£°å¿âÖÐÖ¸¶¨µÄÄ£°åÀ࣬±ã¿É×Ô¶¯¼ÓÔØ¸ÃÄ£°åÀàËùʵÏֵIJ¢Ðд¦ÀíÄ£ÐÍ£¬¼´ ¼ÓÔØÒ£¸ÐͼÏñ²¢Ðд¦ÀíÁ÷³Ì£¬Êý¾Ý/ÈÎÎñ»®·Ö²ßÂÔ¡¢Êý¾ÝͨÐÅģʽ¡¢¸ºÔص÷¶È²ßÂÔ£¬ËæºóÔÚ Óû§³ÌÐòÖÐÔØÈë´®Ðд¦ÀíË㷨ģ¿é£¬¾¹ý±àÒë¿É×Ô¶¯½«´®ÐгÌÐòת»¯Îª²¢ÐÐÄ¿±ê³ÌÐò£¬ÔË Ðиò¢ÐÐÄ¿±ê³ÌÐò£¬¼´¿É½«ÕâЩË㷨ģ¿é×Ô¶¯·ÖÅäµ½¶à¸ö¼ÆËã½áµã£¬ÒÔ¼°½áµãÄڵĶàºË´¦ ÀíÆ÷Éϲ¢·¢µØÖ´ÐУ¬²¢½øÐÐ×Ô¶¯Êý¾Ý/ÈÎÎñ»®·Ö¡¢×Ô¶¯Êý¾ÝͨÐŽ»»¥¡¢×Ô¶¯¸ºÔص÷¶È£¬´Ó¶ø ʵÏÖÒ£¸Ð´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯¡£±¾·¢Ã÷µÄÓÐÒæÐ§¹ûΪң¸ÐÓ¦ÓÃÁìÓò¼¼ÊõÈËÔ±£¬ÎÞÐèÊìϤ¸ßÐÔÄܼÆËãÆ½Ì¨ÉÏ»ùÓÚ »úȺµÄ²¢ÐмÆËãÄ£ÐÍ¡¢Ò²ÎÞÐè¾ß±¸MPI²¢Ðбà³Ì¼¼ÊõµÈÓë¸ßÐÔÄܲ¢ÐмÆËãÏà¹ØµÄ¼¼Êõϸ ½Ú£¬Ö»ÐèҪͨ¹ý¼òµ¥µÄÀà¼Ì³Ð·½·¨£¬¼Ì³Ð¸ÃÄ£°å¿âÖÐÖ¸¶¨µÄÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍ£¬²¢¼ÓÔØ Óû§×ÔÐпª·¢µÄ´®ÐÐËã·¨³ÌÐò£¬±ã¿ÉʵÏÖÒ£¸Ð´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯£¬²¢´ïµ½½Ï¸ßµÄ²¢ÐРЧÂÊ£¬´Ó¶ø´ó´óÌá¸ß´ó¹æÄ£Ò£¸ÐÊý¾ÝµÄ´¦ÀíÐÔÄÜ¡£
ÏÂÃæ¸ù¾Ý¸½Í¼¶Ô±¾·¢Ã÷×÷½øÒ»²½Ïêϸ˵Ã÷¡£Í¼1Ϊ±¾·¢Ã÷ʵʩÀýËùÊöµÄÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å·½·¨µÄʾÒâͼ£»Í¼2Ϊ±¾·¢Ã÷Ò»¸ö²¢Ðл¯±à³ÌÄ£°å¿â½á¹¹Ê¾Òâͼ£»Í¼3Ϊ±¾·¢Ã÷Öд¿Êý¾Ý²¢ÐмÆËãÄ£Ð͵ÄʾÒâͼ£»Í¼4Ϊ±¾·¢Ã÷ÖÐÈ«¾ÖÐÅÏ¢¼ÆËã²¢ÐÐÄ£ÐÍʾÒâͼ£»Í¼5Ϊ±¾·¢Ã÷ÖеIJ¢Ðбà³ÌÄ£°åÀà¹ØÏµÊ¾Òâͼ£»Í¼6Ϊ±¾·¢Ã÷ʵʩÖд¿Êý¾Ý²¢Ðбà³ÌÄ£°åÀàµÄÀàͼ£»Í¼7Ϊ±¾·¢Ã÷ʵʩ¹ý³ÌʾÒâͼ£»Í¼8Ϊ±¾·¢Ã÷ʵʩ½á¹û²¢ÐÐËã·¨Ö÷³ÌÐòµÄ³ÌÐòĿ¼½á¹¹¡£
¾ßÌåʵʩÀý·½Ê½Èçͼ1-8Ëùʾ£¬±¾·¢Ã÷ʵʩÀýËùÊöµÄÒ»ÖÖÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à ³ÌÄ£°å·½·¨£¬°üÀ¨ÒÔϲ½Öè1)ÌáÈ¡ÈýÖÖµäÐÍÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£Ð͸ù¾ÝËã·¨µÄÖØ¸´ÐÔ¼ÆËãÌØµã¹éΪÈýÀàÏñËØÖØ¸´ÔËËã¡¢¾Ö²¿ÇøÓòÖØ¸´ÔËËã¡¢²¨¶Î¼ä ÖØ¸´ÔËËãºÍÈ«¾ÖÐÅÏ¢ÀàÔËË㣬²¢ÌáÁ¶³öÈýÖÖ½ÏΪµäÐ͵IJ¢ÐмÆËãÄ£ÐÍ£¬°üÀ¨´¿Êý¾Ý²¢ÐÐÄ£ ÐÍ¡¢²¨¶ÎÏà¹ØÊý¾Ý²¢ÐÐÄ£ÐÍ¡¢È«¾ÖÐÅÏ¢¼ÆËã²¢ÐÐÄ£ÐÍ¡£´¿Êý¾Ý²¢ÐÐÄ£ÐÍÖ÷ÒªÕë¶Ô¾ßÓоֲ¿ÇøÓòÖØ¸´¼ÆËãÐÔµÄËã·¨£¬ÆäÊä³öͼÏñ¿ÉÓÉÊä ÈëͼÏñÖÐij¸öÏñËØ»ò¾Ö²¿ÇøÓòÄÚÏñËØµÄ¶ÀÁ¢ÔËËãµÃµ½£¬ÊʺÏͼÏñÔËË㣬·øÉä/¼¸ºÎУÕý£¬Í¼ ÏñÔöÇ¿µÈËã·¨¡£¸ÃÄ£Ð͵IJ¢Ðд¦ÀíÁ÷³ÌÈçͼ3¡£Ö÷½ÚµãÍê³É²ÎÊý»ñÈ¡¡¢½á¹ûͼÏñ·¶Î§¼ÆËã¡¢ Êý¾Ý/¼ÆËãÈÎÎñ»®·Ö¼°½Úµã¼ä¼ÆËãÈÎÎñ¶¯Ì¬µ÷¶È£»´Ó½Úµã²»¶Ï´ÓÖ÷½Úµã»ñÈ¡×ÓÈÎÎñ£¬²¢½ø ÈëÓÉI/OÊý¾Ý¶ÁÈ¡¡¢¶à¸öºËÐÄ´¦ÀíËã·¨¹¦ÄÜ¡¢Êý¾ÝÊä³ö²Ù×÷µÈ×é³ÉµÄ¶à¼¶Á÷Ë®ÏßÖУ¬Á÷Ë®Ïß ¸÷¼¶Ó³Éäµ½¶à¸öÏß³ÌÖÐÖ´ÐУ¬¸÷Ïß³Ìͨ¹ý¹²Ïí»·Ðλº³åÇø(buffer)ÔÚÄÚ´æ¿Õ¼ä½»»»Êý¾Ý¡£ ¸ÃÄ£ÐÍÖÐÀûÓöàÏ̼߳¼Êõ³ä·Ö·¢»ÓÄÚºËÏ̼߳¶²¢ÐУ¬ÇÒʹÓÃÊý¾ÝԤȡ²ßÂÔ£¬Ê¹I/OÓë¼ÆËã ³ä·ÖÖØµþ¡£²¨¶ÎÏà¹ØÊý¾Ý²¢ÐÐÄ£ÐÍÖ÷ÒªÕë¶Ô¾ßÓв¨¶Î¼äÖØ¸´¼ÆËãÌØÐÔµÄËã·¨£¬¼ÈÊä³öͼÏñ µÄijÏñËØ»òÇøÓòµÄ¼ÆËãÓɶà¸ö²¨¶ÎµÄ¹²éîµã»òÇøÓò¹²Í¬²ÎÓëÔËËã¡£ÕâÀàËã·¨µÄÊý¾Ý²¢ÐÐÐÔ ºÍ¼ÆËãµÄÊý¾Ý¾Ö²¿ÐÔÒ²½ÏºÃ¡£ÊʺÏͼÏñ±ä»»¡¢Í¼ÏñÈںϡ¢²¨¶ÎÅä×¼µÈËã·¨¡£¸Ã²¢ÐÐÄ£ÐÍÒ²²É ÓÃÈÎÎñ³Ø²¢ÐÐÖ÷Òª²¢Ðд¦ÀíÁ÷³ÌÓë´¿Êý¾Ý²¢ÐÐÄ£ÐÍ´óÌåÏàͬ£¬Çø±ðÔÚÓÚÈÎÎñ»®·ÖʱÓ벨¶Î ÊýÎ޹أ¬ÔÚºËÐÄÄ£¿é´¦ÀíÊý¾Ý¿éʱÖжà¸ö²¨¶Î¶ÔÓ¦µÄÊý¾Ý¿éÒ»Æð²ÎÓë¼ÆË㡣ȫ¾ÖÐÅÏ¢¼ÆËã²¢ÐÐÄ£ÐÍÕë¶ÔÐÅÏ¢¼ÆËãÀàÒ£¸ÐËã·¨£¬²¢ÐмÆËãÁ÷³ÌÖмä»ò½áβÖÐ Éæ¼°È«¾Ö¼ÆË㣬ÈçͼÏñ·ÖÀà¡¢Ö±·½Í¼¹æ¶¨»¯µÈ¡£È«¾ÖÐÅÏ¢¼ÆËã²¢ÐÐÄ£Ð͵IJ¢Ðд¦ÀíÁ÷³ÌÈç ͼ4£¬Ö÷½ÚµãÍê³É²ÎÊý»ñÈ¡¡¢Êý¾Ý/¼ÆËãÈÎÎñ»®·Ö¡¢½Úµã¼äµÄ¼ÆËãÈÎÎñ¶¯Ì¬µ÷¶È£»´Ó½ÚµãÑ»· ´ÓÖ÷½Úµã»ñÈ¡×ÓÈÎÎñ£¬²¢½øÈëÓÉI/OÊý¾Ý¶ÁÈ¡¡¢¶à¸öºËÐÄ´¦ÀíËã·¨¹¦ÄÜ¡¢¼ÆËã½á¹û»ØÊÕµÈ×é ³ÉµÄ¶à¼¶Á÷Ë®ÏßÖУ¬Á÷Ë®Ï߸÷¼¶²¢·¢Ö´ÐУ»Íê±Ïºó£¬ËùÓмÆËã½Úµãͬ²½¶Ô»ØÊյļÆËã½á¹û½ø ÐÐÈ«¾Ö´¦Àí£»×îºóÈôÎÞËæºóµÄ¼ÆËã´¦ÀíÔòÕû¸ö¼ÆËãÁ÷³Ì½áÊø£¬·ñÔò£¬ÔòÆô¶¯ÁíÒ»¸öÁ÷Ë®Ïß´¦ Àí½×¶Î£¬×îÖÕÊä³ö¼ÆËã½á¹ûÐÅÏ¢»òÕß½á¹ûͼÏñÊý¾Ý¡£2)¹¹½¨²¢Ðбà³ÌÄ£°å¿â¸Ã²¢Ðбà³ÌÄ£°å¿âµÄÄ£°åÀàÉè¼ÆÈçͼ5Ëùʾ¡£±à³ÌÄ£°åÖгéÏóÁËÒ»¸ö±à³ÌÄ£ °å¸¸ÀàImgProcessingParallel£¬Êý¾ÝÀàÐÍProcessingParam¸ºÔðËã·¨»ù±¾²ÎÊýºÍ˽ÓвÎÊýµÄ¹ÜÀí¡£Í¨¹ý¶ÔÒÔÉÏÈýÖÖ²¢Ðд¦ÀíÄ£ÐͽøÐнӿڳéÏóÉè¼Æ£¬²¢¼Ì³ÐÄ£°å¸¸À࣬µÃµ½´¿Êý¾Ý²¢Ðбà³ÌÄ£°åÀàImgProcessingDataParallel£¬²¨¶ÎÏà¹ØÊý¾Ý²¢Ðбà³ÌÄ£°åÀà ImgPr¦ÏcessingBandRe 1 atedPara 11 e 1 ºÍÈ«¾ÖÐÅÏ¢¼ÆËã²¢Ðбà³ÌÄ£°åÀà ImgProcessingGlo balParalIelNoImg0ÿ¸ö²¢Ðд¦ÀíÄ£Ð͵ĸ÷¸ö»ù±¾²¢Ðд¦Àí²½ÖèÒ²±»Ä£°å»¯ÎªÏàӦģ°åÀàÖÐµÄ ²Ù×÷½Ó¿Ú(º¯Êý½Ó¿Ú)£¬Õû¸ö²¢ÐÐËã·¨Á÷³ÌÒ²¹Ì»¯ÔÚÖ÷²Ù×÷º¯Êý½Ó¿ÚÖС£Èç´¿Êý¾Ý ²¢Ðбà³ÌÄ£°åÀà(Èçͼ6)£¬½«Ä£ÐͲ¢ÐÐËã·¨Á÷³ÌÖи÷¸ö»ù±¾´¦Àí²½ÖèÄ£°å»¯ÎªÄ£°å Àà ÖÐ GetInitParam()¡¢GetScopeOfDesImage()¡¢SplitDesImage()¡¢LoadBalance()¡¢ GetScopeOfSrcBlock ()¡¢ReadSrcBlock ()¡¢BlockProcessing () ^ffriteDesBlock ()µÈ²Ù×÷½Ó ¿Ú£¬²¢ÀûÓÃMPIºÍPthread²¢ÐÐʵÏÖ¡£¶øÔÚÖ÷º¯Êý½Ó¿Ú ImgProcessing ()µ÷ÓÃÕâЩ²Ù×÷½Ó ¿Ú(¶ÔÓ¦²¢Ðд¦ÀíÄ£ÐÍÖеĻù±¾´¦Àí²½Öè)ʵÏÖ²¢¹Ì»¯Õû¸ö²¢Ðд¦ÀíÁ÷³Ì¡£´ËÍ⣬½«²¢ÐÐ ´¦ÀíÄ£ÐÍÖеÄÊý¾Ý/ÈÎÎñ»®·Ö²ßÂÔ¡¢¶¯Ì¬µ÷¶È²ßÂÔÒ²¹Ì»¯ÔÚÄ£°åÀàÖС£×îºó£¬½«ÕâЩ±à³ÌÄ£ °åÀà·â×°´ò°ü£¬ÒÔ¿â(lib)ÐÎʽÌṩͨÓò¢Ðл¯±à³ÌÄ£°å¿â¿ª·¢°ü¡£3)¼Ì³Ð²¢Ðбà³ÌÄ£°åÀàͨ¹ý¼Ì³Ð±à³ÌÄ£°å¿âÖеIJ¢Ðбà³ÌÄ£°åÀ࣬¼´¿É¼ÓÔØÖ¸¶¨µÄÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ ÐÍ£¬´Ó¶øÊµÏÖÒ£¸Ð´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯£¬Æä¾ßÌå¿ìËÙ²¢Ðл¯ÊµÊ©Á÷³ÌÈçͼ7Ëùʾ¡£Ê×ÏÈ£¬Òª¸ù¾Ý¾ßÌåËã·¨Ã÷È·Ìá³öËùÐèµÄÍⲿ²ÎÊý£¬ÕâЩ²ÎÊý°üÀ¨±»´¦Àí¶ÔÏóµÄ ÊäÈëÊä³ö½á¹û·¾¶¡¢Í¼Ïñ´óС£¬ÒÔ¼°ÆäËûÐèÒª´ÓÍⲿ´«ÈëµÄ²ÎÊýµÈ£¬²¢ÐгÌÐòÍê³Éºóϵ ͳ½«×Ô¶¯¸ù¾ÝÕâЩ²ÎÊýÉú³ÉΪ¸Ã²¢ÐÐËã·¨Éú³ÉXML²ÎÊýÎļþ¡£Æä´Î£¬¸ù¾Ý¾ÑéÑ¡¶¨Ðè Òª¼Ì³ÐµÄ²¢ÐÐÄ£°åÀà¡£ÔٴΣ¬°´Í¼8ÖеIJ¢ÐÐËã·¨Ö÷³ÌÐòµÄ³ÌÐòĿ¼½á¹¹¹¹½¨ºÍ±àдÓà »§³ÌÐò£¬²¢ÔÚImgProcessingParallellmp.hÖÐÉêÃ÷ҪʹÓõIJ¢Ðбà³ÌÄ£°å£¬¼´ÊµÏÖÀà ImgProcessingParallellmp¼Ì³ÐÑ¡¶¨µÄ±à³ÌÄ£°åÀà¡£¶øºó£¬¼ÓÔØÓû§ºËÐŦÄܺ¯Êý£¬¼´ÔÚ ImgProcessingParallellmp. cppÖÐÖØÔØBlockProcessing·½·¨£¬²¢ÔÚiº¥·½·¨ÖÐiÖÜÓÃÓû§±à дµÄ´®ÐкËÐÄËã·¨¹¦Äܺ¯Êý¡£×îºó£¬½øÐÐÁªºÏ±àÒë¡¢Ö´ÐС£×ñÑÕâÒ»Á÷³Ì¼´¿É¿ìËÙʵÏÖÒ»¸ö ²¢ÐÐЧÂʽϸߵIJ¢Ðд¦ÀíËã·¨¡£ÈôÓû§Ëã·¨ÐèÒª¼Ì³ÐÈ«¾ÖÐÅÏ¢¼ÆËã²¢Ðбà³ÌÄ£°åÀ࣬Ôò»¹ÐèÒªÖØÔØÈ«¾Ö¼ÆËã (GlobalComputing)£¬¼ÓÔØÓû§×Ô¶¨ÒåµÄÈ«¾Ö¼ÆËãËã·¨¡£ÈôÓû§ÐèÒª½øÒ»²½Ìá¸ß²¢ÐÐЧÂÊ£¬ Ôò¿ÉÒÔÖØÔØSplitDesImage²Ù×÷½Ó¿Ú»òLoadBalance²Ù×÷½Ó¿Ú£¬µ÷ÓÃ×Ô¶¨ÒåµÄÊý¾ÝÈÎÎñ»® ·ÖºÍ¸ºÔؾù²ßÂÔ¡£°´ÒÔÉϲ½Ö裬Éè¼ÆÁËÒ»Ì×ÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ²¢Ðбà³ÌÄ£°å¿â£¬Ö÷ÒªÊÇÊÊÓà ÓÚÊý¾Ý²¢ÐÐÐԽϺõĴ¦ÀíËã·¨¡£¸ÃÄ£°å¿â»ùÓÚµÄMPI²¢ÐмÆËã»·¾³£¬Ö÷ÒªÊÇÖ¸»ùÓÚÉÌÒµ¶à ºË»úȺƽ̨£¬ÓÉMPI²¢ÐмÆËã¡¢PVFS2¡¢»òLusterµÈ²¢ÐÐÎļþϵͳµÈ×é³É¡£¸ÃÄ£°å¿âÒѾʵ ÏÖÁ˼¸Ê®¸öÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯£¬ÇÒ¼ÓËٱȽӽüÏßÐÔ£¬²¢ÐÐЧÂʸߡ£
ȨÀûÒªÇó
Ò»ÖÖÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å·½·¨£¬ÆäÌØÕ÷ÔÚÓÚ°üÀ¨ÒÔϲ½Öè1)Ìáȡң¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍ£¬¸ù¾Ý¼ÆËãÓëÊý¾ÝµÄ¾Ö²¿Ïà¹ØÐÔ£¬Èç¾Ö²¿Ïà¹Ø¡¢²¨¶Î¼äÏà¹Ø»òÈ«¾ÖÏà¹Ø£¬·ÖÎöÕâÖÖÖØ¸´¼ÆËãÌØÐÔ²¢½øÐÐËã·¨·ÖÀ࣬ÔÚËã·¨·ÖÀàµÄ»ù´¡ÉÏ£¬ÎªÃ¿ÀàËã·¨¹éÄɲ¢¶¨Òå³ö¹«¹²µÄ²¢ÐÐÒ£¸ÐͼÏñ´¦ÀíËã·¨Á÷³Ì¡¢½áµã¼äÊý¾ÝͨÐźͽ»»¥·½Ê½£¬²¢ÎªÆäÉè¼ÆÍ¨ÓõÄÊý¾Ý/ÈÎÎñ»®·Ö²ßÂԺͽڵã¼ä¶¯Ì¬µ÷¶È²ßÂÔ£¬×îÖÕÌáÁ¶³öÏàÓ¦µÄÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍ£»2)¹¹½¨¿ìËÙ²¢Ðл¯±à³ÌÄ£°å¿â£¬Ê×ÏÈ£¬Ê¹ÓÃÈí¼þÉè¼ÆÄ£Ê½¶ÔÉÏÊöÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐͽøÐнӿڳéÏóÉè¼ÆÎª²¢Ðбà³ÌÄ£°åÀࣻ¶øÄ£ÐÍÖв¢Ðд¦ÀíÁ÷³ÌµÄ¸÷¸ö»ù±¾²¢Ðд¦Àí²½Öè±»³éÏóΪģ°åÀàÖÐÏàÓ¦µÄº¯Êý½Ó¿Ú£»²¢Ðд¦ÀíÁ÷³Ì±»Ó³ÉäΪ±à³ÌÄ£°åÀàÖжà¸öº¯Êý½Ó¿ÚµÄµ÷ÓÃÁ÷³ÌºÍÂß¼£¬²¢±»¹Ì»¯µ½Ä£°åÀàµÄÖ÷º¯Êý²Ù×÷½Ó¿ÚÖУ¬Æä´Î£¬ÀûÓÃMPIºÍPthread¶àÏ̼߳¼Êõ¶Ô±à³ÌÄ£°åÀàÖеĸ÷¸ö²Ù×÷½Ó¿Ú½øÐв¢ÐÐʵÏÖ£¬ÆäÖÐMPIʵÏÖ¶à¼ÆËã½áµã¼äµÄ²¢ÐмÆËãºÍͨÐÅ£¬Pthread¶àÏß³ÌʵÏÖ¼ÆËã½áµãÄڵĶàºË²¢Ðд¦Àí£¬×îºó£¬½«±à³ÌÄ£°åÀà·â×°³É²¢Ðл¯±à³ÌÄ£°å¿â£¬¶ÔÆä½øÐпÉÀ©Õ¹Éè¼Æ£¬Ê¹Æä¾ßÓпª·Å¼Ü¹¹£¬ÆäÖÐÉè¼ÆÒ»¸ö±à³ÌÄ£°åÀàµÄ¸¸À࣬À©Õ¹¸Ã¸¸Àà¿ÉÅÉÉú³ö¶à¸ö²¢Ðл¯±à³ÌÄ£°åÀࣻ²¢¶Ô²¢ÐгÌÐòÖеÄËùÓлù±¾²ÎÊýºÍ˽ÓвÎÊý½øÐйÜÀí£»3)¼Ì³Ð²¢Ðл¯±à³ÌÄ£°å£¬ÀûÓÃÀà¼Ì³ÐµÄ±à³Ì˼Ï룬ÔÚÓû§´¦Àí³ÌÐòÖм̳ÐÉÏÊö¿ìËÙ²¢Ðл¯±à³ÌÄ£°å¿âÖÐÖ¸¶¨µÄÄ£°åÀ࣬±ã¿É×Ô¶¯¼ÓÔØ¸ÃÄ£°åÀàËùʵÏֵIJ¢Ðд¦ÀíÄ£ÐÍ£¬¼´¼ÓÔØÒ£¸ÐͼÏñ²¢Ðд¦ÀíÁ÷³Ì£¬Êý¾Ý/ÈÎÎñ»®·Ö²ßÂÔ¡¢Êý¾ÝͨÐÅģʽ¡¢¸ºÔص÷¶È²ßÂÔ£¬ËæºóÔÚÓû§³ÌÐòÖÐÔØÈë´®Ðд¦ÀíË㷨ģ¿é£¬¾¹ý±àÒë¿É×Ô¶¯½«´®ÐгÌÐòת»¯Îª²¢ÐÐÄ¿±ê³ÌÐò£¬ÔËÐиò¢ÐÐÄ¿±ê³ÌÐò£¬¼´¿É½«ÕâЩË㷨ģ¿é×Ô¶¯·ÖÅäµ½¶à¸ö¼ÆËã½áµã£¬ÒÔ¼°½áµãÄڵĶàºË´¦ÀíÆ÷Éϲ¢·¢µØÖ´ÐУ¬²¢½øÐÐ×Ô¶¯Êý¾Ý/ÈÎÎñ»®·Ö¡¢×Ô¶¯Êý¾ÝͨÐŽ»»¥¡¢×Ô¶¯¸ºÔص÷¶È£¬´Ó¶øÊµÏÖÒ£¸Ð´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯¡£
2.¸ù¾ÝȨÀûÒªÇó1ËùÊöµÄÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å·½·¨£¬ÆäÌØÕ÷ ÔÚÓÚÔÚ×îÖÕÌáÁ¶³öÏàÓ¦µÄÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍÖУ¬ÆäÊý¾Ý/ÈÎÎñ»®·Ö²ßÂÔÔÚ½áµã¼äÊý ¾Ý»®·ÖµÄ»ù´¡ÉÏ£¬¿ÉÕë¶Ô¶àºË¼Ü¹¹½øÐжþ´Î»®·Ö£¬³ä·ÖÀûÓöàºË²¢ÐÐÐÔ£»Æä²¢ÐÐËã·¨´¦ÀíÁ÷ ³ÌÉÏ£¬²ÉÓûùÓÚ²¢ÐÐÎļþϵͳµÄMPI-I0²¢ÐнӿÚÌá¸ßI/OÐÔÄÜ£¬²¢³ä·ÖÀûÓÃI/OԤȡ²ßÂÔ µ÷Õû²¢ÐÐÁ÷³Ì£¬Ê¹²¢ÐÐI/OºÍ¼ÆËã³ä·ÖÖØµþ£¬¶ÔÄ£ÐͽøÐÐÓÅ»¯¡£
È«ÎÄÕªÒª
±¾·¢Ã÷Éæ¼°Ò»ÖÖÃæÏòÒ£¸ÐͼÏñ´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯±à³ÌÄ£°å·½·¨£¬°üÀ¨ÒÔϲ½Öè1)Ìáȡң¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍ£¬2)¹¹½¨¿ìËÙ²¢Ðл¯±à³ÌÄ£°å¿âʹÓÃÈí¼þÉè¼ÆÄ£Ê½¶ÔÉÏÊöÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍÖв¢Ðд¦ÀíÁ÷³ÌµÄ»ù±¾´¦Àí²½Öè½øÐнӿڳéÏóÉè¼Æ£»ÀûÓÃMPIºÍPthread¶àÏ̼߳¼Êõ¶Ô±à³ÌÄ£°åÀàÖеĸ÷¸ö²Ù×÷½Ó¿Ú½øÐв¢ÐÐʵÏÖ£»½«±à³ÌÄ£°åÀà·â×°³É²¢Ðл¯±à³ÌÄ£°å¿â£¬3)¼Ì³Ð²¢Ðл¯±à³ÌÄ£°å¡£±¾·¢Ã÷µÄÓÐÒæÐ§¹ûΪң¸ÐÓ¦ÓÃÁìÓò¼¼ÊõÈËÔ±Ö»ÐèҪͨ¹ý¼òµ¥µÄÀà¼Ì³Ð·½·¨£¬¼Ì³Ð¸ÃÄ£°å¿âÖÐÖ¸¶¨µÄÒ£¸ÐͼÏñ²¢Ðд¦ÀíÄ£ÐÍ£¬²¢¼ÓÔØÓû§×ÔÐпª·¢µÄ´®ÐÐËã·¨³ÌÐò£¬±ã¿ÉʵÏÖÒ£¸Ð´¦ÀíËã·¨µÄ¿ìËÙ²¢Ðл¯£¬²¢´ïµ½½Ï¸ßµÄ²¢ÐÐЧÂÊ£¬´Ó¶ø´ó´óÌá¸ß´ó¹æÄ£Ò£¸ÐÊý¾ÝµÄ´¦ÀíÐÔÄÜ¡£
Îĵµ±àºÅG01S7/48GK101799762SQ20101014076
¹«¿ªÈÕ2010Äê8ÔÂ11ÈÕ ÉêÇëÈÕÆÚ2010Äê4ÔÂ7ÈÕ ÓÅÏÈȨÈÕ2010Äê4ÔÂ7ÈÕ
·¢Ã÷ÕßÁõ¶¨Éú, ÁõÅô, Àɽ, ÍõåûÓ±, ÕÔÁé¾ü, ÂíÑÞ ÉêÇëÈË:Öйú¿ÆÑ§Ôº¶ÔµØ¹Û²âÓëÊý×ÖµØÇò¿ÆÑ§ÖÐÐÄ