Tổng quan về giải pháp xử lý dữ liệu được tăng tốc bằng phần cứng

Thảo luận trong 'Rao Vặt Khác' bắt đầu bởi thamtu123, 28/12/22.

Liên kết hữu ích: Đăng tin rao vặt | đăng tin rao vặt miễn phí

  1. thamtu123

    thamtu123 Thành Viên Mới

    Tham gia ngày:
    18/8/18
    Bài viết:
    308
    Đã được thích:
    0
    Tăng tốc bằng phần cứng trong lĩnh vực xử lý dữ liệu không phải là điều mới mẻ và đã có một lịch sử lâu dài. Hồi còn đi học, cha tôi đã trang bị hệ thống 286 12MHz của chúng tôi với coprocessor (bộ đồng xử lý, bộ xử lý phụ) có 80287 đơn vị FPU (Floating Point Unit), chạy ở mức 4,7 MHz.

    Không lâu sau, đơn vị xử lý FPU này đã được tích hợp thẳng vào CPU, giảm nhu cầu về bộ đồng xử lý bên ngoài cho các hoạt động toán học. Tuy nhiên, bộ đồng xử lý thực sự đã tồn tại lâu hơn.

    Bạn có biết đến GPU mà thiết bạn đang sử dụng để đọc bài viết này? DSP trong điện thoại di động của bạn? Card âm thanh? Chúng đều là các coprocessor, và có một lý do chúng vẫn tồn tại xung quanh chúng ta ngày nay.

    CPU của bạn không thể làm mọi thứ

    Chính xác là nó không thể! Mẫu bán dẫn cho kiến trúc Intel x86 (thừa kế của kiến trúc 8086 và 80286) thực tế đã quá phức tạp. Thêm các hoạt động bổ sung vào kiến trúc x86 sẽ chẳng đem lại thêm lợi ích gì, ở mức mà nó không đáng để đánh đổi theo Rick Merrit của EETimes.

    Trên thực tế, GlobalFoundries, một trong những nhà sản xuất chip silicon lớn nhất đã tuyên bố từ bỏ kế hoạch cho chip 7nm . Nó không còn đáng để thực hiện nữa.

    Tại sao đó lại là một vấn đề? Mỗi core của bộ xử lý trong kiến trúc x86 làm rất nhiều thứ khác nhau, nó đã khiến các lập trình viên tự mãn. Không phải lo lắng về việc viết phần mềm tồi – bộ xử lý sẽ đảm bảo cho phần mềm chạy nhanh!

    Tất nhiên, Intel đã hiểu rõ điều này vào đầu những năm 2000. Họ đã cố gắng kết thúc kiến trúc x86 bằng dự án Itanium, một bộ xử lý được thiết kế cho điện toán 64bit. Tuy nhiên, AMD đã có một kế hoạch khác và phát hành bộ xử lý x86 có khả năng 64bit, cản trở các kế hoạch của Intel. Và đó là lý do chúng ta đã nhận được một mớ hỗn độn này.

    >>> Xem thêm: máy chủ dell t160



    Chuyển hướng sang multi-core

    Cách duy nhất để có được nhiều đơn vị oomph hơn từ CPU là mở rộng chúng ra. Đó là lý do tại sao các CPU ngày nay hầu như luôn có nhiều core. Chúng có từ 2 đến 28 core cho các bộ xử lý máy chủ cao cấp hơn, chẳng hạn như dòng Intel Xeon.

    Hệ thống pipeline và vector hóa thông minh, bộ nhớ đệm và một số hệ thống phức tạp khác được tìm thấy trong kiến trúc x86 cho phép sử dụng khá tốt các thiết bị điện tử thu nhỏ. Một số tác vụ có thể chạy theo nhóm và bộ xử lý thậm chí có thể dự đoán chính xác các hành động tiếp theo là gì, trước khi chúng xảy ra. Tuy nhiên, như tôi đã đề cập trước đây – những bộ xử lý này đã quá phức tạp.

    Các kiến trúc khác thật ra vẫn đang tồn tại. ARM, mà bạn có thể tìm thấy trong rất nhiều thiết bị, từ bộ sạc pin cho đến điện thoại và thậm chí cả chiếc xe hơi của bạn – có một tập lệnh rút gọn, còn được gọi là RISC (Reduced Instruction Set Computer).

    IBM đã đi theo con đường RISC. Bộ xử lý RISC có các core đơn giản hơn nhiều, không thể làm được nhiều như các core CPU phức tạp hơn. Phần mềm phải được viết riêng để hỗ trợ multi-core và hưởng lợi từ các loại vi xử lý này.

    Hiện tại thì x86 vẫn sẽ được dùng đến trong nhiều năm tiếp. Có thể là 10, 15 năm nữa, nhưng x86 sẽ biến mất.

    >>> Xem thêm: máy chủ dell t360



    Và bây giờ là GPU và GPGPU

    Graphic Processing Unit (GPU – Đơn vị xử lý đồ họa) thực ra cũng không mới mẻ gì. Thuật ngữ này đã được sử dụng ít nhất từ năm 1986 , nhưng từng có xu hướng tập trung tuyệt đối vào đồ họa. Chiếc card đầu tiên của NVIDIA được bán trên thị trường dưới cái tên “GPU” đó là card GeForce 256, ra mắt năm 1999. Tuy nhiên, với General Purpose GPU (GPGPU) thực sự chỉ bắt đầu xuất hiện vào khoảng năm 2007, khi NVIDIA và ATI (nay là AMD) bắt đầu trang bị card đồ họa 3D của họ với năng lực xử lý ngày càng cao, VD như Unified Pixel Shader. Các tính năng này được định hướng để thực hiện các phép toán như nhân ma trận, Fast Fourier Transform, phép chuyển đổi sóng,

    Truy cập vào các tính năng này đồng nghĩa với việc các cấu trúc lập trình mới phải được phát hành. Vì vậy, vào năm 2008, Apple đã bắt đầu phát triển OpenCL. Đến cuối năm 2009, nó đã được AMD, IBM, Qualcom, Intel và thậm chí cả NVIDIA chấp nhận. AMD quyết định hỗ trợ OpenCL rộng rãi, thay vì bộ framework “Close to Metal” của họ.

    Mặc dù NVIDIA đã và vẫn hỗ trợ OpenCL, nhưng họ đã không từ bỏ framework riêng của mình, nó được gọi là CUDA. Ngày nay, CUDA là tiêu chuẩn thực tế cho điện toán GPU hiệu năng cao, thông lượng cao. Về cơ bản, đây là một lớp phần mềm cho phép truy cập trực tiếp vào tập lệnh ảo của GPU và các thành phần tính toán song song, để thực hiện các nhân xử lý.

    Với 256 core trong năm 2009 và lên tới 5.760 core trong chỉ một GPU hiện đại, tôi nghĩ thật dễ hiểu tại sao GPU lại hữu ích cho các hoạt động tính toán đòi hỏi mức độ song song cao. Nhưng đó không chỉ là vấn đề song song – GPU có băng thông bộ nhớ cực lớn, điều này phù hợp với các ứng dụng đòi hỏi thông lượng cao.

    Công ty cổ phần thương mại Máy Chủ Hà Nội

    - Trụ sở Hà Nội: Tầng 1,2,4 - Tòa nhà PmaxLand số 32 ngõ 133 Thái Hà - Q. Đống Đa

    Hotline mua hàng Hà Nội: 0979 83 84 84 Điện thoai: 024 6296 6644

    - CN Hồ Chí Minh: Lầu 1- Tòa nhà 666/46/29 Đường 3/2- Phường 14 - Quận 10

    Hotline mua hàng Hồ Chí Minh: 0945 92 96 96 Điện thoai: 028 2244 9399

    - Email: [email protected]

    - website: https://maychuhanoi.vn/
     

Chia sẻ trang này