³¬Ï̼߳¼ÊõÊÇʲô

³¬Ï̼߳¼ÊõÊÇʲô

³¬Ï̼߳¼ÊõÊÇÔÚÒ»¿ÅCPUͬʱִÐжà¸ö³ÌÐò¶ø¹²Í¬·ÖÏíÒ»¿ÅCPUÄÚµÄ×ÊÔ´£¬ÀíÂÛÉÏÒªÏñÁ½¿ÅCPUÒ»ÑùÔÚͬһʱ¼äÖ´ÐÐÁ½¸öỊ̈߳¬P4´¦ÀíÆ÷ÐèÒª¶à¼ÓÈëÒ»¸öLogical CPU Pointer(Âß¼­´¦Àíµ¥Ôª)¡£Òò´ËÐÂÒ»´úµÄP4 HTµÄdieµÄÃæ»ý±ÈÒÔÍùµÄP4Ôö´óÁË5%¡£¶øÆäÓಿ·ÖÈçALU(ÕûÊýÔËËãµ¥Ôª)¡¢FPU(¸¡µãÔËËãµ¥Ôª)¡¢L2Cache(¶þ¼¶»º´æ)Ôò±£³Ö²»±ä£¬ÕâЩ²¿·ÖÊDZ»·ÖÏíµÄ¡£

¡¡¡¡ËäÈ»²ÉÓó¬Ï̼߳¼ÊõÄܹ»Í¬Ê±Ö´ÐÐÁ½¸öỊ̈߳¬µ«Ëü²¢²»ÏóÁ½¸öÕæÕýµÄCPUÄÇÑù£¬Ã¿¸öCPU¶¼¾ßÓжÀÁ¢µÄ×ÊÔ´¡£µ±Á½¸öÏ̶߳¼Í¬Ê±ÐèҪijһ¸ö×ÊԴʱ£¬ÆäÖÐÒ»¸öÒªÔÝʱֹͣ£¬²¢Èóö×ÊÔ´£¬Ö±µ½ÕâЩ×ÊÔ´ÏÐÖúó²ÅÄܼÌÐø¡£Òò´Ë³¬Ï̵߳ÄÐÔÄܲ¢²»µÈÓÚÁ½¿ÅCPUµÄÐÔÄÜ¡£

2

³¬Ïß³ÌÓëЧÄÜÌáÉý

¡¡¡¡Ò»°ãºÜ¶àÈ˶¼»áÈÏΪ£¬²ÉÓó¬Ï̼߳¼Êõ£¬¾ÍÄÜʹµÃϵͳЧÄÜ´ó·ùÌáÉý£¬µ«ÊÇÊÂʵÕæÊÇÈç´Ëô?²»ÒªÍüÁËÎÒÃÇÇ°Ãæ˵µ½µÄ³¬Ï̼߳¼ÊõʵÏֵıØÒªÌõ¼þ£¬Õâ¿ÉÊdz¬Ï̼߳¼Êõ·¢»ÓÓ¦ÓÐЧÄܵÄÇ°ÌáÌõ¼þ¡£³ýÁ˲Ù×÷ϵͳ֧³ÖÖ®Í⣬»¹±ØÐëÒªÈí¼þµÄÖ§³Ö¡£´ÓÕâµãÎÒÃǾͿÉÒÔ¿´³ö£¬¾ÍÄ¿Ç°µÄÈí¼þÏÖ×´À´Ëµ£¬Ö§³ÖË«´¦ÀíÆ÷¼¼ÊõµÄÈí¼þ±Ï¾¹»¹ÔÚÉÙÊý¡£¶ÔÓÚ´ó¶àÊýÈí¼þÀ´Ëµ£¬Ä¿Ç°ÓÉÓÚÉè¼ÆµÄÔ­Àí²»Í¬£¬»¹²¢²»ÄÜ´Ó³¬Ï̼߳¼ÊõÉϵõ½Ö±½ÓµÄºÃ´¦¡£ÒòΪ³¬Ï̼߳¼ÊõÊÇÔÚÏ̼߳¶±ðÉϲ¢Ðд¦ÀíÃüÁ°´Ï̶߳¯Ì¬·ÖÅä´¦ÀíÆ÷µÈ×ÊÔ´¡£¸Ã¼¼ÊõµÄºËÐÄÀíÄîÊÇ“²¢ÐжÈ(Parallelism)¡±£¬Ò²¾ÍÊÇÌá¸ßÃüÁîÖ´ÐеIJ¢Ðжȡ¢Ìá¸ßÿ¸öʱÖÓµÄЧÂÊ¡£Õâ¾ÍÐèÒªÈí¼þÔÚÉè¼ÆÉÏÏ̻߳¯£¬Ìá¸ß²¢Ðд¦ÀíµÄÄÜÁ¦¡£¶øÄ¿Ç°PCÉϵÄÓ¦ÓóÌÐò¼¸ºõûÓÐΪ´Ë×÷³öÏàÓ¦µÄÓÅ»¯£¬²ÉÓó¬Ï̼߳¼Êõ²¢Ã»²»ÄÜ»ñµÃЧÄܵĴó·ùÌáÉý¡£

³¬Ïß³ÌÓëЧÄÜÌáÉý

HT¼¼Êõ³öÏֵıØÈ»ÐÔ

ÌáÉýCPUÐÔÄÜÐèÒª

¡¡¡¡¾¡¹ÜÌá¸ßCPUµÄʱÖÓƵÂʺÍÔö¼Ó»º´æÈÝÁ¿ºóµÄÈ·¿ÉÒÔ¸ÄÉÆCPUÐÔÄÜ£¬µ«ÕâÑùµÄCPUÐÔÄÜÌá¸ßÔÚ¼¼ÊõÉÏ´æÔڽϴóµÄÄѶȡ£Êµ¼ÊÉÏÔÚÓ¦ÓÃÖлùÓںܶàÔ­Òò£¬CPUµÄÖ´Ðе¥Ôª¶¼Ã»Óб»³ä·ÖʹÓá£Èç¹ûCPU²»ÄÜÕý³£¶ÁÈ¡Êý¾Ý(×ÜÏß/ÄÚ´æµÄÆ¿¾±)£¬ÆäÖ´Ðе¥ÔªÀûÓÃÂÊ»áÃ÷ÏÔϽµ¡£ÁíÍâ¾ÍÊÇÄ¿Ç°´ó¶àÊýÖ´ÐÐÏß³Ìȱ·¦ILP(Instruction-Level Parallelism£¬¶àÖÖÖ¸ÁîͬʱִÐÐ)Ö§³Ö¡£ÕâЩ¶¼Ôì³ÉÁËÄ¿Ç°CPUµÄÐÔÄÜûÓеõ½È«²¿µÄ·¢»Ó¡£Òò´Ë£¬IntelÔò²ÉÓÃÁíÒ»¸ö˼·ȥÌá¸ßCPUµÄÐÔÄÜ£¬ÈÃCPU¿ÉÒÔͬʱִÐжàÖØỊ̈߳¬¾ÍÄܹ»ÈÃCPU·¢»Ó¸ü´óЧÂÊ£¬¼´Ëùν¡°³¬Ïß³Ì(Hyper-Threading£¬¼ò³Æ¡°HT¡±)¡±¼¼Êõ¡£³¬Ï̼߳¼Êõ¾ÍÊÇÀûÓÃÌØÊâµÄÓ²¼þÖ¸Á°ÑÁ½¸öÂß¼­ÄÚºËÄ£Äâ³ÉÁ½¸öÎïÀíоƬ£¬Èõ¥¸ö´¦ÀíÆ÷¶¼ÄÜʹÓÃÏ̼߳¶²¢ÐмÆË㣬½ø¶ø¼æÈݶàÏ̲߳Ù×÷ϵͳºÍÈí¼þ£¬¼õÉÙÁËCPUµÄÏÐÖÃʱ¼ä£¬Ìá¸ßµÄCPUµÄÔËÐÐЧÂÊ¡£

HT¼¼Êõ³öÏֵıØÈ»ÐÔ

¡¡¡¡²ÉÓó¬Ï̼߳°Ê±¿ÉÔÚͬһʱ¼äÀӦÓóÌÐò¿ÉÒÔʹÓÃоƬµÄ²»Í¬²¿·Ö¡£ËäÈ»µ¥Ïß³ÌоƬÿÃëÖÓÄܹ»´¦Àí³ÉǧÉÏÍòÌõÖ¸Áµ«ÊÇÔÚÈÎһʱ¿ÌÖ»Äܹ»¶ÔÒ»ÌõÖ¸Áî½øÐвÙ×÷¡£¶ø³¬Ï̼߳¼Êõ¿ÉÒÔʹоƬͬʱ½øÐжàÏ̴߳¦Àí£¬Ê¹Ð¾Æ¬ÐÔÄܵõ½ÌáÉý¡£

ÌáÉýCPUÐÔÄÜÐèÒª

³¬Ï̼߳¼Êõ

¡¡¡¡Ó¢ÌضûP4 ³¬Ïß³ÌÓÐÁ½¸öÔËÐÐģʽ£¬Single Task Mode(µ¥ÈÎÎñģʽ)¼°Multi Task Mode(¶àÈÎÎñģʽ)£¬µ±³ÌÐò²»Ö§³ÖMulti-Processing(¶à´¦ÀíÆ÷×÷Òµ)ʱ£¬ÏµÍ³»áÍ£Ö¹ÆäÖÐÒ»¸öÂß¼­CPUµÄÔËÐУ¬°Ñ×ÊÔ´¼¯ÖÐÓÚµ¥¸öÂß¼­CPUÖУ¬Èõ¥Ï̳߳ÌÐò²»»áÒòÆäÖÐÒ»¸öÂß¼­CPUÏÐÖöø¼õµÍÐÔÄÜ£¬µ«ÓÉÓÚ±»Í£Ö¹ÔËÐеÄÂß¼­CPU»¹ÊÇ»áµÈ´ý¹¤×÷£¬Õ¼ÓÃÒ»¶¨µÄ×ÊÔ´£¬Òò´ËHyper-Threading CPUÔËÐÐSingle Task Mode³ÌÐòģʽʱ£¬ÓпÉÄÜ´ï²»µ½²»´ø³¬Ï̹߳¦ÄܵÄCPUÐÔÄÜ£¬µ«ÐÔÄܲî¾à²»»áÌ«´ó¡£Ò²¾ÍÊÇ˵£¬µ±ÔËÐе¥Ïß³ÌÔËÓÃÈí¼þʱ£¬³¬Ï̼߳¼ÊõÉõÖÁ»á½µµÍϵͳÐÔÄÜ£¬ÓÈÆäÔÚ¶àÏ̲߳Ù×÷ϵͳÔËÐе¥Ïß³ÌÈí¼þʱÈÝÒ׳öÏÖ´ËÎÊÌâ¡£

¡¡¡¡ÐèҪעÒâµÄÊÇ£¬º¬Óг¬Ï̼߳¼ÊõµÄCPUÐèҪоƬ×é¡¢Èí¼þÖ§³Ö£¬²ÅÄܱȽÏÀíÏëµÄ·¢»Ó¸ÃÏî¼¼ÊõµÄÓÅÊÆ¡£²Ù×÷ϵͳÈ磺Microsoft Windows XP¡¢Microsoft Windows 2003£¬Linuxkernel 2.4.xÒÔºóµÄ°æ±¾Ò²Ö§³Ö³¬Ï̼߳¼Êõ¡£

ÍøÓÑÆÀÂÛ