ĐÁNH GIÁ HIỆU NĂNG GIẢI PHƯƠNG TRÌNH POISSON SỬ DỤNG OPENMP.

37 10 0
ĐÁNH GIÁ HIỆU NĂNG GIẢI PHƯƠNG TRÌNH POISSON SỬ DỤNG OPENMP.

Đ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

Trong lĩnh vực lý thuyết xác suất và thống kê, phân phối Poisson (phân phối PoaDông), một phân phối xác suất rời rạc, đặc trưng bởi việc mô tả số lần một sự kiện xảy ra trong một khoảng thời gian nhất định, đã từng được coi là công cụ quan trọng. Khác biệt quan trọng giữa Phân phối Poisson và các phân phối xác suất rời rạc khác nằm ở việc nó không chỉ xác định xác suất của một sự kiện trong một lần thử như phân phối Bernoulli hay số lần sự kiện xảy ra trong n lần thử như phân phối nhị thức, mà còn là trung bình số lần xảy ra thành công trong một khoảng thời gian cố định. Mặc dù Phân phối Poisson đã được ứng dụng trong nhiều lĩnh vực, từ khoảng cách, diện tích đến sự phân rã hạt nhân, tuy nhiên, với sự tiến triển nhanh chóng của công nghệ thông tin và lượng lớn thông tin được tạo ra hàng ngày, những thuật toán truyền thống dựa trên phương trình Poisson đã không thể đáp ứng hiệu quả yêu cầu của thời đại. Bài toán hiện nay là làm thế nào chúng ta có thể giải quyết vấn đề này, sử dụng phương trình Poisson với dữ liệu lớn và phân tán, để đáp ứng mục tiêu tối ưu hóa thời gian tìm kiếm trong môi trường ngập tràn thông tin hiện đại.

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN - BÁO CÁO HỌC PHẦN TÍNH TỐN HIÊU NĂNG CAO ĐỀ TÀI: ĐÁNH GIÁ HIỆU NĂNG GIẢI PHƯƠNG TRÌNH POISSON SỬ DỤNG OPENMP Giảng Viên Hướng Dẫn: TS Hà Mạnh Đào Sinh Viên: Nguyễn Thị Thanh - 2021600419 Đàm Lê Tuấn Vũ - 2021606931 Lê Văn Xuân - 2021605103 Ngành: KHMT Khóa: 16 Danh mục thuật ngữ LIS - Language Independent Specifications MIMD - Multiple Instruction Multiple Data OpenMP - Open Multi-Processing MỞ ĐẦU Đặt vấn đề Trong lĩnh vực lý thuyết xác suất thống kê, phân phối Poisson (phân phối Poa-Dông), phân phối xác suất rời rạc, đặc trưng việc mô tả số lần kiện xảy khoảng thời gian định, coi công cụ quan trọng Khác biệt quan trọng Phân phối Poisson phân phối xác suất rời rạc khác nằm việc khơng xác định xác suất kiện lần thử phân phối Bernoulli hay số lần kiện xảy n lần thử phân phối nhị thức, mà cịn trung bình số lần xảy thành công khoảng thời gian cố định Mặc dù Phân phối Poisson ứng dụng nhiều lĩnh vực, từ khoảng cách, diện tích đến phân rã hạt nhân, nhiên, với tiến triển nhanh chóng công nghệ thông tin lượng lớn thông tin tạo hàng ngày, thuật toán truyền thống dựa phương trình Poisson khơng thể đáp ứng hiệu yêu cầu thời đại Bài toán làm giải vấn đề này, sử dụng phương trình Poisson với liệu lớn phân tán, để đáp ứng mục tiêu tối ưu hóa thời gian tìm kiếm mơi trường ngập tràn thơng tin đại Mục đích Đánh giá hiệu giải phương trình Poisson sử dụng OpenMP Nội dung Có nội dung: - Nội dung 1: Nghiên cứu tốn phương trình Poisson Đánh giá ưu điểm, nhược điểm thuật toán - Nội dung 2: Cải tiến thuật toán sử dụng phương trình Poisson cách song song hóa thuật tốn để tối ưu thời gian tìm kiếm nguồn liệu lớn - Nội dung 3: Tiến hành thử nghiệm, đánh giá thuật toán cải tiến Phương pháp nghiên cứu Để thực nội dung nêu trên, nhóm chúng em sử dụng số phương pháp cho nội dung sau: - Nội dung 1: Sử dụng phương pháp phân tích, so sánh đánh giá thuật toán sử dụng phương trình Poisson - Nội dung 2: Sử dụng phương pháp phân tích khả song song hóa thuật tốn - Nội dung 3: Sử dụng phương pháp đối sánh để đánh giá kết thử nghiệm thuật toán cải tiến MỤC LỤC Chương 1: Phương trình Poisson Một vài nét phương trình Poisson Chương 2: Lập trình song song với OpenMP 2.1 Tổng quan lập trình song song với OpenMP .9 2.1.1 Giới thiệu 2.1.2 Lịch sử phát triển 2.1.3 Mục đích ứng dụng OpenMP 10 2.1.4 Ưu điểm OpenMP 10 2.2 Lập trình song song với OpenMP 10 2.2.1 Giới thiệu 10 2.2.2 Một số vấn đề hiệu 13 2.2.2.1 Năng lực tính tốn 13 2.2.2.2 Cân tải 15 2.2.2.3 Tình trạng bế tắc cách khắc phục 16 Chương 3: OpenMP tốn sử dụng phương trình Poisson 18 3.1 Yêu cầu đặt cho toán sử dụng phương trình Poisson 18 3.2 Xây dựng hàm tính xác suất với phương trình Poisson .18 3.2.1 Xây dựng chương trình cho toán 19 3.2.2 Xây dựng chương trình song song với vịng lặp Jacobi 23 3.2.3 Lựa chọn hàm OpenMP cho thuật toán song song 28 3.3 Chi phí thời gian 32 Chương 4: Kết thử nghiệm .33 Tài liệu tham khảo 37 Chương 1: Phương trình Poisson Một vài nét phương trình Poisson Phương trình Poisson tìm nhà tốn học Siméon-Denis Poisson (1781– 1840) xuất với lý thuyết xác suất ông, vào năm 1838 với tựa đề Recherches sur la probabilité des jugements en matières criminelles et matière civile ("Research on the Probability of Judgments in Criminal and Civil Matters") Theo đó, xem xét biến ngẫu nhiên N đó, đếm số lần xuất (rời rạc) khoảng thời gian cho trước Nếu giá trị kì vọng (hay số lần trung bình mà biến ngẫu nhiên xảy khoảng thời gian λ, xác suất để kiện xảy k lần (k số nguyên không âm, k = 0, 1, 2, ) tính theo cơng thức với  e số logarit tự nhiên (e = 2.71828 )  k số lần xuất kiện - mà xác suất cho công thức  k! giai thừa k  λ số thực dương, với giá trị kì vọng xuất kiện khoảng cho sẵn Ví dụ, kiện trung bình xảy lần phút, ta quan tâm số lần kiện xảy khoảng thời gian 10 phút, ta dùng mơ hình phân phối Poisson với λ = 10/4 = 2.5 Vì biến ngẫu nhiên rời rạc, công thức cho ta công thức hàm khối xác suất Phương trình Poisson đời gắn liền với trình Poisson Nó áp dụng cho nhiều tượng (có tính rời rạc) (nghĩa số lần xuất khoảng (thời gian, khơng gian) cho trước phải số nguyên 0, 1, 2, 3, ) với xác suất để kiện (hiện tượng) xảy khơng đổi suốt khoảng (thời gian, khơng gian) Các ví dụ sau mơ hình theo phân phối Poisson:  Số lượng xe ngang qua điểm đường khoảng thời gian cho trước  Số lần gõ bị sai đánh máy trang giấy  Số điện thoại trạm điện thoại phút  Số lần truy cập vào máy chủ web phút  Số lượng người lính bị chết ngựa đá năm trơng đội kị binh Phổ Ví dụ tiếng sách Ladislaus Josephovich Bortkiewicz (1868–1931)  Số lượng bóng đèn bị cháy khoảng thời gian xác định  Số lượng virut lây nhiễm lên tế bào cấu trúc tế bào  Số lần động vật bị chết xe cộ cán phải đơn vị độ dài đường  Số lần đột biến xảy đoạn DNA sau chịu lượng xạ  Số lượng thông đơn vị diện tích rừng hỗn hợp  Số lượng ngơi thể tích khơng gian vũ trụ Chương 2: Lập trình song song với OpenMP 2.1 Tổng quan lập trình song song với OpenMP 2.1.1 Giới thiệu OpenMP (Open Multi – Processing) giao diện lập trình ứng dụng Application Program Interface (API) sử dụng để điều khiển luồng (Thread) dựa cấu trúc chia sẻ nhớ chung OpenMP khơng phải ngơn ngữ lập trình mà hoạt động liên kết chặt chẽ với ngôn ngữ lập trình làm sở, vd: Fortran, C/C++ OpenMP cung cấp chế để định việc thực song song Các thành phần OpenMP gồm:  Các thị biên dịch (Compiler Directive)  Thư viện runtime (Runtime Library Rountines)  Các biến môi trường (Enviroment Variables) Được định nghĩa dựa nhóm phạm trù phần cứng phần mềm, OpenMP thư viện, giúp cho người lập trình đơn giản mềm dẻo để phát triển chương trình song song chạy máy PC hỗ trợ nhiều xử lý 2.1.2 Lịch sử phát triển - OpenMP ARB (Architecture Review Board) nhóm nhà phát triển máy tính phát hành với tên API - Phiên 1.0 dành cho Fortran công bố vào tháng 10 năm 1997 - Vào tháng 10 năm 1998 C/C ++ tích hợp thành chuẩn - Phiên 2.0 Fortran cơng bố vào năm 2000 đến năm 2002 C/C++ tung phiên 2.0 - Phiên Fortran C/C ++ công bố vào năm 2005 - Phiên công bố vào năm 2008 phiên tích hợp thêm nhiều tính 2.1.3 Mục đích ứng dụng OpenMP OpenMP đời với mục tiêu cung cấp chuẩn chung cho nhiều kiến trúc tảng phần cứng Nó thiết lập tập thị biên dịch hỗ trợ việc lập trình song song máy tính chia sẻ nhớ chung Một mức song song thường thực thi với ba đến bốn thị OpenMP đời giúp cho việc lập trình song song cách dễ dàng cung cấp khả song song hóa chương trình mà khơng dùng đến thư viện thơng điệp v.v Có thể sử dụng OpenMP để giải quết vấn đề giới hạn thời gian tốn dự báo thời tiết, để mơ vấn đề thực tế tốn mơ tai nạn xe hơi, giải toán khoa học u cầu khối lượng tính tốn lớn tốn mơ N-Body, dự báo thời tiết … 2.1.4 Ưu điểm OpenMP • Một chuẩn hồn chỉnh cơng nhận thực tế • Hiệu suất khả mở rộng tốt –Nếu chương trình thiết kế đúng! • Tính khả chuyển cao –Chương trình viết dịch nhiều chương trình dịch khác • Dễ sử dụng nhờ đơn giản số lượng thị • Cho phép song song hóa tăng dần chương trình 2.2 Lập trình song song với OpenMP 2.2.1 Giới thiệu OpenMP cung cấp mơ hình lập trình đa luồng cấp cao, xây dựng thư viện lập trình đa luồng hệ thống, vd: POSIX Threads, nhiều thứ 10

Ngày đăng: 12/01/2024, 20:03

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

  • Đang cập nhật ...

Tài liệu liên quan