Tốc độ xử lý của siêu máy tính được đo bằng

Tôi nghĩ hôm nay bạn không thể nói về siêu máy tính mà không liên quan đến Linux, và thực tế là, mặc dù thực tế là Linux ngay từ đầu đã được hình thành là lĩnh vực máy tính cá nhân, có thể nói rằng nó đã thống trị tất cả các lĩnh vực ngoại trừ điều đó như chúng ta sẽ thấy ở phần sau với một số thống kê thú vị. Ngoài ra, đây là một lĩnh vực mà không có nhiều thông tin được xuất bản bằng tiếng Tây Ban Nha có thể truy cập được cho tất cả mọi người.

Mặt khác, tôi đã có thể xác minh rằng thế giới của siêu máy tính hoặc sở thích về siêu máy tính, nhưng nhìn chung nó còn khá ít người biết đến. Đó là lý do tại sao tôi đã dành thời gian để tạo và xuất bản bài đăng lớn này về siêu máy tính mà tôi hy vọng sẽ dạy cho bạn tất cả những bí mật của "bí ẩn" này rất nhiều, và rằng khi bạn đọc xong tất cả văn bản này, nó sẽ không còn bí mật cho bạn nữa. ...

Không chỉ là một bài báo hoặc bài đăng lớn, nó sẽ là một loại Wiki lý thuyết-thực tế về siêu máy tính mà bạn có thể tham khảo bất cứ lúc nào. Đó là mục tiêu, rằng bài viết LxA này là một bước ngoặt, trước sau như một. Tôi sẽ hiểu? Hãy cùng kiểm tra nào ...

Giới thiệu về siêu máy tính

Để làm rõ ngay từ đầu, các máy tính mà chúng ta có trong nhà là một trong những máy tính mạnh nhất tồn tại. Ý tôi là không có bộ vi xử lý nào mạnh hơn bộ vi xử lý mà chúng ta sử dụng hàng ngày. Chìa khóa của siêu máy tính không nằm ở bộ vi xử lý cực mạnh hay các thành phần rất kỳ lạ và khác với những gì chúng ta sử dụng hàng ngày trong nhà, chìa khóa của siêu máy tính là song song.

Hãy để tôi giải thích, các ngân hàng bộ nhớ RAM, ổ cứng, bộ vi xử lý, bo mạch chủ, v.v. của một siêu máy tính có lẽ giống hơn những gì bạn tưởng tượng với những siêu máy tính bạn đang sử dụng hiện tại hoặc có ở nhà. Chỉ trong trường hợp siêu máy tính, chúng được nhóm lại thành hàng trăm hoặc hàng nghìn để cộng thêm sức mạnh của từng "máy tính" độc lập này và do đó tạo ra một cỗ máy tuyệt vời hoạt động như một hệ thống duy nhất.

Tôi nói về tính toán song song, Đúng. Một mô hình cho phép tạo ra siêu máy tính hay cái mà chúng ta biết đến là HPC [Máy tính hiệu suất cao] hoặc máy tính hiệu suất cao. Ý tôi là nếu bạn có AMD Ryzen 7 ở nhà, với RAM 16 GB, card mạng và ổ cứng 8 TB, ... hãy tưởng tượng điều gì sẽ xảy ra nếu bạn nhân nó với 1000 và làm cho nó hoạt động như nếu chúng chỉ là một chiếc PC. Nó sẽ có 1000 Ryzen chạy song song, 16 TB RAM và 8 PB dung lượng lưu trữ. Chà !! Điều này đã bắt đầu trông giống như một siêu máy tính hơn, phải không?

Xin lỗi nếu bạn nghĩ một phần giới thiệu rất đơn giản và một định nghĩa hơi khó hiểu, nhưng nó đã được cố ý. Bởi vì tôi muốn ngay cả người dùng ít hiểu biết và có kinh nghiệm nhất cũng nắm được ý tưởng của mô hình này, nếu không họ sẽ không hiểu phần còn lại của hướng dẫn này. Tôi muốn bạn ở lại với ý tưởng đó, vì nếu bạn nắm bắt được điều đó, bạn sẽ thấy những cỗ máy to lớn và kỳ lạ chiếm nhiều bề mặt sẽ không còn lạ lùng như thế nào ...

Trong phần trước, chúng tôi đã giới thiệu các thuật ngữ song song và HPC, tốt. Để tạo ra một siêu máy tính, tức là một máy tính có các khả năng HPC này, cần có sự song song như chúng ta đã trình bày rõ. Theo định nghĩa, siêu máy tính là những máy có khả năng của một số loại họ vượt trội hơn nhiều của một máy tính thông thường mà chúng ta có thể có ở nhà.

Nói chung, hầu hết mọi khả năng của siêu máy tính đều vượt trội hơn nhiều so với PC, nhưng chúng đặc biệt có thể thu hút sự chú ý khả năng tính toán đó là do lõi hoặc đơn vị xử lý, RAM có sẵn cho các đơn vị xử lý như vậy và ở mức độ thấp hơn dung lượng lưu trữ, vì nói chung, hai phần đầu quan trọng hơn đối với các ứng dụng thông thường được cung cấp cho loại máy này. Mặc dù đúng là có thể có một số máy lớn yêu cầu dung lượng và băng thông lớn hơn nhiều so với khả năng tính toán hoặc RAM, đây là trường hợp của các máy chủ lưu trữ ...

Lịch sử của siêu máy tính:

Có lẽ một trong những siêu máy tính đầu tiên, hoặc như các nhà sử học phân loại nó theo cách đó, là cỗ máy được chế tạo vào những năm 60 bởi Sperry rand cho Hải quân Hoa Kỳ. Rồi sẽ có lúc IBM là ông hoàng vĩ đại với những chiếc máy như IBM 7030 và nhiều loại máy khác. Ngoài ra, Atlas của Đại học Manchester và Ferranti vào đầu những năm 60 là cuộc cạnh tranh của châu Âu với máy móc của Mỹ. Các máy móc đã bắt đầu sử dụng bóng bán dẫn germani để thay thế cho các ống chân không cũ [không phải mạch tích hợp] và các bộ nhớ từ tính cho thành phần của chúng, nhưng điều đó vẫn còn rất sơ khai.

Sau đó, một kỷ nguyên khác sẽ đến trong đó một kỷ nguyên tuyệt vời khác, CDC, bước vào với CDC 6600 được thiết kế bởi một người quen cũ, người sau này sẽ đặt tên cho một công ty quan trọng mà ngày nay là công ty dẫn đầu trong lĩnh vực này. Tôi nói về Seymour cray. Chiếc máy do ông thiết kế được hoàn thành vào năm 1964 và là một trong những chiếc máy đầu tiên sử dụng bóng bán dẫn silicon. Tốc độ mang lại bởi công nghệ silicon mới và kiến ​​trúc do Cray thiết kế đã khiến chiếc máy này nhanh hơn 10 lần so với đối thủ, bán được 100 chiếc với giá 8.000.000 USD mỗi chiếc.

Cray dejaría CDC [Control Data Corporation] en 1972 para formar la compañía líder que os he comentado, se trata de la Cray Research, creando el Cary-1 de 80 Mhz y uno de los primeros CPUs de 64-bit en 1976, convirtiendose en la supercomputadora más exitosa de la época y que podéis ver en la imagen principal de este apartado en la fotografía en blanco y negro. La Cray-2 [1985] seguiría el exitoso camino de la primera, con 8 CPUs, refrigeración líquida y marcando el camino de las modernas supercomputadoras en muchos sentidos. Aunque el rendimiento era de 1,9 GFLOPS.

Một số tiền mà bây giờ có vẻ gần như vô lý, khi xem xét rằng chiếc điện thoại thông minh mà bạn đang có trong túi của mình vượt quá những siêu máy tính vào thời điểm này. Ví dụ, một SoC Snapdragon 835 hoặc Exynox 8895 từ Qualcomm hoặc Samsung tương ứng, nó có sức mạnh khoảng 13,4 GFLOPS, tức là nhiều hơn gần 10 lần so với Cray-2 và khoảng 100 lần so với Cray-1. Những cỗ máy khổng lồ đó không thể chạm đến đế giày của bạn với một vật nhỏ và nhẹ như chiếc mà bạn đang cầm trên tay. Điều mà tôi muốn nghĩ rằng trong vòng vài thập kỷ nữa, chúng ta có thể có những thiết bị mạnh mẽ hoặc hơn những siêu máy tính hiện nay nhưng giảm xuống kích thước vỏ máy nhỏ.

Tiếp tục câu chuyện, sau thời gian này đã đến kỷ nguyên của các thiết kế song song ồ ạt, nghĩa là, chi phí sản xuất chip rẻ hơn và những cải tiến trong kết nối giúp có thể thay vì những cỗ máy tinh vi, siêu máy tính có thể được chế tạo bằng cách ghép hàng trăm hoặc hàng nghìn con chip khá giống với những con chip mà chúng ta có trong thiết bị gia đình như tôi có. đã nhận xét trước đây. Trên thực tế, vào những năm 1970, có một chiếc máy đã sử dụng thiết kế đồ sộ mới này và vượt xa Cray-1 [250 MFLOPS], đó là ExplIAC IV, với 256 bộ vi xử lý đạt 1 GFLOPS, mặc dù nó có một số vấn đề về thiết kế và đã không được hoàn thành, chỉ có một thiết kế với 64 bộ vi xử lý được thực hiện.

Một siêu máy tính đồ họa LINKS-1 từ Đại học Osaka sẽ là một trong những máy song song khổng lồ này, với 257 bộ vi xử lý Zilog Z8001 và 257 Intel iAPX 86/20 FPU, đạt được hiệu suất tốt trong thời gian này và có thể hiển thị đồ họa 3D thực tế, với 1.7 GFLOPS. Và từng chút một, những cỗ máy mạnh mẽ hơn sẽ ra đời, từ hàng trăm bộ vi xử lý đến hàng nghìn bộ vi xử lý như hiện tại ...

Ở Tây Ban Nha, chúng tôi có một trong những siêu máy tính mạnh nhất ở Châu Âu và cũng là một trong những siêu máy tính mạnh nhất thế giới, được tạo ra bởi IBM và được gọi là Chóng mặt, đặt tại Bacelona và thuộc mạng lưới siêu máy tính của Tây Ban Nha được tạo thành từ một số mạng, chẳng hạn như Picasso tại Đại học Malaga, cung cấp vật liệu bị loại bỏ trong các bản cập nhật mà MareNostrum nhận được định kỳ. Trên thực tế, MareNostrum là một cỗ máy mê hoặc tác giả Dan Brown và nó đã được chọn làm trung tâm dữ liệu đẹp nhất [pha trộn kiến ​​trúc của một tu viện cũ với công nghệ cao nhất], như bạn có thể thấy trong hình ảnh chính của bài viết này.

Hiệu suất tối đa 11.15 PFLOPS
Nhà máy vi nhân 165.888 Intel Xeon bạch kim
RAM 390 TB
đỏ omnipath
Nhà thiết kế IBM
hệ điều hành SUSE Linux

Các tính năng của siêu máy tính:

Mặc dù nhiều tác giả tách biệt [theo ý kiến ​​của tôi là sai lầm] máy chủ siêu máy tính Và ngay cả các máy tính lớn, theo định nghĩa mà tôi đã tạo cho bạn về một siêu máy tính, các máy chủ có thể được bao bọc một cách hoàn hảo như siêu máy tính, vì chúng không hơn gì những máy tính có khả năng vượt trội hơn nhiều so với máy tính bình thường, chỉ là chúng chuyên cung cấp một số loại dịch vụ bên trong một mạng lưới ... Điều duy nhất cần phải phân biệt là tùy thuộc vào mục đích của máy, chúng ta sẽ có những khả năng mà chúng ta muốn trên phần còn lại hay cái khác.

Ví dụ: đối với một máy chủ dành cho dữ liệu, chẳng hạn như dịch vụ Lưu trữ đám mây, điều chúng tôi quan tâm là nó có dung lượng lưu trữ khủng khiếp. Trong khi đối với một máy tính lớn dành để xử lý các giao dịch và hoạt động ngân hàng, điều quan trọng sẽ là sức mạnh tính toán của nó. Nhưng tôi khẳng định, cả hai đều là siêu máy tính. Với điều đó đã nói, chúng ta hãy xem một số những đặc điểm chính mà chúng tôi quan tâm từ siêu máy tính / máy tính lớn / máy chủ:

  • An ninh: Nếu đó là một siêu máy tính bị cô lập, nghĩa là bị ngắt kết nối với Internet, có lẽ các biện pháp bảo mật ngoại vi phải được thực hiện, nhưng bảo mật như vậy trong bản thân hệ thống không quan trọng bằng một máy chủ được kết nối và chúng được kết nối nhiều máy khách hoặc có thể là mục tiêu của các cuộc tấn công khi kết nối với Internet. Nhưng dù là trong trường hợp này hay trường hợp khác, sẽ luôn có các biện pháp bảo mật.
  • Tính khả dụng cao: một máy chủ hoặc siêu máy tính phải hoạt động bình thường và giảm thiểu các sự cố phần cứng hoặc phần mềm có thể xảy ra, vì việc ngừng hoạt động có thể gây tử vong cho mục đích mà nó được tạo ra và trong 100% trường hợp, một máy tính bị hỏng sẽ đồng nghĩa với việc mất một số tiền lớn. Đó là lý do tại sao các biện pháp được thực hiện trong các hệ điều hành để giảm số lần khởi động lại cần thiết và mạnh mẽ [UNIX / Linux], nguồn điện thay thế [UPS] trong trường hợp mất điện, dự phòng hệ thống trong trường hợp hỏng hóc mà có một bản sao cũng không ảnh hưởng. liên quan nhiều đến hiệu suất chung, kỹ thuật hàng rào để cô lập một nút để nó không ảnh hưởng đến những người khác và có thể được thay thế nóng mà không ảnh hưởng đến hoạt động của phần còn lại, khả năng chịu lỗi với các hệ thống như RAID trên ổ cứng, bộ nhớ ECC, tránh Split-brain, có DRP [Kế hoạch khôi phục sau thảm họa] để hành động trong trường hợp có sự cố, v.v. Ngoài ra, chúng tôi muốn độ tin cậy ở mức tối đa, cũng như thời gian sử dụng hữu ích và các thông số sau luôn thấp nhất hoặc cao nhất tùy thuộc vào nó:
    • MTTF [Thời gian trung bình để thất bại]: là thời gian trung bình để xảy ra lỗi, tức là nó đo thời gian trung bình mà một hệ thống có thể hoạt động mà không bị gián đoạn cho đến khi nó bị lỗi. Do đó, càng cao càng tốt.
    • MTBF [Thời gian trung bình giữa các lần hỏng hóc]: là thời gian trung bình giữa các lần hỏng hóc, nghĩa là nó cũng quan trọng là nó phải cao hơn, vì chúng tôi không muốn các lỗi xảy ra liên tiếp, nếu không độ tin cậy của thiết bị sẽ kém.
    • MTTR [Mean Time To Repair]: nghĩa là thời gian sửa chữa, tức là khả năng bảo trì. Chúng tôi muốn nó thấp hơn để hệ thống không hoạt động trong một thời gian dài.
  • Hiệu suất cao và cân bằng tải: Điều này đặc biệt quan trọng khi nói đến một dịch vụ đám mây cần chạy ứng dụng cho khách hàng của nó, trên siêu máy tính hoặc máy tính lớn để tính toán toán học hoặc mô phỏng khoa học, v.v. Nó đạt được bằng cách tăng dung lượng RAM và số lượng và / hoặc hiệu suất của bộ vi xử lý. Ngoài ra, chúng ta phải cân bằng tải tốt, điều này phụ thuộc vào việc quản lý các quy trình mà chúng ta thực hiện, vì vậy chúng ta sẽ không quá tải một số nút hơn những nút khác, nhưng chúng ta sẽ cân bằng khối lượng công việc trên toàn bộ siêu máy tính bằng nhau hoặc đồng nhất. khả thi.
  • Khả năng mở rộng: khả năng thích ứng của phần mềm và phần cứng mà không có giới hạn để thay đổi cấu hình hoặc kích thước. Loại máy này phải linh hoạt khi mở rộng khả năng tính toán hoặc dung lượng bộ nhớ, v.v., nếu nó không thành công mà không cần phải mua một siêu máy tính mới.
  • Chi phí: Điều này không chỉ phụ thuộc vào chi phí của bản thân máy và việc bảo trì, có thể dễ dàng lên đến hàng triệu, mà còn phụ thuộc vào mức tiêu thụ của máy thường được đo bằng MW [Megawatts] và chi phí của hệ thống làm mát, cũng cao bởi lượng nhiệt mà chúng tạo ra. Ví dụ: nếu chúng ta lấy làm ví dụ về trung tâm dữ liệu Facebook, nơi nó có máy chủ lưu trữ dịch vụ của nó, chúng ta có hàng tỷ chi phí, khoảng 1600 kỹ sư làm việc trên đó, mà không tính các kỹ thuật viên và quản trị viên chuyên dụng, một số hóa đơn tiền điện tầng bình lưu [lưu ý rằng các trung tâm dữ liệu ngày nay tiêu thụ 2% năng lượng điện được tạo ra trên toàn thế giới, tức là hàng tỷ watt và hàng tỷ euro. Trên thực tế, chỉ có Google tiêu thụ 0,01% năng lượng của thế giới, đó là lý do tại sao nó thường lắp đặt các trung tâm dữ liệu của mình ở các khu vực trên thế giới nơi điện rẻ hơn, vì điều đó giúp tiết kiệm hàng triệu USD], v.v. Bạn có thể tưởng tượng rằng việc duy trì một đội như thế này không hề rẻ ... và nó không phải là ít, vì máy chủ khổng lồ mà Facebook có ở Oregon nằm trong một nhà kho rộng khoảng 28.000 m2 trị giá hàng trăm triệu euro, một con số khổng lồ. trang trại máy chủ với hàng nghìn bộ vi xử lý, ổ cứng để thêm vài PB dung lượng lưu trữ, nhiều bộ nhớ RAM, card mạng trong tự nhiên [tính toán rằng có 6 km cáp quang để xen kẽ chúng] và tất cả tiêu thụ 30 MW điện máy phát điện diesel như chế độ UPS khi mất điện, tạo ra tất cả nhiệt lượng cần một hệ thống tản nhiệt phức tạp với điều hòa không khí trên quy mô lớn.

Và đây là nó cho các tính năng quan trọng nhất, mặc dù có thể có ứng dụng cụ thể cần những thứ cụ thể hơn.

Xu hướng thực tế:

Kể từ khi hệ thống gần như tùy chỉnh Giống như cái đầu tiên của IBM, CDC hay Cray, mọi thứ đã thay đổi rất nhanh với sự xuất hiện của chip hoặc mạch tích hợp và chi phí thấp của chúng, cho phép khởi động siêu máy tính song song khổng lồ mới, với hàng nghìn phần tử. Tuy nhiên, đừng nghĩ rằng các siêu máy tính hiện nay là những hệ thống đơn giản chỉ cần ghép hàng nghìn thiết bị lại với nhau là được, chúng là những cỗ máy phức tạp cần được thiết kế cẩn thận và chế tạo tỉ mỉ từng chi tiết để tận dụng tối đa và để mọi thứ hoạt động trơn tru. hình thức thích hợp theo khả năng hoặc đặc điểm mà chúng ta muốn đạt được.

Sau những chiếc máy đầu tiên bao gồm mạch tùy chỉnh hoặc các chip tùy chỉnh được thiết kế gần như đặc biệt cho máy, chúng ta đã bắt đầu sử dụng các hệ thống tiêu chuẩn hơn nhiều như bộ vi xử lý, như chúng ta sẽ thấy trong phần tiếp theo.

Bộ vi xử lý cụ thể:

Ban đầu, hầu hết các chip xử lý tương tự được sử dụng như máy tính gia đình, nhưng ngày nay, các công ty lớn như IBM, AMD và Intel, thiết kế các mẫu vi xử lý cụ thể của họ cho máy tính để bàn hoặc cho các mục đích khác. Ví dụ, tất cả chúng ta đều quen thuộc với bộ vi xử lý PowerPC của IBM, đã được cài đặt trong Apple cho đến vài năm trước khi họ sử dụng chip của Intel. Chính những con chip này đã được sử dụng trong Apple cũng đã cung cấp năng lượng cho siêu máy tính. Tuy nhiên, IBM có một số thiết kế cụ thể cho các máy lớn đạt được hiệu suất tốt hơn khi hoạt động cùng nhau, chẳng hạn như sức mạnh, ngay cả khi họ chia sẻ ISA với PowerPC.

Điều tương tự cũng xảy ra với SPARC, mặc dù họ hiện không có các mô hình cụ thể cho máy tính để bàn vì đây là lĩnh vực mà họ không thống trị hoặc rất quan tâm, vâng rằng trước đây đã có những máy trạm có cùng bộ vi xử lý này, mặc dù những cái hiện tại được thiết kế đặc biệt để làm việc trên những cỗ máy tuyệt vời này. Điều tương tự cũng có thể nói đối với chip Intel và AMD, so với các bộ vi xử lý cụ thể như Intel Xeon chia sẻ vi kiến ​​trúc với Core i3 / i5 / i7 / i9 hiện tại và nhiều đặc điểm của nó [không phải như vậy với Intel Itanium], chỉ có điều chúng được tối ưu hóa để hoạt động ở chế độ MP. Điều tương tự cũng xảy ra với AMD, công ty đã thiết kế một triển khai đặc biệt cho siêu máy tính K8 hoặc Athlon64 của họ có tên là Opteron và hiện tại là EPYC [dựa trên Zen].

Ở đây một lần nữa tôi dừng lại và tôi muốn xác định các loại vi xử lý theo các thông số nhất định:

  • Theo kiến ​​trúc của nó: tùy thuộc vào kiến ​​trúc của chính CPU hoặc bộ vi xử lý, chúng ta có thể tìm thấy:
    • Bộ vi xử lý: Nó là một CPU hoặc bộ vi xử lý thông thường, bất kể vi kiến ​​trúc hoặc công nghệ mà nó thực hiện.
    • Vi điều khiển: nó là một CPU bình thường [thường là hiệu suất thấp] được đặt trên cùng một con chip cùng với RAM, hệ thống I / O và một bus, tức là một máy vi tính trên một con chip. Nói chung, chúng không được sử dụng trong siêu máy tính, nhưng chúng hiện diện rất nhiều trong vô số thiết bị, bảng mạch trong nước và công nghiệp như Arduino, v.v. Nhưng đối với vấn đề siêu máy tính, hãy quên chúng đi ...
    • DSP [Bộ xử lý tín hiệu kỹ thuật số]: Bạn cũng có thể nghĩ rằng những bộ xử lý tín hiệu kỹ thuật số này không phù hợp với vấn đề siêu máy tính, nhưng bạn sẽ thấy chúng có ý nghĩa như thế nào khi chúng ta xem thêm về máy tính không đồng nhất. Nhưng bây giờ bạn chỉ cần biết rằng chúng là những bộ vi xử lý cụ thể để có thể có hiệu suất tốt khi xử lý tín hiệu kỹ thuật số, điều này làm cho chúng tốt cho card âm thanh, video, v.v. Nhưng điều này có thể có một số lợi thế trong một số tính toán nhất định như chúng ta sẽ thấy ...
    • SoC [Hệ thống trên chip]: Nó là một hệ thống trên chip đúng như tên gọi của nó, tức là một con chip trong đó có nhiều thứ hơn những gì có trong vi điều khiển. Ngoài CPU [thường là ARM], nó còn bao gồm đèn flash, RAM, I / O và một số bộ điều khiển. Nhưng trong trường hợp của SoC, CPU tích hợp thường có hiệu suất cao và dành cho điện thoại thông minh, máy tính bảng, v.v., mặc dù hiện nay có những máy chủ siêu nhỏ đang sử dụng loại chip này làm đơn vị xử lý như chúng ta sẽ thấy.
    • Bộ xử lý vector: là một loại vi xử lý SIMD, tức là nó thực hiện một lệnh với nhiều dữ liệu. Có thể nói rằng nhiều bộ vi xử lý hiện đại có tính năng SIMD nhờ các phần mở rộng đa phương tiện như MMX, SSE, v.v., mà chúng ta đã nói đến. Nhưng khi tôi nói bộ xử lý vectơ, tôi muốn nói đến bộ xử lý thuần túy, được thiết kế dựa trên việc xử lý một vectơ hoặc mảng dữ liệu cho mỗi lệnh. Ví dụ về loại bộ xử lý này là Fujitsu FR-V, được sử dụng trong một số siêu máy tính của Nhật Bản và GPU cũng có thể được coi là như vậy.
    • ASIC: Đây là các mạch tích hợp dành riêng cho ứng dụng, tức là các chip được tùy chỉnh dựa trên việc sử dụng chúng. Một thứ gì đó có thể mang lại hiệu suất tuyệt vời cho các ứng dụng cụ thể nhất định, mặc dù thiết kế của nó ngụ ý chi phí cao hơn so với việc sử dụng các đơn vị xử lý thông thường. Ngoài ra, nếu FPGA được sử dụng để thực hiện chúng, nó sẽ không phải là phương thức điện tử hiệu quả nhất. Ví dụ, ngày nay chúng được sử dụng rộng rãi để xây dựng các máy khai thác tiền điện tử.
    • người khác: Có những thứ khác mà ngay bây giờ đối với chủ đề này chúng tôi không quá quan tâm, chẳng hạn như APU [CPU + GPU], NPU, bộ vi xử lý không xung nhịp, C-RAM, bộ xử lý thùng, v.v.
  • Theo hạt nhân hoặc lõi của chúng: chúng tôi đã chuyển từ CPU đơn lõi hoặc đơn lõi sang có một số bộ vi xử lý, nhưng trong các bộ vi xử lý có một số, chúng tôi có thể phân biệt giữa:
    • Đa nhân: đây là những đa điểm truyền thống mà chúng tôi thường xuyên sử dụng, chẳng hạn như dualcore, quadcore, octacore, v.v. Chúng thường có 2, 4, 8, 12, 16, 32, ... lõi hoặc lõi, trên cùng một chip hoặc trong cùng một bao bì nhưng chip khác nhau.
    • Nhiều điểm: tương tự như ở trên, nhưng chúng thường là hàng trăm hoặc hàng nghìn lõi, và để có thể, các lõi tích hợp phải đơn giản hơn và nhỏ hơn so với thiết kế của Intel và AMD chẳng hạn, cũng như tiết kiệm năng lượng hơn. Đó là lý do tại sao chúng thường dựa trên lõi ARM, được đặt dưới dạng gạch. Bằng cách kết hợp nhiều thứ này lại với nhau, có thể đạt được năng lực tính toán rất cao. Intel cũng đã tán tỉnh anh chàng này, với Xeon Phi của họ, là x86 nhiều lõi sử dụng lõi đơn giản hơn nhiều nhưng được gói lại với số lượng lớn [57 đến 72] để cung cấp năng lượng cho một số siêu máy tính hiện nay.
  • Theo công dụng của nó: Trong trường hợp này, chúng tôi chỉ quan tâm đến một loại, đó là MP hoặc các hệ thống đa xử lý. Trên máy tính để bàn hoặc máy tính xách tay của bạn, bạn sẽ thấy rằng bo mạch chủ của bạn chỉ có một ổ cắm để cắm bộ vi xử lý, thay vào đó, các bo mạch chủ máy chủ có 2, 4, ... trên mỗi ổ cắm, đây là ý của tôi về MP.

Nhưng các bộ vi xử lý đang dần bị thay thế để thay thế cho các đơn vị xử lý khác cụ thể hơn, nhờ đó mà khả năng tính toán tốt hơn đạt được, nghĩa là tốt hơn hiệu quả giữa FLOPS trên mỗi W đạt được như chúng ta sẽ thấy trong phần tiếp theo.

Các phương pháp xử lý khác:

Như tôi đã nói, vi xử lý đang nhích từng chút một, mặc dù vẫn chiếm thị phần lớn, nhưng cũng có những đơn vị xử lý khác đang nhập cuộc mạnh mẽ trong thời gian gần đây, chẳng hạn như GPGPU hoặc GPU đa năng. Và đó là các chip của card đồ họa thường thuộc loại SIMD hoặc loại vector, có thể áp dụng cùng một lệnh cho vô số dữ liệu đồng thời, với sự gia tăng hiệu suất mà điều này đòi hỏi.

Và trên hết, bằng cách sửa đổi bộ điều khiển và theo chương trìnhKhông cần sửa đổi phần cứng, những GPU này có thể được sử dụng để xử lý dữ liệu như thể nó là một CPU, nghĩa là, để xử lý chung và không chỉ cho đồ họa như GPU chuyên dụng, cho phép tận dụng tiềm năng tính toán khổng lồ của chúng, vì lượng FLOPS đạt được bởi card đồ họa cao hơn nhiều so với CPU.

Lý do chúng đạt được hiệu suất tính toán khủng khiếp như vậy là bởi vì chúng được tạo ra để làm việc với các đồ thị và điều đó đòi hỏi rất nhiều phép tính toán học để di chuyển chúng. Ngoài việc là SIMD như tôi đã nói, chúng thường tuân theo kiểu mô hình lập trình song song SIMT [Lệnh đơn - Nhiều luồng], đạt được tốc độ thông lượng tốt ngay cả khi độ trễ của bộ nhớ cao.

Xin lưu ý rằng để tạo đồ thị 3D, một mô hình là cần thiết bắt đầu bằng cách kết hợp một loạt các tam giác với các tọa độ W, X, Y và Z trên mặt phẳng, sau đó áp dụng màu [R, G, B, A] và tạo các bề mặt, cung cấp ánh sáng, tạo họa tiết cho các bề mặt , hỗn hợp, v.v. Các dữ liệu và tọa độ màu đó có nghĩa là chúng chứa các bộ xử lý có thể định cấu hình để xử lý chúng và được hiểu rằng các tọa độ này chính xác tạo thành các vectơ mà các đơn vị xử lý GPU hoạt động và là các tọa độ được sử dụng để thực hiện các tính toán mục đích chung. Ví dụ, trong khi CPU phải thực hiện 4 lệnh bổ sung để thêm X1X2X3X4 + Y1Y2Y3Y4, tức là X1 + Y1, sau đó X2 + Y2, v.v., GPU có thể thực hiện điều đó trong một lần.

Nhờ đó, chúng tôi có GPU hoạt động ở tần số xung nhịp rất thấp, thấp hơn tới 5 hoặc 6 lần so với CPU và đạt được tốc độ FLOPS cao hơn nhiều, có nghĩa là tỷ lệ FLOPS / W cao hơn. Ví dụ: Intel Core i7 3960X đạt 141 GFLOPS hiệu suất tính toán, trong khi AMD Radeon R9 290X có thể đạt được 5.632 GFLOPS, có chi phí ước tính cho mỗi GFLOP khoảng € 0,08, trong khi vào năm 2004, một siêu máy tính của Nhật Bản có tên là NEC Earth Trình mô phỏng đã được đưa ra với bộ xử lý vectơ và tổng hiệu suất là 41.000 TFLOPS với chi phí cho mỗi GFLOPS là khoảng € 10.000, vì nó bao gồm hàng nghìn bộ xử lý với 8 GFLOPS mỗi bộ.

Như bạn có thể thấy, đây là nơi quan tâm đến việc tạo ra những lời nói dối siêu máy tính dựa trên GPU hiện tại từ NVIDIA hoặc AMD thay vì sử dụng CPU. Và tính toán không đồng nhất cũng trở nên quan trọng, nghĩa là kết hợp nhiều loại đơn vị xử lý khác nhau và giao phó từng hoạt động cho đơn vị xử lý nó trong thời gian ngắn hơn hoặc hiệu quả hơn. Điều này xung đột với mô hình tính toán đồng nhất, nơi CPU xử lý logic, GPU xử lý đồ họa, DSP cho tín hiệu kỹ thuật số, v.v.

Thay vào đó, tại sao không sử dụng tất cả chúng như đề xuất tính toán không đồng nhất để tối ưu hóa hiệu suất. Mỗi con chip này đều tốt ở một cái gì đó, chúng có ưu điểm và nhược điểm riêng, vì vậy hãy để mỗi con làm những gì chúng giỏi nhất ...

Song song:

Và mặc dù tôi không muốn có lợi nhuận, nhưng ít nhất là không nhiều bằng ổ siêu máy tínhVâng, tôi xin quay lại phần cuối của song song và giải thích thêm một chút. Và đó là, gần như ngay từ đầu của máy tính, tính song song đã được nâng cao theo nghĩa này hay cách khác:

  • Song song mức bit: chúng ta đều đã thấy các bộ vi xử lý đã phát triển như thế nào từ 4 bit, 8 bit, 16 bit, 32 bit và 64 bit hiện tại [mặc dù với một số phần mở rộng đa phương tiện đạt 128, 256, 512, v.v.]. Điều đó có nghĩa là một lệnh đơn lẻ có thể vận hành nhiều dữ liệu hơn hoặc dữ liệu dài hơn nhiều.
  • Song song ở cấp độ dữ liệu: khi thay vì dữ liệu vô hướng, chúng ta sử dụng vectơ hoặc ma trận dữ liệu mà các lệnh hoạt động trên đó. Ví dụ, một đại lượng vô hướng sẽ là X + Y, trong khi một DLP sẽ tương ứng với X3X3X1X0 + Y3Y2Y1Y0. Đây cụ thể là những gì mà các phần mở rộng này thực hiện trong các tập lệnh mà tôi đã đề cập trong phần song song mức bit.
  • Song song ở cấp độ hướng dẫn: các kỹ thuật có ý định xử lý nhiều hơn một lệnh trên mỗi chu kỳ đồng hồ. Đó là, đạt được chỉ số CPI

Chủ Đề