Tôi nên học cách tạo và lập trình hệ thống HPC như thế nào?


16

Tôi ở trong một lĩnh vực không nhất thiết phải thực hiện nhiều công việc HPC và khi gặp phải nó, đó thường là kết quả của các nhà nghiên cứu từ các lĩnh vực khác khám phá các ứng dụng mới cho phương pháp của họ và tương tự. Chủ yếu điều này có nghĩa là nó không bao giờ thực sự được giới thiệu trong quá trình nghiên cứu, hoặc được đưa lên nhiều tại các hội thảo, hội thảo và tương tự - có thể đi toàn bộ sự nghiệp mà không cần đến nó.

Tuy nhiên, đồng thời, phần lớn công việc tôi làm có thể được hưởng lợi từ việc sử dụng tốt hơn các tài nguyên HPC có sẵn cho tôi - chủ yếu dưới dạng mô phỏng Monte Carlo song song độc đáo.

Vấn đề của tôi là tìm kiếm tài nguyên cho việc học cách sử dụng các cụm, MPI, v.v. Và tách biệt điều tốt với điều xấu, do tôi không biết nhiều.

Bạn có đề xuất nào cho các cuốn sách về lập trình trên các loại hệ thống này hay về việc thiết lập và chạy các thiết lập HPC rất khiêm tốn của chính mình không?


Điều này nên có một cái gì đó như một thẻ "danh sách lớn"?
shuhalo

@Martin: không. Nó nên có câu trả lời từ những người thực sự đã làm điều này và biết những gì họ đang nói, không phải là một danh sách khổng lồ về tất cả mọi thứ có thể liên quan đến nhau. Sửa đổi tiêu đề để phản ánh điều này.
Shog9

Câu trả lời:


13

Kiểm tra Đại học HPC . Đặc biệt, phần tài nguyên , bao gồm những thứ như

và nhiều hơn nữa.

Có nhiều chương trình giáo dục đại học bao gồm các khóa học trong HPC . Ví dụ, chương trình của riêng tôi bao gồm các khóa học trong

  • Điện toán hiệu năng cao (2 học kỳ)
  • Mô hình lập trình song song
  • Kỹ thuật phần mềm khoa học
  • Lập trình GPU và GPGPU

cũng như một loạt các khóa học về tính toán khoa học và phân tích số.


4

Kinh nghiệm cá nhân của tôi là HPC đòi hỏi một bộ kỹ năng rộng lớn đến mức rất khó để thực hiện nó chỉ trong một cuốn sách, công thức, khóa học đại học. Hãy xem xét rằng HPC không phải là về lập trình các máy lớn hoặc xây dựng một cụm mà là giải quyết các vấn đề khoa học lớn ở rìa của máy tính.

Tôi không chắc mọi người sẽ đồng ý nhưng tôi nghĩ rằng một danh sách các lĩnh vực liên quan đến HPC có thể là:

Mỗi lĩnh vực này đều vô cùng rộng lớn và có rất nhiều kiến ​​thức rất khó để nắm bắt mọi thứ trước khi cố gắng làm bất cứ điều gì!

Trong trường hợp của tôi, tôi bắt đầu từ một góc của kỹ thuật và từ từ phát triển kinh nghiệm và một mạng lưới cộng tác. Lúc đầu, tôi chỉ có một vấn đề toán học kỹ thuật / ứng dụng mà tôi muốn giải quyết, từ đó tôi chuyển sang lập trình, để có hiệu suất cao hơn thông qua các máy tính mạnh hơn, phân tích số, thuật toán tiên tiến, máy tính song song, thuật toán song song , cho các máy tính lớn hơn, đến một mô hình khoa học hoàn chỉnh hơn, và cuối cùng là một vấn đề mới và đang lặp lại. Nếu tôi nhìn lại, cố gắng hiểu và giải quyết vấn đề đầu tiên của tôi là điều đã tạo ra kế hoạch học tập của tôi. Có một người giám sát có thể giúp bạn đi đúng hướng cũng giúp ích rất nhiều, nếu không hãy cẩn thận đừng để mất mục tiêu cuối cùng của bạn (trong trường hợp của tôi, đây là vấn đề khoa học tôi có trong tay).

Nếu tôi phải kể tên một điều thực sự tạo ra sự khác biệt khi đi xuống con đường HPC là gặp gỡ mọi người từ các khu vực khác, trao đổi ý tưởng và tận dụng kiến ​​thức phân tán của cộng đồng. Ngoài ra, điều quan trọng là đừng quá sợ hãi khi công khai ngây thơ và làm những điều ngớ ngẩn. Những bước đầu tiên luôn khó khăn và quan trọng nhất!


2

Đây là kế hoạch của tôi để dạy bản thân một số nền tảng HPC vào mùa xuân tới. Tôi đã là một nhà phát triển trong một thập kỷ qua và làm việc độc quyền với các công nghệ của Microsoft. Tôi cũng là sinh viên, vì vậy tôi có thể nhận được một số phần mềm miễn phí thông qua Liên minh học thuật MSDN(hồ sơ của bạn cho biết bạn là học sinh tốt nghiệp, vì vậy bạn nên kiểm tra xem trường của bạn có tham gia không) và việc dọn chỗ ở nhà là yếu tố hạn chế. Office / den / ManCave của tôi đã có sẵn một số máy tính để tôi có thể kiểm tra một số thứ. Windows Server 2008 HPC được liệt kê trong một số gói có sẵn, nhưng dường như nó đã biến mất khỏi phần mềm có thể tải xuống của trường tôi trong học kỳ vừa qua ("gói tính toán cụm" là một tiện ích bổ sung cho máy chủ 2003, trong khi máy chủ 2008 hpc đi kèm với phiên bản rút gọn của máy chủ 2008, với ccp, bạn sẽ phải vô hiệu hóa các dịch vụ bạn không cần).

Cấu trúc liên kết theo kế hoạch của tôi là "Cụm kích hoạt SOA" là hình ảnh thứ 4 trên trang này (nhấp vào các ô vuông nhỏ dưới hình ảnh chính). Tôi đã có Active Directory và một số máy chủ khác đã được thiết lập, vì vậy tôi đang suy nghĩ về việc đưa 4 máy tính nhỏ của Dell giá rẻ ra khỏi eBay (tân trang Dell 655 SFF dường như đang chạy trong sân bóng 100-200 đô la). Vì tôi chỉ cố gắng học một số thứ, tôi tin rằng tôi chỉ cần một "nút đầu" một "nút môi giới" và 2 "nút tính toán" và một vài thẻ ethernet dự phòng để xem những gì riêng tư và ứng dụng (từ hình ảnh đó ) làm. Giấy phép MSDNAA cho phép tối đa 16 nút tính toán, nhiều hơn nhiều so với tôi đang tìm kiếm.

Tôi đã đọc Beowulf Cluster Computing với Windows và tôi nghĩ rằng tôi đã có ý tưởng gì về một số ý tưởng tại văn phòng (có một phiên bản linux của cuốn sách, nhưng tôi có 0 kỹ năng / nền tảng linux ở nhà - làm những gì phù hợp với bản thân). Có rất nhiều cụm lớn có sẵn tại văn phòng , nhưng chúng đã bão hòa và các khe thời gian "Tôi muốn / cần học X" mang tính giáo dục rất khó có được. Một người đã được dự kiến ​​sẽ biết các công cụ trước khi có thể gửi công việc.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.