1. Trang chủ
  2. » Luận Văn - Báo Cáo

Lập trình song song trên nền đơn vị xử lý đồ họa và ứng dụng

4 337 3

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 202,99 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lập trình song song trên nền đơn vị xử lý đồ họa và ứng dụng Hoàng Đình Thắng Trường Đại học Công nghệ Luận văn ThS.. Tổng quan về đơn vị xử lý đồ họa GPU: cung cấp cái nhìn tổng quan v

Trang 1

Lập trình song song trên nền đơn vị xử lý đồ

họa và ứng dụng Hoàng Đình Thắng

Trường Đại học Công nghệ Luận văn ThS Chuyên ngành: Công nghệ thông tin; Mã số: 60 48 05

Người hướng dẫn: TS Nguyễn Trí Thành

Năm bảo vệ: 2010

Abstract: Giới thiệu nêu lên mục đích của lập trình song song, những khó khăn của lập trình

song song truyền thống, dẫn đến yêu cầu một mô hình lập trình song song kiểu mới linh hoạt hơn Tổng quan về đơn vị xử lý đồ họa (GPU): cung cấp cái nhìn tổng quan về tính toán song song đa dụng trên đơn vị xử lý đồ họa; mô tả sự khác nhau cơ bản giữa đơn vị xử lý trung tâm (CPU) và đơn vị xử lý đồ họa (GPU); giải thích các nguyên tắc cơ bản của tính toán song song

đa dụng trên đơn vị xử lý đồ họa và giao diện lập trình ứng dụng (API) trên GPU Mô hình trường ngẫu nhiên có điều kiện (CRF): trình bày mô hình lý thuyết CRF, phương pháp ước lượng tham số của mô hình CRF và một số ứng dụng của CRF Ứng dụng GPU song song hóa từng phần công cụ CRF++, giới thiệu công cụ CRF++, cách thức mà tác giả của CRF++ thực hiện, từ đó đề xuất chiến lược song song CRF++ bằng GPU thông qua các thư viện lập trình cho GPU như CUDA, Thrust Phần cuối của chương sẽ đưa ra kết quả thực nghiệm cũng như một số đánh giá, nhận xét

Keywords: Đồ họa; Công nghệ thông tin; Hệ thống thông tin; Lập trình song song

Content:

MỞ ĐẦU

Tính toán song song hay xử lý song song là quá trình xử lý thông tin trong đó nhấn mạnh 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ý để giải quyết một bài toán Trái ngược với xử lý nối tiếp, đòi hỏi phải xử lý các công việc theo thứ tự tuần tự

Có hai kiểu song song đó là:

 Song song về dữ liệu (data parallelism): là cơ chế sử dụng nhiều đơn vị xử lý thực hiện cùng một thao tác trên nhiều đơn vị dữ liệu

 Song song lệnh (control parallelism): là cơ chế trong đó nhiều thao tác khác nhau tác động lên nhiều đơn vị dữ liệu khác nhau một cách đồng thời

Trang 2

Chíp đồ họa, với hàng chục lõi được sử dụng để tạo ra hình ảnh thực trên màn hình máy tính, rất phù hợp cho các nhiệm vụ xử lý song song Trong khi đó thì bộ xử lý, với những lõi mạnh hơn nhưng số lượng ít hơn (giống như Core i7) lại phù hợp hơn cho các ứng dụng xử lý nối tiếp

Trong một báo cáo các nhà nghiên cứu của Intel cho biết, trung bình, NVIDIA GeForce GTX 280 (tung ra hồi tháng 6/2008) nhanh hơn gấp 2,5 lần so với bộ xử lý (BXL) Intel Core i7

960 3,2GHz, và nhanh hơn trên 14 lần trong những hoàn cảnh nhất định

Xử lý song song là hướng nghiên cứu quan trọng, nó giúp cho việc thực hiện các bài toán được nhanh hơn rất nhiều so với xử lý tuần tự Luận văn sẽ hướng tới tìm hiểu bài toán xử lý song song trên nền đơn vị xử lý đồ họa (Graphic Processing Unit-GPU), một trong những hướng

xử lý song song đang được phát triển mạnh trong thời gian gần đây

Đồng thời luận văn này cũng tìm hiểu về mô hình trường ngẫu nhiên có điều kiện (Conditional Random Fields-CRFs), một mô hình được ứng dụng thành công trong rất nhiều lĩnh vực như tin-sinh học, xử lý ngôn ngữ tự nhiên và khai phá text/web

CRF++ là một công cụ được xây dựng cho mô hình CRF, áp dụng cho các tác vụ xử lý ngôn ngữ tự nhiên như: nhận dạng thực thể tên (Named Entity Recognition), trích chọn thông tin (Information Extraction) và Text Chunking CRF++ là một phần mềm nguồn mở, được xây dựng bằng ngôn ngữ C++

Luận văn này sẽ nghiên cứu cách mà tác giả của CRF++ thực hiện mô hình CRF lý thuyết

Từ đó đề xuất cách song song một số phần của CRF++ sử dụng mô hình song song trên đơn vị

xử lý đồ họa

TÀI LIỆU THAM KHẢO Tiếng Việt

1 Hà Quang Thụy, Phan Xuân Hiếu, Đoàn Sơn, Nguyễn Trí Thành, Nguyễn Thu Trang,

Nguyễn Cẩm Tú (2009), Giáo trình khai phá dữ liệu web, Nhà xuất bản Giáo dục Việt Nam

tr 260-267

Tiếng Anh

2 NVIDIA Corporation (2010), NVIDIA CUDA C Programming Guide Version 3.1, NVIDIA

Corporation 2701 San Tomas Expressway Santa Clara, CA 95050:

http://developer.download.nvidia.com/compute/cuda/3_1/toolkit/docs/NVIDIA_CUDA_C_ ProgrammingGuide_3.1.pdf

3 NVIDIA Corporation (2010), NVIDIA CUDA C Best Practices Guide Version 3.1, NVIDIA

Corporation 2701 San Tomas Expressway Santa Clara, CA 95050:

http://developer.download.nvidia.com/compute/cuda/3_1/toolkit/docs/NVIDIA_CUDA_C_ BestPracticesGuide_3.1.pdf

Trang 3

4 NVIDIA Corporation (2010), NVIDIA CUDA Reference Manual Version 3.1, NVIDIA

Corporation 2701 San Tomas Expressway Santa Clara, CA 95050:

http://developer.download.nvidia.com/compute/cuda/3_1/toolkit/docs/CudaReferenceManua l.pdf

5 Jason Sanders, Edward Kandrot (2010), CUDA by example : an introduction to

general-purpose GPU programming, Addision Wesley

6 John Lafferty, Andrew McCallum, Fernando Pereira (2001), Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data, Proceedinhs of

ICML-2001

7 Graphics processing unit: http://en.wikipedia.org/wiki/Graphics_processing_unit

8 3dfx Interactive: http://en.wikipedia.org/wiki/3dfx_Interactive

9 CRF++: Yet Another CRF toolkit: http://crfpp.sourceforge.net/

10 Thrust: http://code.google.com/p/thrust/

11 Jared Hoberock, Nathan Bell, An Introduction To Thrust, NVIDIA Research:

http://thrust.googlecode.com/files/An%20Introduction%20To%20Thrust.pdf

12 Neil Matthew, Richard Stones (2004), Beginning LinuxProgramming Third Edition, Wiley

Publishing, Inc

13 Mark Mitchell, Jeffrey Oldham, Alex Samuel (2001), Advanced Linux Programming, New

Riders Publishing

14 David B Kirk and Wen-mei W Hwu (2010), Programming Massively Parallel Processors:

A Hands-on Approach, Elsevier Inc

15 Hubert Nguyen (2007), GPU Gems 3, Addison Wesley Professional

16 Taku Kudo: http://chasen.org/~taku/index.html.en

17 Pinto, D., McCallum, A Wei, X., and Croft, W B (2003) Table extraction using

conditional random fields, Proceedings of the 26 th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval (ACM SIGIR 2003)

18 Kristjansson, T., Culotta, A., Viola, P., and McCallum (2004) A Interactive information

extraction with constrained conditional random fields, Proceedings of the 19 th National Conference on Artificial Intelligence (AAAI-2004)

19 Taku Kudo, Kaoru Yamamoto, Yuji Matsumoto, Applying Conditional Random Fields to

Japanese Morphological Analysis

20 Wayne Wood, (2010) A Brief Test on the Code Efficiency of CUDA and Thrust:

http://www.codeproject.com/KB/Parallel_Programming/test-on-thrust-efficiency.aspx

21 Message Passing Interface: http://vi.wikipedia.org/wiki/MPI

22 Parallel Virtual Machine: http://en.wikipedia.org/wiki/Parallel_Virtual_Machine

23 Open Multi-Processing: http://en.wikipedia.org/wiki/OpenMP

24 POSIX Threads Programming: https://computing.llnl.gov/tutorials/pthreads/

Trang 4

25 McCallum, A and Li, W (2003) Early results for named entity recognition with conditional

random fields: feature induction and Web-enhanced lexicons, Proceedings of the 7 th

Conference of the Natural Language Learning (CoNLL 2003)

26 Fuchun Peng, Andrew McCallum (1998), Accurate information extraction from research

papers using conditional random fields, Proceedings of Human Language Technology

Conference and North American Chapter of the Association for Computational Linguistics

(HLT-NAACL), 2004

27 Yejin Choi, Claire Cardie, Ellen Riloff and Siddharth Patwardhan, Identifying Sources of

Opinions with Conditional Random Fields and Extraction Patterns, Proceedings of

HLT/EMNLP 2005

28 Zhu, J., Nie, Z., Wen, J R., Zhang, B., and Ma, W Y (2005) 2D conditional random fields

for Web information extraction, Proceeding of the 22nd International Conference on

Machine Learning (ICML), 2005

29 Erik F Tjong Kim Sang and Sabine Buchholz 2000 Intro-duction to the CoNLL-2000

shared task: Chunking In Proceedings of CoNLL-2000 and LLL-2000, pages 127–132,

Lisbon, Portugal

30 Chunking: http://www.cnts.ua.ac.be/conll2000/chunking/

31 Supervise itinerary: http://giamsathanhtrinh.vn/

Ngày đăng: 25/08/2015, 11:58

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w