Nghiên cứu về xử lý song song trong GIS và xây dựng ứng dụng song song hóa thuật toán định dòng chảy trên bề mặt

20 370 0
Nghiên cứu về xử lý song song trong GIS và xây dựng ứng dụng song song hóa thuật toán định dòng chảy trên bề mặt

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC NÔNG LÂM THÀNH PHỐ HỒ CHÍ MINH  TIỂU LUẬN TỐT NGHIỆP NGHIÊN CỨU VỀ XỬ LÝ SONG SONG TRONG GIS VÀ XÂY DỰNG ỨNG DỤNG SONG SONG HÓA THUẬT TOÁN ĐỊNH DÕNG CHẢY TRÊN BỀ MẶT Sinh viên thực hiện: TRẦN CÔNG HUẤN Ngành: HỆ THỐNG THÔNG TIN MÔI TRƢỜNG Niên khóa: 2010 – 2014 Thành phố Hồ Chí Minh, Tháng năm 2014 NGHIÊN CỨU VỀ XỬ LÝ SONG SONG TRONG GIS VÀ XÂY DỰNG ỨNG DỤNG SONG SONG HÓA THUẬT TOÁN ĐỊNH DÕNG CHẢY TRÊN BỀ MẶT Tác giả TRẦN CÔNG HUẤN Giáo viên hƣớng dẫn: ThS KHƢU MINH CẢNH Tháng năm 2014 [I] LỜI CẢM ƠN Trong trình thực đề tài này, nhận đƣợc hƣớng dẫn giúp đỡ thầy hƣớng dẫn, quý thầy cô thuộc khoa môi trƣờng tài nguyên nói chung môn thông tin địa lý ứng dụng nói riêng thuộc trƣờng đại học Nông Lâm Thành phố Hồ Chí Minh Qua xin gửi lời cảm ơn chân thành tới: - ThS.Khƣu Minh Cảnh, công tác Trung tâm Ứng dụng Hệ thống Thông tin Địa lý – Sở Khoa học Công nghệ TP.HCM, ngƣời hƣớng dẫn trực tiếp trình làm đề tài - Thầy Phó giáo sƣ, tiến sĩ Nguyễn Kim Lợi, chủ nhiệm Bộ môn Thông tin địa lý ứng dụng - Trƣờng Đại học Nông lâm Tp HCM - KS Lê Hoàng Tú Kĩ sƣ GIS - Nghiên cứu viên, Trung tâm Nghiên cứu Biến đổi Khí hậu, Trƣờng Đại học Nông Lâm TP.HCM - KS Nguyễn Duy Liêm Kĩ sƣ GIS - Giảng viên Khoa Môi trƣờng – Tài nguyên, Trƣờng Đại học Nông Lâm TP.HCM - Đặc biệt xin cảm ơn đến ba mẹ sinh thành, nuôi nấng giáo dục đến ngày hôm Gia đình bạn bè động viên giúp đỡ, tạo điều kiện thuận lợi cho trình học tập nhƣ thời gian thực đề tài, đồng thời cho gửi lời cảm ơn sâu sắc tới Sở Khoa Học Công Nghệ Thành Phố Hồ Chí tạo điều kiện cho thực tập, giúp đỡ, cung cấp số liệu giúp thực tốt đề tài TP.HCM, ngày tháng năm 2014 Trần Công Huấn Bộ môn Tài nguyên GIS Khoa Môi trƣờng & Tài nguyên Trƣờng Đại học Nông Lâm Tp.Hồ Chí Minh [II] TÓM TẮT Đề tài nghiên cứu “Nghiên cứu xử lý song song GIS xây dựng ứng dụng song song hóa thuật toán định dòng chảy bề mặt” đƣợc thực hoàn thành Phòng kỹ thuật – Trung tâm ứng dụng Hệ Thống Thông Tin Địa Lý – Sở Khoa học Công nghệ Thành phố Hồ Chí Minh Thời gian thực từ 2/3/2014 đến 31/5/2014 Gồm nội dung nhƣ sau: - Tìm hiểu mô hình, công nghệ, họ máy tính song song - Tìm hiểu thuật toán song song, cấu trúc thuật toán song song - Tìm hiểu thuật toán Floyd – Warshall thuật toán tìm tích lũy dòng chảy - Tìm hiểu công cụ tìm dòng ArcGis - Tìm hiểu thuật toán xác định hƣớng dòng chảy theo D8 cài đặt ngôn ngữ C sharp - Tìm hiểu dạng mô hình liệu DEM - Tìm hiểu gói phát triển ArcEngine ArcGis Visual studio Trên xây dựng công cụ hỗ trợ hiển thị, cập nhật, phân tích liệu chuyển dạng liệu Các kết thu đƣợc: - Xây dựng đƣợc công cụ xác định hƣớng dòng chảy (theo D8) tính tích lũy dòng chảy bề mặt - Ứng dụng khai thác tốc độ tối đa máy tính cho kết nhanh nhằm tiết kiệm thời gian cho ngƣời sử dụng - Xây dựng công cụ chuyển liệu dạng file text sang dạng raster hiển thị liệu raster lên form ứng dụng [III] MỤC LỤC LỜI CẢM ƠN II TÓM TẮT III MỤC LỤC IV DANH MỤC TỪ VIẾT TẮT VII DANH MỤC BẢNG BIỂU VIII DANH MỤC HÌNH ẢNH IX PHẦN MỞ ĐẦU 1.1 Tính cấp thiết đề tài 1.2 Mục tiêu nghiên cứu đề tài 1.3 Đối tƣợng phạm vi nghiên cứu 1.3.1 Đối tƣợng nghiên cứu 1.3.2 Phạm vi nghiên cứu PHẦN TỔNG QUAN VỀ THUẬT TOÁN VÀ TÍNH TOÁN SONG SONG 2.1 Đại cƣơng tính toán song song 2.1.1 Một số khái niệm thuật ngữ 2.1.2 Các mức độ song song (Level of parallelism) .4 2.1.3 Phân loại kiến trúc song song .6 2.1.4 Mô hình SIMD (PRAM) .8 2.1.5 Dùng công nghệ EREW mô kiến trúc CRCW, CREW 2.1.6 Họ máy MIND .10 2.1.6.1 Hệ đa xử lý với nhớ phân tán (Multi processor system with Distributed Memory) 11 [IV] 2.1.6.2 Hệ đa xử lý dùng chung nhớ (Multi processor system with Shared Memory) 12 2.1.6.3 Hệ đa xử lý với nhớ dùng chung phân tán (Multi processor system with distributed shared memory) 13 2.1.7 2.2 Ngôn ngữ mô tả thuật toán song song 13 Các mô hình tính toán song song minh họa .15 2.2.1 Mô hình nhị phân (Bimary Tree Model) 15 2.2.2 Mô hình mạng .19 2.2.3 Thuật toán k-cube-Min 23 2.2.4 Thuật toán song song tính tích ma trận 24 2.2.5 Đánh giá hiệu thuật toán song song 26 2.3 Tính toán song song NET minh họa 34 2.3.1 Task 36 2.3.2 Vòng lặp song song (Parallel Loops) 37 2.3.3 Parallel LINQ 38 2.4 Thuật toán Floyd – Warshall toán tìm đƣờng ngắn cặp đỉnh đồ thị .38 PHẦN DỮ LIỆU, NỘI DUNG VÀ PHƢƠNG PHÁP NGHIÊN CỨU .41 3.1 Dữ liệu .41 3.1.1 Mô hình liệu DEM 41 3.1.2 File text độ cao 43 3.2 Thuật toán định dòng chảy bề mặt địa hình 44 3.2.1 Giới thiệu thuật toán phân tích dòng chảy D8 44 3.2.1.1 Xác định hƣớng dòng chảy 44 3.2.1.2 Tính toán tích lũy dòng chảy 45 3.2.2 Giới thiệu công cụ tìm dòng ArcGIS .46 [V] 3.3 3.2.2.1 ArcSWAT .46 3.2.2.2 Bộ công cụ tìm dòng chảy tích lũy ArcGIS .49 Cài đặt thuật toán D8 (tuần tự) 52 3.3.1 Đọc liệu (đọc file text độ cao) .52 3.3.2 Xác định hƣớng dòng chảy theo D8 53 3.3.3 Tính toán tích lũy dòng chảy (D8) 56 3.4 Tại phải cài đặt thuật toán song song .59 3.5 Cài đặt thuật toán song song D8 63 3.5.1 Đọc liệu 64 3.5.2 Xác định song song hƣớng dòng chảy theo D8 65 3.5.3 Tính toán song song tích lũy dòng chảy theo D8 .67 PHẦN CÁC KẾT QUẢ NGHIÊN CỨU 74 4.1 Giới thiệu liệu thử nghiệm 74 4.2 Nhóm công cụ xây dựng chƣơng trình 75 4.3 Các kết thực đƣợc ứng dụng phân tích hƣớng dòng chảy76 PHẦN KẾT LUẬN VÀ KIẾN NGHỊ .87 5.1 Kết luận 87 5.2 Kiến nghị 87 PHẦN TÀI LIỆU THAM KHẢO .88 PHỤ LỤC .90 [VI] DANH MỤC TỪ VIẾT TẮT GIS: Geographic Information System (Hệ thống thông tin địa lý) ESRI: Economic and Social Research Institute (Viện nghiên cứu hệ thống môi trƣờng) TP.HCM: Thành phố Hồ Chí Minh DEM: Digital Elevation Models (Mô hình độ cao số) CPU: Central Processing Uint (Bộ xử lý trung tâm) Thuật toán D8 (Thuật toán xác định hƣớng dòng chảy đơn) [VII] DANH MỤC BẢNG BIỂU Bảng 2.2.2: so sánh số đặc trƣng k- cute với đồ thị đầy đủ .21 Bảng 2.2.5: So sánh thời gian thuật toán Boolean-AND, Boolean-AND – 1, Boolean-AND - 26 Bảng 3.2.1.1: Hƣớng dòng chảy tính lƣu vực 45 Bảng 3.2.1.2: Sự tích lũy dòng chảy lƣu vực 46 Bảng 3.4: Thống kê thời gian phép toán song song 62 [VIII] DANH MỤC HÌNH ẢNH Hình 1.1: DEM raster Hình 1.2: Cấp độ xám DEM .1 Hình 2.1.2 Các mức độ song song Hình 2.1.3 Phân loại kiến trúc song song .7 Hình 2.1.6.1: Hệ đa xử lý với nhớ phân tán .11 Hình 2.1.6.2: Hệ đa xử lý dùng chung nhớ 12 Hình 2.1.6.3: Hệ đa xử lý với nhớ dùng chung phân tích 13 Hình 2.2.1.1: Mô hình nhị phân cộng số 16 Hình 2.2.1.2: Cây nhị phân thực tính toán 18 Hình 2.2.3: Tính tổng với xử lý .18 Hình 2.2.2.1: Mạng 3-cube 20 Hình 2.2.2.2: Phân bổ đầu vào 22 Hình 2.3: Mô tả thuật toán song song NET Framework 4.0 .35 Hình 3.1.1.1 Quy trình chuyển đổi DEM .41 Hình 3.1.1.2: Những điểm lỗi có DEM 42 Hình 3.1.1.3: Hàm fill ArcToolbox 42 Hình 3.1.2.1: Công cụ Raster to Ascii ArcToolbox .43 Hình 3.1.2.2: Text file dùng để xử lý 44 Hình 3.2.2.2.1: Sơ đồ tạo DEM từ đồ địa hình ArcGis 49 Hình 3.2.2.2.2: Sơ đồ tính hƣớng, tích lũy tìm dòng ArcGis 50 Hình 3.2.2.2.3 Sơ đồ tìm liên kết dòng cửa xả ArcGis 51 Hình 3.4.1: Hiệu suất CPU thực phép toán 62 Hình 3.4.2: Hiệu suất CPU thực phép toán song 63 Hình 3.5.1: Chia liệu thành mảng 64 Hình 3.5.1: Form chuyển liệu sang dạng raster 72 Hình 4.1: Bộ liệu thử nghiệm phần mềm phân tích dòng chảy 74 Hình 4.2 :Form phần mềm phân tích song song dòng chảy theo D8 75 Hình 4.3.1 Mở file text độ cao .76 [IX] Hình 4.3.2: Chọn file text 77 Hình 4.3.3: File text hiển thị textbox .78 Hình 4.3.4: file text đƣợc tạo đĩa D:\ 78 Hình 4.3.5: Chọn nút bắt đầu tính thuật toán D8 79 Hình 4.3.5: Chọn nút Lƣu file text kết 79 Hình 4.3.6: Chọn tên đƣờng dẫn lƣu 80 Hình 4.3.7: Chọn nút tính tích lũy 80 Hình 4.3.8: Kết tích lũy in Textbox 81 Hình 4.3.9: Chọn nút chuyển file text sang dạng raster 81 Hình 4.3.10: Sử dụng chức chuyển sang dạng raster 82 Hình 4.3.11: Chọn nút hiển thị raster lên Form 82 Hình 4.3.12: Chọn file raster hiển thị lên form .83 Hình PL1: Hình minh họa việc phân bố r=5 đồ thị vào p=3 xử lý 90 Hình PL2: Nhập điểm nguồn điểm đích 91 Hình PL3 : Tìm khoảng cách ngắn tập điểm biên đồ thị chứa điểm nguồn đến đồ thị chứa điểm đích .91 Hình PL4 : Xác định đƣợc đƣờng ngắn kết thúc thuật toán 92 [IX] PHẦN MỞ ĐẦU 1.1 Tính cấp thiết đề tài Mô hình độ cao số (viết tắt DEM) nguồn thông tin quan trọng ứng dụng GIS Nó đƣợc sử dụng rộng rãi cho mô hình thủy văn bề mặt bao gồm phân định tự động khu vực lƣu vực, mô hình xói mòn khai thác hệ thống thoát nƣớc tự động Tất tính toán có liên quan đến việc xác định hƣớng dòng chảy, sau tính toán dòng chảy tích lũy Hơn tính toán tích lũy dòng chảy đặc biệt quan trọng để điều khiển lƣợng nƣớc, lƣợng carbon, chất dinh dƣỡng trầm tích dòng chảy bề mặt địa hình lƣu vực Hình 1.1: DEM raster Hình 1.2: Cấp độ xám DEM Nghiên cứu khoa học địa lý ngày phát triển với liệu ngày lớn từ vệ tinh máy bay LIDAR cho kết tốt DEM có lợi ta kết xác phân chia ranh giới khu vực cụ thể dùng để mô Mặt khác phép toán theo không kịp, nhà lập trình cần tính toán thời gian tƣơng thích với vòng lặp phân tích cụ thể bƣớc tính toán, giải pháp đƣợc đặt cần sử dụng thuật toán song song để tối ƣu khả tính toán đƣa kết xác [1] Với lý nêu trên, đề xuất phƣơng pháp tính toán song song tích lũy dòng chảy cho hệ thống thoát nƣớc đƣợc xây dựng từ DEM lớn cho đề tài Đề tài: “Nghiên cứu xử lý song song GIS xây dựng ứng dụng song song hóa thuật toán định dòng chảy bề mặt” 1.2 Mục tiêu nghiên cứu đề tài Thiết kế xây dựng ứng dụng sử dụng thuật toán để tìm dòng chảy lƣu vực, ứng dụng đƣợc lập trình xử lý song song ngôn ngữ C# môi trƣờng Visual Studio Mục tiêu cụ thể đề tài nhƣ sau nhƣ sau: - Tìm hiểu xử lý song song, thuật ngữ tính toán song song - Lập trình xử lý song song ngôn ngữ C# môi trƣờng Visual Studio - Tìm hiểu thuật toán phân tích dòng chảy - Cài đặt thuật toán tính toán song song phân tích dòng chảy địa hình 1.3 Đối tƣợng phạm vi nghiên cứu 1.3.1 Đối tƣợng nghiên cứu Đối tƣợng nghiên cứu địa hình, độ dốc, dòng chảy (mƣa, lũ, vỡ đê đập tạo thành), code xử lý song song, thuật toán 1.3.2 Phạm vi nghiên cứu - Toán học bao gồm toán rời rạc, lý thuyết đồ thị toán hình học Cụ thể là:  Các lý thuyết khái niệm đồ thị số khái niệm đại số hƣớng dòng chảy  Cơ sở thống kê phân loại liệu  Thống kê phân tích liệu tƣơng quan  Khảo sát thuật toán dòng chảy đơn đa (D8, D16,…) - Lập trình bao gồm: Coding C shapre, xử lý song song D8, sử dụng thƣ viện tính toán NET Framwork 4.0 [2] PHẦN TỔNG QUAN VỀ THUẬT TOÁN VÀ TÍNH TOÁN SONG SONG 2.1 Đại cƣơng tính toán song song 2.1.1 Một số khái niệm thuật ngữ - Tính toán song song hay xử lý song song (Parallel Computing/Parallel Processing): trình xử lý thông tin nhấn mạn việc nhiều đơn vị liệu đƣợc xử lý đồng thời hay nhiều xử lý để giải toán - Siêu máy tính: máy tính đa thông thƣờng nhƣng có tốc độ tính toán vô lớn Tất siêu máy tính máy tính song song Chúng chia làm hai loại Loại thứ – máy tính song song dựa vi xử lý – đƣợc thiết kết với nhiều vi xử lý có tốc độ xử lý vừa phải Loại thứ hai – siêu máy tính truyền thống (supercomputer) – vi xử lý nhƣng tốc độ xử lý lại cực cao - Song song liệu (data parallelism): chế sử dụng nhiều đơn vị xử lý thực thao tác nhiều đơn vị liệu - Song song điều khiển (control parallelism): chế nhiều thao tác khác tác động lên nhiều đơn vị liệu khác cách đồng thời - Dây chuyền (Pipelining): chết chia công việc thành nhiều chặng nối tiếp nhau, chặng đƣợc thực phận khác Đầu phận đầu vào phận - Tăng tốc (speedup): Tăng tốc thuật toán song song tỷ số thời gian thực tình xấu thuật toán tốt thời gian thực thiện công việc thuật toán song song ă [3] Liên quan đến tăng tốc, 1967 Amdahl nêu định lý sau đây: Định lý Amdahl Gọi tỷ lệ thao tác tuần tử tổng số thao tác phải làm, Tăng tốc tối đa máy tính song song với vi xử lý nhỏ - Hiệu (Efficiency) thuật toán song song đƣợc tính Tăng tốc / Số xử lý tham gia tính toán - Giá (cost) trình tính toán PRAM Giá = thời gian tính Số lƣợng xử lý tham gia tính, Trong thời gian tính số phép toán (với giả thiết việc thực phép toán tiêu tốn đơn vị thời gian) 2.1.2 Các mức độ song song (Level of parallelism) Việc thực song song hóa chia thành nhiều mức độ khác Chẳng hạn, có 10 công việc (jobs) khác nội dung đôi độc lập, ta giao việc thực 10 việc cho 10 máy khác thực Đây mức độ song song cao công việc thực độc lập Thông thƣờng ngƣời ta gọi mức độ song song mức chương tr nh song song (program level) Trong trình thực công việc, để tẳng hiệu thực chƣơng trình, ta lại tiếp tục song song hóa Chia việc thực chƣơng trình thành công đoạn (tasks) Các công đoạn lại thực cách song song tổ hợp kết chúng cho ta kết cần tìm Mỗi công đoạn nhƣ đƣợc thực chƣơng trình chƣơng trình đƣợc thực song song Ta gọi mức độ song song mức song song chương tr nh (subprogram level) Trong chƣơng trình nhƣ chƣơng trình lại có hang loạt câu lệnh (statement) cần thực Chúng ta lại nghĩ đến thực song song thao tác này, mức ộ song song theo thao t c Thông thƣờng thao tác lại bao gồm hàng loạt thao tác nhỏ (micro-operation) Chẳng hạn, xét thao tác cộng nội dung hai biến A B cất vào C (C = A+B) Thao tác thực nhƣ sau: [4] Load A to accumulator Add B to accumulator Store the content of the accumulator to variable C Nếu thao tác nhỏ thực song song, mức ộ song song thao t c nhỏ (micro-operation lever parallelism) Có thể hình dung mức độ song song hình 2.1.2 sau đây… Sequential Processing Program Level Parallelism Subprogram Level Parallelism Statement Level Parallelism Operational Level Parallelism Micro Operational Level Parallelism Hình 2.1.2 Các mức độ song song Mức độ song song chƣơng trình chƣơng trình dễ hiểu không cần giải thích thêm Để giải thích mức độ song song câu lệnh, ta xét ví dụ sau Ví dụ: Xét thuận toán: For i:=1 to n x[i]:= x[i]+1; Thời gian thực tuần tự: O(n) Ta thực công việc cách song song Giao công việc cho n xử lý P1, P2, … Pn Bộ xử lý Pi thực x[i]:= x[i]+1 Do cách xử lý thực đồng thời nên thời gian thực song song: O(1) Thuật toán mô tả nhƣ sau For i:=1 to n in parallel x[i]:= x[i]+1 end Parallel [5] Mức độ song song mức độ song song câu lệnh Xét ví dụ khác: S = 0; for i = to n s = s + x[i]; (Thuật toán thực việc tính tổng s = x[1]+ x[2]+ … + x[n]) Dễ thấy thuật toán song song hoá tƣơng tự nhƣ ví dụ trƣớc Ta có nhiều cách song song hoá thuật toán để thu đƣợc thuật toán có thời gian O(log n) Mức độ song song thao tác đƣợc thực tƣơng tự Chẳng hạn, xét câu lệnh: Y = A(i) + B(j) + C(k) Trong câu lệnh ta phải tính A(i), B(j), C(k) sau cộng kết để cất giữ vào Y Việc tính A(i), B(j), C(k) thực song song ba xử lý, trình đƣợc gọi mức độ song song thao tác 2.1.3 Phân loại kiến trúc song song Một phân loại hay đƣợc nhắc tới Flynn – 1972 Michael Flynn phân kiến trúc máy tính thành bốn loại dựa tƣơng tác với lệnh (instruction) liệu (data): [6] SISD PHÂN LOẠI CÁC KIẾN TRÚC SONG SONG MIMD MultiProcessor MultiComputer Multi - MultiProcessor Data flow machine SIMD Array Processor MISD Pipelined vector Processor Systolic Array MIMD-SIMD machine HYBRID (Kiến trúc lại) MIMD-MISD machine Công dụng đặc biệt Artificial neural network Fuzzy logic processor Hình 2.1.3 Phân loại kiến trúc song song - SISD (Single Instruction stream, Single Data stream) Đây kiến trúc Von Neuman, thời điểm lệnh đƣợc thực - MIMD (Multiple Instruction stream, Multiple Data stream) Cho phép nhiều lệnh khác đồng thời xử lý nhiều liệu khác thời điểm - SIMD (Single Instruction stream, Multiple Data stream) – gọi kiến trúc xử lý mảng Cho phép lệnh đƣợc thực đồng thời liệu khác Đại diện cho mô hình máy Connection Machine CM-200 IBM - MISD (Multiple Instruction stream, Single Data stream) Kiến trúc cho phép vài lệnh thao tác liệu - HYBRID kiến trúc lai, có đặc điểm ba loại Loại công dụng đặc biệt: có sử dụng tiến mạng nơron lý thuyết mờ thiết kế [7] 2.1.4 Mô hình SIMD (PRAM) Mô hình kiến trúc đƣợc gọi PRAM (Parallel Random Access Machine – Máy tính song song truy cập nhớ ngẫu nhiên) Trong mô hình này, N xử lý chia sẻ nhớ chung Mô hình PRAM chia thành lớp nhỏ: - EREW (Exclusive Read, Exclusive Write): độc quyền đọc, độc quyền ghi Không cho phép xử lý đọc ghi đồng thời vào ô nhớ - CREW (Concurrent Read Exclusive Write): đọc đồng thời, ghi độc quyền Các bô xử lý đọc đồng thời, nhƣng không đƣợc phép ghi đồng thời vào ô nhớ - ERCW (Exclusive Read Concurent Write): đọc độc quyền, ghi đồng thời Các xử lý ghi đồng thời, nhƣng không đƣợc phép đọc đồng thời từ ô nhớ - CRCW (Concurent Read Concurent Write): đọc/ghi đồng thời Các bô xử lý đồng thời đọc ghi vào ô nhớ Việc cho phép nhiều xử lý đồng thời đọc ô nhớ không khó Nhƣng thiết kế cấu trúc ghi đồng thời phức tạp Khi có nhiều bô xử lý đồng thời thực việc ghi vào vị trí, cần giải xung độ nhƣ Có cách giải bản: - ECR (Equality Conflict Resolution): Chỉ thực ghi tất xử lý ghi giá trị nhƣ nhau; - PCR (Priority Conflict Resolution): Trong cách giải này, xử lý có số ƣu tiên, giá trị mà xử lý có số thứ tự ƣu tiên cao đƣợc ghi - ACR (Arbitrary Conflict Resolution): Trong cách giải này, có nhiều xử lý ghi vào vị trí, cách ngẫu nhiên có số chúng thực đƣợc việc ghi Sức mạnh máy tính tăng dần theo thứ tự Có nghĩa EREW yếu nhất, đến CREW… Thật vậy, xét toán tìm kiếm sau “Một tệp có n khoản mục ược lưu trữ thứ tự Cần t m mục x tệp ( ể thực xóa, sửa…)” [8] Với máy tính tuần tự, việc tốn thời gian cỡ Trên máy tính EREW với xử lý, việc đƣợc thực theo bƣớc sau: Quảng bá giá trị x cho xử lý Tệp đƣợc chia làm phần phân cho xử lý tìm kiếm phần Gọi xử lý Trong thao tác quảng bá giá trị x cho xử lý thực nhƣ sau:  đọc x báo cho   báo cho báo cho Rõ ràng thao tác tốn Trên đơn vị thời gian phần, phần có mục, xử lý tiến hành việc tìm kiếm nhƣ máy tính Do đó, thời gian thực Tổng cộng độ phức tạp tính toán là: Trong đó, toán sử dụng máy tính CREW rõ ràng ta thực bƣớc quảng bá x cho xử lý chúng lúc đọc x từ ô nhớ Do độ phức tạp tính toán giảm xuống còn: Mặt khác, x xuất nhiều lần tệp, có nhiều xử lý muốn ghi vào vùng chứa kết Điều thực hiển đƣợc mô hình CRCW Mặt dù yếu nhất, nhƣng công nghệ chế tạo phổ biến lại máy EREW, máy CRCW, CREW đắt khó chế tạo Do ta phải nghĩ tới việc dùng EREW để mô kiến trúc lại nhƣ trình bày dƣới 2.1.5 Dùng công nghệ EREW mô kiến trúc CRCW, CREW Mô việc cho phép Đọc đồng thời: Tính Đọc ồng thời đƣợc mô EREW cách sử dụng thao tác quảng bá giá trị cần đọc cho xử lý Ở thấy thao tác đòi hỏi thời gian thực [9] [...]... cho hệ thống thoát nƣớc đƣợc xây dựng từ một DEM lớn cho đề tài của mình Đề tài: Nghiên cứu về xử lý song song trong GIS và xây dựng ứng dụng song song hóa thuật toán định dòng chảy trên bề mặt 1.2 Mục tiêu nghiên cứu của đề tài Thiết kế và xây dựng một ứng dụng sử dụng thuật toán để tìm dòng chảy trên lƣu vực, ứng dụng này đƣợc lập trình xử lý song song bằng ngôn ngữ C# trong môi trƣờng Visual Studio... - Tìm hiểu về xử lý song song, các thuật ngữ trong tính toán song song - Lập trình xử lý song song bằng ngôn ngữ C# trong môi trƣờng Visual Studio - Tìm hiểu về các thuật toán phân tích dòng chảy - Cài đặt một thuật toán tính toán song song về phân tích dòng chảy trong địa hình 1.3 Đối tƣợng và phạm vi nghiên cứu 1.3.1 Đối tƣợng nghiên cứu Đối tƣợng nghiên cứu là địa hình, độ dốc, dòng chảy (mƣa, lũ,... xử lý song song D8, sử dụng thƣ viện tính toán NET Framwork 4.0 [2] PHẦN 2 TỔNG QUAN VỀ THUẬT TOÁN VÀ TÍNH TOÁN SONG SONG 2.1 Đại cƣơng về tính toán song song 2.1.1 Một số khái niệm và thuật ngữ - Tính toán song song hay xử lý song song (Parallel Computing/Parallel Processing): là quá trình xử lý thông tin trong đó nhấn mạn việc nhiều đơn vị dữ liệu đƣợc xử lý đồng thời bởi một hay nhiều bộ xử lý để... xử lý song song, thuật toán 1.3.2 Phạm vi nghiên cứu - Toán học bao gồm toán rời rạc, lý thuyết đồ thị và toán hình học Cụ thể là:  Các lý thuyết khái niệm đồ thị và một số khái niệm cơ bản của đại số về hƣớng dòng chảy  Cơ sở thống kê phân loại dữ liệu  Thống kê phân tích dữ liệu tƣơng quan  Khảo sát các thuật toán dòng chảy đơn và đa (D8, D16,…) - Lập trình bao gồm: Coding trên C shapre, xử lý. .. những tính toán này có liên quan đến việc xác định hƣớng dòng chảy, sau đó tính toán dòng chảy tích lũy Hơn nữa tính toán tích lũy dòng chảy là đặc biệt quan trọng để điều khiển lƣợng nƣớc, lƣợng carbon, chất dinh dƣỡng và trầm tích dòng chảy trên bề mặt địa hình trong lƣu vực Hình 1.1: DEM là một raster Hình 1.2: Cấp độ xám của DEM Nghiên cứu khoa học địa lý ngày càng phát triển với các bộ dữ liệu ngày... là đầu vào của bộ phận tiếp theo - Tăng tốc (speedup): Tăng tốc của thuật toán song song là tỷ số giữa thời gian thực hiện trong tình huống xấu nhất của thuật toán tuần tự tốt nhất và thời gian thực thiện cùng công việc đó của thuật toán song song ă [3] Liên quan đến tăng tốc, năng 1967 Amdahl nêu ra định lý sau đây: Định lý Amdahl Gọi là tỷ lệ thao tác tuần tử trên tổng số thao tác phải làm, trong. .. mô phỏng Mặt khác các phép toán tuần tự có thể theo không kịp, hơn thế các nhà lập trình cần tính toán thời gian tƣơng thích với vòng lặp phân tích cụ thể từng bƣớc tính toán, giải pháp đƣợc đặt ra là cần sử dụng thuật toán song song để tối ƣu khả năng tính toán và đƣa ra những kết quả chính xác nhất [1] Với những lý do nêu trên, tôi đã đề xuất phƣơng pháp tính toán song song sự tích lũy dòng chảy cho... tốc tối đa của một máy tính song song với bộ vi xử lý luôn nhỏ hơn - Hiệu quả (Efficiency) của thuật toán song song đƣợc tính bằng Tăng tốc / Số bộ xử lý tham gia tính toán - Giá (cost) của một quá trình tính toán trên PRAM Giá = thời gian tính Số lƣợng bộ xử lý tham gia tính, Trong đó thời gian tính chính là số phép toán cơ bản (với giả thiết rằng việc thực hiện một phép toán cơ bản tiêu tốn một đơn... tƣơng tự nhƣ trong ví dụ trƣớc Ta có nhiều cách song song hoá thuật toán này để thu đƣợc thuật toán có thời gian O(log n) Mức độ song song thao tác cũng đƣợc thực hiện tƣơng tự Chẳng hạn, xét câu lệnh: Y = A(i) + B(j) + C(k) Trong câu lệnh này ta phải tính A(i), B(j), C(k) và sau đó cộng các kết quả để cất giữ vào Y Việc tính A(i), B(j), C(k) có thể thực hiện song song trên ba bộ xử lý, và quá trình... việc này tốn thời gian cỡ Trên máy tính EREW với bộ xử lý, việc này đƣợc thực hiện theo các bƣớc sau: 1 Quảng bá giá trị x cho các bộ xử lý 2 Tệp đƣợc chia làm phần và phân cho mỗi bộ xử lý tìm kiếm trên một phần Gọi các bộ xử lý là Trong thao tác quảng bá giá trị x cho các bộ xử lý thực hiện nhƣ sau:  đọc x và báo cho  và  báo cho và báo cho Rõ ràng là thao tác này tốn Trên đơn vị thời gian phần,

Ngày đăng: 22/11/2016, 11:02

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan