VNZ-ROAD
NEXTVNZ
Sự Khác Nhau Giữa Nvidia Quadro Và Nvidia GeForce
Điểm khác biệt đáng chú ý thứ nhất của 2 dòng card này là card Nvidia Quadro ( dùng để thiết kế đồ họa còn card Nvidia GeForce dùng để chơi game
Điểm khác biệt đáng chú ý thứ hai là giá thành Nvidia Quadro và Nvidia Geforce khá lớn do sự khác biệt về phần cứng của 2 loại card này.
1. Tính năng khử răng cưa cho các đường thẳng và điểm.
Card quadro hỗ trợ tính năng khử răng cưa ngay từ phần cứng, trong khi card màn hình chơi game thì không hỗ trợ tính năng này.
Vì được xử lý từ phần cứng nên khi so sánh với card chơi game thông thường, tính năng này giúp tăng tốc đáng kể quá trình hiển thị các khung dây trong màn hình thao tác của các phần mềm thiết kế kĩ thuật và mỹ thuật.
Phương pháp hiển thị dạng khung dây là cách để người thiết kế quan sát các cấu trúc bên trong vật thể và nó là một trong những thủ tục được sử dụng khá nhiều trong quá trình làm việc với các phần mềm đồ họa CG.
2. Thuật toán logic.
GPU của card quadro hỗ trợ các thuật toán logic của openGL ngay từ phần cứng.
Các thuật toán logic này nằm ngay cuối cùng các giai đoạn xử lý trước khi ghi vào bộ nhớ đệm Frame buffer và hiển thị ra màn hình, các thuật toán này giúp cho việc tính toán để quyết định vật nào không bị che lấp và sẽ hiển thị, vật nào bị che khuất và không hiển thị, tạo đường đứt nét thể hiện vật thể khuất, làm sáng lên các vật thể được chọn bằng con trỏ chuột v.v…
Chính việc hỗ trợ từ phần cứng thuật toán logic open GL tạo ra ưu thế của card quadro so với card chơi game trong các phần mềm sử dụng engine openGL.
3. Clip region
Đối với các card được thiết kế để chơi game, khi bạn chơi một game, thông thường game đó sẽ choán toàn bộ vùng hiển thị màn hình ở chế độ full screen.
Tuy nhiên trong môi trường làm việc, thông thường bạn phải làm việc với nhiều cửa sổ chương trình, nhiều hộp thoại, các cửa sổ bung ra (pop up). Chính vì vậy lượng thông tin ghi vào bộ nhớ đệm khung hình frame buffer sẽ bị quá tải và ảnh hưởng đến hiệu năng.
Card quadro hỗ trợ tính năng clip region từ phần cứng
Tính năng Clip region là tính năng sẽ quyết định: nếu cửa số chương trình không bị che bởi cửa sổ khác thì toàn bộ thông tin vùng hiển thị của nó từ bộ nhớ mầu color buffer sẽ gửi tới bộ nhớ đệm khung hình Frame buffer.
Còn nếu nó bị che bởi các cửa sổ khác thì phần không bị che sẽ bị chia nhỏ ra thành các vùng vuông nhỏ hơn và gửi tới bộ nhớ đệm khung hình Frame buffer, việc này làm giảm lượng dữ liệu gửi tới bộ nhớ đệm.
Các ô vuông nhỏ hơn đó gọi là clip region. Card chơi game chỉ cần quản lý một phần mềm đó là game đang chơi, vậy nên nó chỉ hỗ trợ một clip region, trong khi card quadro có thể lên đến 8 clip region.
4. Clip plane
Card quadro hỗ trợ tăng tốc từ phần cứng đối với tính năng clip plane.
Tính năng clip plane là một tính năng được sử dụng rất nhiều trong các chương trình CAD chuyên nghiệp, nó cho phép người dùng định nghĩa một mặt cắt để cắt vật thể ra và nhìn vào bên trong cơ cấu của nó.
Việc hỗ trợ từ phần cứng giúp tăng tốc đáng kể đối với card quadro trong các tính năng cụ thể này.
5. Quản lý và tối ưu hóa sử dụng bộ nhớ RAM.
Card quadro cho phép quản lý bộ nhớ và chia sẻ bộ nhớ giữa phần mềm làm việc hiện hành và các ứng dụng khác một cách hiệu quả hơn.
Card định hướng cho các game thường chỉ phải quản lý một phần mềm duy nhất, đó chính là game đang chơi ở chế độ full màn hình nên không cần phải tối ưu tính năng chia sẻ tài nguyên bộ nhớ.
Trong các tình huống nhu cầu sự dụng bộ nhớ ở mức bình thường.
Cấu trúc của GPU workstation NVDIA sử dụng một loại bộ nhớ chia sẻ chung có tốc độ cao chuyên dụng gọi là Unified Memory Architecture (UMA).
UMA chứa rất nhiều loại bộ nhớ đệm đồ họa như bộ nhớ đệm khung hình, bộ nhớ đệm vân, và dữ liệu. So sánh với các GPU khác chúng sử dụng các bộ nhớ riêng rẽ cho các bộ đệm khung hình, vân và danh sách hiển thị.
Cách tiếp cận của nvidia có ưu thế hơn ở chỗ nó sẽ tận dụng tối đa nguồn lực phần cứng. Khi một bộ đệm không sử dụng hết bộ nhớ thì rõ ràng phần bộ nhớ còn thừa sẽ dùng cho bộ đệm khác chứ không để lãng phí và không dùng đến (điều này thường gắp trong các tình huống sử dụng bộ nhớ ở mức thông thường).
Trong cá tình huống yêu cầu bộ nhớ nhiều.
Trong một số tình huống, khi phần mềm yêu cầu nhiều bộ nhớ hơn, chẳng hạn như tình huống hiển thị 3D.
Lúc này phần mềm phải tạo ra thông tin hình ảnh ở hai góc nhìn khác nhau (quad – buffered stereo) thì bộ nhớ cho mỗi bộ đệm tăng lên gấp đôi, cũng có nghĩa là ở các GPU khác phần thừa cho bộ nhớ của mỗi bộ đệm cũng tăng lên gấp đôi, số tiền lãng phí cho bộ nhớ thừa không được sử dụng này cũng tăng lên gấp đôi.
Nhờ sử dụng UMA nên quadro giúp hạn chế việc lãng phí này không bị nhân đôi lên.
Một tính năng khác cũng làm tăng đáng kể yêu cầu bộ nhớ đó là khử răng cưa ở chế độ toàn màn hình. Tính năng này hay được dùng ở các phần mềm mô phỏng hình ảnh (mô phỏng dòng chảy, động đất, bão, v.v..).
Ngoài ra việc mở nhiều cửa sổ chương trình chạy cùng lúc cũng làm tăng đáng kể nhu cầu sử dụng bộ nhớ đồ họa điều này rất thường thấy ở các ứng dụng chuyên nghiệp. Cơ chế quản lý tối ưu hóa việc sử dụng bộ nhớ của Quadro rất quan trọng đối với các phần mềm, vì nó chẳng những xắp xếp hiệu quả việc sử dụng bộ nhớ ở mức yêu cầu cao mà còn tránh lãng phí tài nguyên phần cứng đắt đỏ ở mức nhu cầu thấp.
Cơ chế quản lý bộ nhớ của quadro giúp sử dụng bộ nhớ hiệu quả hơn và giúp tránh hiện tượng sụt giảm nghiêm trọng hiệu năng sử dụng cũng như bị out chương trình do quá tải bộ nhớ đồ họa (có thể xảy đến với card consumer.
Cơ chế này sẽ theo dõi số phần mềm sử dụng bộ nhớ đồ họa, độ phân giải màn hình đang sử dụng, v.v… ngay khi có sự tăng yêu cầu sử dụng bộ nhớ, nó sẽ giới hạn các yếu tố cần thiết như: vùng hiển thị openGL ở độ phân giải 600×600 bất kể độ phân giải màn hình hiện tại, hoặc giảm kích cỡ của tam giác ở mức 1 pixel(các hình khối 3D bị giới hạn bởi bề mặt nối bởi các tam giác cơ sở) để tránh làm ảnh hưởng đến tốc độ điền đầy khung hình.
6. Chiếu sáng hai chiều.
Các GPU quadro hỗ trợ chiếu sáng hai chiều, vật thể 3D trong môi trường máy tính được đặc tả bới một loạt các tam giác trên bề mặt và các vector pháp tuyến của các tam giác đó. Sau đó sẽ gán vào một hệ tọa độ ba chiều và chiếu lên một mặt phẳng hiển thị 2D đưa ra màn hình.
Các thành phần của ánh sáng
Mầu sắc của một điểm hiển thị trên màn hình sẽ bị ảnh hưởng bởi các phép tín toán ánh sáng mô phỏng môi trường thực. Các phép toán về ánh sáng sử dụng ba thành phần để mô phỏng vật thể trông như thế nào trong môi trường thực tế:
Ambient: có thể tạm hiểu là đặc tả hình dạng bao của vật thể, nó không bị ảnh hưởng bởi góc nhìn hay phương vị của nguồn sáng.
Diffuse: diễn tả các vùng trên vật thể sẽ được chiếu sáng hoặc không bị chiếu sáng tùy theo góc độ và khoảng cách đến nguồn sáng mà không phụ thuộc vào góc độ của người quan sát.
Specular: mô tả các vùng trên vật thể bị chiếu sáng nhưng bị ảnh hưởng cả bởi yếu tố phương vị so với nguồn sáng và phương vị so với người quan sát (hiểu nôm nà đây chính là các vệt phản chiếu, tùy vào tính chất bề mặt vật thể nó sẽ rõ hoặc mờ, rộng hoặc hẹp).
Để tối đa hóa độ trung thực, sự phân phối giữa ba yếu tố trên sẽ được điều chỉnh. Chế độ mặc định của OpenGl phân phối 20 phần trăm cho ambient, 100 phần trăm cho cả Diffuse và specular.
Do đó diffuse và specular luôn chiếm phần nhiều hơn so với ambient. Tuy nhiên thật không may là tỉ lệ này và giả định trong các phép tính chiếu sáng có thể gây ra vài vấn đề về hiển thị trực quan.
7. Tính năng xử lý sự chồng lấp các mặt phẳng đồ họa (overlay plane).
Giao diện người dùng của đa phần các phần mềm yêu cầu tính năng này vẽ liên tục bên trên các mô hình 3D hoặc khung cảnh
Vấn đề về con trỏ.
Ví dụ rõ ràng nhất là con trỏ, nó phải được vẽ ra ở lớp bên trên các vật thể 3D và cửa sổ chương trình. Con trỏ có phần cứng riêng cho phép nó di chuyển và tương tác với vật thể 3D và hoạt động độc lập với các thành phần khác trên màn hình.
Tuy nhiên đổi lại là kích thước của con trỏ bị giới hạn ở mức 32×32 pixel. Nếu kích cỡ lớn hơn nó sẽ gây sụt giảm hiệu năng.
Vấn đề về các trình đơn.
Các menu trình đơn xổ ra ngay bên trên cửa sổ OpenGL nó có thể làm cho các nội dung mà nó che đi bị hỏng và có thể thấy rõ chúng ảnh hưởng đến hiệu năng.
Đó là bởi vì nội dung các trình đơn xổ ra này bị gi đè lên một cách tạm thời vào vùng mà nó che đi.
Bạn thấy rõ điều này khi đang chơi game 3D full màn hình với card consumer mà có ai đó buzz yahoo, cửa sổ chat của yahoo bung ra làm cho nội dung game dưới cửa sổ đó bị mất đi, chỉ còn lại vệt đen, hiệu năng game lúc đó cũng bị suy giảm nghiêm trọng, nhiều hàng game thậm chí tháo cả nút window trên bàn phím để tránh bấm nhầm vào khi đang chơi game.
Các yếu tố cơ bản trên kết hợp lại tạo ra hình ảnh của vật thể tương tự như trong môi trường thật.
8. Hỗ trợ Quad-Buffered Stereo.
Card quadro hỗ trợ quad-bufered stereo trong khi các card chơi game không hỗ trợ.
Một số phần mềm hỗ trợ tạo ảnh nổi để người xem quan sát thông qua loại kính đặc biệt (màn trập).
Việc tạo ảnh nổi này đòi hỏi phải tạo ra hình ảnh của vật thể từ hai góc nhìn khác nhau. Một trong những cách hay được sử dụng để tạo ảnh nổi là thông qua tính năng quad-buffered stereo GpenGL.
Nó tạo bộ đệm cho các góc phía trước-bên trái, phía trước-bên phải, phía sau-bên trái, phía sau-bên phải. Khi phần mềm tạo hình ảnh nổi, nó kiểm tra xem thiết bị phần cứng có hỗ trợ quad-buffered stereo hay không đồng thời chọn bộ đệm thích hợp.
Việc support từ phần cứng giúp tăng tốc đáng kể quá trình xử lý và giữ tỉ lệ làm tươi khung hình ở mức cao nhất, nếu tỉ lệ làm tươi khung hình bị suy giảm xuống dưới mức thời gian lưu ảnh trên võng mạc mắt người cho phép thì sẽ mất hiệu ứng độ sâu ba chiều.
9. Tối ưu hóa với bộ xử lý Intel
Quadro tối ưu hóa để hỗ trợ tập lệnh SSEII và kiến trúc Netburst của vi xử lý Intel
Các bộ xử lý intel đời mới hỗ trợ tập lệnh SSEII giúp các nhà phát triển ứng dụng tăng tính mềm dẻo và tăng khả năng để cải thiện hiệu năng của phần mềm. Đặc biệt điều này rất hữu dụng cho các ứng dụng đồ họa 3D cần truy xuất song song và liên tục bộ nhớ. Điều này cũng đúng cho các phần mềm chuyên nghiệp.
Vi kiến trúc Netburst của intel giúp các tiến trình thực thi ở tần số cao và tăng khả năng cải thiện hiệu năng cho tần số cao hơn trong tương lai.
Driver của NVIDA tối ưu hóa để CPU tham gia thực thi một phần nhỏ trong quá trình truyền dữ liệu cho danh sách hiển thị và xắp xếp các đỉnh.
Vậy nên, bất kì cải thiện nào trong cấu trúc CPU cũng có một chút ảnh hưởng đến hiệu năng chung. Mặc dù CPU mạnh có thể hỗ trợ cả GPU chơi game và GPU quadro, ứng dụng chuyên nghiệp sử dụng chế độ đồ họa trực tiếp và cải thiện hiệu năng làm việc của người dùng chuyên nghiệp.
10. Kiến trúc driver thống nhất (UDA)
Kiến trúc driver thống nhất cho phép một driver của NVIDA sử dụng được với một dải rộng các thiết bị phần cứng của NVIDIA.
Điều này nghe có vẻ khó chấp nhận, vì như thế nó có nghĩa là card quadro và card chơi game của NVIDIA không có gì khác nhau cả.
Điều này có nghĩa là về mặt kiến trúc giữa Quadro và Geforce là không mấy khác nhau. Do vậy có thể dùng các loại card này thay thế cho nhau nhưng phải custom lại driver để hoạt động và hiệu năng thì chắc chắn không bằng card chuyên dụng.
Sự khác nhau giữa GPU Quadro và Geforce
Câu hỏi dường như khó trả lời đối với hầu hết chúng ta. Nhiều người luôn thắc mắc tại sao những chiếc Card đồ họa dòng Quadro sử dụng nhân GPU mã GM204 như Quadro M5000M lại có giá chênh lệch hơn so với các dòng Geforce GTX 970M/980M mặc dù cùng nhân đồ họa.
Một số khác lại thắc mắc “Vậy chúng khác nhau thế nào?” hoặc “Sao chúng ta không dùng Quadro M5000M cho Laptop Gaming hoặc ngược lại GTX 970M/980M cho Laptop WorkStation?”. Chúng ta sẽ cùng tìm hiểu vấn đề này qua bài viết bên dưới.
Nhu cầu công việc
Card Quadro được thiết kế cho các ứng dụng chuyên nghiệp, đưa vào phần cứng các thuật toán để xử lý các chức năng thường gặp trong các phần mềm chuyên nghiệp để cải thiện hiệu năng (vì tốc độ xử lý phần cứng nhanh hơn tốc độ xử lý trên phần mềm rất nhiều). Nhưng cũng vì vậy card Quadro thường bị nhồi nhét quá nhiều các xử lý phần cứng làm cho giá thành nó tăng lên rất nhanh, nó khác với nhân đồ họa của các dòng Geforce vốn được thiết kế để có công năng rất đa dạng, làm nhiều loại nhiệm vụ mà không chuyên biệt cho bất kỳ tác vụ nào.
Card đồ họa Nvidia Quadro 5000M trên Laptop
Chẳng hạn như bạn vẫn có thể sử dụng card đồ họa dòng Geforce để chơi game lẫn thay thế Quadro làm các tác vụ chuyên biệt. Tuy nhiên, để nghiêm túc trong việc khai thác hiệu năng xử lý mạnh mẽ nhằm phục vụ các ứng dụng chuyên nghiệp - ở đây có thể ví dụ như các ứng dụng đồ họa, dựng 3D hoặc dựng phim yêu cầu hiệu năng xử lý mạnh - thì với dòng Geforce vốn được thiết kế không thiêng cho bất kỳ mục đích nào, chỉ cần nhanh là được, giống như game chẳng hạn.
Quadro hơn Geforce những gì?
Việc cải thiện hiệu năng của các dòng Card Quadro nhằm vào tối ưu sử dụng tài nguyên phần cứng đắt đỏ, sử dụng tài nguyên thông minh hơn. Trong khi card Gef vì không nhắm vào một đối tượng phần mềm cụ thể nào nên nó chỉ có cách duy nhất cải thiện hiệu năng là tăng tốc độ xử lý của GPU, tăng thêm RAM, ngốn điện hơn, nóng hơn và để đảm bảo giá thành không đội lên quá cao nên chất lượng và tuổi thọ linh kiện cũng tương đối.
Nvidia Geforce GTX 980M trên mẫu Clevo
Chẳng hạn có thể liệt kê một số ứng dụng chỉ có trên dòng Quadro nhằm khai thác hết sức mạnh của nhân kiến trúc CUDA
Chip Quadro của phiên bản PC để bàn
Điểm khác biệt dễ nhận biết giữa Quadro và Geforce
Tính năng khử răng cưa cho các đường thẳng và điểm
Card Quadro hỗ trợ tính năng khử răng cưa ngay từ phần cứng. trong khi card Geforce với mục đích chủ yếu là gaming thì không hỗ trợ tính năng này. Vì được xử lý từ phần cứng nên khi so sánh với dòng Geforce thông thường, tính năng này giúp tăng tốc đáng kể quá trình hiển thị các khung dây trong màn hình thao tác của các phần mềm thiết kế kĩ thuật và mỹ thuật.
Thuật toán logic
GPU của các dòng Quadro được hỗ trợ các thuật toán logic của OpenGL ngay từ phần cứng. Cải thiện hiệu năng, tốc độ xử lý đáng kể nếu so với các dòng Geforce vốn chỉ được hỗ trợ Engine của OpenGL - tức phải cài đặt thêm thông qua ứng dụng thứ 3 hoặc Driver - chứ không phải phần cứng.
Clip plane
Đây là một tính năng hữu ích cho những bạn thường sử dụng phần mềm vẽ 3D như AutoCAD khi sử dụng các dòng Card Quadro hỗ trợ tăng tốc từ phần cứng đối với tính năng Clip Plane. Đây là tính năng trong các chương trình CAD chuyên nghiệp, cho phép người dùng định nghĩa một mặt cắt để cắt vật thể ra và nhìn vào bên trong cơ cấu của nó.
Quản lý và tối ưu hóa sử dụng bộ nhớ RAM
Card Quadro quản lý bộ nhớ và chia sẻ bộ nhớ giữa phần mềm làm việc hiện hành và các ứng dụng khác hiệu quả hơn so với các dòng Geforce thường quản lý 1 soft duy nhất là game đang chơi ở full màn hình nên không cần phải tối ưu tính năng chia sẻ tài nguyên bộ nhớ.
Cấu trúc của Geforce sử dụng một loại bộ nhớ chia sẻ chung có tốc độ cao chuyên dụng gọi là Unified Memory Architecture (UMA). Cơ chế quản lý bộ nhớ UMA giúp sử dụng bộ nhớ hiệu quả hơn (khi một bộ đệm không sử dụng hết bộ nhớ thì rõ ràng phần bộ nhớ còn thừa sẽ dùng cho bộ đệm khác chứ không để lãng phí và không dùng đến)và giúp tránh hiện tượng sụt giảm nghiêm trọng hiệu năng sử dụng cũng như bị out chương trình do quá tải bộ nhớ đồ họa (có thể xảy đến với card consumer).
Sự khác biệt giữa Card đồ hoạ Quadro và Geforce
Để giúp các bạn hiểu rõ hơn sự khác biệt của hai loại card này, chúng tôi đưa ra bản dịch tài liệu Quadro vs Geforce của NVIDIA. Tài liệu này được công bố năm 2003, tuy nhiên đến hiện tại nó vẫn có giá trị. Vì tài liệu được công bố khá lâu trước đây, nên chúng tôi sẽ chỉ trích dẫn nhưng thông tin vẫn còn giá trị đến hiện thời.
Sau đây là các điểm khác biệt chính trong phần cứng của hai loại card làm cho giá của hai loại này khác biệt nhau:
1. Tính năng khử răng cưa cho các đường thẳng và điểm.
Đa phần người dùng các phần mềm đồ họa đều đã có hiểu biết nhất định về hiện tượng răng cưa của hình ảnh trên màn hình máy tính, vì vậy chúng tôi sẽ không giải thích thêm về hiện tượng này.
Card quadro hỗ trợ tính năng khử răng cưa ngay từ phần cứng. trong khi card chơi game thì không hỗ trợ tính năng này.
Vì được xử lý từ phần cứng nên khi so sánh với card chơi game thông thường, tính năng này giúp tăng tốc đáng kể quá trình hiển thị các khung dây trong màn hình thao tác của các phần mềm thiết kế kĩ thuật và mỹ thuật. Phương pháp hiển thị dạng khung dây là cách để người thiết kế quan sát các cấu trúc bên trong vật thể và nó là một trong những thủ tục được sử dụng khá nhiều trong quá trình làm việc với các phần mềm đồ họa CG.
Bên trái là sự hiển thị của hình ảnh chưa khửa răng cưa và bên phải là đã được khử răng cưa.
Hình minh họa khi sử dụng và không sử dụng khử răng cưa cho các chương trình đồ họa.
2. Thuật toán logic.
GPU của card workstation hỗ trợ các thuật toán logic của openGL ngay từ phần cứng.
Các thuật toán logic này nằm ngay cuối cùng các giai đoạn xử lý trước khi ghi vào bộ nhớ đệm Frame buffer và hiển thị ra màn hình, các thuật toán này giúp cho việc tính toán để quyết định vật nào không bị che lấp và sẽ hiển thị, vật nào bị che khuất và không hiển thị, tạo đường đứt nét thể hiện vật thể khuất, làm sáng lên các vật thể được chọn bằng con trỏ chuột v.v… Chính việc hỗ trợ từ phần cứng thuật toán logic open GL tạo ra ưu thế của GPU workstation so với card chơi game trong các phần mềm sử dụng engine openGL.
Chu trình xử lý của openGL, chi tiết tham khảo thêm tài liệu The OpenGL programming guide.
Các phần mềm đồ họa đa phần đều sử dụng openGL để hiển thị các đối tượng trên màn hình bao gồm cả các phần mềm hỗ trợ thiết kế cơ khí MCAD (mechanical computer-aided design) và các phần mềm tạo nội dung số DCC (digital content creation).
Một số ví dụ về phần mềm MCAD như: inventor, Catia, Cimatron, Proengineer v.v…
Một số ví dụ về phần mềm DCC như: 3Dmax, cinema 4D, Maya .v.v…
3. Clip region
Đối với các card được thiết kế để chơi game, khi bạn chơi một game, thông thường game đó sẽ choán toàn bộ vùng hiển thị màn hình ở chế độ full screen. Tuy nhiên trong môi trường làm việc, thông thường bạn phải làm việc với nhiều cửa sổ chương trình, nhiều hộp thoại, các cửa sổ bung ra (pop up). Chính vì vậy lượng thông tin ghi vào bộ nhớ đệm khung hình frame buffer sẽ bị quá tải và ảnh hưởng đến hiệu năng.
Card workstation hỗ trợ tính năng clip region từ phần cứng
Tính năng Clip region là tính năng sẽ quyết định: nếu cửa số chương trình không bị che bởi cửa sổ khác thì toàn bộ thông tin vùng hiển thị của nó từ bộ nhớ mầu color buffer sẽ gửi tới bộ nhớ đệm khung hình Frame buffer. Còn nếu nó bị che bởi các cửa sổ khác thì phần không bị che sẽ bị chia nhỏ ra thành các vùng vuông nhỏ hơn và gửi tới bộ nhớ đệm khung hình Frame buffer. Việc này làm giảm lượng dữ liệu gửi tới bộ nhớ đệm. Các ô vuông nhỏ hơn đó gọi là clip region. Card chơi game chỉ cần quản lý một phần mềm đó là game đang chơi, vậy nên nó chỉ hỗ trợ một clip region. Trong khi card Workstation có thể lên đến 8 clip region
4. Clip plane
Card workstation hỗ trợ tăng tốc từ phần cứng đối với tính năng clip plane
Tính năng clip plane là một tính năng được sử dụng rất nhiều trong các chương trình CAD chuyên nghiệp, nó cho phép người dùng định nghĩa một mặt cắt để cắt vật thể ra và nhìn vào bên trong cơ cấu của nó. Việc hỗ trợ từ phần cứng giúp tăng tốc đáng kể đối với card workstation trong các tính năng cụ thể này.
5. Quản lý và tối ưu hóa sử dụng bộ nhớ RAM.
card workstation cho phép quản lý bộ nhớ và chia sẻ bộ nhớ giữa phần mềm làm việc hiện hành và các ứng dụng khác một cách hiệu quả hơn. Trong khi card định hướng cho các game thường chỉ phải quản lý một phần mềm duy nhất, đó chính là game đang chơi ở chế độ full màn hình nên không cần phải tối ưu tính năng chia sẻ tài nguyên bộ nhớ.
Trong các tình huống nhu cầu sự dụng bộ nhớ ở mức bình thường.
Cấu trúc của GPU workstation NVDIA sử dụng một loại bộ nhớ chia sẻ chung có tốc độ cao chuyên dụng gọi là Unified Memory Architecture (UMA). UMA chứa rất nhiều loại bộ nhớ đệm đồ họa như bộ nhớ đệm khung hình, bộ nhớ đệm vân, và dữ liệu. So sánh với các GPU khác chúng sử dụng các bộ nhớ riêng rẽ cho các bộ đệm khung hình, vân và danh sách hiển thị. Cách tiếp cận của nvidia có ưu thế hơn ở chỗ nó sẽ tận dụng tối đa nguồn lực phần cứng. Khi một bộ đệm không sử dụng hết bộ nhớ thì rõ ràng phần bộ nhớ còn thừa sẽ dùng cho bộ đệm khác chứ không để lãng phí và không dùng đến (điều này thường gắp trong các tình huống sử dụng bộ nhớ ở mức thông thường).
Trong cá tình huống yêu cầu bộ nhớ nhiều.
Trong một số tình huống, khi phần mềm yêu cầu nhiều bộ nhớ hơn, chẳng hạn như tình huống hiển thị 3D, phần mềm phải tạo ra thông tin hình ảnh ở hai góc nhìn khác nhau (quad – buffered stereo) thì bộ nhớ cho mỗi bộ đệm tăng lên gấp đôi, cũng có nghĩa là ở các GPU khác phần thừa cho bộ nhớ của mỗi bộ đệm cũng tăng lên gấp đôi, số tiền lãng phí cho bộ nhớ thừa không được sử dụng này cũng tăng lên gấp đôi. Nhờ sử dụng UMA nên quadro giúp hạn chế việc lãng phí này không bị nhân đôi lên.
Một tính năng khác cũng làm tăng đáng kể yêu cầu bộ nhớ đó là khử răng cưa ở chế độ toàn màn hình. Tính năng này hay được dùng ở các phần mềm mô phỏng hình ảnh (mô phỏng dòng chảy, động đất, bão, v.v..). Ngoài ra việc mở nhiều cửa sổ chương trình chạy cùng lúc cũng làm tăng đáng kể nhu cầu sử dụng bộ nhớ đồ họa (điều này rất thường thấy ở các ứng dụng chuyên nghiệp. Cơ chế quản lý tối ưu hóa việc sử dụng bộ nhớ của Quadro rất quan trọng đối với các phần mềm, vì nó chẳng những xắp xếp hiệu quả việc sử dụng bộ nhớ ở mức yêu cầu cao mà còn tránh lãng phí tài nguyên phần cứng đắt đỏ ở mức nhu cầu thấp.
Cơ chế quản lý bộ nhớ của quadro giúp sử dụng bộ nhớ hiệu quả hơn và giúp tránh hiện tượng sụt giảm nghiêm trọng hiệu năng sử dụng cũng như bị out chương trình do quá tải bộ nhớ đồ họa (có thể xảy đến với card consumer).
Cơ chế này sẽ theo dõi số phần mềm sử dụng bộ nhớ đồ họa, độ phân giải màn hình đang sử dụng, v.v… ngay khi có sự tăng yêu cầu sử dụng bộ nhớ, nó sẽ giới hạn các yếu tố cần thiết như: vùng hiển thị openGL ở độ phân giải 600×600 bất kể độ phân giải màn hình hiện tại, hoặc giảm kích cỡ của tam giác ở mức 1 pixel(các hình khối 3D bị giới hạn bởi bề mặt nối bởi các tam giác cơ sở) để tránh làm ảnh hưởng đến tốc độ điền đầy khung hình.
6. Chiếu sáng hai chiều.
Các GPU quadro hỗ trợ chiếu sáng hai chiều
Vật thể 3D trong môi trường máy tính được đặc tả bới một loạt các tam giác trên bề mặt và các vector pháp tuyến của các tam giác đó. Sau đó sẽ gán vào một hệ tọa độ ba chiều và chiếu lên một mặt phẳng hiển thị 2D đưa ra màn hình.
Các thành phần của ánh sáng
Mầu sắc của một điểm hiển thị trên màn hình sẽ bị ảnh hưởng bởi các phép tín toán ánh sáng mô phỏng môi trường thực. Các phép toán về ánh sáng sử dụng ba thành phần để mô phỏng vật thể trông như thế nào trong môi trường thực tế:
Ambient: có thể tạm hiểu là đặc tả hình dạng bao của vật thể, nó không bị ảnh hưởng bởi góc nhìn hay phương vị của nguồn sáng.
Diffuse: diễn tả các vùng trên vật thể sẽ được chiếu sáng hoặc không bị chiếu sáng tùy theo góc độ và khoảng cách đến nguồn sáng mà không phụ thuộc vào góc độ của người quan sát.
Specular: mô tả các vùng trên vật thể bị chiếu sáng nhưng bị ảnh hưởng cả bởi yếu tố phương vị so với nguồn sáng và phương vị so với người quan sát (hiểu nôm nà đây chính là các vệt phản chiếu, tùy vào tính chất bề mặt vật thể nó sẽ rõ hoặc mờ, rộng hoặc hẹp).
Ba yếu tố cơ bản trên kết hợp lại tạo ra hình ảnh của vật thể tương tự như trong môi trường thật.
Để tối đa hóa độ trung thực, sự phân phối giữa ba yếu tố trên sẽ được điều chỉnh. Chế độ mặc định của OpenGl phân phối 20 phần trăm cho ambient, 100 phần trăm cho cả Diffuse và specular. Do đó diffuse và specular luôn chiếm phần nhiều hơn so với ambient. Tuy nhiên thật không may là tỉ lệ này và giả định trong các phép tính chiếu sáng có thể gây ra vài vấn đề về hiển thị trực quan.
Các vấn đề hiển thị trực quan.
Khi vật thể được xoay trong môi trường 3 chiều, các vector pháp tuyến của tam giác hoặc bề mặt đôi khi quay ngược lại so với chiều ánh sáng, phép tính chiếu sáng sử dụng tích vô hướng của vector ánh sáng và vector pháp tuyến bề mặt để tính ra thành phần diffuse và specular. Trong tình huống này kết quả của hai yếu tố diffuse và specular sẽ bằng 0. Trong thế giới thực, điều này tương tự như dùng tờ báo che mặt trời. Khi bạn làm vậy, bạn không thể đọc được tờ báo.
vì diffuse và specular thường lớn hơn thành phần ambient cho nên khi chúng bằng 0, các bề mặt và tam giác trở nên mờ đi, hoặc là thậm chí không hiển thị ra nữa, Điều này làm cho khi bạn xoay một vật thể trong môi trường 3D nó làm cho các phần của vật thể có thể hiển thị, không hiển thị hoặc rất đục khi xem ở các góc nhìn khác nhau. Rõ ràng điều này không diễn tả chính xác những gì diễn ra ở thế giới thực.
Giải pháp cho vấn đề này là
Sử dụng hai nguồn sáng. Khi chức năng hai nguồn sáng được kích hoạt, phép tính chiếu sáng sẽ dùng độ lớn của tích vô hướng thay vì sử dụng tích vô hướng của vector pháp tuyến và vector ánh sáng để tính thành phần specular và diffuse. Cách tiếp cận này giúp tránh hiện tượng specular và diffuse bị rớt về 0 những lúc mà vector pháp tuyến bề mặt ngược chiều ánh sáng.
Kết quả là các mặt sau của bề mặt và tam giác vẫn có thể hiển thị thông qua mọi góc nhìn. Trong nhiều trường hợp, giống như trong các ứng dụng CAD, đối tượng được tạo ra dưới dạng solids. Điều này có nghĩa là bề mặt sau của các đa giác ít khi được thấy hơn bởi vì nó nằm bên trong vật thể.
Tuy nhiên trong nhiều trường hợp, thử tưởng tượng, vật thể không được tạo ra như một khối solid và bề mặt sau có thể thấy được thì tính năng two-side lighting được dùng để chống hiện tượng bề mặt không hiểu thị tại những góc nhìn nhất định (hiện tượng này bạn rất hay thấy khi chơi game với các card chơi game thông thường, khi bạn đưa camera vào bên trong một bề mặt, tại những chỗ nhất định trông như nó bị thủng ra do các đa giác tại đó không hiển thị).
Khi tính năng hai nguồn sáng không được sử dụng phần khoét rỗng (clip plane) của cái ấm sẽ như thế này
Nếu có tính năng hai nguồn sáng bạn sẽ quan sát được bên trong cái ấm qua lỗ khoét rỗng (clip plane).
7. Tính năng xử lý sự chồng lấp các mặt phẳng đồ họa (overlay plane).
Giao diện người dùng của đa phần các phần mềm yêu cầu tính năng này vẽ liên tục bên trên các mô hình 3D hoặc khung cảnh
Vấn đề về con trỏ.
Ví dụ rõ ràng nhất là con trỏ, nó phải được vẽ ra ở lớp bên trên các vật thể 3D và cửa sổ chương trình. Con trỏ có phần cứng riêng cho phép nó di chuyển và tương tác với vật thể 3D và hoạt động độc lập với các thành phần khác trên màn hình.
Tuy nhiên đổi lại là kích thước của con trỏ bị giới hạn ở mức 32×32 pixel. Nếu kích cỡ lớn hơn nó sẽ gây sụt giảm hiệu năng.
Vấn đề về các trình đơn.
các menu trình đơn xổ ra ngay bên trên cửa sổ OpenGL nó có thể làm cho các nội dung mà nó che đi bị hỏng. Và có thể thấy rõ chúng ảnh hưởng đến hiệu năng. Đó là bởi vì nội dung các trình đơn xổ ra này bị gi đè lên một cách tạm thời vào vùng mà nó che đi. (bạn thấy rõ điều này khi đang chơi game 3D full màn hình với card consumer mà có ai đó buzz yahoo, cửa sổ chat của yahoo bung ra làm cho nội dung game dưới cửa sổ đó bị mất đi, chỉ còn lại vệt đen, hiệu năng game lúc đó cũng bị suy giảm nghiêm trọng, nhiều hàng game thậm chí tháo cả nút window trên bàn phím để tránh bấm nhầm vào khi đang chơi game)
Các thành phần giao diện cần phải tăng tốc độ tương tác với người dùng khi nó vẽ bên trên các đối tượng 3D. Tuy nhiên các thành phần của giao diện người dùng (ví dụ như các cửa sổ, trình đơn nằm bên trong một hình vuông) thường là lớn hơn nên nó không thể sử dụng cách thức của con trỏ được. Điều này làm cho cấu trúc của chương trình trở nên phức tạp làm cho hiệu năng chung bị tụt giảm.
Giải pháp cho vấn đề chồng lấp giữa các thành phần giao diện người dùng với nội dung đồ họa 3D.
Có nhiều cách để giải quyết vấn đề này, như sử dụng các thuật toan logic XOR của OpenGL, hầu hết các ứng dụng chuyên nghiệp dùng overlay planes. Tính năng này cho phép các đối tuượng được vẽ bên trên màn hình đồ họa chính mà không làm tổn hại các nội dung bị che lấp bên dưới. Tuy nhiên số Bit mầu để vẽ thường bị giới hạn hơn màn hình đồ họa chính. Tuy nhiên lợi thế về hiệu năng vẫn đủ để bỏ qua sự giới hạn về số bit mầu bị giới hạn.
cách thức hoạt động tiêu biểu của overlay đó là hỗ trợ cả bit trong suốt, khi được thiết lập nó cho phép các nội dung bên dưới có thể được nhìn xuyên qua vật che lấp. Tạo ra các menu popup trên mặt phẳng đồ họa overlay sẽ đảm bảo hiệu năng và tránh gây tổn hại nội dung 3D bên dưới. Như thế, việc xóa một cửa sổ chồng lấp chẳng qua là chuyển nó thành các bit trong suốt và cho phép nhìn thấy vùng đồ họa bên dưới mà không phải vẽ lại vùng đồ họa bên dưới bị che lấp. Xóa và vẽ lại chỉ các cửa sổ chồng lấp rõ ràng nhanh hơn vẽ lại cả màn hình hiển thị. Đó là cách mà các đối tượng giao diện người dùng hiển thị bên trên các khung cảnh 3D.
Ví dụ con trỏ hình cầu được vẽ trên mặt phẳng đồ họa ovelay nằm bên trên khung cảnh 3D.
Card workstation hỗ trợ overlay trong khi card chơi game không suport overlay
8. Hỗ trợ Quad-Buffered Stereo.
Card quadro hỗ trợ quad-bufered stereo trong khi các card chơi game không hỗ trợ.
Một số phần mềm hỗ trợ tạo ảnh nổi để người xem quan sát thông qua loại kính đặc biệt (màn trập). Việc tạo ảnh nổi này đòi hỏi phải tạo ra hình ảnh của vật thể từ hai góc nhìn khác nhau. Một trong những cách hay được sử dụng để tạo ảnh nổi là thông qua tính năng quad-buffered stereo GpenGL. Nó tạo bộ đệm cho các góc phía trước-bên trái, phía trước-bên phải, phía sau-bên trái, phía sau-bên phải. Khi phần mềm tạo hình ảnh nổi, nó kiểm tra xem thiết bị phần cứng có hỗ trợ quad-buffered stereo hay không đồng thời chọn bộ đệm thích hợp. Việc support từ phần cứng giúp tăng tốc đáng kể quá trình xử lý và giữ tỉ lệ làm tươi khung hình ở mức cao nhất, nếu tỉ lệ làm tươi khung hình bị suy giảm xuống dưới mức thời gian lưu ảnh trên võng mạc mắt người cho phép thì sẽ mất hiệu ứng độ sâu ba chiều.
9. Tối ưu hóa với bộ xử lý Intel
Quadro tối ưu hóa để hỗ trợ tập lệnh SSEII và kiến trúc Netburst của vi xử lý Intel
Các bộ xử lý intel đời mới hỗ trợ tập lệnh SSEII giúp các nhà phát triển ứng dụng tăng tính mềm dẻo và tăng khả năng để cải thiện hiệu năng của phần mềm. Đặc biệt điều này rất hữu dụng cho các ứng dụng đồ họa 3D cần truy xuất song song và liên tục bộ nhớ. Điều này cũng đúng cho các phần mềm chuyên nghiệp.
Vi kiến trúc Netburst của intel giúp các tiến trình thực thi ở tần số cao và tăng khả năng cải thiện hiệu năng cho tần số cao hơn trong tương lai.
Driver của NVIDA tối ưu hóa để CPU tham gia thực thi một phần nhỏ trong quá trình truyền dữ liệu cho danh sách hiển thị và xắp xếp các đỉnh. Vậy nên, bất kì cải thiện nào trong cấu trúc CPU cũng có một chút ảnh hưởng đến hiệu năng chung. Mặc dù CPU mạnh có thể hỗ trợ cả GPU chơi game và GPU quadro, ứng dụng chuyên nghiệp sử dụng chế độ đồ họa trực tiếp và cải thiện hiệu năng làm việc của người dùng chuyên nghiệp.
10. Kiến trúc driver thống nhất (UDA)
Kiến trúc driver thống nhất cho phép một driver của NVIDA sử dụng được với một dải rộng các thiết bị phần cứng của NVIDIA. Điều này nghe có vẻ khó chấp nhận, vì như thế nó có nghĩa là card quadro và card chơi game của NVIDIA không có gì khác nhau cả. Tuy nhiên điều này không đúng.
Giao diện làm việc giữa driver và thiết bị phần cứng của NVIDIA chia làm hai lớp
lớp các hàm API: Unified Driver Software API
lớp trích xuất của phần cứng: Hardware abstraction layer (HAL)
(theo cách hiểu của người dịch là phần mềm trình điều khiển không làm việc trực tiếp với phần cứng mà nó phải qua một thông dịch viên chính là lớp HAL)
Cách tiếp cận này tạo ra lợi thế:
- Driver có thể giả định một giao diện làm việc đồng nhất với tất cả các loại phần cứng GPU.
-UDA cho phép khả năng mở rộng các tính năng mới. chẳng hạn support GPU đa nhân.
Cấu trúc UDA có lợi thế chiến lược là có thể dùng một ảnh cài đặt hệ thống duy nhất cho một loạt toàn bộ dải sản phẩm GPU của NVIDIA (Nôm na là dùng một driver cho các loại card VGA khác nhau). Điều này rất hữu dụng trong các studio kỹ thuật số và văn phòng thiết kế, nó giúp tiêu giảm thời gian quản lý và việc thay thế, nâng cấp không nhất thiết phải tiến hành đồng thời
11. Hỗ trợ kĩ thuật và tối ưu hóa cho phần mềm.
Card quadro được thiết kế và kiểm tra hàng ngàn giờ làm việc với các phần mềm đồ họa chuyên nghiệp để tối ưu hóa, ngoài ra còn cung cấp thêm các công cụ phụ trợ hữu ích cho công việc chuyên nghiệp.
Các ứng dụng phụ trợ như POWER draft, MAXtreme, NVIDIA QuadroView có thể download miễn phí tại website của NVIDIA (phần này mình không dịch vì nó quá chuyên sâu vào các ứng dụng cụ thể, các bạn có thể tìm hiểu thêm thông tin trên mạng)
Danh sách các phần mềm được nghiên cứu để tối ưu hóa cũng như test làm việc cùng quadro.
12.Tổng kết
Như vậy tổng kết lại, Card quadro được thiết kế chuyên biệt cho các ứng dụng rất cụ thể trong môi trường làm việc chuyên nghiệp. Nó được thiết kế để đưa vào phần cứng các thuật toán để xử lý các chức năng thường bắt gặp trong các phần mềm chuyên nghiệp và nhờ đó cải thiện hiệu năng (vì tốc độ xử lý phần cứng nhanh hơn tốc độ xử lý trên phần mềm rất nhiều). Nhưng cũng vì vậy card quadro bị nhồi nhét quá nhiều các xử lý phần cứng làm cho giá thành nó tăng lên rất nhanh, nó khác với GPU của các dòng bình dân vốn được thiết kế để có công năng rất đa dạng, làm nhiều loại nhiệm vụ mà không chuyên biệt cho bất kỳ tác vụ nào.
Việc cải thiện hiệu năng của card quadro nhằm vào tối ưu sử dụng tài nguyên phần cứng đắt đỏ, sử dụng tài nguyên thông minh hơn. Trong khi card dân dụng vì không nhắm vào một đối tượng phần mềm cụ thể nào nên nó chỉ có cách duy nhất cải thiện hiệu năng là tăng tốc độ xử lý của GPU, tăng dung lượng bộ nhớ RAM, ngốn nhiều điện hơn, nóng hơn và để đảm bảo giá thành không đội lên quá cao so với sức mua người tiêu dùng bình thường đương nhiên chất lượng và tuổi thọ linh kiện cũng phải ở mức nhất định.
Tổng hợp từ internet
Điểm khác biệt đáng chú ý thứ nhất của 2 dòng card này là card Nvidia Quadro ( dùng để thiết kế đồ họa còn card Nvidia GeForce dùng để chơi game
Điểm khác biệt đáng chú ý thứ hai là giá thành Nvidia Quadro và Nvidia Geforce khá lớn do sự khác biệt về phần cứng của 2 loại card này.
1. Tính năng khử răng cưa cho các đường thẳng và điểm.
Card quadro hỗ trợ tính năng khử răng cưa ngay từ phần cứng, trong khi card màn hình chơi game thì không hỗ trợ tính năng này.
Vì được xử lý từ phần cứng nên khi so sánh với card chơi game thông thường, tính năng này giúp tăng tốc đáng kể quá trình hiển thị các khung dây trong màn hình thao tác của các phần mềm thiết kế kĩ thuật và mỹ thuật.
Phương pháp hiển thị dạng khung dây là cách để người thiết kế quan sát các cấu trúc bên trong vật thể và nó là một trong những thủ tục được sử dụng khá nhiều trong quá trình làm việc với các phần mềm đồ họa CG.
2. Thuật toán logic.
GPU của card quadro hỗ trợ các thuật toán logic của openGL ngay từ phần cứng.
Các thuật toán logic này nằm ngay cuối cùng các giai đoạn xử lý trước khi ghi vào bộ nhớ đệm Frame buffer và hiển thị ra màn hình, các thuật toán này giúp cho việc tính toán để quyết định vật nào không bị che lấp và sẽ hiển thị, vật nào bị che khuất và không hiển thị, tạo đường đứt nét thể hiện vật thể khuất, làm sáng lên các vật thể được chọn bằng con trỏ chuột v.v…
Chính việc hỗ trợ từ phần cứng thuật toán logic open GL tạo ra ưu thế của card quadro so với card chơi game trong các phần mềm sử dụng engine openGL.
3. Clip region
Đối với các card được thiết kế để chơi game, khi bạn chơi một game, thông thường game đó sẽ choán toàn bộ vùng hiển thị màn hình ở chế độ full screen.
Tuy nhiên trong môi trường làm việc, thông thường bạn phải làm việc với nhiều cửa sổ chương trình, nhiều hộp thoại, các cửa sổ bung ra (pop up). Chính vì vậy lượng thông tin ghi vào bộ nhớ đệm khung hình frame buffer sẽ bị quá tải và ảnh hưởng đến hiệu năng.
Card quadro hỗ trợ tính năng clip region từ phần cứng
Tính năng Clip region là tính năng sẽ quyết định: nếu cửa số chương trình không bị che bởi cửa sổ khác thì toàn bộ thông tin vùng hiển thị của nó từ bộ nhớ mầu color buffer sẽ gửi tới bộ nhớ đệm khung hình Frame buffer.
Còn nếu nó bị che bởi các cửa sổ khác thì phần không bị che sẽ bị chia nhỏ ra thành các vùng vuông nhỏ hơn và gửi tới bộ nhớ đệm khung hình Frame buffer, việc này làm giảm lượng dữ liệu gửi tới bộ nhớ đệm.
Các ô vuông nhỏ hơn đó gọi là clip region. Card chơi game chỉ cần quản lý một phần mềm đó là game đang chơi, vậy nên nó chỉ hỗ trợ một clip region, trong khi card quadro có thể lên đến 8 clip region.
4. Clip plane
Card quadro hỗ trợ tăng tốc từ phần cứng đối với tính năng clip plane.
Tính năng clip plane là một tính năng được sử dụng rất nhiều trong các chương trình CAD chuyên nghiệp, nó cho phép người dùng định nghĩa một mặt cắt để cắt vật thể ra và nhìn vào bên trong cơ cấu của nó.
Việc hỗ trợ từ phần cứng giúp tăng tốc đáng kể đối với card quadro trong các tính năng cụ thể này.
5. Quản lý và tối ưu hóa sử dụng bộ nhớ RAM.
Card quadro cho phép quản lý bộ nhớ và chia sẻ bộ nhớ giữa phần mềm làm việc hiện hành và các ứng dụng khác một cách hiệu quả hơn.
Card định hướng cho các game thường chỉ phải quản lý một phần mềm duy nhất, đó chính là game đang chơi ở chế độ full màn hình nên không cần phải tối ưu tính năng chia sẻ tài nguyên bộ nhớ.
Trong các tình huống nhu cầu sự dụng bộ nhớ ở mức bình thường.
Cấu trúc của GPU workstation NVDIA sử dụng một loại bộ nhớ chia sẻ chung có tốc độ cao chuyên dụng gọi là Unified Memory Architecture (UMA).
UMA chứa rất nhiều loại bộ nhớ đệm đồ họa như bộ nhớ đệm khung hình, bộ nhớ đệm vân, và dữ liệu. So sánh với các GPU khác chúng sử dụng các bộ nhớ riêng rẽ cho các bộ đệm khung hình, vân và danh sách hiển thị.
Cách tiếp cận của nvidia có ưu thế hơn ở chỗ nó sẽ tận dụng tối đa nguồn lực phần cứng. Khi một bộ đệm không sử dụng hết bộ nhớ thì rõ ràng phần bộ nhớ còn thừa sẽ dùng cho bộ đệm khác chứ không để lãng phí và không dùng đến (điều này thường gắp trong các tình huống sử dụng bộ nhớ ở mức thông thường).
Trong cá tình huống yêu cầu bộ nhớ nhiều.
Trong một số tình huống, khi phần mềm yêu cầu nhiều bộ nhớ hơn, chẳng hạn như tình huống hiển thị 3D.
Lúc này phần mềm phải tạo ra thông tin hình ảnh ở hai góc nhìn khác nhau (quad – buffered stereo) thì bộ nhớ cho mỗi bộ đệm tăng lên gấp đôi, cũng có nghĩa là ở các GPU khác phần thừa cho bộ nhớ của mỗi bộ đệm cũng tăng lên gấp đôi, số tiền lãng phí cho bộ nhớ thừa không được sử dụng này cũng tăng lên gấp đôi.
Nhờ sử dụng UMA nên quadro giúp hạn chế việc lãng phí này không bị nhân đôi lên.
Một tính năng khác cũng làm tăng đáng kể yêu cầu bộ nhớ đó là khử răng cưa ở chế độ toàn màn hình. Tính năng này hay được dùng ở các phần mềm mô phỏng hình ảnh (mô phỏng dòng chảy, động đất, bão, v.v..).
Ngoài ra việc mở nhiều cửa sổ chương trình chạy cùng lúc cũng làm tăng đáng kể nhu cầu sử dụng bộ nhớ đồ họa điều này rất thường thấy ở các ứng dụng chuyên nghiệp. Cơ chế quản lý tối ưu hóa việc sử dụng bộ nhớ của Quadro rất quan trọng đối với các phần mềm, vì nó chẳng những xắp xếp hiệu quả việc sử dụng bộ nhớ ở mức yêu cầu cao mà còn tránh lãng phí tài nguyên phần cứng đắt đỏ ở mức nhu cầu thấp.
Cơ chế quản lý bộ nhớ của quadro giúp sử dụng bộ nhớ hiệu quả hơn và giúp tránh hiện tượng sụt giảm nghiêm trọng hiệu năng sử dụng cũng như bị out chương trình do quá tải bộ nhớ đồ họa (có thể xảy đến với card consumer.
Cơ chế này sẽ theo dõi số phần mềm sử dụng bộ nhớ đồ họa, độ phân giải màn hình đang sử dụng, v.v… ngay khi có sự tăng yêu cầu sử dụng bộ nhớ, nó sẽ giới hạn các yếu tố cần thiết như: vùng hiển thị openGL ở độ phân giải 600×600 bất kể độ phân giải màn hình hiện tại, hoặc giảm kích cỡ của tam giác ở mức 1 pixel(các hình khối 3D bị giới hạn bởi bề mặt nối bởi các tam giác cơ sở) để tránh làm ảnh hưởng đến tốc độ điền đầy khung hình.
6. Chiếu sáng hai chiều.
Các GPU quadro hỗ trợ chiếu sáng hai chiều, vật thể 3D trong môi trường máy tính được đặc tả bới một loạt các tam giác trên bề mặt và các vector pháp tuyến của các tam giác đó. Sau đó sẽ gán vào một hệ tọa độ ba chiều và chiếu lên một mặt phẳng hiển thị 2D đưa ra màn hình.
Các thành phần của ánh sáng
Mầu sắc của một điểm hiển thị trên màn hình sẽ bị ảnh hưởng bởi các phép tín toán ánh sáng mô phỏng môi trường thực. Các phép toán về ánh sáng sử dụng ba thành phần để mô phỏng vật thể trông như thế nào trong môi trường thực tế:
Ambient: có thể tạm hiểu là đặc tả hình dạng bao của vật thể, nó không bị ảnh hưởng bởi góc nhìn hay phương vị của nguồn sáng.
Diffuse: diễn tả các vùng trên vật thể sẽ được chiếu sáng hoặc không bị chiếu sáng tùy theo góc độ và khoảng cách đến nguồn sáng mà không phụ thuộc vào góc độ của người quan sát.
Specular: mô tả các vùng trên vật thể bị chiếu sáng nhưng bị ảnh hưởng cả bởi yếu tố phương vị so với nguồn sáng và phương vị so với người quan sát (hiểu nôm nà đây chính là các vệt phản chiếu, tùy vào tính chất bề mặt vật thể nó sẽ rõ hoặc mờ, rộng hoặc hẹp).
Để tối đa hóa độ trung thực, sự phân phối giữa ba yếu tố trên sẽ được điều chỉnh. Chế độ mặc định của OpenGl phân phối 20 phần trăm cho ambient, 100 phần trăm cho cả Diffuse và specular.
Do đó diffuse và specular luôn chiếm phần nhiều hơn so với ambient. Tuy nhiên thật không may là tỉ lệ này và giả định trong các phép tính chiếu sáng có thể gây ra vài vấn đề về hiển thị trực quan.
7. Tính năng xử lý sự chồng lấp các mặt phẳng đồ họa (overlay plane).
Giao diện người dùng của đa phần các phần mềm yêu cầu tính năng này vẽ liên tục bên trên các mô hình 3D hoặc khung cảnh
Vấn đề về con trỏ.
Ví dụ rõ ràng nhất là con trỏ, nó phải được vẽ ra ở lớp bên trên các vật thể 3D và cửa sổ chương trình. Con trỏ có phần cứng riêng cho phép nó di chuyển và tương tác với vật thể 3D và hoạt động độc lập với các thành phần khác trên màn hình.
Tuy nhiên đổi lại là kích thước của con trỏ bị giới hạn ở mức 32×32 pixel. Nếu kích cỡ lớn hơn nó sẽ gây sụt giảm hiệu năng.
Vấn đề về các trình đơn.
Các menu trình đơn xổ ra ngay bên trên cửa sổ OpenGL nó có thể làm cho các nội dung mà nó che đi bị hỏng và có thể thấy rõ chúng ảnh hưởng đến hiệu năng.
Đó là bởi vì nội dung các trình đơn xổ ra này bị gi đè lên một cách tạm thời vào vùng mà nó che đi.
Bạn thấy rõ điều này khi đang chơi game 3D full màn hình với card consumer mà có ai đó buzz yahoo, cửa sổ chat của yahoo bung ra làm cho nội dung game dưới cửa sổ đó bị mất đi, chỉ còn lại vệt đen, hiệu năng game lúc đó cũng bị suy giảm nghiêm trọng, nhiều hàng game thậm chí tháo cả nút window trên bàn phím để tránh bấm nhầm vào khi đang chơi game.
Các yếu tố cơ bản trên kết hợp lại tạo ra hình ảnh của vật thể tương tự như trong môi trường thật.
8. Hỗ trợ Quad-Buffered Stereo.
Card quadro hỗ trợ quad-bufered stereo trong khi các card chơi game không hỗ trợ.
Một số phần mềm hỗ trợ tạo ảnh nổi để người xem quan sát thông qua loại kính đặc biệt (màn trập).
Việc tạo ảnh nổi này đòi hỏi phải tạo ra hình ảnh của vật thể từ hai góc nhìn khác nhau. Một trong những cách hay được sử dụng để tạo ảnh nổi là thông qua tính năng quad-buffered stereo GpenGL.
Nó tạo bộ đệm cho các góc phía trước-bên trái, phía trước-bên phải, phía sau-bên trái, phía sau-bên phải. Khi phần mềm tạo hình ảnh nổi, nó kiểm tra xem thiết bị phần cứng có hỗ trợ quad-buffered stereo hay không đồng thời chọn bộ đệm thích hợp.
Việc support từ phần cứng giúp tăng tốc đáng kể quá trình xử lý và giữ tỉ lệ làm tươi khung hình ở mức cao nhất, nếu tỉ lệ làm tươi khung hình bị suy giảm xuống dưới mức thời gian lưu ảnh trên võng mạc mắt người cho phép thì sẽ mất hiệu ứng độ sâu ba chiều.
9. Tối ưu hóa với bộ xử lý Intel
Quadro tối ưu hóa để hỗ trợ tập lệnh SSEII và kiến trúc Netburst của vi xử lý Intel
Các bộ xử lý intel đời mới hỗ trợ tập lệnh SSEII giúp các nhà phát triển ứng dụng tăng tính mềm dẻo và tăng khả năng để cải thiện hiệu năng của phần mềm. Đặc biệt điều này rất hữu dụng cho các ứng dụng đồ họa 3D cần truy xuất song song và liên tục bộ nhớ. Điều này cũng đúng cho các phần mềm chuyên nghiệp.
Vi kiến trúc Netburst của intel giúp các tiến trình thực thi ở tần số cao và tăng khả năng cải thiện hiệu năng cho tần số cao hơn trong tương lai.
Driver của NVIDA tối ưu hóa để CPU tham gia thực thi một phần nhỏ trong quá trình truyền dữ liệu cho danh sách hiển thị và xắp xếp các đỉnh.
Vậy nên, bất kì cải thiện nào trong cấu trúc CPU cũng có một chút ảnh hưởng đến hiệu năng chung. Mặc dù CPU mạnh có thể hỗ trợ cả GPU chơi game và GPU quadro, ứng dụng chuyên nghiệp sử dụng chế độ đồ họa trực tiếp và cải thiện hiệu năng làm việc của người dùng chuyên nghiệp.
10. Kiến trúc driver thống nhất (UDA)
Kiến trúc driver thống nhất cho phép một driver của NVIDA sử dụng được với một dải rộng các thiết bị phần cứng của NVIDIA.
Điều này nghe có vẻ khó chấp nhận, vì như thế nó có nghĩa là card quadro và card chơi game của NVIDIA không có gì khác nhau cả.
Điều này có nghĩa là về mặt kiến trúc giữa Quadro và Geforce là không mấy khác nhau. Do vậy có thể dùng các loại card này thay thế cho nhau nhưng phải custom lại driver để hoạt động và hiệu năng thì chắc chắn không bằng card chuyên dụng.
Sự khác nhau giữa GPU Quadro và Geforce
Câu hỏi dường như khó trả lời đối với hầu hết chúng ta. Nhiều người luôn thắc mắc tại sao những chiếc Card đồ họa dòng Quadro sử dụng nhân GPU mã GM204 như Quadro M5000M lại có giá chênh lệch hơn so với các dòng Geforce GTX 970M/980M mặc dù cùng nhân đồ họa.
Một số khác lại thắc mắc “Vậy chúng khác nhau thế nào?” hoặc “Sao chúng ta không dùng Quadro M5000M cho Laptop Gaming hoặc ngược lại GTX 970M/980M cho Laptop WorkStation?”. Chúng ta sẽ cùng tìm hiểu vấn đề này qua bài viết bên dưới.
Nhu cầu công việc
Card Quadro được thiết kế cho các ứng dụng chuyên nghiệp, đưa vào phần cứng các thuật toán để xử lý các chức năng thường gặp trong các phần mềm chuyên nghiệp để cải thiện hiệu năng (vì tốc độ xử lý phần cứng nhanh hơn tốc độ xử lý trên phần mềm rất nhiều). Nhưng cũng vì vậy card Quadro thường bị nhồi nhét quá nhiều các xử lý phần cứng làm cho giá thành nó tăng lên rất nhanh, nó khác với nhân đồ họa của các dòng Geforce vốn được thiết kế để có công năng rất đa dạng, làm nhiều loại nhiệm vụ mà không chuyên biệt cho bất kỳ tác vụ nào.
Card đồ họa Nvidia Quadro 5000M trên Laptop
Chẳng hạn như bạn vẫn có thể sử dụng card đồ họa dòng Geforce để chơi game lẫn thay thế Quadro làm các tác vụ chuyên biệt. Tuy nhiên, để nghiêm túc trong việc khai thác hiệu năng xử lý mạnh mẽ nhằm phục vụ các ứng dụng chuyên nghiệp - ở đây có thể ví dụ như các ứng dụng đồ họa, dựng 3D hoặc dựng phim yêu cầu hiệu năng xử lý mạnh - thì với dòng Geforce vốn được thiết kế không thiêng cho bất kỳ mục đích nào, chỉ cần nhanh là được, giống như game chẳng hạn.
Quadro hơn Geforce những gì?
Việc cải thiện hiệu năng của các dòng Card Quadro nhằm vào tối ưu sử dụng tài nguyên phần cứng đắt đỏ, sử dụng tài nguyên thông minh hơn. Trong khi card Gef vì không nhắm vào một đối tượng phần mềm cụ thể nào nên nó chỉ có cách duy nhất cải thiện hiệu năng là tăng tốc độ xử lý của GPU, tăng thêm RAM, ngốn điện hơn, nóng hơn và để đảm bảo giá thành không đội lên quá cao nên chất lượng và tuổi thọ linh kiện cũng tương đối.
Nvidia Geforce GTX 980M trên mẫu Clevo
Chẳng hạn có thể liệt kê một số ứng dụng chỉ có trên dòng Quadro nhằm khai thác hết sức mạnh của nhân kiến trúc CUDA
- Tăng tốc dựng hình đồ họa 3D
- Mô phỏng vật lý
- Mô phỏng phân tích y tế
- Tính toán phân phối
- Tăng tốc chuyển đổi định dạng video
- Mô phỏng phân tử động
- Sinh học máy tính
Chip Quadro của phiên bản PC để bàn
Điểm khác biệt dễ nhận biết giữa Quadro và Geforce
Tính năng khử răng cưa cho các đường thẳng và điểm
Card Quadro hỗ trợ tính năng khử răng cưa ngay từ phần cứng. trong khi card Geforce với mục đích chủ yếu là gaming thì không hỗ trợ tính năng này. Vì được xử lý từ phần cứng nên khi so sánh với dòng Geforce thông thường, tính năng này giúp tăng tốc đáng kể quá trình hiển thị các khung dây trong màn hình thao tác của các phần mềm thiết kế kĩ thuật và mỹ thuật.
Thuật toán logic
GPU của các dòng Quadro được hỗ trợ các thuật toán logic của OpenGL ngay từ phần cứng. Cải thiện hiệu năng, tốc độ xử lý đáng kể nếu so với các dòng Geforce vốn chỉ được hỗ trợ Engine của OpenGL - tức phải cài đặt thêm thông qua ứng dụng thứ 3 hoặc Driver - chứ không phải phần cứng.
Clip plane
Đây là một tính năng hữu ích cho những bạn thường sử dụng phần mềm vẽ 3D như AutoCAD khi sử dụng các dòng Card Quadro hỗ trợ tăng tốc từ phần cứng đối với tính năng Clip Plane. Đây là tính năng trong các chương trình CAD chuyên nghiệp, cho phép người dùng định nghĩa một mặt cắt để cắt vật thể ra và nhìn vào bên trong cơ cấu của nó.
Quản lý và tối ưu hóa sử dụng bộ nhớ RAM
Card Quadro quản lý bộ nhớ và chia sẻ bộ nhớ giữa phần mềm làm việc hiện hành và các ứng dụng khác hiệu quả hơn so với các dòng Geforce thường quản lý 1 soft duy nhất là game đang chơi ở full màn hình nên không cần phải tối ưu tính năng chia sẻ tài nguyên bộ nhớ.
Cấu trúc của Geforce sử dụng một loại bộ nhớ chia sẻ chung có tốc độ cao chuyên dụng gọi là Unified Memory Architecture (UMA). Cơ chế quản lý bộ nhớ UMA giúp sử dụng bộ nhớ hiệu quả hơn (khi một bộ đệm không sử dụng hết bộ nhớ thì rõ ràng phần bộ nhớ còn thừa sẽ dùng cho bộ đệm khác chứ không để lãng phí và không dùng đến)và giúp tránh hiện tượng sụt giảm nghiêm trọng hiệu năng sử dụng cũng như bị out chương trình do quá tải bộ nhớ đồ họa (có thể xảy đến với card consumer).
Sự khác biệt giữa Card đồ hoạ Quadro và Geforce
Để giúp các bạn hiểu rõ hơn sự khác biệt của hai loại card này, chúng tôi đưa ra bản dịch tài liệu Quadro vs Geforce của NVIDIA. Tài liệu này được công bố năm 2003, tuy nhiên đến hiện tại nó vẫn có giá trị. Vì tài liệu được công bố khá lâu trước đây, nên chúng tôi sẽ chỉ trích dẫn nhưng thông tin vẫn còn giá trị đến hiện thời.
Sau đây là các điểm khác biệt chính trong phần cứng của hai loại card làm cho giá của hai loại này khác biệt nhau:
1. Tính năng khử răng cưa cho các đường thẳng và điểm.
Đa phần người dùng các phần mềm đồ họa đều đã có hiểu biết nhất định về hiện tượng răng cưa của hình ảnh trên màn hình máy tính, vì vậy chúng tôi sẽ không giải thích thêm về hiện tượng này.
Card quadro hỗ trợ tính năng khử răng cưa ngay từ phần cứng. trong khi card chơi game thì không hỗ trợ tính năng này.
Vì được xử lý từ phần cứng nên khi so sánh với card chơi game thông thường, tính năng này giúp tăng tốc đáng kể quá trình hiển thị các khung dây trong màn hình thao tác của các phần mềm thiết kế kĩ thuật và mỹ thuật. Phương pháp hiển thị dạng khung dây là cách để người thiết kế quan sát các cấu trúc bên trong vật thể và nó là một trong những thủ tục được sử dụng khá nhiều trong quá trình làm việc với các phần mềm đồ họa CG.
Bên trái là sự hiển thị của hình ảnh chưa khửa răng cưa và bên phải là đã được khử răng cưa.
Hình minh họa khi sử dụng và không sử dụng khử răng cưa cho các chương trình đồ họa.
2. Thuật toán logic.
GPU của card workstation hỗ trợ các thuật toán logic của openGL ngay từ phần cứng.
Các thuật toán logic này nằm ngay cuối cùng các giai đoạn xử lý trước khi ghi vào bộ nhớ đệm Frame buffer và hiển thị ra màn hình, các thuật toán này giúp cho việc tính toán để quyết định vật nào không bị che lấp và sẽ hiển thị, vật nào bị che khuất và không hiển thị, tạo đường đứt nét thể hiện vật thể khuất, làm sáng lên các vật thể được chọn bằng con trỏ chuột v.v… Chính việc hỗ trợ từ phần cứng thuật toán logic open GL tạo ra ưu thế của GPU workstation so với card chơi game trong các phần mềm sử dụng engine openGL.
Chu trình xử lý của openGL, chi tiết tham khảo thêm tài liệu The OpenGL programming guide.
Các phần mềm đồ họa đa phần đều sử dụng openGL để hiển thị các đối tượng trên màn hình bao gồm cả các phần mềm hỗ trợ thiết kế cơ khí MCAD (mechanical computer-aided design) và các phần mềm tạo nội dung số DCC (digital content creation).
Một số ví dụ về phần mềm MCAD như: inventor, Catia, Cimatron, Proengineer v.v…
Một số ví dụ về phần mềm DCC như: 3Dmax, cinema 4D, Maya .v.v…
3. Clip region
Đối với các card được thiết kế để chơi game, khi bạn chơi một game, thông thường game đó sẽ choán toàn bộ vùng hiển thị màn hình ở chế độ full screen. Tuy nhiên trong môi trường làm việc, thông thường bạn phải làm việc với nhiều cửa sổ chương trình, nhiều hộp thoại, các cửa sổ bung ra (pop up). Chính vì vậy lượng thông tin ghi vào bộ nhớ đệm khung hình frame buffer sẽ bị quá tải và ảnh hưởng đến hiệu năng.
Card workstation hỗ trợ tính năng clip region từ phần cứng
Tính năng Clip region là tính năng sẽ quyết định: nếu cửa số chương trình không bị che bởi cửa sổ khác thì toàn bộ thông tin vùng hiển thị của nó từ bộ nhớ mầu color buffer sẽ gửi tới bộ nhớ đệm khung hình Frame buffer. Còn nếu nó bị che bởi các cửa sổ khác thì phần không bị che sẽ bị chia nhỏ ra thành các vùng vuông nhỏ hơn và gửi tới bộ nhớ đệm khung hình Frame buffer. Việc này làm giảm lượng dữ liệu gửi tới bộ nhớ đệm. Các ô vuông nhỏ hơn đó gọi là clip region. Card chơi game chỉ cần quản lý một phần mềm đó là game đang chơi, vậy nên nó chỉ hỗ trợ một clip region. Trong khi card Workstation có thể lên đến 8 clip region
4. Clip plane
Card workstation hỗ trợ tăng tốc từ phần cứng đối với tính năng clip plane
Tính năng clip plane là một tính năng được sử dụng rất nhiều trong các chương trình CAD chuyên nghiệp, nó cho phép người dùng định nghĩa một mặt cắt để cắt vật thể ra và nhìn vào bên trong cơ cấu của nó. Việc hỗ trợ từ phần cứng giúp tăng tốc đáng kể đối với card workstation trong các tính năng cụ thể này.
5. Quản lý và tối ưu hóa sử dụng bộ nhớ RAM.
card workstation cho phép quản lý bộ nhớ và chia sẻ bộ nhớ giữa phần mềm làm việc hiện hành và các ứng dụng khác một cách hiệu quả hơn. Trong khi card định hướng cho các game thường chỉ phải quản lý một phần mềm duy nhất, đó chính là game đang chơi ở chế độ full màn hình nên không cần phải tối ưu tính năng chia sẻ tài nguyên bộ nhớ.
Trong các tình huống nhu cầu sự dụng bộ nhớ ở mức bình thường.
Cấu trúc của GPU workstation NVDIA sử dụng một loại bộ nhớ chia sẻ chung có tốc độ cao chuyên dụng gọi là Unified Memory Architecture (UMA). UMA chứa rất nhiều loại bộ nhớ đệm đồ họa như bộ nhớ đệm khung hình, bộ nhớ đệm vân, và dữ liệu. So sánh với các GPU khác chúng sử dụng các bộ nhớ riêng rẽ cho các bộ đệm khung hình, vân và danh sách hiển thị. Cách tiếp cận của nvidia có ưu thế hơn ở chỗ nó sẽ tận dụng tối đa nguồn lực phần cứng. Khi một bộ đệm không sử dụng hết bộ nhớ thì rõ ràng phần bộ nhớ còn thừa sẽ dùng cho bộ đệm khác chứ không để lãng phí và không dùng đến (điều này thường gắp trong các tình huống sử dụng bộ nhớ ở mức thông thường).
Trong cá tình huống yêu cầu bộ nhớ nhiều.
Trong một số tình huống, khi phần mềm yêu cầu nhiều bộ nhớ hơn, chẳng hạn như tình huống hiển thị 3D, phần mềm phải tạo ra thông tin hình ảnh ở hai góc nhìn khác nhau (quad – buffered stereo) thì bộ nhớ cho mỗi bộ đệm tăng lên gấp đôi, cũng có nghĩa là ở các GPU khác phần thừa cho bộ nhớ của mỗi bộ đệm cũng tăng lên gấp đôi, số tiền lãng phí cho bộ nhớ thừa không được sử dụng này cũng tăng lên gấp đôi. Nhờ sử dụng UMA nên quadro giúp hạn chế việc lãng phí này không bị nhân đôi lên.
Một tính năng khác cũng làm tăng đáng kể yêu cầu bộ nhớ đó là khử răng cưa ở chế độ toàn màn hình. Tính năng này hay được dùng ở các phần mềm mô phỏng hình ảnh (mô phỏng dòng chảy, động đất, bão, v.v..). Ngoài ra việc mở nhiều cửa sổ chương trình chạy cùng lúc cũng làm tăng đáng kể nhu cầu sử dụng bộ nhớ đồ họa (điều này rất thường thấy ở các ứng dụng chuyên nghiệp. Cơ chế quản lý tối ưu hóa việc sử dụng bộ nhớ của Quadro rất quan trọng đối với các phần mềm, vì nó chẳng những xắp xếp hiệu quả việc sử dụng bộ nhớ ở mức yêu cầu cao mà còn tránh lãng phí tài nguyên phần cứng đắt đỏ ở mức nhu cầu thấp.
Cơ chế quản lý bộ nhớ của quadro giúp sử dụng bộ nhớ hiệu quả hơn và giúp tránh hiện tượng sụt giảm nghiêm trọng hiệu năng sử dụng cũng như bị out chương trình do quá tải bộ nhớ đồ họa (có thể xảy đến với card consumer).
Cơ chế này sẽ theo dõi số phần mềm sử dụng bộ nhớ đồ họa, độ phân giải màn hình đang sử dụng, v.v… ngay khi có sự tăng yêu cầu sử dụng bộ nhớ, nó sẽ giới hạn các yếu tố cần thiết như: vùng hiển thị openGL ở độ phân giải 600×600 bất kể độ phân giải màn hình hiện tại, hoặc giảm kích cỡ của tam giác ở mức 1 pixel(các hình khối 3D bị giới hạn bởi bề mặt nối bởi các tam giác cơ sở) để tránh làm ảnh hưởng đến tốc độ điền đầy khung hình.
6. Chiếu sáng hai chiều.
Các GPU quadro hỗ trợ chiếu sáng hai chiều
Vật thể 3D trong môi trường máy tính được đặc tả bới một loạt các tam giác trên bề mặt và các vector pháp tuyến của các tam giác đó. Sau đó sẽ gán vào một hệ tọa độ ba chiều và chiếu lên một mặt phẳng hiển thị 2D đưa ra màn hình.
Các thành phần của ánh sáng
Mầu sắc của một điểm hiển thị trên màn hình sẽ bị ảnh hưởng bởi các phép tín toán ánh sáng mô phỏng môi trường thực. Các phép toán về ánh sáng sử dụng ba thành phần để mô phỏng vật thể trông như thế nào trong môi trường thực tế:
Ambient: có thể tạm hiểu là đặc tả hình dạng bao của vật thể, nó không bị ảnh hưởng bởi góc nhìn hay phương vị của nguồn sáng.
Diffuse: diễn tả các vùng trên vật thể sẽ được chiếu sáng hoặc không bị chiếu sáng tùy theo góc độ và khoảng cách đến nguồn sáng mà không phụ thuộc vào góc độ của người quan sát.
Specular: mô tả các vùng trên vật thể bị chiếu sáng nhưng bị ảnh hưởng cả bởi yếu tố phương vị so với nguồn sáng và phương vị so với người quan sát (hiểu nôm nà đây chính là các vệt phản chiếu, tùy vào tính chất bề mặt vật thể nó sẽ rõ hoặc mờ, rộng hoặc hẹp).
Ba yếu tố cơ bản trên kết hợp lại tạo ra hình ảnh của vật thể tương tự như trong môi trường thật.
Để tối đa hóa độ trung thực, sự phân phối giữa ba yếu tố trên sẽ được điều chỉnh. Chế độ mặc định của OpenGl phân phối 20 phần trăm cho ambient, 100 phần trăm cho cả Diffuse và specular. Do đó diffuse và specular luôn chiếm phần nhiều hơn so với ambient. Tuy nhiên thật không may là tỉ lệ này và giả định trong các phép tính chiếu sáng có thể gây ra vài vấn đề về hiển thị trực quan.
Các vấn đề hiển thị trực quan.
Khi vật thể được xoay trong môi trường 3 chiều, các vector pháp tuyến của tam giác hoặc bề mặt đôi khi quay ngược lại so với chiều ánh sáng, phép tính chiếu sáng sử dụng tích vô hướng của vector ánh sáng và vector pháp tuyến bề mặt để tính ra thành phần diffuse và specular. Trong tình huống này kết quả của hai yếu tố diffuse và specular sẽ bằng 0. Trong thế giới thực, điều này tương tự như dùng tờ báo che mặt trời. Khi bạn làm vậy, bạn không thể đọc được tờ báo.
vì diffuse và specular thường lớn hơn thành phần ambient cho nên khi chúng bằng 0, các bề mặt và tam giác trở nên mờ đi, hoặc là thậm chí không hiển thị ra nữa, Điều này làm cho khi bạn xoay một vật thể trong môi trường 3D nó làm cho các phần của vật thể có thể hiển thị, không hiển thị hoặc rất đục khi xem ở các góc nhìn khác nhau. Rõ ràng điều này không diễn tả chính xác những gì diễn ra ở thế giới thực.
Giải pháp cho vấn đề này là
Sử dụng hai nguồn sáng. Khi chức năng hai nguồn sáng được kích hoạt, phép tính chiếu sáng sẽ dùng độ lớn của tích vô hướng thay vì sử dụng tích vô hướng của vector pháp tuyến và vector ánh sáng để tính thành phần specular và diffuse. Cách tiếp cận này giúp tránh hiện tượng specular và diffuse bị rớt về 0 những lúc mà vector pháp tuyến bề mặt ngược chiều ánh sáng.
Kết quả là các mặt sau của bề mặt và tam giác vẫn có thể hiển thị thông qua mọi góc nhìn. Trong nhiều trường hợp, giống như trong các ứng dụng CAD, đối tượng được tạo ra dưới dạng solids. Điều này có nghĩa là bề mặt sau của các đa giác ít khi được thấy hơn bởi vì nó nằm bên trong vật thể.
Tuy nhiên trong nhiều trường hợp, thử tưởng tượng, vật thể không được tạo ra như một khối solid và bề mặt sau có thể thấy được thì tính năng two-side lighting được dùng để chống hiện tượng bề mặt không hiểu thị tại những góc nhìn nhất định (hiện tượng này bạn rất hay thấy khi chơi game với các card chơi game thông thường, khi bạn đưa camera vào bên trong một bề mặt, tại những chỗ nhất định trông như nó bị thủng ra do các đa giác tại đó không hiển thị).
Khi tính năng hai nguồn sáng không được sử dụng phần khoét rỗng (clip plane) của cái ấm sẽ như thế này
Nếu có tính năng hai nguồn sáng bạn sẽ quan sát được bên trong cái ấm qua lỗ khoét rỗng (clip plane).
7. Tính năng xử lý sự chồng lấp các mặt phẳng đồ họa (overlay plane).
Giao diện người dùng của đa phần các phần mềm yêu cầu tính năng này vẽ liên tục bên trên các mô hình 3D hoặc khung cảnh
Vấn đề về con trỏ.
Ví dụ rõ ràng nhất là con trỏ, nó phải được vẽ ra ở lớp bên trên các vật thể 3D và cửa sổ chương trình. Con trỏ có phần cứng riêng cho phép nó di chuyển và tương tác với vật thể 3D và hoạt động độc lập với các thành phần khác trên màn hình.
Tuy nhiên đổi lại là kích thước của con trỏ bị giới hạn ở mức 32×32 pixel. Nếu kích cỡ lớn hơn nó sẽ gây sụt giảm hiệu năng.
Vấn đề về các trình đơn.
các menu trình đơn xổ ra ngay bên trên cửa sổ OpenGL nó có thể làm cho các nội dung mà nó che đi bị hỏng. Và có thể thấy rõ chúng ảnh hưởng đến hiệu năng. Đó là bởi vì nội dung các trình đơn xổ ra này bị gi đè lên một cách tạm thời vào vùng mà nó che đi. (bạn thấy rõ điều này khi đang chơi game 3D full màn hình với card consumer mà có ai đó buzz yahoo, cửa sổ chat của yahoo bung ra làm cho nội dung game dưới cửa sổ đó bị mất đi, chỉ còn lại vệt đen, hiệu năng game lúc đó cũng bị suy giảm nghiêm trọng, nhiều hàng game thậm chí tháo cả nút window trên bàn phím để tránh bấm nhầm vào khi đang chơi game)
Các thành phần giao diện cần phải tăng tốc độ tương tác với người dùng khi nó vẽ bên trên các đối tượng 3D. Tuy nhiên các thành phần của giao diện người dùng (ví dụ như các cửa sổ, trình đơn nằm bên trong một hình vuông) thường là lớn hơn nên nó không thể sử dụng cách thức của con trỏ được. Điều này làm cho cấu trúc của chương trình trở nên phức tạp làm cho hiệu năng chung bị tụt giảm.
Giải pháp cho vấn đề chồng lấp giữa các thành phần giao diện người dùng với nội dung đồ họa 3D.
Có nhiều cách để giải quyết vấn đề này, như sử dụng các thuật toan logic XOR của OpenGL, hầu hết các ứng dụng chuyên nghiệp dùng overlay planes. Tính năng này cho phép các đối tuượng được vẽ bên trên màn hình đồ họa chính mà không làm tổn hại các nội dung bị che lấp bên dưới. Tuy nhiên số Bit mầu để vẽ thường bị giới hạn hơn màn hình đồ họa chính. Tuy nhiên lợi thế về hiệu năng vẫn đủ để bỏ qua sự giới hạn về số bit mầu bị giới hạn.
cách thức hoạt động tiêu biểu của overlay đó là hỗ trợ cả bit trong suốt, khi được thiết lập nó cho phép các nội dung bên dưới có thể được nhìn xuyên qua vật che lấp. Tạo ra các menu popup trên mặt phẳng đồ họa overlay sẽ đảm bảo hiệu năng và tránh gây tổn hại nội dung 3D bên dưới. Như thế, việc xóa một cửa sổ chồng lấp chẳng qua là chuyển nó thành các bit trong suốt và cho phép nhìn thấy vùng đồ họa bên dưới mà không phải vẽ lại vùng đồ họa bên dưới bị che lấp. Xóa và vẽ lại chỉ các cửa sổ chồng lấp rõ ràng nhanh hơn vẽ lại cả màn hình hiển thị. Đó là cách mà các đối tượng giao diện người dùng hiển thị bên trên các khung cảnh 3D.
Ví dụ con trỏ hình cầu được vẽ trên mặt phẳng đồ họa ovelay nằm bên trên khung cảnh 3D.
Card workstation hỗ trợ overlay trong khi card chơi game không suport overlay
8. Hỗ trợ Quad-Buffered Stereo.
Card quadro hỗ trợ quad-bufered stereo trong khi các card chơi game không hỗ trợ.
Một số phần mềm hỗ trợ tạo ảnh nổi để người xem quan sát thông qua loại kính đặc biệt (màn trập). Việc tạo ảnh nổi này đòi hỏi phải tạo ra hình ảnh của vật thể từ hai góc nhìn khác nhau. Một trong những cách hay được sử dụng để tạo ảnh nổi là thông qua tính năng quad-buffered stereo GpenGL. Nó tạo bộ đệm cho các góc phía trước-bên trái, phía trước-bên phải, phía sau-bên trái, phía sau-bên phải. Khi phần mềm tạo hình ảnh nổi, nó kiểm tra xem thiết bị phần cứng có hỗ trợ quad-buffered stereo hay không đồng thời chọn bộ đệm thích hợp. Việc support từ phần cứng giúp tăng tốc đáng kể quá trình xử lý và giữ tỉ lệ làm tươi khung hình ở mức cao nhất, nếu tỉ lệ làm tươi khung hình bị suy giảm xuống dưới mức thời gian lưu ảnh trên võng mạc mắt người cho phép thì sẽ mất hiệu ứng độ sâu ba chiều.
9. Tối ưu hóa với bộ xử lý Intel
Quadro tối ưu hóa để hỗ trợ tập lệnh SSEII và kiến trúc Netburst của vi xử lý Intel
Các bộ xử lý intel đời mới hỗ trợ tập lệnh SSEII giúp các nhà phát triển ứng dụng tăng tính mềm dẻo và tăng khả năng để cải thiện hiệu năng của phần mềm. Đặc biệt điều này rất hữu dụng cho các ứng dụng đồ họa 3D cần truy xuất song song và liên tục bộ nhớ. Điều này cũng đúng cho các phần mềm chuyên nghiệp.
Vi kiến trúc Netburst của intel giúp các tiến trình thực thi ở tần số cao và tăng khả năng cải thiện hiệu năng cho tần số cao hơn trong tương lai.
Driver của NVIDA tối ưu hóa để CPU tham gia thực thi một phần nhỏ trong quá trình truyền dữ liệu cho danh sách hiển thị và xắp xếp các đỉnh. Vậy nên, bất kì cải thiện nào trong cấu trúc CPU cũng có một chút ảnh hưởng đến hiệu năng chung. Mặc dù CPU mạnh có thể hỗ trợ cả GPU chơi game và GPU quadro, ứng dụng chuyên nghiệp sử dụng chế độ đồ họa trực tiếp và cải thiện hiệu năng làm việc của người dùng chuyên nghiệp.
10. Kiến trúc driver thống nhất (UDA)
Kiến trúc driver thống nhất cho phép một driver của NVIDA sử dụng được với một dải rộng các thiết bị phần cứng của NVIDIA. Điều này nghe có vẻ khó chấp nhận, vì như thế nó có nghĩa là card quadro và card chơi game của NVIDIA không có gì khác nhau cả. Tuy nhiên điều này không đúng.
Giao diện làm việc giữa driver và thiết bị phần cứng của NVIDIA chia làm hai lớp
lớp các hàm API: Unified Driver Software API
lớp trích xuất của phần cứng: Hardware abstraction layer (HAL)
(theo cách hiểu của người dịch là phần mềm trình điều khiển không làm việc trực tiếp với phần cứng mà nó phải qua một thông dịch viên chính là lớp HAL)
Cách tiếp cận này tạo ra lợi thế:
- Driver có thể giả định một giao diện làm việc đồng nhất với tất cả các loại phần cứng GPU.
-UDA cho phép khả năng mở rộng các tính năng mới. chẳng hạn support GPU đa nhân.
Cấu trúc UDA có lợi thế chiến lược là có thể dùng một ảnh cài đặt hệ thống duy nhất cho một loạt toàn bộ dải sản phẩm GPU của NVIDIA (Nôm na là dùng một driver cho các loại card VGA khác nhau). Điều này rất hữu dụng trong các studio kỹ thuật số và văn phòng thiết kế, nó giúp tiêu giảm thời gian quản lý và việc thay thế, nâng cấp không nhất thiết phải tiến hành đồng thời
11. Hỗ trợ kĩ thuật và tối ưu hóa cho phần mềm.
Card quadro được thiết kế và kiểm tra hàng ngàn giờ làm việc với các phần mềm đồ họa chuyên nghiệp để tối ưu hóa, ngoài ra còn cung cấp thêm các công cụ phụ trợ hữu ích cho công việc chuyên nghiệp.
Các ứng dụng phụ trợ như POWER draft, MAXtreme, NVIDIA QuadroView có thể download miễn phí tại website của NVIDIA (phần này mình không dịch vì nó quá chuyên sâu vào các ứng dụng cụ thể, các bạn có thể tìm hiểu thêm thông tin trên mạng)
Danh sách các phần mềm được nghiên cứu để tối ưu hóa cũng như test làm việc cùng quadro.
12.Tổng kết
Như vậy tổng kết lại, Card quadro được thiết kế chuyên biệt cho các ứng dụng rất cụ thể trong môi trường làm việc chuyên nghiệp. Nó được thiết kế để đưa vào phần cứng các thuật toán để xử lý các chức năng thường bắt gặp trong các phần mềm chuyên nghiệp và nhờ đó cải thiện hiệu năng (vì tốc độ xử lý phần cứng nhanh hơn tốc độ xử lý trên phần mềm rất nhiều). Nhưng cũng vì vậy card quadro bị nhồi nhét quá nhiều các xử lý phần cứng làm cho giá thành nó tăng lên rất nhanh, nó khác với GPU của các dòng bình dân vốn được thiết kế để có công năng rất đa dạng, làm nhiều loại nhiệm vụ mà không chuyên biệt cho bất kỳ tác vụ nào.
Việc cải thiện hiệu năng của card quadro nhằm vào tối ưu sử dụng tài nguyên phần cứng đắt đỏ, sử dụng tài nguyên thông minh hơn. Trong khi card dân dụng vì không nhắm vào một đối tượng phần mềm cụ thể nào nên nó chỉ có cách duy nhất cải thiện hiệu năng là tăng tốc độ xử lý của GPU, tăng dung lượng bộ nhớ RAM, ngốn nhiều điện hơn, nóng hơn và để đảm bảo giá thành không đội lên quá cao so với sức mua người tiêu dùng bình thường đương nhiên chất lượng và tuổi thọ linh kiện cũng phải ở mức nhất định.
Tổng hợp từ internet