6. Phương pháp nghiên cứu
2.3.3.2. Tiến hóa của kiến trúc GPU
Các đường ống chức năng cố định thiếu tính tổng quát để có biểu diễn hiệu quả các trường hợp làm bóng mờ phức tạp hơn và các phép toán ánh sáng, mà đó lại là những điều kiện tiên quyết cho các hiệu ứng phức tạp. Bước then chốt trên đã được thay thế bằng các hàm cố định chức năng trên mỗi vector và các phép toán trên mỗi mảnh với chương trình chỉ định người sử dụng chạy trên từng vector và từng mảnh. Trong hơn sáu năm qua, các chương trình vector và chương trình mảnh đã có ngày càng nhiều khả năng, với giới hạn lớn hơn về kích cỡ và tiêu thụ tài nguyên, với bộ chỉ thị (tập lệnh) đầy đủ tính năng, và với các phép toán điều khiển luồng linh hoạt hơn. Sau nhiều năm của các bộ chỉ thị lệnh riêng rẽ cho các phép toán trên vector và ảnh, GPU hiện tại hỗ trợ mô hình bóng mờ thống nhất 4.0 (unified Shader Model 4.0) trên cả bóng mờ vector và mảnh:
• Các phần cứng phải hỗ trợ các chương trình đổ bóng mờ ít nhất là 65 nghìn (65k) chỉ thị tĩnh và chỉ thị động không giới hạn.
• Các tập lệnh, lần đầu tiên, hỗ trợ cả số nguyên 32 bit và số dấu phảy động 32 bit.
• Các phần cứng phải cho phép số lượng tùy ý thao tác đọc trực tiếp và gián tiếp từ bộ nhớ toàn cục (kết cấu - texture).
• Cuối cùng, điều khiển luồng động trong các dạng vòng lặp và rẽ nhánh phải được hỗ trợ.
Khi mô hình đổ bóng ra đời và phát triển mạnh hơn, tất cả các loại ứng dụng GPU đã tăng độ phức tạp chương trình vector và mảnh, kiến trúc GPU ngày càng tập trung vào các bộ phận lập trình được của đường ống dẫn đồ họa. Quả thực, trong khi các thế hệ trước đây của GPU có thể được mô tả chính xác nhất như là phần thêm vào khả năng lập trình được cho đường ống chức năng cố định, GPU ngày nay được khắc họa tốt hơn, như là công cụ lập trình được bao quanh bởi các đơn vị hỗ trợ có chức năng cố định. [1]