▷ Directx 12 vs Vulkan: cuộc chiến cho công cụ đồ họa tốt nhất?
Mục lục:
- API đồ họa cấp thấp và Trình điều khiển trên mạng
- Microsoft DirectX
- Vulkan của Khronos
- Điểm mạnh và điểm yếu của DirectX 12 vs Vulkan
- Sự khác biệt về hiệu suất trong các trò chơi với API kép
Hiện tại đối với thế giới PC, có hai API đồ họa hạng nhất quản lý thị trường có thẩm quyền. Vì lý do này, chúng tôi mang đến cho bạn bản so sánh DirectX 12 Vs Vulkan.
Cả hai đều có một lịch sử lâu dài đằng sau họ và cả một nhóm những người bảo vệ và gièm pha. Hôm nay chúng ta sẽ thấy sự khác biệt, chìa khóa của từng người và chúng ta sẽ cố gắng cung cấp một chút ánh sáng cho họ.
Chỉ số nội dung
API đồ họa cấp thấp và Trình điều khiển trên mạng
API là viết tắt của "giao diện lập trình ứng dụng" và là một tập hợp các chương trình con có thể được sử dụng bởi nhà phát triển cũng bao gồm các giao thức và tiện ích truyền thông hỗ trợ phát triển phần mềm. Chúng tôi có thể tìm thấy chúng cho hầu hết mọi thứ và thông thường mỗi nhà cung cấp dịch vụ đều có loại hỗ trợ này để triển khai hệ thống của họ một cách đơn giản và dễ tiếp cận.
API cấp thấp tận dụng tốt hơn các tài nguyên của GPU, giải phóng CPU, nhưng cũng có thể tận dụng tốt hơn các bộ xử lý đa lõi mà chúng ta có ngày nay.
Cả DirectX 12 và Vulkan 1.1 đều là các API hướng đến sự phát triển của các trò chơi và ứng dụng cần có sự hỗ trợ của các công cụ đồ họa hiện đại. Đồng thời, chúng là các API được hỗ trợ bởi trình điều khiển của các nhà thiết kế chipset đồ họa quan trọng nhất và do đó, cách nhanh chóng và tiết kiệm để truy cập các tính năng của chúng mà không cần phải biết thiết kế của chúng ở mức rất thấp.
API cấp thấp, chẳng hạn như API này, cho phép làm việc với phần cứng với lớp giải thích rất nhẹ, cho phép nhà phát triển tận dụng tốt hơn phần cứng, đạt được kết quả tốt hơn về hiệu suất và hiệu quả, cũng cho phép các hệ thống con khác được giải phóng tải bổ sung. Trong thế giới của PC, hay điện thoại di động, nó ít phụ thuộc vào CPU chung của hệ thống.
Hai API mà chúng ta sẽ nói đến hôm nay có thể được coi là API cấp thấp và cả hai sự phát triển đã dẫn đến sự phụ thuộc ngày càng ít vào CPU của hệ thống trong khi đạt được kết quả tốt hơn ở mức hiệu suất và truy cập vào nhiều chức năng đồ họa hơn. tiên tiến. Chúng là hai API trực tiếp đang nhận được cập nhật hàng năm để giữ cho chúng phù hợp với những gì công chúng và các nhà phát triển mong đợi.
Các API cấp thấp có ảnh hưởng trực tiếp đến một khái niệm tính toán khác mà chúng ta biết là Trình điều khiển trên mạng, có nghĩa là tài nguyên thứ cấp mà chúng ta cần để thực hiện một số loại hoạt động nhất định trên máy tính. Trong trường hợp đồ họa, nó đề cập đến các tài nguyên bổ sung mà card đồ họa yêu cầu để thực hiện công việc của nó và trong trường hợp này về cơ bản là thời gian xử lý CPU. Các API cấp thấp mà chúng tôi sẽ mô tả ở đây làm giảm sự phụ thuộc này và trên thực tế, sự phụ thuộc có xu hướng về 0.
Microsoft DirectX
DirectX phát sinh là một điều cần thiết để chuẩn hóa các hệ thống con đa phương tiện Windows khác nhau và là sự thay thế cho WinG cho Windows 3.1. Nó được sử dụng trong Windows 95 như một gói bổ trợ và phiên bản thứ hai của nó, DirectX 2.0, trở thành một thành phần cơ bản của Windows 95 OSR2.
Trong DirectX, chúng tôi tìm thấy nhiều API độc lập như Direct3D, đây thực sự là một API được đề cập, DirectDraw, DirectMusic, DirectPlay và DirectSound. DirectX là một cách để đặt tên cho những tiến bộ phổ biến trên tất cả các API phụ này. Nó là một API cho Windows nhưng nó cũng được sử dụng để phát triển các trò chơi trên bảng điều khiển Xbox của nó, vì vậy chúng tôi có thể coi đó là API đa nền tảng nhưng không miễn phí, như trường hợp của Vulkan.
DirectX 12, phiên bản mới nhất của nó, đã đồng hành cùng chúng tôi từ năm 2014 và không đứng yên và vài tháng trước đã nhận được những cải tiến quan trọng như chương trình con Truy tìm tia trực tiếp (DXR) được đưa vào phiên bản cập nhật tháng 10 năm 1809 của Windows 10.
Các API cấp thấp như DirectX 12 có một lợi thế cơ bản, đó là giảm chi phí cho trình điều khiển. Các lập trình viên hiện được trao quyền để thiết kế cách GPU sẽ hoạt động trong các chương trình của họ và có thể quản lý tốt hơn các tài nguyên GPU, đặc biệt là bằng cách tận dụng quá trình song song hóa quy trình. Điều này bao gồm hỗ trợ tốt hơn cho nhiều GPU trong một hệ thống và ngay cả khi chúng không phải từ cùng một nhà sản xuất.
Họ có thể thực hiện các loại hoạt động khác nhau, thường là "số nguyên" hoặc "dấu phẩy động" tận dụng các khả năng của đồ họa tương thích và cũng phân chia các hoạt động phức tạp thành các hoạt động đơn giản hơn bằng cách xử lý song song trên các xe buýt lớn hơn đó. Một ví dụ điển hình là cách AMD hoặc Nvidia hiện có thể xử lý các hoạt động 16 bit trên các bus 32 bit của họ, cải thiện đáng kể hiệu quả của đồ họa của họ.
API này đã mang lại hiệu quả sử dụng GPU console gần hơn, nơi các nhà phát triển biết hoàn toàn phần cứng có sẵn, cho đến hệ sinh thái không đồng nhất tạo thành một PC có khả năng phần cứng khác nhau vô hạn.
Hiện tại DirectX 12 đã có sẵn, đối với Windows 7 và Windows 10 và mặc dù nó không tương thích trực tiếp với Xbox One, nhưng sự thật là 90% chức năng của nó được sử dụng cho PC, sự khác biệt là tối thiểu và cho phép nhà phát triển thích ứng nhanh các trò chơi trên PC của họ cho Xbox One và ngược lại.
Vulkan của Khronos
Vulkan là sự phát triển của API cấp thấp của OpenGL và được Khronos Corporation hỗ trợ. Trong thế giới PC, họ có vai trò thứ yếu so với DirectX 12, nhưng sự thích ứng khác nhau của nó với các nền tảng khác nhau, chẳng hạn như Android, đã biến nó thành một chuẩn mực về đồ họa cho tính di động. Nó cũng tương thích với Linux là sự thay thế tuyệt vời của trò chơi trong các hệ thống miễn phí.
Ưu điểm tuyệt vời của nó là khả năng xử lý song song tuyệt vời, cực kỳ hiệu quả trong các CPU và GPU hiện đại, đạt được mức sử dụng thấp trước đây và sử dụng tuyệt vời phần cứng của phần sau. Nó được thiết kế đặc biệt để tận dụng các bộ xử lý đa lõi đạt được phân phối tải tuyệt vời trong loại bộ xử lý này, trên thực tế, nó hiệu quả hơn nhiều đối với nhiều lõi chúng ta có thể cung cấp.
Lịch sử của Vulkan bắt nguồn từ một năm sau DirectX 12 và Khronos, một công ty phi lợi nhuận, duy trì nó thường xuyên hoặc thường xuyên hơn Microsoft với API của riêng mình. Nó dựa trên API Mantle mà AMD đã phát triển cho kiến trúc GCN của mình và đó là một API cấp thấp khác cho trình điều khiển trên đầu đã giảm. AMD đã tặng sự phát triển của mình cho Khronos và đây là nền tảng của một trong những API đồ họa tốt nhất trên thị trường.
Ngoài khả năng song song hóa vượt trội, thiết kế này còn cho phép loại bỏ các hoạt động tạo bóng trên GPU, có thể có nhiều hiệu ứng hơn và trên màn hình với tốc độ tải cao hơn, ngoài việc điều chỉnh chi tiết hơn về cách thức hoạt động của phần cứng hoặc cách chúng tôi truy cập khung đệm có sẵn. Đây chắc chắn là API cho PC gần với phần cứng nhất, thậm chí tốt hơn DirectX 12.
Vulkan cũng giới thiệu các cải tiến API cấp thấp trên Android và các nền tảng khác.
Phiên bản mới nhất của nó, Vulkan 1.1, được giới thiệu vào cuối năm 2018 bổ sung các cải tiến lớn như hỗ trợ HLSL, là giải pháp thay thế của DirectX 12 để quản lý các hoạt động đổ bóng mà không cần biên dịch trước, tương thích tốt hơn với DirectX 12 (với nhiều chương trình con của nó ngoài đồ họa), hỗ trợ rõ ràng cho các hệ thống Multi-GPU bất kể nhà sản xuất và, tất nhiên, hỗ trợ cho RayTracing.
Điểm mạnh và điểm yếu của DirectX 12 vs Vulkan
Ngoài các tính năng phổ biến đã được mô tả, như sử dụng phần cứng tốt hơn, kiểm soát nhiều hơn và sử dụng song song tốt hơn cả GPU và CPU, hai API này cũng thêm khả năng thực hiện các hoạt động tính toán chung với chip đồ họa với tương thích Điều này cho phép các công cụ đồ họa tương thích, đã có nhiều thế hệ, có thể thực hiện các hoạt động toán học phức tạp có thể được khai thác bởi các chương trình thuộc mọi loại, kể cả những công cụ không có thành phần đồ họa.
Trong các trò chơi, chúng cũng có thể được sử dụng cho các hoạt động thứ cấp ngày càng quan trọng như tính toán vật lý thực tế, trí tuệ nhân tạo, hiệu ứng âm thanh định vị, v.v.
Cả hai API đều hỗ trợ rất lớn bởi sự vĩ đại của đồ họa, cả AMD và Nvidia đều cố gắng cung cấp cho các API này các trình điều khiển thích hợp để cung cấp cho người dùng những cải tiến mới nhất và tăng cường hiệu suất và tính ổn định của các trò chơi sử dụng một hoặc API khác.
Trên thực tế, "chi phí tài xế" của cả hai rất thấp, như bạn sẽ thấy trong các thử nghiệm của chúng tôi, hầu như không có sự khác biệt nào giữa chúng, đây cũng là một dấu hiệu cho thấy sự tối ưu hóa quan trọng của trình điều khiển của cả hai nhà sản xuất.
Chúng tôi đã giới hạn tốc độ khung hình ở mức 120FPS cho bản demo của Driver Overhead. Trong Dota 2, mức tiêu thụ CPU giảm đáng kể với cùng FPS.
Sự khác biệt rõ ràng duy nhất là Vulkan có phần ít phụ thuộc vào CPU hơn, với mức tiêu thụ trung bình thấp hơn và nó cũng cởi mở hơn nhiều đối với các nền tảng khác nhau, bao gồm Windows và Linux và đồng nhất hóa với OpenGL ES, phiên bản di động của nó, nó đang trên đường tiếp tục thống nhất các nền tảng mà nó di chuyển.
DirectX 12 đã ủng hộ sự chấp nhận lớn của các nhà phát triển, những người dường như tìm thấy trong API này hệ sinh thái hoàn hảo để giảm chi phí vì nó thậm chí còn có sự tích hợp tuyệt vời trong các khung công tác rộng rãi như.NET Framework, nơi nó tích hợp với hàng ngàn điều kỳ diệu với ít mất hiệu suất.
Sự khác biệt về hiệu suất trong các trò chơi với API kép
Khi chuyển động được thể hiện bằng cách đi bộ, chúng tôi đã thực hiện một số bài kiểm tra hiệu suất trong các trò chơi và điểm chuẩn khác nhau có khả năng sử dụng hai API này để thực hiện.
Kiểm tra trên trình điều khiển 3DMark. Kết quả trong hàng triệu yêu cầu, nhiều hơn là tốt hơn.
Tro tàn của người độc thân. Kết quả trong FPS, nhiều hơn là tốt hơn.
Lữ đoàn lạ. Kết quả trong FPS, nhiều hơn là tốt hơn.
Chúng tôi tóm tắt các hướng dẫn phần cứng tốt nhất mà bạn nên quan tâm:
- Bộ xử lý tốt nhất trên thị trường Bo mạch chủ tốt nhất trên thị trường Bộ nhớ RAM tốt nhất trên thị trường Card đồ họa tốt nhất trên thị trường Ổ SSD tốt nhất trên thị trường Vỏ máy tính hoặc PC tốt hơn Nguồn cung cấp năng lượng tốt hơn tản nhiệt tốt hơn và làm mát bằng chất lỏng
Như bạn có thể thấy, kết quả là đồng đều và chúng tôi thấy sự khác biệt giữa các chương trình cho và so với chương trình này và chương trình kia. Điều này cho chúng ta câu hỏi cái nào tốt hơn và câu trả lời rõ ràng, nó phụ thuộc vào chương trình và cách nhà phát triển của nó biết hoặc muốn tận dụng lợi ích của nó. Điều còn lại là nghĩ rằng trong mỗi trò chơi, các nhà phát triển sẽ sử dụng chính xác API tận dụng tốt nhất lợi ích của đồ họa của chúng tôi, mặc dù rõ ràng là cả hai tùy chọn có vẻ nhiều hơn khả năng. Bạn nghĩ gì về bài viết của chúng tôi về Directx 12 vs Vulkan ? Chúng tôi muốn biết ý kiến của bạn!
Vizio và amd trong cuộc chiến pháp lý cho bằng sáng chế đồ họa truyền hình
Theo Ủy ban Thương mại Quốc tế Hoa Kỳ, Vizio và nhà cung cấp chip Sigma Design đã vi phạm bằng sáng chế của AMD.
Amd nói rằng nó không ảnh hưởng đến cuộc chiến thương mại của Hoa Kỳ và Trung Quốc
Mặc dù AMD có một số hoạt động lắp ráp tại Trung Quốc, công ty đến từ nhiều nguồn và không mong đợi tác động từ thuế quan.
Amd epyc vs xeon: cuộc chiến cho bộ xử lý máy chủ tốt nhất
Chúng tôi mang đến cho bạn trận đấu cuối năm: Epyc Vs Xeon. Chúng tôi đã thử nghiệm bộ xử lý máy chủ AMD và Intel. Bạn muốn xem không?