นโยบายการจัดการความรู้ มหาวิทยาลัยสงขลานครินทร์ 1.ให้ใช้เครื่องมือการจัดการความรู้ผลักดัน คุณภาพคน และกระบวนทำงาน 2.ส่งเสริมการแลกเปลี่ยนประสบการณ์การทำงาน จากหน้างาน 3.ส่งเสริมให้มีเวทีเรียนรู้ร่วมกัน
อ่าน: 2430
ความเห็น: 1

เพิ่มความเร็วการคำนวณโดยใช้ DOS

วิจัย

ช่วงปีสองปีนี้ ผมทำวิจัยเกี่ยวกับการทำ stochastic simulation PK/PD แล้วมีปัญหาว่า เครื่องทำงานไม่เร็วพอ เวลาทำก็ใช้วิชวลเบสิกในเอ๊กเซล ซึ่งว่าไปแล้วมันก็เร็วนั่นแหละ แต่ความที่ใช้งานหนักมาก ก็จะทำให้โปรแกรมอืด แล้วทำให้ทำงานอย่างอื่นในเครื่องนั้นลำบาก รันแบบสองงานก็เหมือนมันจะแฮงค์ไปเลย

มาถึงจุดหนึ่ง ผมมานั่งคิดว่า เครื่องที่ผมใช้มันเป็น 4-core ซึ่งปรกติถ้ารันโปรแกรมเล็ก ๆ ที่เป็น DOS-compatible ซึ่งเป็นระบบปฎิบัติการที่โบราณสุด ๆ มันจะครองการคำนวณแค่ core เดียว

นั่นหมายความว่า ถ้าผมรันโปรแกรมใน DOS 4 งานพร้อมกัน มันจะแยกย้ายไปใช้แต่ละ core เป็นเอกเทศ ลองทดสอบดู ก็เป็นเช่นนั้นจริง ๆ

ทีนี้งานที่ผมทำ แต่เดิมเหมือนกับคำนวณทดสอบความเป็นไปได้แบบเรียงลำดับในหลายร้อยสถานการณ์ ผมก็ใช้วิธีว่า เขียนโปรแกรมที่รันใน DOS ได้ให้มันคำนวณแบบสุ่มสถานการณ์แล้วบันทึกลง text file

รันงานใน DOS (ใช้ Basic compiler) ผมลองจับเวลาดู จะช้ากว่ารันโดยใช้วิชวลเบสิกแบบหารสอง

แต่พอผมรันงานแบบขนาน 4 งานพร้อมกันแล้วเข้านอน ตื่นขึ้นมาก็เอา text file รายงานผลที่ได้ทั้งหมดมาเชื่อมต่อกัน แล้วไปเรียงข้อมูลเสียใหม่ มันกลายเป็นว่า ผมทำงานเร็วขึ้น 4 เท่า ซึ่งคิดสะระตะแล้ว ก็เป็นว่า ผมสามารถเร่งให้งานเสร็จเร็วขึ้นกว่าเดิมเท่าตัว

และที่ดีกว่านั้น ถ้าผมรันทิ้งไว้หลายเครื่อง ผมสามารถเร่งความเร็วการคำนวณได้อีกหลายเท่า

ดูไปแล้ว ของเก่า ถ้าใช้เป็น ผลก็อาจน่าทึ่งทีเดียว

หมวดหมู่บันทึก: วิจัย - วิจัยสถาบัน
คำสำคัญ (keywords): วิจัย
สัญญาอนุญาต: ซีซี: แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกัน Cc-by-nc-sa
สร้าง: 28 กุมภาพันธ์ 2556 22:06 แก้ไข: 28 กุมภาพันธ์ 2556 22:06 [ แจ้งไม่เหมาะสม ]
ดอกไม้
สมาชิกที่ให้กำลังใจ: Ico24 Champy, Ico24 Our Shangri-La, และ 6 คนอื่น.
สมาชิกที่ให้กำลังใจ
 
Facebook
Twitter
Google

บันทึกอื่นๆ

ความเห็น

ตอนที่รันด้วย excel นั้น excel ใช้การทำงานกี่ core ครับ โปรแกรมคำนวณบางโปรแกรมจะใช้ความสามารถของการมีหลาย core ได้ ซึ่งเราอาจจะต้องระบุ/กำหนดว่าให้โปรแกรมนัิน ๆ ทำงานกี่ core พร้อม ๆ กัน

เราเอง

ร่วมแสดงความเห็นในหน้านี้

ชื่อ:
อีเมล:
IP แอดเดรส: 35.173.48.224
ข้อความ:  
เรียกเครื่องมือจัดการข้อความ
   
ยกเลิก หรือ