合肥生活安徽新聞合肥交通合肥房產(chǎn)生活服務(wù)合肥教育合肥招聘合肥旅游文化藝術(shù)合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務(wù)合肥法律

        CEG 4136代做、代寫Java/c++設(shè)計(jì)編程
        CEG 4136代做、代寫Java/c++設(shè)計(jì)編程

        時(shí)間:2024-09-23  來源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯(cuò)



        CEG 4136 Computer Architecture III 
        Fall 2024 
         
        To be submitted September 28, 11:59 p.m. 
         
        Lab1: Optimizing Forest Fire Simulation with CUDA 
          
        1. Introduction 
        In this lab, you will work on a forest fire simulation code that uses a 1000×1000 grid. The fire 
        starts at 100 distinct locations in the forest. The provided code is implemented sequentially. It 
        simulates the propagation of fire, the burning of trees, and their eventual extinction. The grid is 
        displayed using the OpenGL library, where each cell represents a tree or an empty space. 
         
        The objective of this lab is to parallelize the existing code using CUDA C to leverage the power 
        of graphics processing units (GPUs) to make the simulation faster and more efficient. You will 
        identify parts of the code that are most appropriate for optimization, such as the forest update 
        process, and transform them to run in parallel. 
         
        2. Objective 
        The primary objective of this lab is to convert the sequential code into an optimized version using 
        CUDA C to accelerate the simulation. You will learn to: 
        • Identify code sections that can be parallelized. 
        • Use CUDA C to run computations in parallel on a GPU. 
        • Measure the performance gains achieved through parallelization. 
         2 
         
        3. Development Platform 
        Development and optimization of the program will be done on machines equipped with CUDAcapable
         GPUs. The tools to be used include: 
        • CUDA Toolkit (12.6 or later) for compiling CUDA programs. 
        • Visual Studio 2022 for editing and debugging the code. 
        • CUDA Debugger for testing and profiling your CUDA kernels. 
         
        You will use OpenGL for rendering the simulation, and work will be carried out on workstations 
        with NVIDIA GPUs that support CUDA. 
        4. Tasks 
        Step 1: Understand the Starter Code 
        • Analyze the provided code. It is a forest fire simulation where each cell in the grid 
        represents either a tree or an empty space. Fire starts at 100 random locations, spreads to 
        neighboring cells, and burning trees eventually extinguish after a set amount of time. 
        Step 2: Identify Opportunities for Parallelization 
        • Grid updating is a significant part of the code that can be parallelized. Each cell in the grid 
        can be updated independently of the others. 
        • Analyze the updateForest() function, which is responsible for updating the state of 
        burning trees and propagating fire to neighboring cells. This is the section that needs to be 
        optimized using CUDA. 
        Step 3: Implement Parallelization with CUDA C 
        • CUDA Initialization: Allocate memory for the grid (forest) and burn time (burnTime) on 
        the GPU using cudaMalloc(). 
        • CUDA Kernel: Implement a kernel that updates the state of each cell in the forest in 
        parallel. 
        • Parallel Execution: Ensure that each cell in the grid is updated in parallel using multiple 
        threads on the GPU. 
        • Block and Thread Management: Divide the grid into CUDA thread blocks for optimized 
        execution. 
        Step 4: Measure Performance 
        Measure the runtime of the sequential program and compare it to the optimized CUDA version. 
        Use CUDA profiling tools to identify performance gains and any further possible optimizations. 
         3 
         
        5. Deliverables 
        Each team must submit a report containing the following: 
        • An explanation of the parts of the code that were parallelized. 
        • The modified source code with the CUDA implementation. 
        • A performance analysis showing the execution times before and after optimization. 
        • Screenshots of the running program with visual simulation results. 
         
        6. Evaluation Criteria 
        The following criteria will be considered in the evaluation: 
        • Correctness: The program must work correctly after optimization. The simulation should 
        behave the same as the sequential version. 
        • Effective Parallelization: The code should demonstrate proper and effective use of CUDA, 
        with significant parallelization of the appropriate parts of the program. 
        • Performance Improvement: Measurable performance gains should be demonstrated with 
        the CUDA version. The difference in execution times between the sequential and parallel 
        versions must be clearly explained. 
        • Code Quality: The code should be well-structured, commented, and follow good 
        programming practices. 
         
        Note: This lab serves as an introduction to parallelization using CUDA, so it's important to have 
        a solid understanding of the basics of CUDA before you begin coding. 

        請(qǐng)加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp





         

        掃一掃在手機(jī)打開當(dāng)前頁
      1. 上一篇:COMP5328代做、代寫Python程序語言
      2. 下一篇:CRICOS編程代做、代寫Java程序設(shè)計(jì)
      3. 無相關(guān)信息
        合肥生活資訊

        合肥圖文信息
        挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
        挖掘機(jī)濾芯提升發(fā)動(dòng)機(jī)性能
        戴納斯帝壁掛爐全國(guó)售后服務(wù)電話24小時(shí)官網(wǎng)400(全國(guó)服務(wù)熱線)
        戴納斯帝壁掛爐全國(guó)售后服務(wù)電話24小時(shí)官網(wǎng)
        菲斯曼壁掛爐全國(guó)統(tǒng)一400售后維修服務(wù)電話24小時(shí)服務(wù)熱線
        菲斯曼壁掛爐全國(guó)統(tǒng)一400售后維修服務(wù)電話2
        美的熱水器售后服務(wù)技術(shù)咨詢電話全國(guó)24小時(shí)客服熱線
        美的熱水器售后服務(wù)技術(shù)咨詢電話全國(guó)24小時(shí)
        海信羅馬假日洗衣機(jī)亮相AWE  復(fù)古美學(xué)與現(xiàn)代科技完美結(jié)合
        海信羅馬假日洗衣機(jī)亮相AWE 復(fù)古美學(xué)與現(xiàn)代
        合肥機(jī)場(chǎng)巴士4號(hào)線
        合肥機(jī)場(chǎng)巴士4號(hào)線
        合肥機(jī)場(chǎng)巴士3號(hào)線
        合肥機(jī)場(chǎng)巴士3號(hào)線
        合肥機(jī)場(chǎng)巴士2號(hào)線
        合肥機(jī)場(chǎng)巴士2號(hào)線
      4. 幣安app官網(wǎng)下載 短信驗(yàn)證碼 丁香花影院

        關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

        Copyright © 2024 hfw.cc Inc. All Rights Reserved. 合肥網(wǎng) 版權(quán)所有
        ICP備06013414號(hào)-3 公安備 42010502001045

        主站蜘蛛池模板: 久久se精品动漫一区二区三区| 亚洲一区二区三区无码影院| 日本高清无卡码一区二区久久| 无码国产精品一区二区免费vr | 久久精品视频一区| 日本v片免费一区二区三区 | 国产乱码精品一区二区三区中文| 加勒比无码一区二区三区| 色欲精品国产一区二区三区AV| 一区二区三区视频免费| 国产成人无码aa精品一区| 国产一区二区三区小说| 亚洲日本va一区二区三区| 极品尤物一区二区三区| 亚洲.国产.欧美一区二区三区| 日韩好片一区二区在线看| 久久久精品人妻一区亚美研究所| 国产在线精品一区免费香蕉| 国产午夜精品一区二区三区小说| 国产免费一区二区三区免费视频| 精品视频一区在线观看| 日本精品一区二区三区四区| 免费观看日本污污ww网站一区| 国产亚洲综合一区二区三区| 精品一区二区三区在线观看l | 91一区二区三区四区五区| 性色A码一区二区三区天美传媒| 国产一区二区电影| 无码aⅴ精品一区二区三区浪潮| 无码人妻精品一区二区三区久久| 日韩好片一区二区在线看| 久久er99热精品一区二区| 中日韩精品无码一区二区三区| 88国产精品视频一区二区三区| 亚洲一区二区三区在线网站| 波多野结衣AV一区二区三区中文 | 国产精品成人国产乱一区| 91福利国产在线观看一区二区| 亚洲国产精品自在线一区二区| 精品亚洲AV无码一区二区 | 国产日韩一区二区三免费高清|