SlideShare a Scribd company logo
1 of 52
SONG SONG HOÁ CÁC THAO TÁC XỬ LÝ ẢNH
DÙNG OPENCL
Môn học: Xử Lý Ảnh Số & Video Số
Giáo viên lý thuyết: Thầy Nguyễn Trọng Việt
Lớp: 11HCA – Nhóm SFF
Saigon Forever Friends Group - SFF
STT HọTên MSSV Ghi chú
1 Võ MinhVô 1141481 Nhóm trưởng
2 LêVănTú 1141468
3 TrầnThànhÂn 1141309
4 TrầnThành Đạt 1141334
5 Phan Duy Long 1141385
6 Phạm Phong Lưu 1141394
7 Trần Bình Minh 1141397
8 Lê ĐìnhThái 1141440
9 TrầnVĩnhTiến 1141452
10 NguyễnThịTrang 1141457
Nội dung trình bày
 Giới thiệu
 Cơ sở lý thuyết song song
 Sơ lược OpenCL
 OpenCL trên window
 Nhận xét
 Hỏi đáp
GIỚI THIỆU
Phan Duy Long
Giới thiệu
XL dữ liệu LỚN
Trong t/gian ngắn
Tốc độ CPU
TĂNG
Nhiệt độ CPU
TĂNG
Ra đời Xử
lý song
song GPU.
Phát triển công nghệ đa
lõi.
Năm 2007, NVIDIA sản
xuất GPU NV30
CUDA phát triển ứng
dụng song song.
Giới thiệu
 Lợi ích song song hóa mang lại
1
2 3
CƠ SỞ LÝ THUYẾT SONG SONG
Nguyễn Thị Trang
Khái niệm
 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.
Xử lý tuần tự và song song
 Bài toán được tách thành một chuỗi các câu
lệnh rời rạc.
 Các câu lệnh được thực hiện một cách tuần
tự.
 Tại mỗi thời điểm chỉ thực hiện được một
câu lệnh.
 Mỗi phần được tách thành câu lệnh rời
rạc.
 Mỗi lệnh được thực hiện từ những CPU
khác nhau.
 Trong xử lý song song nhiều CPU, phức
tạp hơn nhưng nhanh hơn.
Xử lý tuần tự và song song
Xử lý tuần tự Xử lý song song
-Mỗi thời điểm chỉ thực hiện được một
phép toán
-Thời gian thực hiện phép toán chậm
-Mỗi thời điển có thể thực hiện được
nhiều phép toán
-Thời gian thực hiện phép toán nhanh
Tiêu chí đánh giá thuật toán
-Thời gian thực hiện thuật toán
- Không gian bộ nhớ
- Khả năng lập trình
- Các tiêu chuẩn như thuật toán tuần
tự
- Những tham số về Bộ xử lý: số bộ xử
lý, tốc độ xử lý
- Khả năng của các bộ nhớ cục bộ
- Sơ đồ truyền thông
-Thao tác I/O
Hình thức song song trong OpenCL
 OpenCL hỗ trợ lập trình
 Song song tác vụ. (Trong OpenCL lập trình song song
tác vụ bao gồm việc lập hàng đợi nhiều kernel)
 Lập trình song song dữ liệu. (Các tiến trình song
song dữ liệu thực thi nhiều thể hiện của kernel trên các
OpenCL devices)
Chương trình có thể song song hóa ?
 Chương trình tính tổng hai ma trận.
 Chương trình nhân hai ma trận.
 Giải hệ phương trình tuyến tính.
 Tô màu đồ thị ...
 Vậy khi nào thì chương trình có thể
song song hóa?
Song song hóa công việc
 Bài toán có thể chia thành được các
nhiệm vụ nhỏ hơn.
 Các công việc nhỏ được gán cho các
bộ xử lý một cách phù hợp.
 Các công việc lại tiếp tục được phần
chia như vậy.. Cho đến khi nào công
việc được hoàn thành.
SƠ LƯỢC OPENCL
Phạm Phong Lưu
Trần Thành Đạt
Lê Văn Tú
Sơ lược OpenCL
 OpenCL là một chuẩn mở.
 Đồng bộ hóa các tác vụ xử lý song song.
 Bắt nguồn từ C.
 Không phụ thuộc vào phần cứng.
Sơ lược OpenCL
Đặc điểm OpenCL
 Khả năng làm việc trên môi trường không
đồng nhất.
Tổng quan OpenCL
 Các thuật ngữ
 Host : CPU
 Device: GPU
 Context: Là môi trường thực thi
những work-item gồm: device,
memory, command queue.
 Work-item: Là một thể hiện của kernel.
 Index-space: Xác định số lượng work-items
cần thiết để hoàn thành công việc.
Tổng quan OpenCL
 Thuật ngữ
Tổng quan OpenCL
 OpenCL Frame work được cấu thành từ:
 C Platform Layer API
 Kernel Language Specification
 C Runtime API
Tổng quan OpenCL
 C Platform Layer API
Mô hình phần cứng của OpenCL
Mô hình bộ nhớ OpenCL
Truy xuất vùng nhớ tường minh: Host->global->local và ngược lại.
Mô hình thực thi OpenCL
 Chia thành 2 phần: Thực
thi ở host và thực thi ở
device.
 Context
 Hàng đợi thực thi kernel
 Theo thứ tự.
 Không theo thứ tự.
Đồng bộ hóa: Queues & Events
 Events: đồng bộ hóa giữa kernel và queue
 Đồng bộ hóa 2 queue với 2 devices
Các bước tạo chương trình OpenCL
Chi tiết bước làm: 9 bước
 Bước 1: Truy vấn system host cho các
thiết bị OpenCL.
 Bước 2: Tạo một context liên kết đến các
thiết bị OpenCL.
 Bước 3: Tạo các chương trình mà nó sẽ
chạy trên một hoặc nhiều các device đã
liên kết.
 Bước 4: Từ các chương trình đó, chọn
các kernel để thực thi.
Chi tiết bước làm: 9 bước
 Bước 5: Tạo memory objects trên host hoặc
trên device.
 Bước 6: Sao chép dữ liệu từ bộ nhớ đến
device khi cần thiết.
 Bước 7: Cung cấp các đối số cho các
kernel.
 Bước 8: Đẩy các kernel vào hàng đợi để
thực thi.
 Bước 9: Sao chép kết quả từ device đến
host.
OPENCL TRÊN WINDOW
Trần Bình Minh
Võ Minh Vô
Trần Thành Ân
OpenCL trên window
 Ý nghĩa, đầu vào, đầu ra một số hàm
thông dụng trong OpenCL.
OpenCL trên window
 Lấy thông tin Platform:
cl_int clGetPlatformIDs (cl_uint
num_entries, cl_platform_id *platforms,
cl_uint *num_platforms)
 Giá trị trả về CL_SUCCESS nếu hàm thực thi thành
công.
 Ngược lại, nó trả về CL_INVALID_VALUE nếu
num_entries = 0 và platforms != NULL, hoặc
nếu cả num_platforms và platforms là NULL.
 Khi đã có cl_platform_id dùng hàm
clGetPlatformInfo(…) để lấy thông tin OpenCL
platform.
OpenCL trên window
cl_int clGetPlatformInfo (cl_platform_id
platform, cl_platform_info param_name,
size_t param_value_size, void
*param_value, size_t
*param_value_size_ret)
 Giá trị trả về CL_SUCCESS nếu hàm thực thi thành
công.
 Ngược lại, nó trả về một trong các lỗi sau:
 CL_INVALID_PLATFORM nếu platform không
phải là platform hợp lệ.
 CL_INVALID_VALUE nếu param_name không
được hỗ trợ.
 CL_OUT_OF_HOST_MEMORY nếu không được
phân bổ từ mã nguồn.
OpenCL trên window
 Lấy thông tin Devices:
cl_int clGetDeviceIDs (cl_platform_id
platform,cl_device_type device_type,cl_uint
num_entries,cl_device_id *devices,cl_uint
*num_devices)
 Giá trị trả về CL_SUCCESS nếu hàm thực thi thành
công.
 Ngược lại, nó trả về một trong các lỗi sau:
 CL_INVALID_PLATFORM : platform không hợp lệ.
 CL_INVALID_DEVICE_TYPE: device_type là một
giá trị không hợp lệ.
 CL_INVALID_VALUE: nếu num_entries bằng 0 và
devices không phải giá trị NULL hoặc cả
num_entries và devices đều mang giá trị NULL.
OpenCL trên window
Truy vấn thông tin devices:
cl_int clGetDeviceInfo (cl_device_id device,
cl_device_info param_name, size_t
param_value_size, void *param_value, size_t
*param_value_size_ret)
 Giá trị trả về CL_SUCCESS nếu hàm thực thi thành
công.
 Ngược lại, nó trả về một trong các lỗi sau:
 CL_INVALID_DEVICE: device không hợp lệ.
 CL_INVALID_VALUE: param_name không được hỗ
trợ.
 CL_OUT_OF_RESOURCE nếu không được phân bổ từ
mã nguồn OpenCL trên device.
 CL_OUT_OF_HOST_MEMORY nếu không được phân bổ
từ mã nguồn OpenCL trên host..
OpenCL trên window
 Tạo Contexts:
cl_context clCreateContext (const
cl_context_properties *properties,cl_uint
num_devices, const cl_device_id *devices,
void (CL_CALLBACK *pfn_notify)(const char
*errinfo, const void *private_info,
size_t cb, void *user_data),
void *user_data,cl_int *errcode_ret)
 Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.
 Ngược lại, nó trả về một trong các lỗi sau:
 CL_INVALID_PLATFORM : platform không hợp lệ.
 CL_INVALID_PROPERTY: property không được hỗ trợ.
 CL_INVALID_VALUE: properties không hợp lệ; số lượng device
là 0; danh sách device_id là null hoặc không hợp lệ.
 CL_INVALID_DEVICE: devices không hợp lệ.
 CL_DEVICE_NOT_AVAILABLE : danh sách device_id hiện không
khả dụng.
 CL_OUT_OF_HOST_MEMORY: Host không thể cấp tài nguyên.
OpenCL trên window
 Tạo Command Queue:
cl_command_queue clCreateCommandQueue (cl_context
context,cl_device_id device,
cl_command_queue_properties properties,
cl_int *errcode_ret)
 Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.
 Ngược lại, nó trả về một trong các lỗi sau:
 CL_INVALID_CONTEXT : context không hợp lệ.
 CL_INVALID_DEVICE: device không hợp lệ hoặc không
có mối liên hệ nào với context.
 CL_INVALID_QUEUE_PROPERTIES: giá trị của
properties hợp lệ nhưng không được hỗ trợ từ
device.
 CL_OUT_OF_RESOURCES: nếu không được phân bổ từ mã
nguồn OpenCL trên device.
 CL_OUT_OF_HOST_MEMORY: Host không thể cấp tài
nguyên.
OpenCL trên window
 Tạo đối tượng Program từ source:
cl_program_queue clCreateProgramWithSource
(cl_contextcontext, cl_uint count, const
char **strings, const size_t *lengths,
cl_int *errcode_ret)
 Gọi hàm clBuildProgram() để tạo đối tượng
Program sau hàm clCreateProgramWithSource()
cl_int clBuildProgram(cl_program program,
cl_uint num_devices, const
cl_device_id *device_list, const char
*options, void (CL_CALLBACK
*pfn_notify)(cl_program program,
void *user_data),
void *user_data)
OpenCL trên window
 Xem thông tin Program:
cl_int clGetProgramInfo (cl_program
program, cl_program_info param_name,
size_t param_value_size, void
*param_value, size_t
*param_value_size_ret)
OpenCL trên window
 Tạo đối tượng Program từ binary:
cl_program_queue
clCreateProgramWithBinary (cl_context
context, cl_uint num_devices, const
cl_device_id *device_list, const
size_t *lengths, const unsigned char
**binaries, cl_int *binary_status,
cl_int *errcode_ret)
 Hàm lưu trữ nhị phân
clSaveProgramBinary (cl_program program,
cl_device_id device, const char *
file_name)
OpenCL trên window
 Tạo đối tượng Kernel:
cl_kernel clCreateKernel (cl_program
program, const char *kernel_name, cl_int
*errcode_ret)
 Hàm chứa các đối tượng Kernel:
cl_int clSetKernelArg (cl_kernel kernel,
cl_uint arg_index, size_t *arg_size,
const void *arg_value)(cl_program
program, cl_uint num_devices,
const cl_device_id
*device_list, const char *options,
void (CL_CALLBACK*pfn_notify)(cl_program
program, void *user_data),
void *user_data)
OpenCL trên window
 Xem thông tin Kernel:
cl_int clGetKernelInfo (cl_kernel kernel,
cl_kernel_info param_name, size_t
param_value_size, void *param_value,
size_t *param_value_size_ret)
 Giải phóng đối tượng Kernel:
cl_int clReleaseKernel (cl_kernel kernel)
 Theo dõi trạng thái Kernel:
cl_int clRetainKernel (cl_kernel kernel)
OpenCL trên window
 Hướng dẫn cài đặt, cấu hình CUDA và
OpenCL trên Visual Studio 2010.
 Các bước làm.
Bước 1
 Vào đường link: developer.nvidia.com
Bước 2
 Dowload Cuda 5.5
Bước 3
 Chọn hẹ điều hành đang sử dụng để chạy
Bước 4
 Tiến hành cài đặt Cuda
Bước 5
 Tạo project mới trong visual studio 2010
Bước 6
 Thực hiện đặt tên project như hình sau
Demo
 Đang cập nhật …
HỎI ĐÁP
Hỏi đáp
Tài liệu tham khảo
[1]. AaftabMunshi,BenedictR.Gaster,TimothyG.Mattson,JamesFung,DanGinsburg.OpenCL
programmingguide.
[2].OpenCLOverview
-http://www.khronos.org/assets/uploads/developers/library/overview/opencl-overview.pdf
[3].The OpenCLSpecification -KhronosGroup
- http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf
[4].An Introductionto the OpenCLProgrammingModel, JonathanTompeson,Kristofer Schlachter
CẢM ƠN THẦY VÀ CÁC BẠN ĐÃ
LẮNG NGHE

More Related Content

What's hot

[Cntt] bài giảng lập trình java bkhcm
[Cntt] bài giảng lập trình java   bkhcm[Cntt] bài giảng lập trình java   bkhcm
[Cntt] bài giảng lập trình java bkhcmHong Phuoc Nguyen
 
BTL-thuyet-trinh (1).pptx
BTL-thuyet-trinh (1).pptxBTL-thuyet-trinh (1).pptx
BTL-thuyet-trinh (1).pptxNamTran268656
 
Bài giảng logic bậc nhất first order logic
Bài giảng logic bậc nhất   first order logicBài giảng logic bậc nhất   first order logic
Bài giảng logic bậc nhất first order logicjackjohn45
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMNguyễn Anh
 
API Testing & SoapUI
API Testing & SoapUIAPI Testing & SoapUI
API Testing & SoapUITran Bich
 
모바일 게임 테스트 자동화 (Appium 확장)
모바일 게임 테스트 자동화 (Appium 확장)모바일 게임 테스트 자동화 (Appium 확장)
모바일 게임 테스트 자동화 (Appium 확장)Jongwon Kim
 
Báo cáo kĩ thuật phần mềm và ứng dụng
Báo cáo kĩ thuật phần mềm và ứng dụngBáo cáo kĩ thuật phần mềm và ứng dụng
Báo cáo kĩ thuật phần mềm và ứng dụngVượng Đặng
 
Bài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần MềmBài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần MềmHoài Phạm
 
Ruin your life using robot framework
Ruin your life using robot frameworkRuin your life using robot framework
Ruin your life using robot frameworkPrayoch Rujira
 
Tom tat bai giang ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang   ly thuyet do thi - nguyen ngoc trungTom tat bai giang   ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang ly thuyet do thi - nguyen ngoc trungkikihoho
 
Selenium Basics Tutorial
Selenium Basics TutorialSelenium Basics Tutorial
Selenium Basics TutorialClever Moe
 
GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN
GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN
GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN PMC WEB
 
Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot
Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbotCác bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot
Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbotMinh Pham
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trìnhLập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trìnhXuân Thủy Nguyễn
 
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...minastestingconference
 
Active Directoryデータの Security Descriptor
Active Directoryデータの Security DescriptorActive Directoryデータの Security Descriptor
Active Directoryデータの Security DescriptorMichio Koyama
 

What's hot (20)

[Cntt] bài giảng lập trình java bkhcm
[Cntt] bài giảng lập trình java   bkhcm[Cntt] bài giảng lập trình java   bkhcm
[Cntt] bài giảng lập trình java bkhcm
 
BTL-thuyet-trinh (1).pptx
BTL-thuyet-trinh (1).pptxBTL-thuyet-trinh (1).pptx
BTL-thuyet-trinh (1).pptx
 
Chuyên Đề Công Nghệ Phần Mềm PTIT
Chuyên Đề Công Nghệ Phần Mềm PTITChuyên Đề Công Nghệ Phần Mềm PTIT
Chuyên Đề Công Nghệ Phần Mềm PTIT
 
Bài giảng logic bậc nhất first order logic
Bài giảng logic bậc nhất   first order logicBài giảng logic bậc nhất   first order logic
Bài giảng logic bậc nhất first order logic
 
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀMTÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
TÌM HIỂU CÁC KỸ THUẬT KIỂM THỬ PHẦN MỀM
 
API Testing & SoapUI
API Testing & SoapUIAPI Testing & SoapUI
API Testing & SoapUI
 
모바일 게임 테스트 자동화 (Appium 확장)
모바일 게임 테스트 자동화 (Appium 확장)모바일 게임 테스트 자동화 (Appium 확장)
모바일 게임 테스트 자동화 (Appium 확장)
 
Báo cáo kĩ thuật phần mềm và ứng dụng
Báo cáo kĩ thuật phần mềm và ứng dụngBáo cáo kĩ thuật phần mềm và ứng dụng
Báo cáo kĩ thuật phần mềm và ứng dụng
 
Bài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần MềmBài giảng Công Nghệ Phần Mềm
Bài giảng Công Nghệ Phần Mềm
 
Ruin your life using robot framework
Ruin your life using robot frameworkRuin your life using robot framework
Ruin your life using robot framework
 
Đề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xa
Đề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xaĐề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xa
Đề tài: Mô hình nhà nuôi chim yến điều khiển, giám sát từ xa
 
Tom tat bai giang ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang   ly thuyet do thi - nguyen ngoc trungTom tat bai giang   ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang ly thuyet do thi - nguyen ngoc trung
 
Selenium Basics Tutorial
Selenium Basics TutorialSelenium Basics Tutorial
Selenium Basics Tutorial
 
GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN
GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN
GIỚI THIỆU VỀ ĐỘNG CƠ ĐIỆN
 
Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot
Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbotCác bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot
Các bài toán xử lý ngôn ngữ tự nhiên trong phát triển hệ thống chatbot
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trìnhLập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
Lập trình PLC S7 1200 tiếng Việt-Chuong 4 khái niệm lập trình
 
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
 
Truyen dien dong
Truyen dien dongTruyen dien dong
Truyen dien dong
 
Active Directoryデータの Security Descriptor
Active Directoryデータの Security DescriptorActive Directoryデータの Security Descriptor
Active Directoryデータの Security Descriptor
 
Đề tài: Thiết kế cung cấp điện cho trạm biến áp 110kV nhà máy thép
Đề tài: Thiết kế cung cấp điện cho trạm biến áp 110kV nhà máy thépĐề tài: Thiết kế cung cấp điện cho trạm biến áp 110kV nhà máy thép
Đề tài: Thiết kế cung cấp điện cho trạm biến áp 110kV nhà máy thép
 

Similar to Song song hóa thao tác xử lý ảnh sử dụng OpenCL

Truy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại run
Truy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại runTruy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại run
Truy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại runNguyễn Anh
 
Trần Anh Khoa - Kautilya và Powershell trong kỹ thuật tấn công tiếp cận
Trần Anh Khoa - Kautilya và Powershelltrong kỹ thuật tấn công tiếp cậnTrần Anh Khoa - Kautilya và Powershelltrong kỹ thuật tấn công tiếp cận
Trần Anh Khoa - Kautilya và Powershell trong kỹ thuật tấn công tiếp cậnSecurity Bootcamp
 
Slide py-sys-devops-final-v1
Slide py-sys-devops-final-v1Slide py-sys-devops-final-v1
Slide py-sys-devops-final-v1Công TÔ
 
OpenWIPS-ng report Vietnamese
OpenWIPS-ng report VietnameseOpenWIPS-ng report Vietnamese
OpenWIPS-ng report VietnameseHoàng Tuấn Lê
 
Bao cao thuc tap tuan 1 Athena Tran Dang Khoa
Bao cao thuc tap tuan 1 Athena Tran Dang KhoaBao cao thuc tap tuan 1 Athena Tran Dang Khoa
Bao cao thuc tap tuan 1 Athena Tran Dang KhoaÂu Dương Bình
 
INT1484-Bai-thuc-hanh-01.pdf
INT1484-Bai-thuc-hanh-01.pdfINT1484-Bai-thuc-hanh-01.pdf
INT1484-Bai-thuc-hanh-01.pdfPhamTruongGiang4
 
the real-time operating system and real-time programming
the real-time operating system and real-time programmingthe real-time operating system and real-time programming
the real-time operating system and real-time programmingDucLe868608
 
cài đặt metasploit
cài đặt metasploitcài đặt metasploit
cài đặt metasploitLê Lãnh
 
#Week03-Chapter3 2023.pdf
#Week03-Chapter3 2023.pdf#Week03-Chapter3 2023.pdf
#Week03-Chapter3 2023.pdftangmyhan
 

Similar to Song song hóa thao tác xử lý ảnh sử dụng OpenCL (20)

Baocaocuoiki
BaocaocuoikiBaocaocuoiki
Baocaocuoiki
 
Bai bao cao 3
Bai bao cao 3Bai bao cao 3
Bai bao cao 3
 
Unit Test
Unit TestUnit Test
Unit Test
 
Dsd05 02a-xml-rpca
Dsd05 02a-xml-rpcaDsd05 02a-xml-rpca
Dsd05 02a-xml-rpca
 
Truy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại run
Truy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại runTruy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại run
Truy cập nhanh ứng dụng trong windows bằng lệnh trong hộp thoại run
 
Trần Anh Khoa - Kautilya và Powershell trong kỹ thuật tấn công tiếp cận
Trần Anh Khoa - Kautilya và Powershelltrong kỹ thuật tấn công tiếp cậnTrần Anh Khoa - Kautilya và Powershelltrong kỹ thuật tấn công tiếp cận
Trần Anh Khoa - Kautilya và Powershell trong kỹ thuật tấn công tiếp cận
 
Bao cao thuc tap
Bao cao thuc tapBao cao thuc tap
Bao cao thuc tap
 
Slide py-sys-devops-final-v1
Slide py-sys-devops-final-v1Slide py-sys-devops-final-v1
Slide py-sys-devops-final-v1
 
Linux+04
Linux+04Linux+04
Linux+04
 
OpenWIPS-ng report Vietnamese
OpenWIPS-ng report VietnameseOpenWIPS-ng report Vietnamese
OpenWIPS-ng report Vietnamese
 
Bao cao thuc tap tuan 1 Athena Tran Dang Khoa
Bao cao thuc tap tuan 1 Athena Tran Dang KhoaBao cao thuc tap tuan 1 Athena Tran Dang Khoa
Bao cao thuc tap tuan 1 Athena Tran Dang Khoa
 
INT1484-Bai-thuc-hanh-01.pdf
INT1484-Bai-thuc-hanh-01.pdfINT1484-Bai-thuc-hanh-01.pdf
INT1484-Bai-thuc-hanh-01.pdf
 
the real-time operating system and real-time programming
the real-time operating system and real-time programmingthe real-time operating system and real-time programming
the real-time operating system and real-time programming
 
cài đặt metasploit
cài đặt metasploitcài đặt metasploit
cài đặt metasploit
 
Phan 1 sv
Phan 1   svPhan 1   sv
Phan 1 sv
 
#Week03-Chapter3 2023.pdf
#Week03-Chapter3 2023.pdf#Week03-Chapter3 2023.pdf
#Week03-Chapter3 2023.pdf
 
Tìm hiểu về process
Tìm hiểu về processTìm hiểu về process
Tìm hiểu về process
 
Bai tap thuc hanh
Bai tap thuc hanhBai tap thuc hanh
Bai tap thuc hanh
 
Htc.kien.truc.unix.linux
Htc.kien.truc.unix.linuxHtc.kien.truc.unix.linux
Htc.kien.truc.unix.linux
 
Kien.truc.unix.linux 2
Kien.truc.unix.linux 2Kien.truc.unix.linux 2
Kien.truc.unix.linux 2
 

Recently uploaded

Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoámyvh40253
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfCampbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfTrnHoa46
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................TrnHoa46
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢIPHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢImyvh40253
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...Nguyen Thanh Tu Collection
 
CD21 Exercise 2.1 KEY.docx tieng anh cho
CD21 Exercise 2.1 KEY.docx tieng anh choCD21 Exercise 2.1 KEY.docx tieng anh cho
CD21 Exercise 2.1 KEY.docx tieng anh chonamc250
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIĐiện Lạnh Bách Khoa Hà Nội
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...Nguyen Thanh Tu Collection
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...Nguyen Thanh Tu Collection
 
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIĐiện Lạnh Bách Khoa Hà Nội
 
Nhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptx
Nhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptxNhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptx
Nhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptxhoangvubaongoc112011
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảoKiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảohoanhv296
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfNguyen Thanh Tu Collection
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...Nguyen Thanh Tu Collection
 

Recently uploaded (20)

Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoáCác điều kiện bảo hiểm trong bảo hiểm hàng hoá
Các điều kiện bảo hiểm trong bảo hiểm hàng hoá
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdfCampbell _2011_ - Sinh học - Tế bào - Ref.pdf
Campbell _2011_ - Sinh học - Tế bào - Ref.pdf
 
Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................Đề cương môn giải phẫu......................
Đề cương môn giải phẫu......................
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢIPHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
PHƯƠNG THỨC VẬN TẢI ĐƯỜNG SẮT TRONG VẬN TẢI
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
 
CD21 Exercise 2.1 KEY.docx tieng anh cho
CD21 Exercise 2.1 KEY.docx tieng anh choCD21 Exercise 2.1 KEY.docx tieng anh cho
CD21 Exercise 2.1 KEY.docx tieng anh cho
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘIGIÁO TRÌNH  KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
GIÁO TRÌNH KHỐI NGUỒN CÁC LOẠI - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
 
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
3-BẢNG MÃ LỖI CỦA CÁC HÃNG ĐIỀU HÒA .pdf - ĐIỆN LẠNH BÁCH KHOA HÀ NỘI
 
Nhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptx
Nhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptxNhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptx
Nhiễm khuẩn tiêu hóa-Tiêu chảy do vi khuẩn.pptx
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảoKiểm tra cuối học kì 1 sinh học 12 đề tham khảo
Kiểm tra cuối học kì 1 sinh học 12 đề tham khảo
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
 

Song song hóa thao tác xử lý ảnh sử dụng OpenCL

  • 1. SONG SONG HOÁ CÁC THAO TÁC XỬ LÝ ẢNH DÙNG OPENCL Môn học: Xử Lý Ảnh Số & Video Số Giáo viên lý thuyết: Thầy Nguyễn Trọng Việt Lớp: 11HCA – Nhóm SFF
  • 2. Saigon Forever Friends Group - SFF STT HọTên MSSV Ghi chú 1 Võ MinhVô 1141481 Nhóm trưởng 2 LêVănTú 1141468 3 TrầnThànhÂn 1141309 4 TrầnThành Đạt 1141334 5 Phan Duy Long 1141385 6 Phạm Phong Lưu 1141394 7 Trần Bình Minh 1141397 8 Lê ĐìnhThái 1141440 9 TrầnVĩnhTiến 1141452 10 NguyễnThịTrang 1141457
  • 3. Nội dung trình bày  Giới thiệu  Cơ sở lý thuyết song song  Sơ lược OpenCL  OpenCL trên window  Nhận xét  Hỏi đáp
  • 5. Giới thiệu XL dữ liệu LỚN Trong t/gian ngắn Tốc độ CPU TĂNG Nhiệt độ CPU TĂNG Ra đời Xử lý song song GPU. Phát triển công nghệ đa lõi. Năm 2007, NVIDIA sản xuất GPU NV30 CUDA phát triển ứng dụng song song.
  • 6. Giới thiệu  Lợi ích song song hóa mang lại 1 2 3
  • 7. CƠ SỞ LÝ THUYẾT SONG SONG Nguyễn Thị Trang
  • 8. Khái niệm  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.
  • 9. Xử lý tuần tự và song song  Bài toán được tách thành một chuỗi các câu lệnh rời rạc.  Các câu lệnh được thực hiện một cách tuần tự.  Tại mỗi thời điểm chỉ thực hiện được một câu lệnh.  Mỗi phần được tách thành câu lệnh rời rạc.  Mỗi lệnh được thực hiện từ những CPU khác nhau.  Trong xử lý song song nhiều CPU, phức tạp hơn nhưng nhanh hơn.
  • 10. Xử lý tuần tự và song song Xử lý tuần tự Xử lý song song -Mỗi thời điểm chỉ thực hiện được một phép toán -Thời gian thực hiện phép toán chậm -Mỗi thời điển có thể thực hiện được nhiều phép toán -Thời gian thực hiện phép toán nhanh Tiêu chí đánh giá thuật toán -Thời gian thực hiện thuật toán - Không gian bộ nhớ - Khả năng lập trình - Các tiêu chuẩn như thuật toán tuần tự - Những tham số về Bộ xử lý: số bộ xử lý, tốc độ xử lý - Khả năng của các bộ nhớ cục bộ - Sơ đồ truyền thông -Thao tác I/O
  • 11. Hình thức song song trong OpenCL  OpenCL hỗ trợ lập trình  Song song tác vụ. (Trong OpenCL lập trình song song tác vụ bao gồm việc lập hàng đợi nhiều kernel)  Lập trình song song dữ liệu. (Các tiến trình song song dữ liệu thực thi nhiều thể hiện của kernel trên các OpenCL devices)
  • 12. Chương trình có thể song song hóa ?  Chương trình tính tổng hai ma trận.  Chương trình nhân hai ma trận.  Giải hệ phương trình tuyến tính.  Tô màu đồ thị ...  Vậy khi nào thì chương trình có thể song song hóa?
  • 13. Song song hóa công việc  Bài toán có thể chia thành được các nhiệm vụ nhỏ hơn.  Các công việc nhỏ được gán cho các bộ xử lý một cách phù hợp.  Các công việc lại tiếp tục được phần chia như vậy.. Cho đến khi nào công việc được hoàn thành.
  • 14. SƠ LƯỢC OPENCL Phạm Phong Lưu Trần Thành Đạt Lê Văn Tú
  • 15. Sơ lược OpenCL  OpenCL là một chuẩn mở.  Đồng bộ hóa các tác vụ xử lý song song.  Bắt nguồn từ C.  Không phụ thuộc vào phần cứng.
  • 17. Đặc điểm OpenCL  Khả năng làm việc trên môi trường không đồng nhất.
  • 18. Tổng quan OpenCL  Các thuật ngữ  Host : CPU  Device: GPU  Context: Là môi trường thực thi những work-item gồm: device, memory, command queue.  Work-item: Là một thể hiện của kernel.  Index-space: Xác định số lượng work-items cần thiết để hoàn thành công việc.
  • 19. Tổng quan OpenCL  Thuật ngữ
  • 20. Tổng quan OpenCL  OpenCL Frame work được cấu thành từ:  C Platform Layer API  Kernel Language Specification  C Runtime API
  • 21. Tổng quan OpenCL  C Platform Layer API Mô hình phần cứng của OpenCL
  • 22. Mô hình bộ nhớ OpenCL Truy xuất vùng nhớ tường minh: Host->global->local và ngược lại.
  • 23. Mô hình thực thi OpenCL  Chia thành 2 phần: Thực thi ở host và thực thi ở device.  Context  Hàng đợi thực thi kernel  Theo thứ tự.  Không theo thứ tự.
  • 24. Đồng bộ hóa: Queues & Events  Events: đồng bộ hóa giữa kernel và queue  Đồng bộ hóa 2 queue với 2 devices
  • 25. Các bước tạo chương trình OpenCL
  • 26. Chi tiết bước làm: 9 bước  Bước 1: Truy vấn system host cho các thiết bị OpenCL.  Bước 2: Tạo một context liên kết đến các thiết bị OpenCL.  Bước 3: Tạo các chương trình mà nó sẽ chạy trên một hoặc nhiều các device đã liên kết.  Bước 4: Từ các chương trình đó, chọn các kernel để thực thi.
  • 27. Chi tiết bước làm: 9 bước  Bước 5: Tạo memory objects trên host hoặc trên device.  Bước 6: Sao chép dữ liệu từ bộ nhớ đến device khi cần thiết.  Bước 7: Cung cấp các đối số cho các kernel.  Bước 8: Đẩy các kernel vào hàng đợi để thực thi.  Bước 9: Sao chép kết quả từ device đến host.
  • 28. OPENCL TRÊN WINDOW Trần Bình Minh Võ Minh Vô Trần Thành Ân
  • 29. OpenCL trên window  Ý nghĩa, đầu vào, đầu ra một số hàm thông dụng trong OpenCL.
  • 30. OpenCL trên window  Lấy thông tin Platform: cl_int clGetPlatformIDs (cl_uint num_entries, cl_platform_id *platforms, cl_uint *num_platforms)  Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.  Ngược lại, nó trả về CL_INVALID_VALUE nếu num_entries = 0 và platforms != NULL, hoặc nếu cả num_platforms và platforms là NULL.  Khi đã có cl_platform_id dùng hàm clGetPlatformInfo(…) để lấy thông tin OpenCL platform.
  • 31. OpenCL trên window cl_int clGetPlatformInfo (cl_platform_id platform, cl_platform_info param_name, size_t param_value_size, void *param_value, size_t *param_value_size_ret)  Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.  Ngược lại, nó trả về một trong các lỗi sau:  CL_INVALID_PLATFORM nếu platform không phải là platform hợp lệ.  CL_INVALID_VALUE nếu param_name không được hỗ trợ.  CL_OUT_OF_HOST_MEMORY nếu không được phân bổ từ mã nguồn.
  • 32. OpenCL trên window  Lấy thông tin Devices: cl_int clGetDeviceIDs (cl_platform_id platform,cl_device_type device_type,cl_uint num_entries,cl_device_id *devices,cl_uint *num_devices)  Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.  Ngược lại, nó trả về một trong các lỗi sau:  CL_INVALID_PLATFORM : platform không hợp lệ.  CL_INVALID_DEVICE_TYPE: device_type là một giá trị không hợp lệ.  CL_INVALID_VALUE: nếu num_entries bằng 0 và devices không phải giá trị NULL hoặc cả num_entries và devices đều mang giá trị NULL.
  • 33. OpenCL trên window Truy vấn thông tin devices: cl_int clGetDeviceInfo (cl_device_id device, cl_device_info param_name, size_t param_value_size, void *param_value, size_t *param_value_size_ret)  Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.  Ngược lại, nó trả về một trong các lỗi sau:  CL_INVALID_DEVICE: device không hợp lệ.  CL_INVALID_VALUE: param_name không được hỗ trợ.  CL_OUT_OF_RESOURCE nếu không được phân bổ từ mã nguồn OpenCL trên device.  CL_OUT_OF_HOST_MEMORY nếu không được phân bổ từ mã nguồn OpenCL trên host..
  • 34. OpenCL trên window  Tạo Contexts: cl_context clCreateContext (const cl_context_properties *properties,cl_uint num_devices, const cl_device_id *devices, void (CL_CALLBACK *pfn_notify)(const char *errinfo, const void *private_info, size_t cb, void *user_data), void *user_data,cl_int *errcode_ret)  Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.  Ngược lại, nó trả về một trong các lỗi sau:  CL_INVALID_PLATFORM : platform không hợp lệ.  CL_INVALID_PROPERTY: property không được hỗ trợ.  CL_INVALID_VALUE: properties không hợp lệ; số lượng device là 0; danh sách device_id là null hoặc không hợp lệ.  CL_INVALID_DEVICE: devices không hợp lệ.  CL_DEVICE_NOT_AVAILABLE : danh sách device_id hiện không khả dụng.  CL_OUT_OF_HOST_MEMORY: Host không thể cấp tài nguyên.
  • 35. OpenCL trên window  Tạo Command Queue: cl_command_queue clCreateCommandQueue (cl_context context,cl_device_id device, cl_command_queue_properties properties, cl_int *errcode_ret)  Giá trị trả về CL_SUCCESS nếu hàm thực thi thành công.  Ngược lại, nó trả về một trong các lỗi sau:  CL_INVALID_CONTEXT : context không hợp lệ.  CL_INVALID_DEVICE: device không hợp lệ hoặc không có mối liên hệ nào với context.  CL_INVALID_QUEUE_PROPERTIES: giá trị của properties hợp lệ nhưng không được hỗ trợ từ device.  CL_OUT_OF_RESOURCES: nếu không được phân bổ từ mã nguồn OpenCL trên device.  CL_OUT_OF_HOST_MEMORY: Host không thể cấp tài nguyên.
  • 36. OpenCL trên window  Tạo đối tượng Program từ source: cl_program_queue clCreateProgramWithSource (cl_contextcontext, cl_uint count, const char **strings, const size_t *lengths, cl_int *errcode_ret)  Gọi hàm clBuildProgram() để tạo đối tượng Program sau hàm clCreateProgramWithSource() cl_int clBuildProgram(cl_program program, cl_uint num_devices, const cl_device_id *device_list, const char *options, void (CL_CALLBACK *pfn_notify)(cl_program program, void *user_data), void *user_data)
  • 37. OpenCL trên window  Xem thông tin Program: cl_int clGetProgramInfo (cl_program program, cl_program_info param_name, size_t param_value_size, void *param_value, size_t *param_value_size_ret)
  • 38. OpenCL trên window  Tạo đối tượng Program từ binary: cl_program_queue clCreateProgramWithBinary (cl_context context, cl_uint num_devices, const cl_device_id *device_list, const size_t *lengths, const unsigned char **binaries, cl_int *binary_status, cl_int *errcode_ret)  Hàm lưu trữ nhị phân clSaveProgramBinary (cl_program program, cl_device_id device, const char * file_name)
  • 39. OpenCL trên window  Tạo đối tượng Kernel: cl_kernel clCreateKernel (cl_program program, const char *kernel_name, cl_int *errcode_ret)  Hàm chứa các đối tượng Kernel: cl_int clSetKernelArg (cl_kernel kernel, cl_uint arg_index, size_t *arg_size, const void *arg_value)(cl_program program, cl_uint num_devices, const cl_device_id *device_list, const char *options, void (CL_CALLBACK*pfn_notify)(cl_program program, void *user_data), void *user_data)
  • 40. OpenCL trên window  Xem thông tin Kernel: cl_int clGetKernelInfo (cl_kernel kernel, cl_kernel_info param_name, size_t param_value_size, void *param_value, size_t *param_value_size_ret)  Giải phóng đối tượng Kernel: cl_int clReleaseKernel (cl_kernel kernel)  Theo dõi trạng thái Kernel: cl_int clRetainKernel (cl_kernel kernel)
  • 41. OpenCL trên window  Hướng dẫn cài đặt, cấu hình CUDA và OpenCL trên Visual Studio 2010.  Các bước làm.
  • 42. Bước 1  Vào đường link: developer.nvidia.com
  • 44. Bước 3  Chọn hẹ điều hành đang sử dụng để chạy
  • 45. Bước 4  Tiến hành cài đặt Cuda
  • 46. Bước 5  Tạo project mới trong visual studio 2010
  • 47. Bước 6  Thực hiện đặt tên project như hình sau
  • 48. Demo  Đang cập nhật …
  • 51. Tài liệu tham khảo [1]. AaftabMunshi,BenedictR.Gaster,TimothyG.Mattson,JamesFung,DanGinsburg.OpenCL programmingguide. [2].OpenCLOverview -http://www.khronos.org/assets/uploads/developers/library/overview/opencl-overview.pdf [3].The OpenCLSpecification -KhronosGroup - http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf [4].An Introductionto the OpenCLProgrammingModel, JonathanTompeson,Kristofer Schlachter
  • 52. CẢM ƠN THẦY VÀ CÁC BẠN ĐÃ LẮNG NGHE