เขียน MPI มาก็นาน ถึงแม้ว่าจะไม่ได้ใช้ฟังก์ชันอะไรมากมายแต่ก็ถือว่าสบายๆกับ อาร์เรย์ 2 มินิ ไม่ว่าจะเป็น MPI::Bcast MPI::Gather MPI::Scatter แต่ถึกกระนั้นเมื่องต้องเปลี่ยนการทำงานจากอาร์เรย์สองมิติแบบคงที่มาเป็นการจัดสรรหน่วยความจำแบบพลวัต (Dynamic memmory allocation) ใช้ new ใน C++ หรือ Malloc ใน C แล้ว โค๊ดที่เคยเขียนไว้อย่างสวยงาม ไม่สามารถใช้ได้อีกแล้ว หากเป็นการจัดสรรหน่วยความจำแบบพลวัตมิติเดียวทดสอบแล้วไม่เป็นไร แต่เมื่อไหร่เป็นสองมิติปัญหาเกิดขึ้นมาทันที ตอนนี้ยังไม่แน่ใจว่าเป็นเพราะเหตุใดเพราะไม่ค่อยอ่าน Doc แต่เป็นไปได้มากที่ว่ามันจะมีปัญหากะพอยน์เตอร์กับตำแหน่งของเมมโมรี่ที่ระบบปฏิบัติการจัดสรรไว้ อาจจะเป็นไปได้เรื่องลำดับ address ของ block ของข้อมูล ในอินเตอร์เน็ตก็มีคนโพสถามเหมือนกัน แต่คำตอยที่ดีที่สุดคงต้องปรับการใช้งานการจองหน่วยความจำแบบสองมิติให้เหลือมิติเดียวเพื่อหลีกเหลี่ยงข้อตฅจำกัดตรงนี้ไปให้ได้ก่อน MPI ไม่ง่ายอย่างที่คิดนะครับ
กลอนนี้ใช้เวลาประมาณ 20 นาทีเขียนขึ้นมาในห้องเรียนวิชาสัมนา 1 เพราะอาจารย์อยากให้แนะนำตัวเองเป็นกลอน ไม่รู้จะแต่งว่าไงเลยแต่งออกมาเป็นดอกสร้อย เห็นว่าพอใช้ได้เลยเอามาลงไว้เป็นอนุสร ๏ ตัวเอ๋ยตัวผม นิยมในพระพุทธศาสนา ตั้งจิตตั้งใจตั้งหน้า ใฝ่หาความรู้สู่ตน ตั้งใจศึกษาให้เชี่ยวชาญ ชำนาญในศาสตร์ที่ฝึกฝน ฝึกจิตฝึกสันดานให้เป็นคน เป็นชนในชาติที่ดีเอย ๚ะ๛
ความคิดเห็น
แสดงความคิดเห็น