-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
3/26 ·s®Ñ¨ì¡I 3/19 ·s®Ñ¨ì¡I 3/14 ·s®Ñ¨ì¡I 12/12 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

GPU½sµ{»PÀu¤Æ¡X¡X¤j²³°ª©Ê¯à­pºâ

( ²Åé ¦r)
§@ªÌ¡G¤è¥ÁÅv ±i½Ã¥Á ¤è«ØÀØ ©P®üªÚ °ªºZÃþ§O¡G1. -> µ{¦¡³]­p -> ºî¦X
ĶªÌ¡G
¥Xª©ªÀ¡G²MµØ¤j¾Ç¥Xª©ªÀGPU½sµ{»PÀu¤Æ¡X¡X¤j²³°ª©Ê¯à­pºâ 3dWoo®Ñ¸¹¡G 45189
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¯Ê®Ñ¡j
NT°â»ù¡G 295 ¤¸

¥Xª©¤é¡G9/1/2016
­¶¼Æ¡G416
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787302446422
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

¦h®Ö»P²³®Ö²§ºc¥­»O¦]¨ä¶W±jªº¯BÂI¹Bºâ¯à¤O¦Ó¦¨¬°·í«e°ª©Ê¯à­pºâ»â°ìªº·s¶Q¡C2010¦~¥H¨Ó¡A¤w¦³3»O²§ºc¶W¯Å­pºâ¾÷¹Ü»íTOP 500¡A¤À§O¬O·f¸üCPU/GPU²§ºc¨t²Îªº¤Ñªe1A©M®õ©Z¶W¯Å­pºâ¾÷¡B·f¸üCPU/MIC²§ºc¨t²Îªº¤Ñªe2¸¹¶W¯Å­pºâ¾÷¡C¦b³o¨âÃþ¥D¬yªº¦h®Ö»P²³®Ö²§ºc¥­»O¤¤¡ACPU/GPU²§ºc¥­»O¦b©Ê»ù¤ñ¡B¯à¯Ó¤ñµ¥¤è­±ªí²{¤×¬°¬ð¥X¡A¨Ò¦p¡A¦bGreen500«e10¤¤¦³9»Oªö¥Î¤F³oºØ¬[ºc¡C¹ï¤_°ª©Ê¯à­pºâ¥Î¤á¦Ó¨¥¡ACPU/GPU²§ºc¨t²ÎµLºÃ¬O¤@­Ó¨}¦nªº¿ï¾Ü¡C
¥t¤@¤è­±¡A·í«ePC¤w´¶¹M¸Ë³ÆGPU¡]¿W¥ßÅã¥d¡^¡A¨Ï±o³oºØCPU/GPU²§ºc¨t²Îªºµw¥ó¥­»OÀH³B¥i¨£¡CºÉºÞ³oÃþ¥­»OªºGPU¤u§@­«¤ß¬O´åÀ¸®T¼Ö¦Ó«D¯BÂI­pºâ¡A¦ý¦b¤@¨Çºë«×­n¨D¤£°ªªº»â°ì¤´µMÀu¶ÕÅãµÛ¡C¦¹¥~¡A°ò¤_GPU½sµ{ªº¤u¨ã¥]¬O§K¶Oªº¡A¦]¦¹¥i¥Î¸û§Cªº¦¨¥»ºc«Ø¦X¾AªºCPU/GPU²§ºc¦}¦æ¥­»O¡C¥Ñ¤_Åã¥dªº´¶¤Î¡ACPU/GPU²§ºc¦}¦æµ{§Ç¤]¯à¦b´X¥G©Ò¦³ªºPC¤¤¼sªxÀ³¥Î¡C
µM¦Ó¡A¶È¦³µw¥ó¬O¨S¦³À³¥Î»ù­Èªº¡A²§ºc¨t²Î¤Wªºµ{§Ç¶}µo¬O¹ê²{²§ºc¨t²Î»ù­Èªºª½±µ¥B°ß¤@ªº¨BÆJ¡C¦ý¬O¡A²§ºc¦}¦æ³n¥ó¶}µo­±Á{µÛ¥¨¤j¬D¾Ô¡A¥D­n¥]¬A²§ºc¼Æ¾Ú³q«H¡B°ò¤_GPUÅé¨tµ²ºcªº½sµ{»PÀu¤Æ¡B¦h½sĶ¾¹ªºÁp¦X½sĶµ¥¡A¨ãÅé¨ì¹ê½î«hÃø«×§ó¤j¡C½s¼g¥»®Ñªº¥Øªº´N¬O»²§U¥Î¤á¸Ñ¨M³o¨ÇGPU²§ºc¦}¦æ³n¥ó¶}µoªºÃøÃD¡C
¥Ø«e¥«­±¤W¤w¦³«Ü¦hGPU½sµ{®ÑÄy¡A¨ä¤¤¤@¨Ç¤w¸g½×­z¬Û·í¥þ­±¡A¬°¤°¤\ÁÙ­n¼¶¼g¥»®Ñ©O¡H§@¬°¤@¦W¦³¦h¦~¶}µo¸gÅ窺GPUµ{§Ç­û¡A¾\Ū³o¨Ç®ÑÄyÁ`·Pı¦³¨Ç¤£¨¬¡C
­º¥ý¡A¹ï¤_­è±µÄ²GPUªº¶}µoªÌ¡A¥Ñ¤_©Ò­n»{ÃѪºGPUÅé¨tµ²ºc»P±`¥ÎªºCPUÅé¨tµ²ºc®t²§¥¨¤j¡A¬ÛÃöªº²z½×ª¾ÃѸûÃø²z¸Ñ¡A¦Ó¤w¦³ªº¤@¨Ç½×µÛ¬°¤F¼W±j²z½×©Ê©M¾Ç³N©ÊÁÙ¹ï¬ÛÃö²z½×ª¾ÃѶi¦æ¤F©â¶H´£¤É¡A¦]¦Ó¤£°÷³q«U©öÀ´¡A§Y¨Ï¬OGPU½sµ{¦Ñ¤â¤]¥¼¥²¯à§¹¥þŪÀ´¡C¦Ó¥»®Ñ±N±qGPUµ{§Ç­ûªº¨¤«×¥Xµo¡A³q«U©öÀ´¦aÄÄ­zGPU½sµ{»PÀu¤Æ¬ÛÃöªº²z½×ª¾ÃÑ¡C
¨ä¦¸¡A±qGPU²z½×¨ì½sµ{Àu¤Æ¹ê½îªº¹L´ç¬O«D±`ÃöÁ䪺¡A¦ý¥Ø«e¥«­±¤Wªº®ÑÄy­«²z½×¦Ó»´¹ê½î¡C¶È¦³²z½×¦Ó¯Ê¥F¹ê½î©Mª½Æ[¹ê½î®ÄªG¡AÃø¥H¹ïµ{§Ç­ûŪªÌ²£¥Íª½±µ»ù­È¡Cªp¥B«Ü¦h¨S¦³¹ê½î½×ÃÒªº²z½×ª¾ÃÑ¥¼¥²¥¿½T¡C¥»®Ñ±Nºò±Kµ²¦X²z½×©M¹ê½î¡A¦}¸Õ¹Ï±q¹ê½î¤¤Á`µ²²z½×ª¾ÃÑ¡A±q¦ÓÀ°§UŪªÌ§ó¦n¦a²z¸Ñ¡C
¦¹¥~¡Aµ{§Ç©Ê¯àÀu¤Æ¬OGPU½sµ{ªº­«¤¤¤§­«¡C·í«eGPU®ÑÄy¤¤´£¤Î¤F¤j¶qÃö¤_Àu¤Æ¤èªkªº²z½×ª¾ÃÑ¡A¦ý«Ü¤Ö°w¹ï¨CºØÀu¤Æ¤èªk©Mµ¦²¤µ¹¥XÀ³¥Î¹ê¨Ò¡]§Y¨Ï¦³¤]¥i¯à¥u¦³¤@­Ó¡A­Éų­S³ò¤£°÷¼s¡^¡A§ó¨S¦³°w¹ï¬Y¤@­Ó¹ê¨Ò¶i¦æ¨t²Î©Ê´`§Çº¥¶iªºÀu¤Æ¡C¨Æ¹ê¤W¡A¹ï¤_·s¤â¦Ó¨¥¡AÀu¤Æ®É³Ì¤jªº§x´b´N¬Oª¾¹DÀu¤Æ¤èªk«o¤£ª¾¹D¥Î¨ì­þ¨à¡B«ç¤\¥Î¡C¥»®Ñ¸Õ¹Ï°w¹ï¤j¶q¸g¨å¹ê¨Ò¶i¦æ´`§Çº¥¶i¦¡ªºÀu¤Æ¡A¬°ÅªªÌ´£¨Ñ¸ÔºÉªºÀu¤Æ°Ñ¦Ò¡CGPU½sµ{»PÀu¤Æ¡X¡X¤j²³°ª©Ê¯à­pºâ«e¨¥³Ì¦Z¡AGPU½sµ{¹ê½î®É¤£¶È¶È¥u¬O½sµ{¡AÁÙ¯A¤Î½sĶ¾¹¡B¹B¦æÀô¹Òµ¥¬ÛÃö°t®Mª¾ÃÑ¡A­Y¬O¨S¦³³o¨Ç°t®Mª¾ÃÑ¡A§Y¨Ï¬ÝÀ´¤F¡B¼g¥X¤F¬ÛÃö¥N½X¤S¦³¤°¤\·N¸q©O¡H³oµL²§¤_¯È¤W½Í§L¡C¥»®Ñ±N¯A¤Î¥N½X½s¼g¡B½sĶ¡A¹B¦æ®É»Ý­n¯A¤Îªº©Ò¦³°t®Mª¾ÃÑ¡A¥]¬A¨t²ÎÀô¹Ò¡BLinux©R¥O¡B½sĶ¿ï¶µ¡B©Ê¯à¤ÀªR¡B¦}¦æ­pºâ¬ÛÃö±`Ãѵ¥¡C
ºî¤W©Ò­z¡A¥»®Ñªº©w¦ì¬OÀ°§UGPUµ{§Ç­û±q¡§¹sª¾ÃÑ¡¨¤Jªù¨ìºë³qªº®ÑÄy¡A®Ñ¤¤¤º®e¥]§t³q«U©öÀ´ªºGPU²z½×ª¾ÃÑ¡A°t®Mªºª¾ÃÑÅé¨t¡A¤j¶q¥N½X¹ê¨Ò¤Î¨ä´`§Çº¥¶iªºÀu¤Æ¹Lµ{¡B¸Ô²Óªº©Ê¯à¤ÀªR©Mª¾ÃÑÂIÁ`µ²¡A»P©Ê¯àª½±µ¬ÛÃöªºGPU®Ö¤ß¯S©ºÀò¨ú¡B¤ÀªR©M½×­z¡C¹ï¤_GPUµ{§Çªº¶}µo¤H­û¡A¥»®Ñ¨ã¦³¸û¬°¥þ­±ªº°Ñ¦Ò»ù­È¡C
¥»®Ñªºµ²ºc©M¾\Ū«Øij
¥»®Ñ¦@­p¥|½g: ²Ä¤@½g¦@5³¹¡A¥D­n¬OGPUªº²z½×ª¾ÃÑ¡A¥]¬AGPUªº»â°ì­I´º¡]°ª©Ê¯à­pºâ·§­z¡^¡BGPU·§­z¡BGPUµw¥ó¬[ºc¡BGPU³n¥óÅé¨t©MCUDA C½sµ{¡F²Ä¤G½g¦@4³¹¡A°ò¤_4­Ó¤Jªù¯ÅªºGPU¹ê¨Ò®i¥Ü¤F¨ä¸Ô²Óªº¦}¦æ©MÀu¤Æ¹Lµ{¡A¤À§O¬O¦V¶q¥[ªk¡B¦V¶q¤º¿n¡B¯x°}­¼ªk©M¯x°}Âà¸m¡F²Ä¤T½g¦@5³¹¡A¤À§O´y­z¤F5Ãþ¤£¦PÀ³¥ÎªºGPU½sµ{©MÀu¤Æ¹Lµ{¡A¥]¬A¨÷¿n¡B°Ò¼w³Õù¯S¶°¡B«eºó¨D©M¡B±Æ§Ç©M²³æ¹Ï¹³³B²z¡F²Ä¥|½g¦@4³¹¡AÄÄ­z¤F¼vÅTGPUµ{§Ç©Ê¯àªº®Ö¤ß¦]¯À¡A¤À§O±qGPU°õ¦æ®Ö¤ß¡BGPU¦sÀxÅé¨t¡B¼vÅTGPU©Ê¯àªºÃöÁä¦]¯À¡BCPUs©MGPUsªº¨ó¦P¹Bºâ4­Ó¨¤«×®i¶}±´°Q¡C
­º¹M¾\Ū®É¡A«Øij«ö¦æ¤å¶¶§Ç¾\Ū¡A¥»®Ñ¤w«öª¾ÃÑÃø©öµ{«×°µ¤F®Þ²z¡F±µµÛ°Ê¤â¹ê½î¤Jªù½g©M´£°ª½g¡F­Y­n¶i¤@¨B²`¤J¾\Ū«h»Ýµ²¦X®Ö¤ß½g³¹ªºGPU®Ö¤ßª¾ÃÑ»P¤Jªù½g©M´£°ª½gªº¹ê½î¡A³v¨B²z¸Ñ´£¤É¡F³Ì²×¦b¥»®Ñ°ò¦¤W¶i¤@¨BÀu¤Æ¦UÃþÀ³¥Î¡A¶i¦Ó¶}µo¥X¦Û¤vªºÀu¤Æ¤èªk¡C
¹ï¤_«æ¤_±q¹ê¨Ò¹B¦æ¤J¤âªºÅªªÌ¡A¥i®Ú¾Ú4.3¸`¤º®e¦w¸ËÀô¹Ò¡AµM¦Z¸õŪ¤Jªù½g©M´£°ª½gªº¹ê¨Ò³¹¸`¡A¦bÀò±o¤@©w¦¨¥\¸gÅç¦Z¦Aªð¦^¾\Ū²z½×½g©M®Ö¤ß½g¡C
¥»®Ñªº¯SÂI©MÀu¶Õ
¥»®Ñ¤º®eÂ×´I¡A²[»\¤F¨t²Î¥þ­±ªºGPUª¾ÃÑÅé¨t¡B´`§Çº¥¶iªº¹ê¨ÒÀu¤Æ¡B±q¹ê½î¾É¥Xªº¯u¹ê¦³®ÄªºÀu¤Æ¤èªk¡B¼vÅTGPU©Ê¯àªº®Ö¤ß¦]¯À¡BGPU©Ê¯à´úµû©MCPU/GPU²§ºc¨ó¦PÀu¤Æµ¥¤º®e¡C¥»®Ñ»y¨¥¾ë¹ê¡A³q«U©öÀ´¡A¹ï¤£©ö²z¸Ñªº·§©À©w¸q¡A³q¹Lµ§ªÌªº²z¸Ñ­«·s¶i¦æÄÄ­z¡C¥»®ÑÁÙ´£¨Ñ²³æ©öŪªº¹ê¨Ò¥N½X¡A¸ÔºÉªº½sĶ©R¥O©M²M´·ªº¹B¦æµ²ªG¼Æ¾Ú¡C
GPUµo®i¨³²r¡AGPU¬[ºc´X¥G¨C¨â¦~´N§ó·s´«¥N¡]´N¦b¥»®Ñ²Ä3½ü­×­q´Á¶¡¡APascal¬[ºcµo¥¬¡Aµ§ªÌ¤S­«·s­×­q¤F¬ÛÀ³³¹¸`¡^¡A¥Ø«e¥«­±¤Wªº®ÑÄy¼È®É¨S¦³´£¨Ñ§¹¾ãªºGPU¬[ºcª¾ÃÑ¡A¥»®ÑÁ`µ²¤F©Ò¦³ªºGPU¬[ºc¡AÄÄ­z¤F§ó¥[¨t²Î§¹µ½ªºGPUª¾ÃÑÅé¨t¡C
GPUÀu¤Æ¬OÃöÁä¡A¥«­±¤W¦PÃþ®ÑÄy¤¤ÄÄ­z¤F«Ü¦hÀu¤Æ¤èªk¡A¦ý¸g¾ú¤F´`§Çº¥¶iÀu¤Æªº¨ãÅé¹ê¨Ò¬Û¹ï¯Ê¥F¡A¬Æ¦Ü¦³¨ÇÀu¤Æ¤èªk¦s¦b°ÝÃD¡]¥»®Ñ¦³¬ÛÀ³ªº¹êÅç¦õÃÒ¡^¡C
­PÁÂ
¥»®Ñ¤jºõ¥Ñ¤è¥ÁÅv©M¤è«ØÀئ@¦P°Ó©w¡F¤è¥ÁÅv§¹¦¨¥»®Ñ¥N½Xªº½s¼g¡B¹êÅç¼Æ¾Ú´ú¸Õ»P¤ÀªR¡B¥»®Ñªì½Z¡B­º½ü­×­q¡B­«­n­×­q¡]¦p¿ù»~­×¥¿¡Bµ²ºc½Õ¾ã©M³¹¸`¤º®e¼W¥[µ¥¡^¥H¤Î¦ZÄò­×­q¤º®eªºÅv¿Å©M§ó·s¡F±i½Ã¥Á¡B¤è«ØÀØ¡B©P®üªÚµ¥§¹¦¨¦ZÄò¼Æ½ü­×­q¡A¥¿¬O¦³¥L­Ìªº­×­q¤~¨Ï¥»®Ñ¯u¥¿¥iŪ¡F°ªºZ´£¨Ñ¤FLinux¹Ï§Î¬É­±CUDA¦w¸Ëªº¤åÀÉ©MÅçÃÒ¡AÅçÃÒ¤F¥»®Ñ©Ò¦³¥N½Xªºµ²ªG¥¿½T©Ê©M©Ê¯à·Ç½T©Ê¡A¥H¤Î¶i¦æ¤@¨ÇÃöÁ䪺¬dº|¸É¯Ê¡C¥¿¬O©Ò¦³§@ªÌ¦@¦P§V¤O¡A¥»®Ñ¤~¯à¯u¥¿¦¨½Z¡C
¥»®Ñ¤ä¼µ½ÒÃD¥]¬A°ê®a¦ÛµM¬ì¾Ç°òª÷¶µ¥Ø¡]41375113©M61272146¡^¡B´ò«n¬Ù¬ã¨s¥Í³Ð·s¸ê§U¶µ¥Ø¡]CX2015B030¡^¡B°ê¨¾¬ì¾Ç§Þ³N¤j¾Ç­pºâ¾÷¾Ç°|Áp¦X³Õ¾É²Õ¶µ¥Ø¡]­±¦V²§ºc¥­»Oªº®ü¬v¹w³ø³n¥ó¥i²¾´Ó©Ê§Þ³N¬ã¨s¡^¡C
¤å¤¤¯A¤Î³\¦hµ§ªÌªº­Ó¤H¾Ç³NÆ[ÂI©M¸gÅçÁ`µ²¡A¥Ñ¤_µ§ªÌ¤ô¥­¦³­­¡A©Ò¦³¦¨ªG¶È¨Ñ°Ñ¦Ò¡A¦p¦³¤£·Ç½T¬Æ¦Ü¿ù»~¤§³B¡A±æŪªÌ½Ì¸Ñ¦}§åµû«ü¥¿¡C¥t¦]½s¼g®É¶¡­Ü«P¡AºÉºÞ¤w¶i¦æ6½ü­×­q¡A¦ý®Ñ¤¤¯Äº|©M·å²«¦b©ÒÃø§K¡A­Yµo²{µ§»~©Î¦³¨ä¥L·N¨£«Øij¡A½Ð­P«Hadmin@hpc6.com¡A¸U¤À·PÁ¡I

½sªÌ2016¦~5¤ë

µ§ªÌªº¸Ü


2016¦~1¤ë20¤é¬O¤@­Ó­È±o¬ö©Àªº¤é¤l¡A³o¥»®Ñ²×¤_§¹¦¨ªì½Z¡AºÉºÞ¦³ªº³¹¸`ÁÙ¦³«Ý¤j´T­×§ï¡C¦Û2015¦~3¤ë¦³¤Fªì¨Bºc«ä¡A§Ú´N¸qµL¤ÏÅU¦a¶}©l¼¶¼g¥»®Ñ¡A¨ì³Ì²×§¹½Z¡A´Á¶¡¤]¦h¦¸½Õ¾ã½×­zµ²ºc¡C§@¬°¤@¦W¦b®Õ³Õ¤h¬ã¨s¥Í¡A³»µÛ³Õ¤h²¦·~ªºÀ£¤O¡A¼g¤@¥»¹ï³Õ¤h²¦·~¡§µL¥Î¡¨ªº®Ñ¡A½T¹ê®¼¤£®e©öªº¡A¤£¹L§Ú»{¬°¬O­È±oªº¡C
¥»¬ì¡A§Ú¾Çªº¬O¾÷±ñ±M·~¡AºÓ¤hÂà¾Ç­pºâ¾÷¡A2012¦~±µÄ²GPU½sµ{¡A·í®ÉMIC¤wµM¿³°_¡A«oÁÙ¯à·P¨ü¨ìGPUªº¡§§E¼ö¡¨¡C»¡¹ê¸Ü¡A­è±µÄ²GPU®É¾ã­Ó¤H¬OÃjªº¡A®v¥S¤w¸g²¦·~¡A®vªù´N§Ú¤@¤H¬ã¨sGPU¡A·í®É¥u¦³¨â¥»GPU®Ñ¡X¡X¡mGPU°ª©Ê¯à¹Bºâ¤§CUDA¡n©MCUDA by example¨Ñ°Ñ¦Ò¡A®Ñ¤¤ªºª¾ÃÑÁÙ¦³¨Ç¡§¹L®É¡¨¡]Tesla¬[ºc©MFermi¬[ºcªº°Ï§O¡^¡B¡§¤£¨t²Î¡¨¡B¬Æ¦Ü¡§¿ù»~¡¨¡]¨£13.3.2¸`¡^¡]·íµM¤£¥i§_»{³o¨â¥»®Ñ¹ï§ÚªºÀ°§U¡^¡Aºô¤W¸ê®Æ´N§ó¤Ö¤F¡C¤]³\¬O§Ú­Ó¤H¤ô¥­¦³­­¡A¶ÈWindowsªºGPU¶}µoÀô¹Ò¦w¸Ë´N¯Ó¶O¤F¥b­Ó¦h¤ë®É¶¡¡ALinuxªºGPUÀô¹Ò§ó¬O¥¢±Ñ¤F¤£ª¾¹D¦h¤Ö¦¸¡]·í®Éºô¤W¸ê®Æ«Ü¤Ö¡A¥B«Ü¦h¤èªk¹Á¸Õ¦Z§¡¤£¥i¦æ¡^¡F­º­ÓGPUµ{§Ç¶}µo§¹¥þ¤£ª¾¹D¦p¦ó¤U¤â¡AÀY¤j¤Fªñ20¤Ñ¤~¦b¬Y¤ÑÆF¥ú¤@°{·Q³q¡A¹ïGPUÀu¤Æ§ó¬OµL±qµÛ¤â¡C¨ä¹ê¤W­z¹Lµ{¥u»Ý­n¤@¦ì¡§¦Ñ®v¡¨±aµÛ¦¨¥\¤@¹M¡A´N¯à¤Ö¨««Ü¦hÅs¸ô¡C»¡³o¤\¦h¡A¨ä¹ê·Qªí¹Fªº·N«ä¬O¡A·s¤â®Éªº§Ú«D±`´Á¬ß¤@¥»¨t²Îªº¡B¥þ­±ªº¡B´`§Çº¥¶iªºGPU®ÑÄy¡A³o¤]¬O§Ú¼g¥»®Ñªº°Ê¦]¡C
2015¦~¡A¦b¾Ç³N°éGPU¦­¤w¡§¹L®É¡¨¡A¬°¤°¤\ÁÙ­P¤O¤_¼¶¼g¥»®Ñ©O¡H­º¥ý¡AGPU½T¹êí©w¦n¥Î: 2014¦~¤]´¿¬ã¨s¹LMIC¡A¡§¤£¥i®»ºN¡¨ªºICC½sĶ¾¹¯Ó¥ú¤F§Úªº­@¤ß¡A©¹©¹Å޿西½Tªº¥N½X½sĶ¾¹´N¬O³ø¿ù¡A©ú©ú²³æ¦V¶q¤Æªº¥N½X½sĶ¾¹´N¬O»{¬°¤£¥i¦V¶q¤Æ¡F¦ÓCUDA¥N½X¥u­n½s¼g¥¿½T¡A§¡¯à¥¿±`½sĶ©M°õ¦æ¡A¥B©Ê¯à¨ú¨M¤_CUDA¥N½X¥»¨­¡C¨ä¦¸¡A§Ú»{¬°GPU¦}¦æ¬O¤@­Ó¤jÁͶդj¥«³õ: GPU¦³3­Ó¼h¦¸¥iÂX®i©Ê¡]¨£3.1¸`¡^¡A¯àº¡¨¬¦UºØ¥«³õ»Ý¨D¡FGPU¡]Åã¥d¡^¤w¦bPC´¶¹M¸Ë³Æ¡A©Ê»ù¤ñ°ª¡AGPU¥­»O¤w¬Û·í´¶¤Î¡FGPUªº©Ê¯à¤£©ö¨ü¨ä¥Lµ{§Ç¼vÅT¡A¬Û¤ñ¤§¤UCPUµ{§Ç©Ê¯à¨ü¨ä¥Lµ{§Ç¼vÅTµ{«×¸û¤j¡FGPUµo®i¨³²r¡A¦b¥¼¨Ó¶q¤l­pºâ¾÷©Î¥Íª«­pºâ¾÷¥X²{«e¡]¥X²{¦Z¤]¤£¥i¯à¥ß¨è¨ú¥N²{¦³ªº­pºâ¾÷¡^¡ACPU/GPU²§ºc¨t²Î±N·|ªø´Á¦s¦b¡C
¥»®Ñªº©w¦ì¬O»²§U¡§¹sª¾ÃÑ¡¨GPUµ{§Ç¶}µo¤H­û±q¤Jªù¨ìºë³qªº®ÑÄy¡A¸Õ¹Ï°µ¨ì¡§ª¾¦æ¦X¤@¡¨¡]³Ì§¹¬üªº·Qªk¬O©Ò¦³ªº²z½×ª¾Ãѧ¡¦³¹êÅçµ²ªG¦õÃÒ¡A¦ýÅãµMÁÙ¦³®t¶Z¡^¡B¨t²Î©Ê±j¡Bª¾ÃÑ¥þ­±¡BÀu¤Æ´`§Çº¥¶i¡C§Æ±æ¥»®Ñ¯à°÷À°§U¨C¤@¦ìGPUµ{§Ç¶}µo¤H­û¡C

¤è¥ÁÅv


¤º®e²¤¶¡G

¥»®Ñ²Ä¤@½g¨t²Î¦a¤¶²ÐGPU½sµ{ªº¬ÛÃöª¾ÃÑ¡AÀ°§UŪªÌ§Ö³t¤Jªù¡A¦}ºc«ØGPUª¾ÃÑÅé¨t¡F²Ä¤G½g©M²Ä¤T½gµ¹¥X¤j¶q¹ê¨Ò¡A¹ï¨C­Ó¹ê¨Ò¶i¦æ´`§Çº¥¶iªº¦}¦æ©MÀu¤Æ¹ê½î¡A¬°ÅªªÌ´£¨ÑGPU½sµ{©MÀu¤Æ°Ñ¦Ò¡F²Ä¥|½gÁ`µ²¼vÅTGPU©Ê¯àªºÃöÁä­n¯À¡]°õ¦æ®Ö¤ß©M¦sÀxÅé¨t¡^¡A¶q¤Æ´úµûGPUªº®Ö¤ß©Ê¯à°Ñ¼Æ¡Aµ¹¥XCPU/GPU²§ºc¨t²Î¤WÂл\§¹¥þªº¦UºØ²V¦X¦}¦æ¼Ò¦¡¤Î¨ä¹ê½î¡AÀ°§UŪªÌ¯u¥¿³z¹ý²z¸ÑGPU¡C
¥»®Ñ¾A¦X§@¬°­pºâ¾÷¤Î¬ÛÃö±M·~ªº±Ð§÷¡A¤]¥i§@¬°GPUµ{§Ç¶}µo¤H­û©M¬ì¬ã¤H­ûªº°Ñ¦Ò®Ñ¡C¥»®Ñ«Ê­±¶K¦³²MµØ¤j¾Ç¥Xª©ªÀ¨¾°°¼Ðñ¡AµL¼ÐñªÌ¤£±o¾P°â¡C
¥Ø¿ý¡G

¥Ø¿ý

²Ä¤@½g²z½×½g

²Ä1³¹°ª©Ê¯à­pºâ·§­z3

1.1°ª©Ê¯à­pºâ·§©À¿ëªR3

1.1.1¦}¦æ­pºâ¡B°ª©Ê¯à­pºâ©M¶W¯Å­pºâ3

1.1.2¶W¯Å­pºâ¾÷»P¶W¯Å­pºâ¤¤¤ß4

1.2­pºâ¬ì¾Ç5

1.3°ª©Ê¯à­pºâµo®i¥v5

1.4°ª©Ê¯à­pºâ²¤¶6

1.5¦V¶q¾÷»P°}¦C¾÷8

1.6¥»³¹¤pµ²9

²Ä2³¹GPU·§­z10

2.1GPU¬O¤°¤\10

2.2¨ó³B²z¾¹10

2.3GPU»PÅã¥dªºÃö¨t11

2.4GPU/Åã¥dÁʶRª`·N¨Æ¶µ11

2.5¬°¤°¤\­n¾ÇGPU½sµ{12

2.6GPU»PCPU¿ëªR13

2.7GPUµo®i²¥v14

2.8GPU½sµ{¤èªk14

2.9CPU/GPU²§ºc¨t²Î16

²Ä3³¹GPUµw¥ó¬[ºc17

3.1GPU¬[ºc17

3.1.1Tesla¬[ºc18

3.1.2Fermi¬[ºc20

3.1.3Kepler¬[ºc21

3.1.4Maxwell¬[ºc23

3.1.5Pascal¬[ºc243.2Kernelªºµw¥ó¬M®g28

3.3GPU¦sÀxÅé¨t29

3.4GPU­pºâ¯à¤O30

GPU½sµ{»PÀu¤Æ¡X¡X¤j²³°ª©Ê¯à­pºâ¥Ø¿ý²Ä4³¹GPU³n¥óÅé¨t33

4.1GPU³n¥ó¥ÍºA¨t²Î33

4.2CUDAToolkit34

4.2.1NVCC½sĶ¾¹34

4.2.2cuobjdump35

4.3CUDAÀô¹Ò¦w¸Ë36

4.3.1Windows7¦w¸ËCUDA4.236

4.3.2Linux¤U¦w¸ËCUDA38

²Ä5³¹CUDAC½sµ{41

5.1CUDA½sµ{¼Ò«¬41

5.2CUDA½sµ{¤C¨B¦±42

5.3ÅX°ÊAPI»P¹B¦æ®ÉAPI42

5.4CUDA¹B¦æ®É¨ç¼Æ43

5.4.1³]³ÆºÞ²z¨ç¼Æ43

5.4.2¦sÀxºÞ²z¨ç¼Æ45

5.4.3¼Æ¾Ú¶Ç¿é¨ç¼Æ48

5.4.4½uµ{ºÞ²z¨ç¼Æ51

5.4.5¬yºÞ²z¨ç¼Æ52

5.4.6¨Æ¥óºÞ²z¨ç¼Æ52

5.4.7¯¾²zºÞ²z¨ç¼Æ53

5.4.8°õ¦æ±±¨î¨ç¼Æ55

5.4.9¿ù»~³B²z¨ç¼Æ55

5.4.10¹Ï§Î¾Ç¤¬¾Þ§@¨ç¼Æ57

5.4.11OpenGL¤¬¾Þ§@¨ç¼Æ58

5.4.12Direct3D¤¬¾Þ§@¨ç¼Æ59

5.5CUDAC»y¨¥ÂX®i60

5.6gridúQblockúQthread¤Tºû¼Ò«¬61

²Ä¤G½g¤Jªù½g

²Ä6³¹¦V¶q¥[ªk67

6.1¦V¶q¥[ªk¤Î¨ä¦ê¦æ¥N½X67

6.2³æblock³æthread¦V¶q¥[68

6.3³æblock¦hthread¦V¶q¥[68

6.4¦hblock¦hthread¦V¶q¥[69

6.5CUBLAS®w¦V¶q¥[ªk70

6.6¹êÅçµ²ªG¤ÀªR»Pµ²½×71

6.6.1¥»®Ñ¹êÅ祭»O71

6.6.2¹êÅçµ²ªG71

6.6.3µ²½×71

6.7ª¾ÃÑÂIÁ`µ²72

6.8ÂX®i½m²ß75

²Ä7³¹Âk¬ù:¦V¶q¤º¿n76

7.1¦V¶q¤º¿n¤Î¨ä¦ê¦æ¥N½X76

7.2³æblock¤À´²Âk¬ù¦V¶q¤º¿n77

7.3³æblock§C½uµ{Âk¬ù¦V¶q¤º¿n78

7.4¦hblock¦V¶q¤º¿n(CPU¤G¦¸Âk¬ù)79

7.5¦hblock¦V¶q¤º¿n(GPU¤G¦¸Âk¬ù)81

7.6°ò¤_­ì¤l¾Þ§@ªº¦hblock¦V¶q¤º¿n81

7.7­p¼Æªk¹ê²{¦hblock¦V¶q¤º¿n84

7.8CUBLAS®w¦V¶q¤º¿n85

7.9¹êÅçµ²ªG»Pµ²½×86

7.9.1¹êÅçµ²ªG86

7.9.2µ²½×86

7.10Âk¬ùªº²`¤JÀu¤Æ±´°Q87

7.10.1block¼Æ¶q©Mthread¼Æ¶q¹ïÂk¬ù©Ê¯àªº¼vÅT87

7.10.2ºâ³N¹BºâÀu¤Æ88

7.10.3´î¤Ö¦P¨B¶}¾P89

7.10.4´`Àô®i¶}90

7.10.5Á`µ²91

7.11ª¾ÃÑÂIÁ`µ²91

7.12ÂX®i½m²ß94

²Ä8³¹¯x°}­¼ªk95

8.1¯x°}­¼ªk¤Î¨ä3ºØ¦ê¦æ¥N½X95

8.1.1¤@¯ë¯x°}­¼ªk95

8.1.2´`Àô¥æ´«¯x°}­¼ªk97

8.1.3Âà¸m¯x°}­¼ªk98

8.1.4¹êÅçµ²ªG»P³ÌÀu¦ê¦æ¯x°}­¼99

8.2grid½uµ{´`Àô¯x°}­¼ªk100

8.3block½uµ{´`Àô¯x°}­¼ªk101

8.4¦æ¦@¨É¦sÀx¯x°}­¼ªk101

8.5´Ñ½L°}¦C¯x°}­¼ªk103

8.6§PÂ_²¾°£105

8.7CUBLAS¯x°}­¼ªk106

8.8¹êÅçµ²ªG¤ÀªR»Pµ²½×108

8.8.1¯x°}­¼ºë«×¤ÀªR108

8.8.2¹êÅçµ²ªG¤ÀªR110

8.8.3¯BÂI¹Bºâ¯à¤O¤ÀªR111

8.9¦æ¦@¨É¦sÀx¯x°}­¼ªk§ï¶i111

8.10ª¾ÃÑÂIÁ`µ²113

8.11ÂX®i½m²ß115

²Ä9³¹¯x°}Âà¸m116

9.1¯x°}Âà¸m¤Î¨ä¦ê¦æ¥N½X116

9.21D¯x°}Âà¸m117

9.32D¯x°}Âà¸m118

9.4¦@¨É¦sÀx2D¯x°}Âà¸m119

9.5¦@¨É¦sÀx2D¯x°}Âà¸mdiagonalÀu¤Æ120

9.6¹êÅçµ²ªG¤ÀªR»Pµ²½×121

9.7¦@¨É¦sÀx2D¯x°}Âà¸mªº²`¤JÀu¤Æ122

9.8ª¾ÃÑÂIÁ`µ²124

9.9ÂX®i½m²ß125

²Ä¤T½g´£°ª½g

²Ä10³¹¨÷¿n129

10.1¨÷¿n¤Î¨ä¦ê¦æ¹ê²{129

10.1.1¤@ºû¨÷¿n129

10.1.2¤Gºû¨÷¿n131

10.2GPU¤W1D¨÷¿n134

10.3M±`¶q1D¨÷¿n135

10.4M¦@¨É1D¨÷¿n136

10.5N¦@¨É1D¨÷¿n137

10.6¹êÅçµ²ªG¤ÀªR139

10.6.1ÂX®iªk1D¨÷¿n¹êÅçµ²ªG¤ÀªR139

10.6.2§PÂ_ªk»PÂX®iªk1D¨÷¿n¹ï¤ñ140

10.6.3¥[³t¤ñ¤ÀªR141

10.6.4½uµ{ºû«×¹ï©Ê¯àªº¼vÅT141

10.72D¨÷¿nªºGPU²¾´Ó»PÀu¤Æ142

10.7.1GPU¤W2D¨÷¿n142

10.7.2M±`¶q2D¨÷¿n143

10.7.3M±`¶qN¦@¨É2D¨÷¿n143

10.7.42D¨÷¿n¹êÅçµ²ªG¤ÀªR145

10.8ª¾ÃÑÂIÁ`µ²145

10.9ÂX®i½m²ß147

²Ä11³¹°Ò¼w³Õù¯S¶°148

11.1°Ò¼w³Õù¯S¶°¤Î¨ä¦ê¦æ¹ê²{148

11.2°Ò¼w³Õù¯S¶°ªºGPU¬M®g150

11.3¤@¨ÇÀu¤Æ¹Á¸Õ¤Î®ÄªG152

11.3.1³X¦s³sÄò152

11.3.2uchar4³X¦s¦X¦}153

11.3.34ºØ¹s«þ¨©153

11.3.4Á`µ²¤ÀªR155

11.4­pºâ³q«H­«Å|Àu¤Æ156

11.5¬ð¯}kernel°õ¦æ®É¶¡­­¨î159

11.6ª¾ÃÑÂIÁ`µ²160

11.7ÂX®i½m²ß162

²Ä12³¹±½´y:«eºó¨D©M163

12.1«eºó¨D©M¤Î¨ä¦ê¦æ¥N½X163

12.2KoggeúQStone¦}¦æ«eºó©M164

12.2.1ª½±µKoggeúQStone¤À¬q«eºó©M164

12.2.2¥æ¿ùKoggeúQStone¤À¬q«eºó©M165

12.2.3§¹¾ãKoggeúQStone«eºó©M166

12.3BrentúQKung¦}¦æ«eºó©M168

12.3.1BrentúQKung¤À¬q«eºó©M169

12.3.2¨â­¿¼Æ¾ÚªºBrentúQKung¤À¬q«eºó©M170

12.3.3ÁקKbankconflictªº¨â­¿¼Æ¾ÚBrentúQKung¤À¬q«eºó©M171

12.3.4§¹¾ãBrentúQKung«eºó©M173

12.4warp¤À¬qªºKoggeúQStone«eºó¨D©M174

12.5¹êÅçµ²ªG¤ÀªR»Pµ²½×177

12.6ª¾ÃÑÂIÁ`µ²179

12.7ÂX®i½m²ß180²Ä13³¹±Æ§Ç181

13.1¦ê¦æ±Æ§Ç¤Î¨ä©Ê¯à181

13.1.1¿ï¾Ü±Æ§Ç181

13.1.2«_ªw±Æ§Ç182

13.1.3§Ö³t±Æ§Ç182

13.1.4°ò¼Æ±Æ§Ç183

13.1.5Âù½Õ±Æ§Çºôµ¸185

13.1.6¦X¦}±Æ§Ç186

13.1.7¦ê¦æ±Æ§Ç©Ê¯à¹ï¤ñ187

13.2°ò¼Æ±Æ§Ç188

13.2.1°ò¼Æ±Æ§Ç·§­z188

13.2.2³æblock°ò¼Æ±Æ§Ç189

13.2.3°ò¤_thrust®wªº°ò¼Æ±Æ§Ç196

13.3Âù½Õ±Æ§Çºôµ¸197

13.3.1Âù½Õ±Æ§Çºôµ¸·§­z197

13.3.2³æblockÂù½Õ±Æ§Çºôµ¸199

13.3.3¦hblockÂù½Õ±Æ§Çºôµ¸202

13.4§Ö³t±Æ§Ç206

13.5¦X¦}±Æ§Ç207

13.6¹êÅçµ²ªG¤ÀªR»Pµ²½×208

13.7ª¾ÃÑÂIÁ`µ²209

13.8ÂX®i½m²ß210

²Ä14³¹´XºØ²³æ¹Ï¹³³B²z211

14.1¹Ï¹³ª½¤è¹Ï²Î­p211

14.1.1¦ê¦æª½¤è¹Ï²Î­p211

14.1.2¦}¦æª½¤è¹Ï²Î­p211

14.1.3¹êÅçµ²ªG»P¤ÀªR212

14.2¤¤­ÈÂoªi213

14.2.1¦ê¦æ¤¤­ÈÂoªi214

14.2.21D¦}¦æ¤¤­ÈÂoªi215

14.2.3¦@¨É1D¤¤­ÈÂoªi216

14.2.4Âù­«¦@¨É1D¤¤­ÈÂoªi218

14.2.52D¦}¦æ¤¤­ÈÂoªi221

14.2.6¦@¨É2D¤¤­ÈÂoªi222

14.2.7¦@¨É2D¤¤­ÈÂoªiªº§ï¶i227

14.2.8¹êÅçµ²ªG»P¤ÀªR229

14.3§¡­ÈÂoªi231

14.3.1¦ê¦æ§¡­ÈÂoªi231

14.3.2¦}¦æ§¡­ÈÂoªi232

14.3.3¹êÅçµ²ªG»P¤ÀªR233

²Ä¥|½g®Ö¤ß½g

²Ä15³¹GPU°õ¦æ®Ö¤ß237

15.1·§­z237

15.2ºâ³N¹Bºâ¤ä«ù238

15.2.1¾ã¼Æ¹Bºâ238

15.2.2¯BÂI¹Bºâ239

15.3ºâ³N¹Bºâ©Ê¯à240

15.4¤À¤ä³B²z242

15.5¦P¨B»P´ú®É246

15.5.1¦P¨B246

15.5.2´ú®É247

15.6¼Æ¾Ç¨ç¼Æ247

15.7warp»Pblock­ì»y249

15.7.1warp­ì»y249

15.7.2block­ì»y250

15.8kernel±Ò°Ê¡B½uµ{¤Á´«©M´`Àô³B²z251

²Ä16³¹GPU¦sÀxÅé¨t254

16.1·§­z254

16.2±H¦s¾¹259

16.3§½³¡¦sÀx261

16.4¦@¨É¦sÀx¾¹264

16.4.1¦@¨É¦sÀx¨Ï¥Î264

16.4.2bankconflict265

16.4.3volatileÃöÁä¦r266

16.4.4¦@¨É¦sÀx­ì¤l¾Þ§@267

16.5±`¶q¦sÀx268

16.6¥þ§½¦sÀx269

16.6.1¥þ§½¦sÀxªº¨Ï¥Î269

16.6.2¥þ§½¦sÀxªº¦X¦}³X°Ý271

16.6.3§Q¥Î¯¾²z½w¦s³q¹D³X°Ý¥þ§½¦sÀx271

16.7¯¾²z¦sÀx273

16.7.1CUDA¼Æ²Õ273

16.7.2¯¾²z¦sÀxªº¾Þ§@©M­­¨î274

16.7.3Ū¨ú¼Ò¦¡¡B¯¾²z§¤¼Ð¡BÂoªi¼Ò¦¡©M´M§}¼Ò¦¡276

16.7.4ªí­±¦sÀx278

16.8¥D¾÷ºÝ¤º¦s281

16.9¹s«þ¨©¾Þ§@283

²Ä17³¹GPUÃöÁä©Ê¯à´úµû284

17.1GPU©Ê¯à´úµû·§­z284

17.2GPU°Ñ¼ÆÀò¨ú286

17.2.1GPU¿ï¾Ü286

17.2.2¸Ô²Ó³]³Æ°Ñ¼ÆÀò¨ú287

17.3ºë½T´ú®É¤èªk¶×Á`288

17.3.1clock´ú®É289

17.3.2gettimeofday´ú®É289

17.3.3CUDA¨Æ¥ó´ú®É289

17.3.4cutil®w¨ç¼Æ´ú®É290

17.4GPU¹w¼ö»P±Ò°Ê¶}¾P290

17.5GPU¯BÂI¹Bºâ¯à¤O291

17.6GPU³X¦s±a¼e293

17.7GPU³q«H±a¼e295

17.8NVIDIAVisualProfiler296

17.9µ{§Ç©Ê¯à¹ï¤ñ¬ù©w298

²Ä18³¹CPUs©MGPUs¨ó¦P299

18.1¨ó¦PÀu¤Æ°òÂI299

18.1.1CPU¦}¦æ¯x°}­¼°òÂI299

18.1.2GPU¦}¦æ¯x°}­¼°òÂI300

18.2CPU/GPU¨ó¦P300

18.3¦hGPU¨ó¦P305

18.3.1CUDAª©¥»306

18.3.2OpenMP+CUDA308

18.3.3MPI+CUDA311

18.4CPUs/GPUs¨ó¦P314

18.4.1CUDAª©¥»314

18.4.2OpenMP+CUDA319

18.4.3MPI+OpenMP+CUDA324

18.5¥»³¹¤pµ²329

ªþ¿ý

ªþ¿ýA§PÂ_ªk1D¨÷¿n¥N½X333

ªþ¿ýA.1§PÂ_ªk1D¨÷¿nbasicª©333

ªþ¿ýA.2§PÂ_ªk1D¨÷¿nconstantª©334

ªþ¿ýA.3§PÂ_ªk1D¨÷¿nsharedª©336

ªþ¿ýA.4§PÂ_ªk1D¨÷¿ncacheª©337

ªþ¿ýB°Ò¼w³Õù¯S¶°ªº¨t¦CÀu¤Æ¥N½X340

ªþ¿ýB.1§¹¾ãª©¦ê¦æC¥N½X340

ªþ¿ýB.2cuda_1_0343

ªþ¿ýB.3cuda_0_2345

ªþ¿ýB.4cuda_zerocopy346

ªþ¿ýB.5cuda_1_0_zerocopy348

ªþ¿ýB.6cuda_0_0_zerocopy349

ªþ¿ýB.7cuda_0_2_zerocopy351

ªþ¿ýB.8cuda_2352

ªþ¿ýB.9cuda_1_2354

ªþ¿ýC´XºØ¹Ï¹³³B²z§¹¾ã·½½X357

ªþ¿ýC.1BMP¹Ï¹³Åª¼gÀY¤å¥ó357

ªþ¿ýC.2¹Ï¹³ª½¤è¹Ï¦ê¦æ¥N½X373

ªþ¿ýC.3¦ê¦æ¤¤­ÈÂoªi¥N½X374

ªþ¿ýC.4¦}¦æ§¡­ÈÂoªi¬ÛÃö¥N½X376

ªþ¿ýDnvprofÀ°§Uµæ³æ383

ªþ¿ýENVCCÀ°§Uµæ³æ388

ªþ¿ýF´XºØ±Æ§Çºâªk·½¥N½X399

ªþ¿ýF.1bitonic_sort_block¨ç¼Æ399

ªþ¿ýF.2GPU§Ö³t±Æ§Ç§¹¾ã¥N½X400

ªþ¿ýF.3GPU¦X¦}±Æ§Ç§¹¾ã¥N½X408

°Ñ¦Ò¤åÄm417

§Ç¡G