青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 119  文章 - 290  trackbacks - 0

博客搬家了哦,請移步
叫我abc

常用鏈接

留言簿(12)

隨筆分類

我的博客

搜索

  •  

積分與排名

  • 積分 - 305651
  • 排名 - 84

最新評論

閱讀排行榜

最近閱讀了《GAME PROGRAMMING GEMS6》,頗有收獲,以筆記之。

首先是GENERAL PROGRAMMING SECTION。

1.2 Utilizing Multicore Processors with OpenMP
OpenMP是一個并行庫,和一般的多線程庫不同,OpenMP著重于局部和片斷的并行,目前VC8.0和GCC4.2均已支持了OpenMP。

(a)OpenMP的并行方式
在我未接觸OpenMP之前,我通過多線程只認識到并行其實和多進程并行沒有什么區(qū)別,比如UI線程和工作線程,又比如渲染線程和后臺裝載線程。
它們是兩條生命期長得不得了的線程,通過臨界區(qū)和互斥體訪問共享變量,協(xié)同完成任務。
我一直覺得這樣的并行挺危險的,在這長長的生命周期中,它們無法判斷對方目前正處于何種狀態(tài),只能通過加鎖來解決溝通問題。
OpenMP的并行是局部的并行,線程的生命周期較短,并且處于同一狀態(tài)。在串行程序中,程序可以分為許多有序的任務,像流水線般,如
   step1->step2->step3->step4->step5。
OpenMP就是針對某一個step,來展開并行處理的。比如之前的5個step,其中step2和step5使用了并行處理,那么每一步都線程數(shù)量如下(假設是雙核,那進入并行時產(chǎn)生4個線程):
   1->4->1->1->4。
一般能夠展開并行的任務最好是for循環(huán)的任務,這種任務可以將被處理的數(shù)據(jù)均分到多個線程上,并行處理。
如:
for n=0,100
   proc( data[n] );
就可以被OpenMP展開為以下4個循環(huán),每個循環(huán)分配一個線程:
for n=0,25
   proc( data[n] );
for n=25,50
    proc( data[n] );
for n=50,75
    proc( data[n] );
for n=75,100
    proc( data[n] );

(b)什么樣的task應該交給OpenMP并行?
由上面的例子可以看到,一般是for循環(huán)的task,可以交給OpenMP。但是這里還是有些需要注意到地方的,比如在處理data[i]的時候,就不要去訪問data[j]的數(shù)據(jù),也就是盡量不要寫出一些需要加鎖訪問的代碼。即使在處理某個數(shù)據(jù)的時候要訪問其他相關的數(shù)據(jù),這樣的數(shù)據(jù)需要多數(shù)也是可以在進入并行區(qū)域前準備好的:
      獲取(串行)->處理(并行)->回寫(串行)

(c)OpenMP的使用接口
不要在正式程序中太著急的使用OpenMP,先老老實實的寫你的串行程序,然后在程序完成后經(jīng)過測量找出熱點,再對某些熱點使用OpenMP并行。說到這里,你應該感覺到,OpenMP是一種想要就要,不破壞程序原有結構的東西了吧。
沒錯,OpenMP簡單用的話簡單無比,復雜用的話也不是那么困難。
比如:
#pragma omp paralle for
for ( int i=0; i < 1000; ++i )
    proc( data[i] );
#pragma omp指令在編譯器的支持下,就會展開成許多東西,并切實的發(fā)生并行。
由于并行一向不好調(diào)試,所以一開始要做的就是,串行編程,然后運行無措,最后才優(yōu)化,不是嗎?

(d)使用OpenMP的必要性
在游戲開發(fā)中,有兩種程序必然要OpenMP的并行,一種是MMOG的服務器程序,上面跑著近萬NPC和子物體,再加上幾千玩家,這樣的處理量,不需要多核不需要并行是不可能的。另一種就是游戲機游戲開發(fā),比如X360,就是幾個低能的CPU湊在一起拼出來的,這要是不并行,那鐵定沒法跑了。
高頻的CPU估計是很難再有了,進入多核時代,不用多線程,不用并行,出門都不好意思跟人打招呼····

PS:在看本書之前,我就已經(jīng)由X360的朋友介紹,進行了OpenMP的研究,有一種與主流同步的感覺+ω+


1.3Computer Vision in Games Using the OpenCV Library
(a)OpenCV是一個視覺,圖像處理庫,比如能從照片中識別出人臉之類的
(b)OpenCV是Intel發(fā)起的,所以在Intel的平臺上效率會優(yōu)于AMD平臺
(c)有興趣的可以用OpenCV做出itoy這樣的游戲,也就是使用camera操作的游戲

我個人對OpenCV目前不是很有興趣,不過公司里面還是有人玩過一段時間,又一次覺得和主流同步了+ω+

好,累了,今天先寫到這里,剩下的慢慢出。

posted on 2007-11-24 10:14 LOGOS 閱讀(2096) 評論(4)  編輯 收藏 引用 所屬分類: 《GAME PROGRAMMING GEMS6》讀書筆記

FeedBack:
# re: 《GAME PROGRAMMING GEMS6》讀書筆記-1[未登錄] 2007-11-24 10:24 海邊沫沫
正準備學OpenMP,摟主的文章對我很有幫助。  回復  更多評論
  
# re: 《GAME PROGRAMMING GEMS6》讀書筆記-1 2007-11-24 21:19 羅賓李
學習,這東西有點意思  回復  更多評論
  
# re: 《GAME PROGRAMMING GEMS6》讀書筆記-1 2007-11-26 09:29 夢在天涯
OpenMp 是intel的多線程lib把,看過簡單的實例,但是一直沒有用過啊
  回復  更多評論
  
# re: 《GAME PROGRAMMING GEMS6》讀書筆記-1 2007-11-26 14:55 LOGOS
@夢在天涯
不是intel的東西,是很多廠商共同維護的標準,由編譯器進行支持  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              亚洲精品在线三区| 国产欧美一区二区视频| 亚洲人成7777| 亚洲免费视频网站| 国产精品久久久久久久久久久久久| 另类春色校园亚洲| av成人免费在线| 亚洲理伦在线| 一本色道久久88综合亚洲精品ⅰ| 亚洲日韩第九十九页| 亚洲黄色免费电影| 最新精品在线| 亚洲视频www| 亚洲欧美日韩综合| 亚洲一区免费在线观看| 亚洲午夜免费视频| 中日韩美女免费视频网址在线观看| 亚洲黄色av| 在线亚洲精品福利网址导航| 亚洲综合成人婷婷小说| 先锋影音国产精品| 久久精品久久99精品久久| 久久久国产一区二区三区| 在线一区二区三区四区| 一区二区高清在线观看| 亚洲欧美韩国| 狠狠色狠狠色综合日日五| 国产香蕉久久精品综合网| 国产偷国产偷精品高清尤物| 国内激情久久| 亚洲国产一区二区视频| 9久草视频在线视频精品| 亚洲欧美日韩综合一区| 另类专区欧美制服同性| 亚洲精品久久久久久下一站 | 国产精品久久国产愉拍| 欧美视频一区二区在线观看| 国产精品美女久久久久久久| 国产一区日韩欧美| 亚洲国产日韩一级| 亚洲欧美日韩国产成人| 老鸭窝91久久精品色噜噜导演| 欧美成人性生活| 一本大道久久精品懂色aⅴ| 亚洲欧美日韩中文视频| 免费中文日韩| 国产日韩欧美在线播放不卡| 亚洲高清不卡在线| 亚洲激情在线激情| 亚洲国产一区二区三区在线播| 一本色道**综合亚洲精品蜜桃冫 | 欧美一级艳片视频免费观看| 亚洲一区二区视频| 男女av一区三区二区色多| 国产精品分类| 亚洲精品日韩欧美| 久久久久国色av免费看影院| 亚洲视频在线观看一区| 久久久久高清| 你懂的视频欧美| 欧美激情网友自拍| 久久国产夜色精品鲁鲁99| 欧美在线亚洲| 国产精品羞羞答答xxdd| 99视频在线观看一区三区| 久久久久九九九| 亚洲校园激情| 欧美日本精品| a91a精品视频在线观看| 亚洲国产小视频在线观看| 久久久www成人免费毛片麻豆| 国产精品露脸自拍| 亚洲在线一区| 91久久国产综合久久蜜月精品 | 久久噜噜亚洲综合| 国产一区二区剧情av在线| 欧美一区二区三区的| 亚洲午夜羞羞片| 欧美日韩国产精品一区| 国产日韩欧美自拍| 日韩性生活视频| 91久久久久| 欧美日韩国产在线| 亚洲深夜福利网站| 99精品久久久| 欧美日韩中文在线| 亚洲一区二区欧美日韩| 99国产精品久久久| 国产精品久久久久久久9999| 亚洲欧美日韩精品| 91久久综合| 欧美在线观看一区二区| 国产夜色精品一区二区av| 久久精品一本久久99精品| 欧美一区二区精品| 在线观看日韩av| 亚洲激情视频网| 欧美日韩在线大尺度| 亚洲欧美在线一区| 久久国产视频网| 亚洲国产视频一区| 亚洲精品婷婷| 国产精品亚洲成人| 亚洲专区一区| 欧美国产一区二区| 欧美激情精品久久久久久变态| 一区二区三区久久网| 亚洲香蕉在线观看| 在线精品视频在线观看高清| 亚洲国产成人精品女人久久久| 欧美日韩精品系列| 久久精品亚洲国产奇米99| 欧美成人乱码一区二区三区| 亚洲性视频h| 一区二区三区久久| 欧美三区在线观看| 久久综合色综合88| 亚洲色图在线视频| 91久久精品一区二区三区| 亚洲伦理自拍| 国产真实久久| 一区二区三区日韩精品视频| 伊人久久亚洲影院| 亚洲私人影院在线观看| 在线日韩中文字幕| 亚洲天堂黄色| 亚洲精品视频免费在线观看| 亚洲欧美一级二级三级| 亚洲精品一级| 亚洲国产婷婷香蕉久久久久久99| 国产精品国色综合久久| 久久国产免费看| 欧美日韩伦理在线免费| 欧美aa国产视频| 国产精品网红福利| 久久久久久久久久久成人| 欧美午夜不卡影院在线观看完整版免费 | 久久在精品线影院精品国产| 久久久www成人免费精品| 亚洲一区二区三区三| 麻豆精品传媒视频| 久久久免费精品视频| 国产精品日本| 在线天堂一区av电影| 中日韩美女免费视频网址在线观看 | 欧美一站二站| 午夜精品久久| 欧美精品观看| 欧美黑人在线播放| 精品1区2区3区4区| 欧美一区二区黄色| 久久av一区二区| 欧美午夜剧场| 欧美成ee人免费视频| 影音先锋亚洲视频| 欧美亚洲免费高清在线观看| 亚洲美女电影在线| 久久亚洲视频| 午夜精品一区二区三区在线视| 国产精品久久久久国产精品日日| 亚洲欧美精品一区| 开心色5月久久精品| 99精品视频网| 国产偷自视频区视频一区二区| 久久亚洲一区| 一区二区精品在线| 久久免费精品视频| 一区二区黄色| 国语精品中文字幕| 欧美日韩国产在线| 久久久噜噜噜久久狠狠50岁| 亚洲美女av网站| 久久久中精品2020中文| 9l国产精品久久久久麻豆| 亚洲在线中文字幕| 欧美69视频| 午夜一级久久| 最新亚洲视频| 国产亚洲精品bv在线观看| 欧美日韩成人一区| 久久久久欧美精品| 亚洲视频一起| 欧美激情一区二区三区在线| 久久福利电影| 亚洲一区免费| 99视频精品| 亚洲黄色尤物视频| 韩日成人av| 国产精品视频一区二区三区| 欧美丰满高潮xxxx喷水动漫| 欧美在线观看视频一区二区| 亚洲免费观看高清完整版在线观看熊 | 久热这里只精品99re8久| 亚洲一二三区在线| 亚洲丰满少妇videoshd| 久久久久在线| 欧美一区二区三区在线免费观看| 一道本一区二区| 亚洲精品午夜| 最新亚洲电影|