• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            我要啦免费统计
            filecache  32m
            內(nèi)存映射文件 處理md5,io cpu都降下來了
            254file 6.54g
            多線程
            線程數(shù) cpu_count()
            cpu變?yōu)?8%  io減為 讀取16,348 寫入 2,000
            [2013-04-19 12:09:02] check is ok!
            [2013-04-19 12:10:06] check is ok!
            64s
            單線程
            [2013-04-19 11:57:00] is ok
            [2013-04-19 11:57:41] is ok
            41s
            -----------------------------------------------------------------------------------
            多線程 增加運行線程數(shù)
            cpu_count()*2;
            線程分布給cpu親緣性  設(shè)置一下
            [2013-04-19 13:23:49] check is ok!
            [2013-04-19 13:24:14] check is ok!
            25s
            cpu 占用53%最多峰值
            cpu_count()*4;
            線程分布給cpu親緣性  設(shè)置一下
            [2013-04-19 13:27:57] check is ok!
            [2013-04-19 13:28:19] check is ok!
            22s
            cpu90%峰值
            cpu_count()*8;
            線程分布給cpu親緣性  設(shè)置一下
            [2013-04-19 13:30:44] check is ok!
            [2013-04-19 13:30:51] check is ok!
            7s
            cpu100%峰值
            cpu_count()*16
            [2013-04-19 13:33:23] check is ok!
            [2013-04-19 13:33:31] check is ok!
            8s
            cpu100%峰值


            單線程:

            2081 FILE
            11.9G
            [2013-04-24 15:32:28] is ok
            [2013-04-24 15:41:31] is ok
            9分鐘
            磁盤到了讀取的極限 20-30m/s
            cpu 未充滿 20%左右
            io為瓶頸


            總結(jié):采用內(nèi)存映射文件,一次性加載文件到內(nèi)存塊計算md5 降io和io cpu損耗
            采用線程和cpu親緣性,充分利用釋放出來的cpu計算能力。
            實驗記過254哥文件6.5g  4核機(jī)器 開啟32哥線程分布到各個cpu 可以得到7秒的計算結(jié)果,比上面單線程未優(yōu)化提升6倍速度,比上面多線程未優(yōu)化提升9倍

            一個解決方案:
            一個文件: 分段md5,    特征為 md51|md52|md53……
            一個連續(xù)讀取文件的線程,
            每個md5作為一個任務(wù)計算。
            讀取持續(xù)性讀取,到一個連續(xù)性內(nèi)存,分段任務(wù)給線程池分段計算,算完全體統(tǒng)計一下,
            如果過程中出現(xiàn)里面局部有一個是失敗的,那么整個數(shù)據(jù)都不用驗證了,其他任務(wù)也不用繼續(xù)了,直接認(rèn)為失敗,這個概率很高。減少計算一大堆,切分粒度中一點別切太多片。每個任務(wù)結(jié)束的時候都釋放內(nèi)存回收使用。
            io在獨立線程, 計算md5在線程池,這樣徹底分離,重復(fù)內(nèi)存持續(xù)復(fù)用。

            posted on 2013-04-19 13:44 閱讀(2607) 評論(5)  編輯 收藏 引用 所屬分類: life

            評論:
            # re: 多線程 md5 較驗 和 單線程校驗 校驗比較多的文件數(shù) 性能評價(初步成果)(2) 2013-04-19 17:17 | YzL
            這個跟MD5有啥關(guān)系??我還以為是單文件能多線程計算,這才跟MD5有點意義  回復(fù)  更多評論
              
            # re: 多線程 md5 較驗 和 單線程校驗 校驗比較多的文件數(shù) 性能評價(初步成果)(2) 2013-04-19 17:32 | 蔡東赟
            @YzL
            我這里有上w個文件,解決當(dāng)前問題為主要要務(wù)。

            單文件多線程md5 沒有那個功力啊。  回復(fù)  更多評論
              
            # re: 多線程 md5 較驗 和 單線程校驗 校驗比較多的文件數(shù) 性能評價(初步成果)(2) 2013-05-03 12:08 | x x
            磁盤的讀取極限絕對不止20M-30M.  回復(fù)  更多評論
              
            # re: 多線程 md5 較驗 和 單線程校驗 校驗比較多的文件數(shù) 性能評價(初步成果)(2) 2013-05-05 21:42 | 蔡東赟
            @x x

            system占用 40m/s了
            我程序也三四十m了。


              回復(fù)  更多評論
              
            # re: 多線程 md5 較驗 和 單線程校驗 校驗比較多的文件數(shù) 性能評價(初步成果)(2) 2013-05-05 21:43 | 蔡東赟
            @x x

            還有方案不?

            上面是虛擬內(nèi)存用完了,卡在虛擬內(nèi)存了。
            難道直接用系統(tǒng)的物理內(nèi)存
              回復(fù)  更多評論
              
            久久精品国产亚洲av麻豆小说| 久久精品国产91久久综合麻豆自制 | 亚洲国产二区三区久久| 91精品国产91久久久久福利| 久久精品无码一区二区三区| 久久婷婷色综合一区二区| 亚洲国产欧洲综合997久久| 97久久天天综合色天天综合色hd| 国产69精品久久久久9999| 蜜桃麻豆WWW久久囤产精品| 国产精品一久久香蕉国产线看| 久久精品国产欧美日韩| 欧美牲交A欧牲交aⅴ久久 | 四虎久久影院| 国产精品99久久99久久久| 国产69精品久久久久APP下载| 99久久精品国产一区二区三区| 久久久久波多野结衣高潮| 久久综合九色综合久99| 熟妇人妻久久中文字幕| 久久久精品视频免费观看| 久久精品国产一区| 蜜臀久久99精品久久久久久小说| 欧美精品丝袜久久久中文字幕| 久久免费线看线看| 精品久久久噜噜噜久久久 | 久久午夜综合久久| 欧美精品一本久久男人的天堂| 日韩精品久久无码人妻中文字幕 | 一本久久久久久久| 久久精品人人做人人爽97| 久久精品无码一区二区WWW| 久久久久久亚洲精品不卡| 国产高潮国产高潮久久久91 | 国产精久久一区二区三区| 久久综合综合久久狠狠狠97色88| 久久天堂AV综合合色蜜桃网| 久久久噜噜噜久久熟女AA片| 久久99国产综合精品| 国产精品久久久久影院嫩草| 伊人久久大香线蕉精品|