Click vào để trở lại trang tin
FB | DIỄN ĐÀN | TRANG TIN | THỊ TRƯỜNG | TÌM KIẾM      

Go Back   macvn.com > Macintosh OS > Mac Programming
Đăng ký Hỏi/Ðáp Thành Viên Lịch Ðánh Dấu Ðã Ðọc

Mac Programming Lập trình trên Mac, cùng chia sẻ kinh nghiệm, ý tưởng và sản phẩm.

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 12-01-2010, 23:00 PM   #11
Constance
Táo... chưa chín!
 
Constance's Avatar
 
Tham gia: Dec 2007
Thứ tự: 3592
iĐangCó: MC976
Bài: 2,079
Cảm ơn: 2,197
Được cảm ơn 2,232 lần / 972 bài.
Constance is on a distinguished road
Default

Trích:
Nguyên văn bởi CAM View Post
mình chưa xem file ppt và đã đọc hết pdf rùi, cái món này chắc không ai dám 'xơi', hoho, ở đây programmer như constance mình đoán không nhiều, nhưng constance có thể post 1 vài bài tập dễ dễ (mình không biết làm đâu) vì muốn xem tác dụng thực tế của bài tập dạng này,

Cảm ơn trước,
Thực tế đơn giản của bài tập dạng này thì có lẽ kinh điển nhất là bài toán nhân ma trận. Giả sử ta có 2 ma trận A và B với kích thước bất kỳ nhưng đảm bảo thỏa đúng A (m x n) và B (n x p). Khi đó thực hiện bài toán nhân 2 ma trận theo cách tính tuần tự ta phải cần ít nhất 2 vòng lặp: vòng lặp đầu tiên duyệt ta duyệt qua các hàng ngang của ma trận thứ nhất. Trong mỗi lần lặp như vậy lại duyệt tiếp qua các hàng dọc của ma trận thứ hai để tổng các tích cho từng giá trị trên ma trận đích tương ứng --> tốn thêm một vòng lặp nữa. Nhưng nếu thực hiện song song theo cách code của OpenCL thì ta chỉ cần mỗi work-item làm việc tương ứng với từng phần tử trên ma trận đích thực hiện việc cộng tổng các tích trên một hàng của A và một cột của B lại để ra kết quả, như vậy phép tính sẽ nhanh hơn vì mỗi work-item làm việc song song với work-item khác. Cách đó gọi là nhân ma trận theo kiểu lát gạch.

Hoặc đơn giản hơn ta có thể thực hiện phép cộng ma trận A và B với nhau cho ra ma trận C. Nếu tuần tự thì ta duyệt từng hàng và từng cột trên 2 ma trận, cộng lại rồi cho ra kết quả trên C. Nhưng nếu song song trên OpenCL thì ta hoàn toàn làm theo kiểu: mỗi work-item là một phần tử trên ma trận C (giả sử work-item x nào đó), tức là C[x] = A[x] + B[x], một lệnh duy nhất được thực hiện đồng thời cho tất cả phần tử trên mảng C.

P/S: MacVN mình toàn "chân nhân bất lộ tướng" không đó bác, em gà múa rìu qua mắt thợ thôi hehe.
__________________
Nhà nghèo chỉ xài đồ cùi:

- MacBook Pro 15.4" with Retina display (Mid 2012), 2.7GHz quad-core Intel Core i7 (Turbo Boost up to 3.7GHz) with 8MB L3 Cache, 16GB 1600MHz memory, 768GB SSD, VGA Intel HD Graphics 4000 + NVIDIA GeForce GT 650M with 1GB of GDDR5 memory with hi-resolution (2880x1800) IPS LED-backlit wide-screen display, TrackPad with Multi-touch, 4.46 pounds (2.02 kg) weight.
Constance vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
5 thành viên sau đây cảm ơn bạn Constance đã viết bài có ích này:
AquariusIV (27-09-2011), CAM (13-01-2010), manleviet (22-05-2010), okiechiatay (10-04-2010), slk_at (22-08-2011)
Old 16-05-2013, 23:03 PM   #12
buithuyen
iNewbie
 
Tham gia: Mar 2013
Thứ tự: 78524
iĐangCó:
Bài: 1
Cảm ơn: 1
Được cảm ơn 0 lần / 0 bài.
buithuyen is on a distinguished road
Default

xem hộ mình link slide nhé. thanks
buithuyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Ðiều Chỉnh
Xếp Bài

Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 15:23 PM.


Powered by: vBulletin v3.8.7 & Copyright © 2013, Jelsoft Enterprises Ltd.
MacVN không chịu trách nhiệm cho nội dung trên đây