freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

并行計(jì)算課程報(bào)告-n皇后問(wèn)題-資料下載頁(yè)

2025-05-18 11:32本頁(yè)面

【導(dǎo)讀】并行計(jì)算與多核多線程技術(shù)。班級(jí)__計(jì)123-2_學(xué)號(hào)_20xx58503222_姓名___王洋___N皇后問(wèn)題

  

【正文】 QUEENS。 i++) { for (int j = 0。 j QUEENS。 j++) { ( + m[thread,i,j])。 } ()。 } } /** * wy_serial_listAllCol : List All The Valid Chess Table In Serial Way * * @param y */ public static void wy_serial_listAllCol(int y) { for(int x = 0。 x QUEENS。 x++) { m[0,x,y] = 1。 if(wy_isOk(m, x, y,0)) { if(y == QUEENS 1) { //print(m,0)。 } else wy_serial_listAllCol(y+1)。 } m[0,x,y] = 0。 } } /** * wy_parallel_listFirstCol : Determine The First Column In Parallel Way * * @param y * @param thread */ public static void wy_parallel_listFirstCol(int y, int thread) { 班級(jí) __計(jì) 1232_ 學(xué)號(hào) _20xx58503222_ 姓名 ___王 洋 ___ N 皇后問(wèn)題 24 int floorLength = (int)( (double)QUEENS / 2 )。 if(thread == 0){ for (int x = 0 。 x floorLength 。 x++) { m[thread,x,y] = 1。 if (wy_isOk(m , x , y , thread)) { wy_parallel_listOtherCol(y+1 , thread)。 } m[thread,x,y] = 0。 } } else { for (int x = floorLength 。 x QUEENS 。 x++) { m[thread,x,y] = 1。 if (wy_isOk(m , x , y , thread)) { wy_parallel_listOtherCol(y+1 , thread)。 } m[thread,x,y] = 0。 } } } /** * wy_parallel_listOtherCol : Determine The Other Column In Parallel Way * * @param y * @param thread */ public static void wy_parallel_listOtherCol(int y , int thread) { for(int x = 0。 x QUEENS。 x++) { m[thread,x,y] = 1。 if(wy_isOk(m , x , y , thread)) { if(y == QUEENS 1) { //print(m , thread)。 } else { wy_parallel_listOtherCol(y+1 , thread)。 } } m[thread,x,y] = 0。 } } /* Have To No Parameters */ public void runThread() { 班級(jí) __計(jì) 1232_ 學(xué)號(hào) _20xx58503222_ 姓名 ___王 洋 ___ N 皇后問(wèn)題 25 if(threadNum == 0){ wy_parallel_listFirstCol(0 , 0)。 } else { wy_parallel_listFirstCol(0 , 1)。 } } static void Main(string[] args) { Stopwatch stopwatch = new Stopwatch()。 /* Parallel Part */ for (int i = 0。 i THREADS。 i++) { for (int j = 0。 j QUEENS。 j++) { for (int z = 0。 z QUEENS。 z++) { m[i, j, z] = 0。 } } } NQueens nqueen1 = new NQueens(0)。 ThreadStart delegete1 = new ThreadStart()。 Thread thread1 = new Thread(delegete1)。 NQueens nqueen2 = new NQueens(1)。 ThreadStart delegete2 = new ThreadStart()。 Thread thread2 = new Thread(delegete2)。 ()。 ()。 ()。 ()。 ()。 ()。 TimeSpan timeSpan1 = 。 long pt = (long)。 (Parallel Time = + (pt))。 /* Serial Part */ 班級(jí) __計(jì) 1232_ 學(xué)號(hào) _20xx58503222_ 姓名 ___王 洋 ___ N 皇后問(wèn)題 26 for (int i = 0。 i THREADS。 i++) { for (int j = 0。 j QUEENS。 j++) { for (int z = 0。 z QUEENS。 z++) { m[i, j, z] = 0。 } } } ()。 wy_serial_listAllCol(0)。 ()。 TimeSpan timeSpan2 = 。 long st = (long)。 (Serial Time = + (st))。 (相對(duì)加速比 = + (double)st/pt + \n)。 ()。 } } } 執(zhí)行結(jié)果 截圖 (體現(xiàn)串行時(shí)間、并行時(shí)間和加速比) ( 1)小數(shù)據(jù)量驗(yàn)證正確性的執(zhí)行結(jié)果 N = 12 Serial Time = 1429 , Parallel Time = 3734 班級(jí) __計(jì) 1232_ 學(xué)號(hào) _20xx58503222_ 姓名 ___王 洋 ___ N 皇后問(wèn)題 27 相對(duì)加速比 = ( 2) 大數(shù)據(jù)量獲得較好加速比的執(zhí)行結(jié)果 N = 14 Serial Time = 55851 , Parallel Time = 151356 相對(duì)加速比 = 遇到的問(wèn)題及解決方案 ( 1) 問(wèn)題一 錯(cuò)誤代碼及后果 當(dāng)數(shù)組 m 維數(shù)為 2 維時(shí),無(wú)法避免其他線程對(duì)當(dāng)前線程的影響,各線程存在數(shù)據(jù)競(jìng)爭(zhēng),無(wú)法準(zhǔn)確的描述棋盤放置狀態(tài)。 正確代碼 應(yīng)將數(shù)組設(shè)置為 3 維,第 1 維為 Thread 維 ,避免多線程共同操作同一個(gè)棋盤,出現(xiàn)數(shù)據(jù)競(jìng)爭(zhēng)。 分析 班級(jí) __計(jì) 1232_ 學(xué)號(hào) _20xx58503222_ 姓名 ___王 洋 ___ N 皇后問(wèn)題 28 加速比理想。 基于 Linux( fork 或 pthread)的并行算法實(shí)現(xiàn) 代碼及注釋 ( 變量名 名字首字母 開(kāi)頭 ) //YTU Wang Yang 1232 20xx58503222 LinuxFork NQUEEN //include include include include include include /* GCC don39。t support type bool */ define QUEENS 14 /* QUEENS NUM *//* 8 QUEENS HAVA 92 RES */ define THREADS 2 /* THREADS TOTAL NUM */ int m[THREADS][QUEENS][QUEENS]。 /* Chess Board */ /** * wy_isOk : Check The Current Queen Site Validity * * @param x * @param y * @return boolvalue */ static bool wy_isOk(int m[THREADS][QUEENS][QUEENS],int x,int y,int thread) { int tx,ty。 /* Same row , return false */ for(ty = 0。ty y。ty++) { if(m[thread][x][ty] == 1) { return false。 } } 班級(jí) __計(jì) 1232_ 學(xué)號(hào) _20xx58503222_ 姓名 ___王 洋 ___ N 皇后問(wèn)題 29 /* Same col , impossible */ /* Diagonal \ , return false */ tx = x。 ty = y。 while(tx = 0 amp。amp。 ty = 0) { if(m[thread][tx][ty] == 1) { return false。 } } /* Diagonal / , return false */ tx = x。 ty = y。 while(++tx QUEENS
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1