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 (mạnh nhất hiện nay là Quadro M6000) dùng để thiết kế đồ họa còn card Nvidia GeForce dùng để chơi game (mạnh nhất hiện nay là GeForce GTX 1080).
Đ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.
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.