ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2026/1/17 18:17:01ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£
²Î¿¼´ð°¸£º
²»ÕâÑù×öµÄÀíÓÉÖ÷ÒªÓÐÒÔÏÂÁ½¸ö·½Ã棺
¢Ù Ö÷´æÔ½´óÔ½ºÃ£¬Ö÷´æ´ó£¬È±Ò³ÂʽµµÍ£¬Òò¶ø¼õÉÙÁË·ÃÎÊ´ÅÅÌËùÐèµÄʱ¼ä¡£ÏÔÈ»ÓÃDRAMоƬ±ÈÓÃSRAMоƬ¹¹³ÉµÄÖ÷´æÈÝÁ¿´óµÄ¶à¡£
¢Ú ³ÌÐò·ÃÎʵľֲ¿ÐÔÌØµãʹµÃcacheµÄÃüÖÐÂʺܸߣ¬Òò¶ø£¬¼´Ê¹Ö÷´æÃ»ÓÐÓÿìËÙµÄSRAMоƬ¶øÊÇÓÃDRAMоƬ£¬Ò²²»»áÓ°Ïìµ½·ÃÎÊËÙ¶È¡£
9. ·Ö±ð¸ø³ö¾ßÓÐÏÂÁÐÒªÇóµÄ³ÌÐò»ò³ÌÐò¶ÎµÄʾÀý£º
£¨1£©¶ÔÓÚÊý¾ÝµÄ·ÃÎÊ£¬¼¸ºõûÓÐʱ¼ä¾Ö²¿ÐԺͿռä¾Ö²¿ÐÔ¡£
£¨2£©¶ÔÓÚÊý¾ÝµÄ·ÃÎÊ£¬ÓкܺõÄʱ¼ä¾Ö²¿ÐÔ£¬µ«¼¸ºõûÓпռä¾Ö²¿ÐÔ¡£ £¨3£©¶ÔÓÚÊý¾ÝµÄ·ÃÎÊ£¬ÓкܺõĿռä¾Ö²¿ÐÔ£¬µ«¼¸ºõûÓÐʱ¼ä¾Ö²¿ÐÔ¡£ £¨4£©¶ÔÓÚÊý¾ÝµÄ·ÃÎÊ£¬¿Õ¼ä¾Ö²¿ÐÔºÍʱ¼ä¾Ö²¿ÐÔ¶¼ºÃ¡£ ²Î¿¼´ð°¸£¨ÂÔ£©£º
¿ÉÒÔ¸ø³öÐí¶àÀàËÆµÄʾÀý¡£ÀýÈ磬¶ÔÓÚ°´ÐÐÓÅÏÈ´æ·ÅÔÚÄÚ´æµÄ¶àάÊý×飬Èç¹û°´ÁÐÓÅÏÈ·ÃÎÊÊý×éÔªËØ£¬Ôò¿Õ¼ä¾Ö²¿ÐԾͲÈç¹ûÔÚÒ»¸öÑ»·ÌåÖÐij¸öÊý×éÔªËØÖ»±»·ÃÎÊÒ»´Î£¬Ôòʱ¼ä¾Ö²¿ÐԾͲ
10. ¼Ù¶¨Ä³»úÖ÷´æ¿Õ¼ä´óС1GB£¬°´×Ö½Ú±àÖ·¡£cacheµÄÊý¾ÝÇø£¨¼´²»°üÀ¨±ê¼Ç¡¢ÓÐЧλµÈ´æ´¢Çø£©ÓÐ64KB£¬
¿é´óСΪ128×Ö½Ú£¬²ÉÓÃÖ±½ÓÓ³ÉäºÍȫд£¨write-through£©·½Ê½¡£ÇëÎÊ£º
£¨1£©Ö÷´æµØÖ·ÈçºÎ»®·Ö£¿ÒªÇó˵Ã÷ÿ¸ö×ֶεĺ¬Ò塢λÊýºÍÔÚÖ÷´æµØÖ·ÖеÄλÖᣠ£¨2£©cacheµÄ×ÜÈÝÁ¿Îª¶àÉÙλ£¿ ²Î¿¼´ð°¸£º
£¨1£©Ö÷´æ¿Õ¼ä´óСΪ1GB£¬°´×Ö½Ú±àÖ·£¬ËµÃ÷Ö÷´æµØÖ·Îª30λ¡£cache¹²ÓÐ64KB/128B=512ÐУ¬
Òò´Ë£¬ÐÐË÷Òý£¨Ðкţ©Îª9λ£»¿é´óС128×Ö½Ú£¬ËµÃ÷¿éÄÚµØÖ·Îª7λ¡£Òò´Ë£¬30λÖ÷´æµØÖ·ÖУ¬¸ß14λΪ±êÖ¾£¨Tag£©£»Öмä9λΪÐÐË÷Òý£»µÍ7λΪ¿éÄÚµØÖ·¡£
£¨2£©ÒòΪ²ÉÓÃÖ±½ÓÓ³É䣬ËùÒÔcacheÖÐÎÞÐèÌæ»»Ëã·¨ËùÐè¿ØÖÆÎ»£¬È«Ð´·½Ê½ÏÂÒ²ÎÞÐèÐ޸ģ¨dirty£©
룬¶ø±ê־λºÍÓÐЧλ×ÜÊDZØÐëÓеģ¬ËùÒÔ£¬cache×ÜÈÝÁ¿Îª512¡Á(128¡Á8+14+1)=519.5Kλ¡£
11. ¼Ù¶¨Ä³¼ÆËã»úµÄcache¹²16ÐУ¬¿ªÊ¼Îª¿Õ£¬¿é´óСΪ1¸ö×Ö£¬²ÉÓÃÖ±½ÓÓ³É䷽ʽ¡£CPUÖ´ÐÐij³ÌÐòʱ£¬
ÒÀ´Î·ÃÎÊÒÔϵØÖ·ÐòÁУº2£¬3£¬11£¬16£¬21£¬13£¬64£¬48£¬19£¬11£¬3£¬22£¬4£¬27£¬6ºÍ11¡£ÒªÇó£º £¨1£©ËµÃ÷ÿ´Î·ÃÎÊÊÇÃüÖл¹ÊÇȱʧ£¬ÊÔ¼ÆËã·ÃÎÊÉÏÊöµØÖ·ÐòÁеÄÃüÖÐÂÊ¡£
£¨2£©ÈôcacheÊý¾ÝÇøÈÝÁ¿²»±ä£¬¶ø¿é´óС¸ÄΪ4¸ö×Ö£¬ÔòÉÏÊöµØÖ·ÐòÁеÄÃüÖÐÇé¿öÓÖÈçºÎ£¿ ²Î¿¼´ð°¸ £¨1£© cache²ÉÓÃÖ±½ÓÓ³É䷽ʽ£¬ÆäÊý¾ÝÇøÈÝÁ¿Îª16ÐСÁ1×Ö/ÐÐ=16×Ö£»Ö÷´æ±»»®·Ö³É1×Ö/¿é£¬ËùÒÔ£¬
Ö÷´æ¿éºÅ = ×ֺš£Òò´Ë£¬Ó³É乫ʽΪ£ºcacheÐкŠ= Ö÷´æ¿éºÅ mod 16 = ×ֺŠmod 16¡£ ¿ªÊ¼cacheΪ¿Õ£¬ËùÒÔµÚÒ»´Î¶¼ÊÇmiss£¬ÒÔÏÂÊÇÓ³Éä¹ØÏµ£¨×ÖºÅ-cacheÐкţ©ºÍÃüÖÐÇé¿ö¡£ 2-2: miss£¬3-3: miss£¬11-11: miss£¬16-0: miss, 21-5: miss£¬13-13: miss£¬64-0: miss¡¢replace£¬ 48-0: miss¡¢replace£¬19-3: miss¡¢replace£¬11-11: hit, 3-3: miss¡¢replace£¬22-6: miss£¬ 4-4: miss£¬27-11: miss¡¢replace£¬6-6: miss¡¢replace£¬11-11: miss¡¢replace¡£ Ö»ÓÐÒ»´ÎÃüÖУ¡
£¨2£©cache²ÉÓÃÖ±½ÓÓ³É䷽ʽ£¬Êý¾ÝÇøÈÝÁ¿²»±ä£¬Îª16¸ö×Ö£¬Ã¿¿é´óСΪ4¸ö×Ö£¬ËùÒÔ£¬cache¹²
ÓÐ4ÐУ»Ö÷´æ±»»®·ÖΪ4¸ö×Ö/¿é£¬ËùÒÔ£¬Ö÷´æ¿éºÅ = [×ÖºÅ/4]¡£Òò´Ë£¬Ó³É乫ʽΪ£ºcacheÐкŠ= Ö÷´æ¿éºÅ mod 4 = [×ÖºÅ/4] mod 4¡£
ÒÔÏÂÊÇÓ³Éä¹ØÏµ£¨×ÖºÅ-Ö÷´æ¿éºÅ-cacheÐкţ©ºÍÃüÖÐÇé¿ö¡£
2-0-0: miss£¬3-0-0: hit£¬11-2-2: miss£¬16-4-0: miss¡¢replace£¬21-5-1¡¢13-3-3: miss£¬
64-16-0¡¢48-12-0¡¢19-4-0: miss, replace£¬11-2-2: hit£¬3-0-0: miss¡¢replace£¬
22-5-1: hit£¬4-1-1: miss¡¢replace£¬27-6-2: miss¡¢replace£¬6-1-1: hit£¬11-2-2: miss¡¢replace¡£
ÃüÖÐ4´Î¡£
Óɴ˿ɼû£¬¿é±ä´óºó£¬ÄÜÓÐЧÀûÓ÷ÃÎʵĿռä¾Ö²¿ÐÔ£¬´Ó¶øÊ¹ÃüÖÐÂÊÌá¸ß£¡
12. ¼Ù¶¨Êý×éÔªËØÔÚÖ÷´æ°´´Ó×óµ½ÓÒµÄϱê˳Ðò´æ·Å¡£ÊԸıäÏÂÁк¯ÊýÖÐÑ»·µÄ˳Ðò£¬Ê¹µÃÆäÊý×éÔªËØµÄ
·ÃÎÊÓëÅÅÁÐ˳ÐòÒ»Ö£¬²¢ËµÃ÷ΪʲôÐ޸ĺóµÄ³ÌÐò±ÈÔÀ´µÄ³ÌÐòÖ´ÐÐʱ¼ä¶Ì¡£ int sum_array ( int a[N][N][N]) { int i, j, k, sum=0; for (i=0; i < N; i++) for (j=0; j < N; j++) for (k=0; k < N; k++) sum+=a[k][i][j];
return sum; }
²Î¿¼´ð°¸£º
int sum_array ( int a[N][N][N]) { int i, j, k, sum=0; for (k=0; k < N; k++) for (i=0; i < N; i++) for (j=0; j < N; j++) sum+=a[k][i][j];
return sum; }
Ð޸ĺó³ÌÐòµÄÊý×éÔªËØµÄ·ÃÎÊÓëÅÅÁÐ˳ÐòÒ»Ö£¬Ê¹µÃ¿Õ¼ä¾Ö²¿ÐÔ±ÈÔ³ÌÐòºÃ£¬¹ÊÖ´ÐÐʱ¼ä¸ü¶Ì¡£
13. ·ÖÎö±È½ÏÒÔÏÂÈý¸öº¯ÊýµÄ¿Õ¼ä¾Ö²¿ÐÔ£¬²¢Ö¸³öÄĸö×îºÃ£¬Äĸö×î²î£¿
# define N 1000 typedef struct { int vel[3]; int acc[3]; } point; point p[N]; void clear1(point *p, int n) { int i, j; for (i = 0; i < n; i++) { for (j = 0; j<3; j++) p[i].vel[j] = 0; for (j = 0; i<3; j++) p[i].acc[j] = 0; } } # define N 1000 typedef struct { int vel[3]; int acc[3]; } point; point p[N]; void clear2(point *p, int n) { int i, j; for (i=0; i ²Î¿¼´ð°¸£º ¶ÔÓÚº¯Êýclear1£¬ÆäÊý×é·ÃÎÊ˳ÐòÓëÔÚÄÚ´æµÄ´æ·Å˳ÐòÍêȫһÖ£¬Òò´Ë£¬¿Õ¼ä¾Ö²¿ÐÔ×îºÃ¡£ ¶ÔÓÚº¯Êýclear2£¬ÆäÊý×é·ÃÎÊ˳ÐòÔÚÿ¸öÊý×éÔªËØÄÚÌøÔ½Ê½·ÃÎÊ£¬ÏàÁÚÁ½´Î·ÃÎʵĵ¥Ôª×î´óÏà²î3¸öintÐͱäÁ¿£¨¼Ù¶¨sizeof(int)=4£¬ÔòÏ൱ÓÚ12B£©£¬Òò´Ë¿Õ¼ä¾Ö²¿ÐÔ±Èclear1²î¡£ÈôÖ÷´æ¿é´óС±È12BСµÄ»°£¬Ôò´ó´óÓ°ÏìÃüÖÐÂÊ¡£ ¶ÔÓÚº¯Êýclear3£¬ÆäÊý×é·ÃÎÊ˳ÐòÓëÔÚÄÚ´æµÄ´æ·Å˳Ðò²»Ò»Ö£¬ÏàÁÚÁ½´Î·ÃÎʵĵ¥Ôª¶¼Ïà²î6¸öintÐͱäÁ¿£¨¼Ù¶¨sizeof(int)=4£¬ÔòÏ൱ÓÚ24B£©Òò´Ë£¬¿Õ¼ä¾Ö²¿ÐÔ±Èclear2»¹²î¡£ÈôÖ÷´æ¿é´óС±È24BСµÄ»°£¬Ôò´ó´óÓ°ÏìÃüÖÐÂÊ¡£ 14. ÒÔÏÂÊǼÆËãÁ½¸öÏòÁ¿µã»ýµÄ³ÌÐò¶Î£º float dotproduct (float x[8], float y[8]) { float sum = 0.0; int i,; for (i = 0; i < 8; i++) sum += x[i] * y[i]; return sum; } ÒªÇó£º £¨1£©ÊÔ·ÖÎö¸Ã¶Î´úÂëÖÐÊý×éxºÍyµÄʱ¼ä¾Ö²¿ÐԺͿռä¾Ö²¿ÐÔ£¬²¢ÍƶÏÃüÖÐÂʵĸߵ͡£ £¨2£©¼Ù¶¨¸Ã¶Î³ÌÐòÔËÐеļÆËã»úµÄÊý¾Ýcache²ÉÓÃÖ±½ÓÓ³É䷽ʽ£¬ÆäÊý¾ÝÇøÈÝÁ¿Îª32×Ö½Ú£¬Ã¿¸ö Ö÷´æ¿é´óСΪ16×Ö½Ú¡£¼Ù¶¨±àÒë³ÌÐò½«±äÁ¿sumºÍi·ÖÅ䏸¼Ä´æÆ÷£¬Êý×éx´æ·ÅÔÚ00000040H¿ªÊ¼µÄ32×Ö½ÚµÄÁ¬Ðø´æ´¢ÇøÖУ¬Êý×éy½ô¸úÔÚxºó½øÐдæ·Å¡£ÊÔ¼ÆËã¸Ã³ÌÐòÊý¾Ý·ÃÎʵÄÃüÖÐÂÊ£¬ÒªÇó˵Ã÷ÿ´Î·ÃÎʵÄcacheÃüÖÐÇé¿ö¡£ £¨3£©½«ÉÏÊö£¨2£©ÖеÄÊý¾Ýcache¸ÄÓÃ2-·×éÏàÁªÓ³É䷽ʽ£¬¿é´óС¸ÄΪ8×Ö½Ú£¬ÆäËûÌõ¼þ²»±ä£¬ Ôò¸Ã³ÌÐòÊý¾Ý·ÃÎʵÄÃüÖÐÂÊÊǶàÉÙ£¿ £¨4£©ÔÚÉÏÊö£¨2£©ÖÐÌõ¼þ²»±äµÄÇé¿öÏ£¬Èç¹û½«Êý×éx¶¨ÒåΪfloat[12]£¬ÔòÊý¾Ý·ÃÎʵÄÃüÖÐÂÊÊǶà ÉÙ£¿ ²Î¿¼´ð°¸£º £¨1£©Êý×éxºÍy¶¼°´´æ·Å˳Ðò·ÃÎÊ£¬²»¿¼ÂÇÓ³ÉäµÄÇé¿öÏ£¬¿Õ¼ä¾Ö²¿ÐÔ¶¼½ÏºÃ£¬µ«¶¼Ö»±»·ÃÎÊÒ»´Î£¬ ¹ÊûÓÐʱ¼ä¾Ö²¿ÐÔ¡£ÃüÖÐÂʵĸߵÍÓë¿é´óС¡¢Ó³É䷽ʽµÈ¶¼Óйأ¬ËùÒÔ£¬ÎÞ·¨ÍƶÏÃüÖÐÂʵĸߵ͡£ £¨2£©cache²ÉÓÃÖ±½ÓÓ³É䷽ʽ£¬¿é´óСΪ16×Ö½Ú£¬Êý¾ÝÇø´óСΪ32×Ö½Ú£¬¹Êcache¹²ÓÐ2ÐС£Êý ×éxµÄ8¸öÔªËØ£¨¹²32B£©·Ö±ð´æ·ÅÔÚÖ÷´æ40H¿ªÊ¼µÄ32¸öµ¥ÔªÖУ¬¹²ÓÐ2¸öÖ÷´æ¿é£¬ÆäÖÐx[0] ~ x[3]ÔÚµÚ4¿é£¬x[4] ~ x[7]ÔÚµÚ5¿éÖУ»Êý×éyµÄ8¸öÔªËØ£¨¹²32B£©·Ö±ðÔÚÖ÷´æµÚ6¿éºÍµÚ7¿éÖС£ËùÒÔ£¬x[0] ~ x[3]ºÍy[0] ~ y[3]¶¼Ó³Éäµ½cacheµÚ0ÐУ» x[4] ~ x[7]ºÍy[4] ~ y[7]¶¼Ó³Éäµ½cacheµÚ1ÐС£ cache µÚ0ÐÐ µÚ1ÐÐ µÚ0-3´ÎÑ»· x[0-3]£¬y[0-3] µÚ4-7´ÎÑ»· x[4-7]£¬y[4-7] ÿµ÷ÈëÒ»¿é£¬×°Èë4¸öÊý×éÔªËØ£¬ÒòΪx[i]ºÍy[i]×ÜÊÇÓ³É䵽ͬһÐУ¬Ï໥ÌÔ̶Է½£¬¹Êÿ´Î¶¼²»ÃüÖУ¬ÃüÖÐÂÊΪ0. £¨3£©¸ÄÓÃ2·×éÏàÁª£¬¿é´óСΪ8B£¬Ôòcache¹²ÓÐ4ÐУ¬Ã¿×éÁ½ÐУ¬¹²Á½×é¡£ Êý×éxÓÐ4¸öÖ÷´æ¿é£¬x[0] ~ x[1]¡¢x[2] ~ x[3]£¬x[4] ~ x[5]£¬x[6] ~ x[7]·Ö±ðÔÚµÚ8~11¿éÖУ» Êý×éyÓÐ4¸öÖ÷´æ¿é£¬y[0] ~ y[1]¡¢y[2] ~ y[3]£¬y[4] ~ y[5]£¬y[6] ~ y[7]·Ö±ðÔÚµÚ12~15¿éÖУ» cache µÚ0×é µÚ1×é µÚ0ÐÐ µÚ1ÐÐ x[0-1],x[4-5] y[0-1],y[4-5] x[2-3],x[6-7] y[2-3],y[6-7] ÿµ÷ÈëÒ»¿é£¬×°ÈëÁ½¸öÊý×éÔªËØ£¬µÚ¶þ¸öÊý×éÔªËØµÄ·ÃÎÊ×ÜÊÇÃüÖУ¬¹ÊÃüÖÐÂÊΪ50%¡£ £¨4£©Èô£¨2£©ÖÐÌõ¼þ²»±ä£¬Êý×éx¶¨ÒåÁË12¸öÔªËØ£¬¹²ÓÐ48B£¬Ê¹µÃy´ÓµÚ7¿é¿ªÊ¼£¬Òò¶ø£¬x[i] ºÍy[i]¾Í²»»áÓ³É䵽ͬһ¸öcacheÐÐÖУ¬¼´£ºx[0] ~ x[3]ÔÚµÚ4¿é£¬x[4] ~ x[7]ÔÚµÚ5¿é£¬x[8] ~ x[11]ÔÚµÚ6¿éÖУ¬y[0] ~ y[3]ÔÚµÚ7¿é£¬y[4] ~ x[7]ÔÚµÚ8¿é¡£ cache µÚ0ÐÐ µÚ1ÐÐ µÚ0-3´ÎÑ»· x[0-3] y[0-3] µÚ4-7´ÎÑ»· y[4-7] x[4-7] ÿµ÷ÈëÒ»¿é£¬×°Èë4¸öÊý×éÔªËØ£¬µÚÒ»¸öÔªËØ²»ÃüÖУ¬ºóÃæ3¸ö×ÜÃüÖУ¬¹ÊÃüÖÐÂÊΪ75%¡£ 15. ÒÔÏÂÊǶԾØÕó½øÐÐתÖõijÌÐò¶Î£º typedef int array[4][4]; void transpose(array dst, array src) { int i, j; for (i = 0; i < 4; i++) for (j = 0; j < 4; j++) dst[j][i] = src[i][j]; } ¼ÙÉè¸Ã¶Î³ÌÐòÔËÐеļÆËã»úÖÐsizeof(int)=4£¬ÇÒÖ»ÓÐÒ»¼¶cache£¬ÆäÖÐL1 data cacheµÄÊý¾ÝÇø´óСΪ32B£¬²ÉÓÃÖ±½ÓÓ³É䡢д»Ø·½Ê½£¬¿é´óСΪ16B£¬³õʼΪ¿Õ¡£Êý×édst´ÓµØÖ·0000C000H¿ªÊ¼´æ·Å£¬Êý×ésrc´ÓµØÖ·0000C040H¿ªÊ¼´æ·Å¡£ÌîдÏÂ±í£¬ËµÃ÷Êý×éÔªËØsrc[row][col]ºÍdst[row][col]Ó³Éäµ½cacheµÄÄÄÒ»ÐУ¬Æä·ÃÎÊÊÇÃüÖУ¨hit£©»¹ÊÇʧЧ£¨miss£©¡£ÈôL1 data cacheµÄÊý¾ÝÇøÈÝÁ¿¸ÄΪ128B ʱ£¬ÖØÐÂÌîд±íÖÐÄÚÈÝ¡£ 32B row=0 row=1 row=2 row=3 128B row=0 row=1 row=2 row=3 col=0 4/miss 5/ miss 6/ miss 7/ miss col=0 0/miss 1/miss 0/miss 1/miss srcÊý×é col=1 0/miss 1/hit 0/miss 1/hit col=1 4/hit 5/hit 6/hit 7/hit col=2 0/hit 1/miss 0/hit 1/miss col=2 4/hit 5/hit 6/hit 7/hit col=3 0/miss 1/hit 0/miss 1/hit col=3 4/ hit 5/hit 6/hit 7/hit col=0 0/miss 1/miss 0/miss 1/miss col=0 0/miss 1/miss 2/miss 3/miss dstÊý×é col=1 0/miss 1/miss 0/miss 1/miss col=1 0/hit 1/hit 2/hit 3/hit col=2 0/miss 1/miss 0/miss 1/miss col=2 0/hit 1/hit 2/hit 3/hit col=3 0/miss 1/miss 0/miss 1/miss col=3 0/hit 1/hit 2/hit 3/hit srcÊý×é dstÊý×é ²Î¿¼´ð°¸£º ´Ó³ÌÐòÀ´¿´£¬Êý×é·ÃÎʹý³ÌÈçÏ£º src[0] [0]¡¢dst[0] [0]¡¢src[0] [1]¡¢dst[1] [0]¡¢src[0] [2]¡¢dst[2] [0]¡¢src[0] [3]¡¢dst[3] [0] src[1] [0]¡¢dst[0] [1]¡¢src[1] [1]¡¢dst[1] [1]¡¢src[1] [2]¡¢dst[2] [1]¡¢src[1] [3]¡¢dst[3] [1] src[2] [0]¡¢dst[0] [2]¡¢src[2] [1]¡¢dst[1] [2]¡¢src[2] [2]¡¢dst[2] [2]¡¢src[2] [3]¡¢dst[3] [2] src[3] [0]¡¢dst[0] [3]¡¢src[3] [1]¡¢dst[1] [3]¡¢src[3] [2]¡¢dst[2] [3]¡¢src[3] [3]¡¢dst[3] [3] ÒòΪ¿é´óСΪ16B£¬Ã¿¸öÊý×éÔªËØÓÐ4¸ö×Ö½Ú£¬ËùÒÔ4¸öÊý×éÔªËØÕ¼Ò»¸öÖ÷´æ¿é£¬Òò´Ëÿ´Î×ÜÊǵ÷Èë4¸öÊý×éÔªËØµ½cacheµÄÒ»ÐС£ µ±Êý¾ÝÇøÈÝÁ¿Îª32Bʱ£¬L1 data cacheÖй²ÓÐ2ÐС£Êý×éÔªËØdst[0][i]¡¢dst[2][i] ¡¢src[0][i]¡¢src[2][i] (i=0¡«3)¶¼Ó³Éäµ½cacheµÚ0ÐУ¬Êý×éÔªËØdst[1][i]¡¢dst[3][i] ¡¢src[1][i]¡¢src[3][i] (i=0¡«3)¶¼Ó³Éäµ½cacheµÚ1ÐС£Òò´Ë£¬´ÓÉÏÊö·ÃÎʹý³ÌÀ´¿´£¬src[0][0]ËùÔÚµÄÒ»¸öÖ÷´æ¿é£¨¼´´æ·Åsrc[0][i] (i=0¡«3)ËĸöÊý×éÔªËØ£©¸Õµ÷Èëcacheºó£¬dst[0][0]ËùÔÚÖ÷´æ¿éÓÖ°Ñsrc[0][0]Ìæ»»µôÁË¡£¡¡ µ±Êý¾ÝÇøÈÝÁ¿Îª128Bʱ£¬L1 data cacheÖй²ÓÐ8ÐС£Êý×éÔªËØdst[0][i]¡¢dst[1][i] ¡¢dst[2][i]¡¢dst[3][i]¡¢src[0][i]¡¢src[1][i]¡¢src[2][i]¡¢src[3][i] (i=0¡«3) ·Ö±ðÓ³Éäµ½cacheµÚ0¡¢1¡¢2¡¢3¡¢4¡¢5¡¢6¡¢7ÐС£Òò´Ë£¬²»»á·¢ÉúÊý×éÔªËØµÄÌæ»»¡£Ã¿´Î×ÜÊǵÚÒ»¸öÊý×éÔªËØ²»ÃüÖУ¬ºóÃæÈý¸öÊý×éÔªËØ¶¼ÃüÖС£ 16. ͨ¹ý¶Ô·½¸ñÖÐÿ¸öµãÉèÖÃÏàÓ¦µÄCMYKÖµ¾Í¿ÉÒÔ½«·½¸ñͼÉÏÏàÓ¦µÄÑÕÉ«¡£ÒÔÏÂÈý¸ö³ÌÐò¶Î¶¼¿ÉʵÏÖ ¶ÔÒ»¸ö8¡Á8µÄ·½¸ñÖÐͼÉÏ»ÆÉ«µÄ¹¦ÄÜ¡£