ฉันควรศึกษาการสร้างและการเขียนโปรแกรมระบบ HPC อย่างไร


16

ฉันอยู่ในสาขาที่ไม่จำเป็นต้องทำงาน HPC เป็นอย่างมากและเมื่อมันพบมันมักจะเป็นผลมาจากนักวิจัยจากสาขาอื่นที่สำรวจแอพพลิเคชั่นใหม่ ๆ กับวิธีการของพวกเขาและสิ่งที่คล้ายกัน ในขั้นต้นสิ่งนี้หมายความว่ามันไม่เคยได้รับการแนะนำในหลักสูตรการศึกษาหรือได้รับการฝึกอบรมการสัมมนาและสิ่งที่คล้ายกัน - มันเป็นไปได้ที่จะไปประกอบอาชีพทั้งหมดโดยไม่จำเป็นต้องใช้มัน

อย่างไรก็ตามในเวลาเดียวกันฉันก็สามารถทำงานได้มากรับประโยชน์จากการใช้ทรัพยากร HPC ให้ฉันดีขึ้น - ส่วนใหญ่อยู่ในรูปแบบของการจำลอง Monte Carlo แบบขนานอย่างดี

ปัญหาของฉันคือการค้นหาแหล่งข้อมูลเพื่อการเรียนรู้วิธีการใช้กลุ่ม MPI ฯลฯ และแยกความดีออกจากความเลวเพราะฉันไม่รู้มาก

มีข้อเสนอแนะใด ๆ สำหรับหนังสือเกี่ยวกับการเขียนโปรแกรมในระบบประเภทนี้หรือในการตั้งค่าและใช้งานการตั้งค่า HPC ที่เรียบง่ายของตัวเอง?


สิ่งนี้ควรมีแท็ก "รายการใหญ่" หรือไม่
shuhalo

@ มาร์ติน: ไม่ มันควรจะมีคำตอบจากคนที่ได้ทำจริงนี้และรู้ว่าสิ่งที่พวกเขากำลังพูดถึงไม่ได้เป็นรายการขนาดใหญ่ของทุกอย่างที่อาจจะน่ากลัวจะเกี่ยวข้อง แก้ไขชื่อเพื่อแสดงสิ่งนี้
Shog9

คำตอบ:


13

ตรวจสอบมหาวิทยาลัย HPC โดยเฉพาะอย่างยิ่งส่วนทรัพยากรซึ่งรวมถึงสิ่งต่าง ๆ เช่น

และอีกมากมาย

มีหลายที่มีโปรแกรมการศึกษาที่สูงขึ้นรวมถึงหลักสูตรใน HPC ตัวอย่างเช่นโปรแกรมของฉันเองมีหลักสูตรใน

  • การคำนวณประสิทธิภาพสูง (2 เทอม)
  • กระบวนทัศน์การเขียนโปรแกรมแบบขนาน
  • วิศวกรรมซอฟต์แวร์ทางวิทยาศาสตร์
  • การเขียนโปรแกรม GPU และ GPGPU

เช่นเดียวกับความหลากหลายของหลักสูตรในการคำนวณทางวิทยาศาสตร์และการวิเคราะห์เชิงตัวเลข


4

ประสบการณ์ส่วนตัวของฉันคือ HPC ต้องการทักษะที่หลากหลายซึ่งยากมากที่จะทำในหนังสือเล่มหนึ่งสูตรอาหารหลักสูตรมหาวิทยาลัย พิจารณาว่า HPC ไม่ได้เกี่ยวกับการเขียนโปรแกรมเครื่องจักรขนาดใหญ่หรือการสร้างคลัสเตอร์ แต่เป็นการแก้ปัญหาทางวิทยาศาสตร์ขนาดใหญ่ที่ขอบของการคำนวณ

ฉันไม่แน่ใจว่าทุกคนจะเห็นด้วย แต่ฉันคิดว่ารายการของพื้นที่ที่เกี่ยวข้องใน HPC อาจเป็น:

แต่ละพื้นที่มีขนาดใหญ่มากและมีความรู้มากมายที่ยากต่อการเก็บทุกอย่างก่อนที่จะพยายามทำอะไร!

ในกรณีของฉันฉันเริ่มจากมุมหนึ่งของวิศวกรรมและค่อยๆพัฒนาประสบการณ์และเครือข่ายการทำงานร่วมกัน ในตอนแรกฉันเพิ่งมีปัญหาทางวิศวกรรม / คณิตศาสตร์ประยุกต์ที่ฉันต้องการแก้จากนั้นฉันก็ย้ายไปที่การเขียนโปรแกรมเพื่อเพิ่มประสิทธิภาพผ่านคอมพิวเตอร์ที่ทรงพลังมากขึ้นการวิเคราะห์เชิงตัวเลขอัลกอริธึมขั้นสูง เพื่อคอมพิวเตอร์ที่มีขนาดใหญ่ขึ้นเป็นแบบจำลองทางวิทยาศาสตร์ที่สมบูรณ์ยิ่งขึ้นและในที่สุดก็กลายเป็นปัญหาใหม่และซ้ำอีกครั้ง หากฉันมองย้อนกลับไปลองทำความเข้าใจและแก้ไขปัญหาแรกของฉันคือสิ่งที่สร้างแผนการศึกษาของฉันขึ้นมา การมีหัวหน้างานที่สามารถทำให้คุณอยู่ในเส้นทางที่ถูกต้องจะช่วยได้มากไม่อย่างนั้นระวังไม่ให้เป้าหมายของคุณหายไป (ในกรณีของฉันนี่เป็นปัญหาทางวิทยาศาสตร์ที่ฉันมีอยู่)

ถ้าฉันต้องบอกชื่อสิ่งหนึ่งที่สร้างความแตกต่างอย่างแท้จริงขณะที่ลงไปตามเส้นทาง HPC คือการพบปะผู้คนจากพื้นที่อื่นแลกเปลี่ยนความคิดเห็นและใช้ประโยชน์จากความรู้ที่กระจายของชุมชน นอกจากนี้ยังเป็นสิ่งสำคัญที่จะต้องไม่กลัวที่จะเปิดเผยเรื่องไร้สาระและทำสิ่งที่โง่เขลา ขั้นตอนแรกนั้นยากเสมอและสำคัญที่สุด!


2

นี่คือแผนการของฉันสำหรับการสอนตัวเองเกี่ยวกับ HPC บางส่วนในฤดูใบไม้ผลิที่กำลังจะมาถึงนี้ ฉันเป็นผู้พัฒนามานานกว่าทศวรรษครึ่งแล้วและทำงานกับเทคโนโลยีของ Microsoft โดยเฉพาะ ฉันยังเป็นนักเรียนอยู่ด้วยดังนั้นฉันจะได้รับซอฟต์แวร์ฟรี MSDN Academic Alliance(โปรไฟล์ของคุณบ่งบอกว่าคุณเป็นนักเรียนที่จบการศึกษาดังนั้นคุณควรตรวจสอบเพื่อดูว่าโรงเรียนของคุณเข้าร่วมหรือไม่) และการมีที่ว่างสำหรับสิ่งของที่บ้านเป็นปัจจัย จำกัด office / den / ManCave ของฉันมีคอมพิวเตอร์จำนวนหนึ่งอยู่แล้วดังนั้นฉันจึงสามารถทดสอบบางสิ่งได้ Windows Server 2008 HPC มีการระบุไว้ในแพ็คเกจที่มีอยู่ แต่ดูเหมือนว่าจะหายไปจากซอฟต์แวร์ที่ดาวน์โหลดได้ของโรงเรียนของฉันในช่วงปิดเทอมที่ผ่านมา ("กลุ่ม compute pack" เป็นโปรแกรมเสริมสำหรับเซิร์ฟเวอร์ 2003 ในขณะที่เซิร์ฟเวอร์ 2008 hpc มาพร้อม จากเซิร์ฟเวอร์ 2008 ด้วย ccp คุณจะต้องปิดการใช้งานบริการที่คุณไม่ต้องการ)

โทโพโลยีที่วางแผนไว้ของฉันคือ "กลุ่มที่เปิดใช้งาน SOA" ซึ่งเป็นภาพที่ 4 ในหน้านี้ (คลิกที่ช่องสี่เหลี่ยมเล็ก ๆ ใต้ภาพหลัก) ฉันมี Active Directory อยู่แล้วและเซิร์ฟเวอร์อื่น ๆ ตั้งค่าไว้แล้วดังนั้นฉันจึงคิดที่จะติดตั้ง eBay จากคอมพิวเตอร์ขนาดเล็กราคาถูก 4 เครื่อง (refurbate Dell 655 SFF ดูเหมือนจะทำงานใน ballpark ที่ราคา $ 100-200) เนื่องจากฉันพยายามเรียนรู้บางอย่างฉันเชื่อว่าฉันแค่ต้องการ "head node" "broker node" และ 2 "compute nodes" และการ์ดอีเทอร์เน็ตสำรองสองสามชิ้นเพื่อดูว่าบัสส่วนตัวและแอปพลิเคชันใด (จากภาพนั้น ) ทำ สิทธิ์การใช้งาน MSDNAA อนุญาตให้มีการคำนวณโหนดมากถึง 16 โหนดซึ่งมากกว่าที่ฉันกำลังมองหา

ฉันได้อ่านBeowulf คลัสเตอร์คอมพิวเตอร์กับ Windowsและฉันคิดว่าฉันมีความคิดว่าฉันขึ้นกับการความคิดบางอย่างที่สำนักงาน (มีรุ่นลินุกซ์ของหนังสือเล่มนี้ แต่ฉันมี 0 ลินุกซ์ทักษะ / แพลตฟอร์ม ที่บ้าน - ทำสิ่งที่ถูกต้องสำหรับตัวคุณเอง) มีกลุ่มใหญ่จำนวนมากที่สำนักงานแต่พวกเขาก็อิ่มตัวแล้วและการศึกษา "ฉันต้องการ / จำเป็นต้องเรียนรู้ X" ช่วงเวลานั้นยากมากที่จะได้รับ หนึ่งคาดว่าจะรู้สิ่งก่อนที่จะส่งงาน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.