中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

產(chǎn)品分類

當(dāng)前位置: 首頁 > 傳感測(cè)量產(chǎn)品 > 工業(yè)傳感器 > 溫濕度傳感器

類型分類:
科普知識(shí)
數(shù)據(jù)分類:
溫濕度傳感器

ESM6802( iMX6-WEC7)多核性能測(cè)試

發(fā)布日期:2022-04-26 點(diǎn)擊率:119

  • 關(guān)鍵詞:                                                                ESM6802                                                                iMX6-WEC7

  • 摘要:WEC7一個(gè)最重要的特性就是對(duì)多核處理器的支持(Symmetric Multi-Processing(SMP)),下面將通過應(yīng)用程序來測(cè)試在單核和多核情況下系統(tǒng)的執(zhí)行情況,為了更直觀的比較,同時(shí)參與測(cè)試的還有ESM3354,ESM3354是基于TI Coertex-A8處理器的工控主板,CPU主頻1GHz,同樣預(yù)裝WEC7操作系統(tǒng)。


  ESM6802是英創(chuàng)公司推出的基于Freescale i.MX6DL雙核處理器(ARM Cortex-A9,主頻1GHz)的高性能工控主板,預(yù)裝正版Windows Embedded Compact 7(WEC7)嵌入式操作系統(tǒng),WEC7一個(gè)最重要的特性就是對(duì)多核處理器的支持(Symmetric Multi-Processing(SMP)),下面將通過應(yīng)用程序來測(cè)試在單核和多核情況下系統(tǒng)的執(zhí)行情況,為了更直觀的比較,同時(shí)參與測(cè)試的還有ESM3354,ESM3354是基于TI Coertex-A8處理器的工控主板,CPU主頻1GHz,同樣預(yù)裝WEC7操作系統(tǒng)。


  所設(shè)計(jì)的測(cè)試程序代碼如下,其中的TestSmp函數(shù)有兩個(gè)輸入?yún)?shù),第一參數(shù)表示要?jiǎng)?chuàng)建測(cè)試線程的數(shù)量,第二個(gè)參數(shù)為所創(chuàng)建線程的運(yùn)行時(shí)長。cbTestSmp是被創(chuàng)建的測(cè)試線程,測(cè)試線程主要是在一個(gè)while循環(huán)中,反復(fù)讀取內(nèi)存變量然后與預(yù)設(shè)值進(jìn)行比較,在運(yùn)行設(shè)定的時(shí)間后自動(dòng)退出循環(huán),其中的threadParam->loops變量會(huì)記錄下while循環(huán)總共執(zhí)行的次數(shù)。


  typedef struct _SMP_THREAD_PARAM

  {

      UINT32 durationMs;

      UINT32 threadId;

      UINT64 loops;

      BOOL   bSetAffinity;

      UINT32 sandBoxSize;

      LPVOID sandBoxStart;

  }SMP_THREAD_PARAM, *PSMP_THREAD_PARAM;


  ULONG cbTestSmp(LPVOID param)

  {

      PSMP_THREAD_PARAM threadParam = (PSMP_THREAD_PARAM)param;

      DWORD tStart = GetTickCount();

      UINT8 *buffer = (UINT8 *)threadParam->sandBoxStart;


      wprintf(L"Ahou, Thread %d, running for %d ms ", threadParam->threadId,

           threadParam->durationMs);


      // Write to sandbox

      for (UINT32 i = 0; i < threadParam->sandBoxSize; i++)

      {

          buffer[i] = (UINT8)(i);

      }


      while ( (GetTickCount() - tStart) < threadParam->durationMs)

      {

          // Read back from sandbox

          for (UINT32 i = 0; i < threadParam->sandBoxSize; i++)

          {

              if (buffer[i] != (UINT8)(i))

              {

                  wprintf(L"Thread %d : error at byte %d for loop %I64d !! ",

                      threadParam->threadId, i, threadParam->loops);

              }          

          }      


          threadParam->loops++;

      }


      wprintf(L"Thread %d : terminating ", threadParam->threadId);

 

     return 0;

  }


  void TestSmp(UINT32 nNumOfThread, UINT32 durationMs)

  {

      UINT32 i;


      PSMP_THREAD_PARAM threadParams;

      HANDLE *threadHandles;

      UINT64 totalLoops = 0;

      UINT32 sandBoxSize = 1024 * 128; // 128 kB


      HANDLE h_array[1];


      threadParams = (PSMP_THREAD_PARAM)malloc(nNumOfThread * sizeof(SMP_THREAD_PARAM));


      if (threadParams == NULL)

      {

          wprintf(L"Failed allocating thread params ! ");

          return;

      }


      threadHandles = (HANDLE *)malloc(nNumOfThread * sizeof(HANDLE));


     if (threadHandles == NULL)

      {

          wprintf(L"Failed allocating thread handles ! ");

          return;

      }


      for (i = 0; i < nNumOfThread; i++)

      {

          threadParams[i].bSetAffinity = TRUE;

          threadParams[i].threadId = i;

          threadParams[i].durationMs = durationMs;

          threadParams[i].loops = 0;

          threadParams[i].sandBoxSize = sandBoxSize;

          threadParams[i].sandBoxStart = malloc(sandBoxSize);

          threadHandles[i] = CreateThread(NULL, 0, cbTestSmp, &threadParams[i], 0, NULL);

          wprintf(L"Thread handle %d : 0x%x ", i, threadHandles[i]);

      }


      h_array[0] = threadHandles[0];

      DWORD res = WaitForSingleObject(h_array[0], INFINITE);


      Sleep(500);


      if (res == WAIT_TIMEOUT)

      {

          wprintf(L"Timeout waiting for threads ! ");

      }

      else

      {

          wprintf(L"All threads exited ");

      }


      for (i = 0; i < nNumOfThread; i++)

      {

         wprintf(L"Thread %d did run %I64d loops ", i, threadParams[i].loops);

          totalLoops += threadParams[i].loops;

          free(threadParams[i].sandBoxStart);

          CloseHandle(threadHandles[i]);

      }


      wprintf(L"Total number of loops %I64d (%I64d millions) ", totalLoops,

          totalLoops / 1000000);


      free(threadHandles);

      free(threadParams);

  }


  將上述測(cè)試代碼編譯生成為exe文件,分別在ESM3354和ESM6802上運(yùn)行,設(shè)置while循環(huán)的執(zhí)行時(shí)間均為10000ms,測(cè)試結(jié)果如下:


1、創(chuàng)建單個(gè)線程


測(cè)試主板與線程ESM3354(1GHz單核 Cortex-A8)ESM6802(1GHz雙核Cortex-A9)

 循環(huán)次數(shù)67917493


  當(dāng)測(cè)試程序只創(chuàng)建一個(gè)測(cè)試線程時(shí),ESM3354的while循環(huán)執(zhí)行了6791次,ESM6802執(zhí)行7493次,雖然ESM6802為雙核處理器,但由于程序只有一個(gè)線程,即同一時(shí)刻只有一個(gè)線程在運(yùn)行,所以在相同的時(shí)間內(nèi),循環(huán)的次數(shù)僅略多于ESM3354。由于ESM3354和ESM6802的CPU主頻同樣都是1GHz,所以可以認(rèn)為ESM6802多出的循環(huán)次數(shù)也就是Cortex-A8與Cortex-A9在代碼執(zhí)行效率上的差別。


2、創(chuàng)建兩個(gè)線程


測(cè)試主板與線程ESM3354(1GHz單核 Cortex-A8)ESM6802(1GHz雙核Cortex-A9)

 線程1循環(huán)次數(shù)33907438

 線程2循環(huán)次數(shù)34427452

 總循環(huán)次數(shù)683214890


  當(dāng)測(cè)試程序創(chuàng)建了兩個(gè)線程時(shí),ESM3354會(huì)將CPU資源大約平均的分配給兩個(gè)線程,如上表中線程1執(zhí)行了3390次,線程2執(zhí)行了3442次,兩個(gè)線程總共執(zhí)行的次數(shù)與只創(chuàng)建單個(gè)線程測(cè)試時(shí)的循環(huán)次數(shù)相當(dāng)。ESM6802為雙核CPU,在測(cè)試程序有兩個(gè)線程的情況下,在同一時(shí)刻兩個(gè)線程可以同時(shí)運(yùn)行,所以總的循環(huán)次數(shù)大約是單個(gè)線程測(cè)試時(shí)的兩倍。


  通過上面的測(cè)試可以看到,在多線程情況下,如果操作系統(tǒng)支持多核處理器,那么雙核CPU的運(yùn)算能力將是單核CPU的兩倍。


下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產(chǎn)品

更多
中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

      9000px;">

          91久久免费观看| **欧美大码日韩| 日韩免费视频一区二区| 日韩精品一区二| 中文字幕中文字幕在线一区| 美女视频免费一区| 欧美日韩情趣电影| 首页综合国产亚洲丝袜| 欧美丰满少妇xxxxx高潮对白| 无吗不卡中文字幕| 国产又黄又大久久| 精品sm在线观看| 成人h精品动漫一区二区三区| 亚洲卡通欧美制服中文| 色综合天天做天天爱| 国产精品丝袜久久久久久app| 精品久久久久久久久久久院品网| 国产成人精品www牛牛影视| 日韩视频不卡中文| 国产盗摄一区二区| 专区另类欧美日韩| 欧美日产在线观看| 国产精品888| 性欧美大战久久久久久久久| 欧美r级在线观看| 日本道免费精品一区二区三区| 色综合天天综合狠狠| 亚洲综合精品久久| 亚洲欧洲日产国产综合网| 精品成a人在线观看| 欧美性受xxxx| 国产激情一区二区三区四区| 亚洲一二三区不卡| www日韩大片| 91蜜桃婷婷狠狠久久综合9色| 欧美午夜电影网| 国产美女主播视频一区| 日日夜夜免费精品视频| 亚洲激情五月婷婷| 精品久久人人做人人爱| 91麻豆精品国产自产在线| 色久优优欧美色久优优| 成人app网站| 另类专区欧美蜜桃臀第一页| 日欧美一区二区| 无码av免费一区二区三区试看| 国产拍揄自揄精品视频麻豆| 精品国产免费视频| 欧洲中文字幕精品| 91久久免费观看| 欧美一区二区日韩一区二区| 制服丝袜激情欧洲亚洲| 日韩精品一区二区三区swag | 亚洲色图一区二区| 欧美精品一区二区三区一线天视频| 亚洲男人天堂一区| 久久久国产一区二区三区四区小说 | 国产精品少妇自拍| 国产欧美日产一区| 亚洲精品免费播放| 婷婷中文字幕综合| 97se亚洲国产综合自在线观| 欧美日本精品一区二区三区| www精品美女久久久tv| 一区二区在线看| 成人性生交大合| 日韩一区二区免费在线电影| 亚洲欧洲制服丝袜| 国产成人99久久亚洲综合精品| 亚洲色图制服丝袜| 国产一区在线看| 制服丝袜亚洲色图| 蜜臀精品一区二区三区在线观看 | 国产麻豆成人传媒免费观看| 91丝袜高跟美女视频| 亚洲精品乱码久久久久久日本蜜臀| 欧美精品丝袜中出| 国产性做久久久久久| 日韩在线a电影| 欧美日韩亚洲综合一区二区三区| 一本色道a无线码一区v| 中文字幕一区二区三区乱码在线 | 成人av影院在线| 欧美一区二区在线免费播放| 17c精品麻豆一区二区免费| 91一区二区在线| 亚洲国产视频直播| 欧美成人女星排名| 成人黄色大片在线观看| 亚洲成人av一区| 亚洲欧美影音先锋| 一个色综合av| 亚洲精品中文在线| 青娱乐精品视频在线| 国产日本亚洲高清| 久久久精品天堂| 精品国产a毛片| 国产肉丝袜一区二区| 国产精品每日更新在线播放网址| 欧美色视频一区| 国产精品久线观看视频| 欧美亚洲日本一区| 国产白丝网站精品污在线入口| 免费观看在线综合| 精品久久久久久久久久久院品网| 日韩精品一区二区三区中文不卡| 欧美一区欧美二区| 床上的激情91.| 蜜桃在线一区二区三区| 一区二区三区精品视频| 欧美怡红院视频| 久久9热精品视频| 一区二区三区在线影院| 日韩欧美精品在线| 国产精品麻豆久久久| 亚洲免费色视频| 成人深夜福利app| 精品一区二区三区日韩| 蜜桃av一区二区在线观看| 亚洲观看高清完整版在线观看 | 欧美日韩亚洲综合一区二区三区| 精品毛片乱码1区2区3区| 91精品国产综合久久福利| 精品美女一区二区三区| 精品久久免费看| 国产日韩视频一区二区三区| 精品欧美一区二区三区精品久久| 亚洲免费成人av| 久久久亚洲午夜电影| 91精品国产色综合久久不卡电影 | 国产大片一区二区| 激情综合色综合久久| 日本欧美一区二区| 自拍偷自拍亚洲精品播放| 午夜婷婷国产麻豆精品| 九色porny丨国产精品| 成人黄色a**站在线观看| 91精品国产免费久久综合| 一区二区三区成人| 国产盗摄精品一区二区三区在线| 国产日韩一级二级三级| 日韩欧美久久久| 免费在线观看一区| 337p亚洲精品色噜噜狠狠| 麻豆一区二区在线| 精品成人一区二区三区四区| 亚洲视频在线观看一区| 懂色av一区二区三区免费看| 国产视频一区在线观看 | 国产露脸91国语对白| 国产69精品久久久久毛片| 91久久奴性调教| 国产精品视频一二三| 午夜影院久久久| 色欧美日韩亚洲| 久久久蜜桃精品| 免费观看一级欧美片| 91网页版在线| 麻豆精品一区二区av白丝在线| 综合电影一区二区三区| 国产精品一区一区三区| 3751色影院一区二区三区| 免费看精品久久片| 欧美一区二区日韩一区二区| 琪琪一区二区三区| 亚洲国产高清aⅴ视频| av网站一区二区三区| 久久国产精品99久久人人澡| 国产视频不卡一区| 色一情一伦一子一伦一区| 中文字幕精品在线不卡| 国产激情视频一区二区在线观看| 精品在线一区二区三区| 色哟哟一区二区| 五月综合激情网| 国产欧美一区二区三区沐欲| 国产一区二区剧情av在线| 一区二区三区久久久| 91精品国产高清一区二区三区| 欧美一区二区三区影视| 强制捆绑调教一区二区| 日韩欧美一卡二卡| 欧洲国产伦久久久久久久| 日韩av中文在线观看| 一片黄亚洲嫩模| 最新久久zyz资源站| 国产日韩精品一区二区三区在线| 中文字幕第一区二区| 欧美性大战久久| 日本不卡123| 日本sm残虐另类| 石原莉奈在线亚洲二区| 亚洲综合无码一区二区| 亚洲天堂2014| 国产偷国产偷亚洲高清人白洁| 日韩视频在线你懂得| 成人av资源站| 亚洲第一久久影院| 久久日韩粉嫩一区二区三区| 欧美人与禽zozo性伦|