ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingอยากขอคำแนะนำครับ เรื่องพัฒนาโปรแกรมคำนวณด้านคณิตศาสตร์หนักๆ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: อยากขอคำแนะนำครับ เรื่องพัฒนาโปรแกรมคำนวณด้านคณิตศาสตร์หนักๆ  (อ่าน 665 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
nat-ns
คนรักเสียว
*

พลังน้ำใจ: 1
ออฟไลน์ ออฟไลน์

กระทู้: 109



ดูรายละเอียด
« เมื่อ: 05 มีนาคม 2017, 15:42:16 »

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

ปัญหามีอยู่ว่าตัวเลขเหล่านั้นผมจะต้องใช้จำนวนเต็มๆ ห้ามปัดเศษใด ๆ เช่นถ้าคำนวณได้ 46465464564.114441...... ยา่วแค่ไหนเอาหมด ยกเว้นบางเลขเช่น 1111.2222....

เนื่องจากจะนำมาใช้สำหรับการคำนวณด้านคณิตศาสตร์ที่ต้องการความแม่นยำสูง และมีความเร็วในการคำนวณรวดเร็ว ในบางครั้งมีการนำค่าเหล่านั้นไปแสดงผลแบบ Realtime เช่น กราฟ X Y Z เพื่อให้เห็นรูปร่างของการคำนวณที่ได้

ผมอยากขอคำแนะนำในเรื่องของ
1.Hardware ของคอมพิวเตอร์ ว่าผมควรใช้ฮาร์ดแวร์เฉพาะไหมเช่น CPU RAM อื่นๆ เพื่อให้การคำนวณไวขึ้นและข้อผิดพลาดน้อยที่สุด
2.ภาษาที่เขียนหรือเทคนิค ที่ทำให้การประมวลผล ไวขึ้นกว่าเดิม

ผมได้ลองใช้ ภาษา C++ และ JAVA มาเทียบกันพบว่า C++ คำนวณได้รวดเร็วกว่า ผมเลยอยากสอบถามเพื่อนๆ พี่ๆ ในไทยเสียวว่ามีคำแนะนำให้ผมไหมครับ จัดเต็มได้เลยครับ ถ้า Hardware ตัวไหนที่มันเหมาะแต่ใช้งบสูงแนะนำมาได้เลยครับ เผื่อมีทุนแล้วผมจะจัดมาทดสอบสักตัวหรืออาจจะปรับปรุงคอมพิวเตอร์ใหม่


เพิ่มเติม
- ไม่แน่ใจว่าเราสามารถนำ GPU มาคำนวณได้ไหมครับจะเร็วขึ้นไหมเพราะเห็นมี CORE เยอะมาก ผมไม่รู้ว่าจำนวน Core ของ CPU กับ GPU สามารถเทียบกันได้หรือป่าว และไม่รู้ว่าต้องใช้ภาษาอะไรมาพัฒนา

อยากขอคำแนะนำจริงๆครับ ผมขอขอบคุณล่วงหน้านะครับ

 wanwan017 wanwan017 wanwan017 wanwan017 wanwan017

บันทึกการเข้า
tesla
คนรักเสียว
*

พลังน้ำใจ: 10
ออฟไลน์ ออฟไลน์

กระทู้: 115



ดูรายละเอียด
« ตอบ #1 เมื่อ: 05 มีนาคม 2017, 16:01:05 »


สำหรับ ซอฟต์แวร์ ถ้าเป็นผมนะครับ เขียนด้วย Matlab ซึ่งสามารถแปลงเป็นภาษาซีได้ดีทีเดีย ประหยัดเวลาและมีฟังก์ชันเสริมมากมาย ถ้าไม่คุ้นเคยก็คงใช้เวลาเรียนรู้พอสมควร ยังไง ภาษาซีประมวลผลได้เร็วกว่าภาษาอื่น เพราะมีฟังก์ชันที่ทำงานกับฮาร์ดแวร์ได้โดยตรงครับ เสียตรงต้องใช้เวลาในการพัฒนาอัลกอนานหน่อย ถ้าใช้ Matlab ได้ดีหน่อย แล้วแปลงเป็นซีจะย่นเวลาได้เยอะมากๆ แนะนำภาษาซีเหมือนที่ทำนั่นละครับ
ส่วนฮาร์ดแวร์ ก็เน้น GPU ครับ พยายามหาใช้ตัวที่ดีที่สุดเท่าที่งบถึง พวก CPU ก็เน้นหลายๆ คอร์ มีสปีดสูง ใส่แรมไว้เยอะๆ ประมาณงานตัดต่อหนัง HD 10250p ขึ้นไปได้ละครับ ถ้างบไม่ถึงก็ ตัดต่อวิดีโอได้ HD 1080p แบบลื่นปรี๊ดนั่นละ
อยากให้ทดลอง google big data ดูครับ สามารถทดลองฟรีได้ 30 วัน ที่เห็นใช้กันเป็น ภาษา python ครับ แต่เราทดลองเพื่อหาค่าความถูกต้องของตัวเลขจุดทศยมเยอะ ไว้เปรียบเทียบกับเครื่องคอมเราครับ ว่าจุดทศนิยมเหมือนหรือต่างกันแค่ไหนครับ
https://cloud.google.com/products/big-data/
เหมือนเราสามารถทดลองเล่น ซูเปอคอมพิวเตอร์ ได้ฟรี 30 วันนะ
บันทึกการเข้า

ToMoon@2020 ร่วมกันกดไลท์กดแชร์ คลิปช่อง NASA หรือ ช่อง ESA เพื่อแบ่งปันความก้าวหน้าที่สุดของมนุษย์ให้กับคนที่คุณรัก ร่วมกันไปยืนยันชื่อพวกเราไว้อีกล้านๆ ปีว่า พวกเราคือสิ่งมีชีวิตที่พิเศษสุดๆ สำหรับจักรวาล ToMar@2030
nat-ns
คนรักเสียว
*

พลังน้ำใจ: 1
ออฟไลน์ ออฟไลน์

กระทู้: 109



ดูรายละเอียด
« ตอบ #2 เมื่อ: 05 มีนาคม 2017, 16:27:50 »


สำหรับ ซอฟต์แวร์ ถ้าเป็นผมนะครับ เขียนด้วย Matlab ซึ่งสามารถแปลงเป็นภาษาซีได้ดีทีเดีย ประหยัดเวลาและมีฟังก์ชันเสริมมากมาย ถ้าไม่คุ้นเคยก็คงใช้เวลาเรียนรู้พอสมควร ยังไง ภาษาซีประมวลผลได้เร็วกว่าภาษาอื่น เพราะมีฟังก์ชันที่ทำงานกับฮาร์ดแวร์ได้โดยตรงครับ เสียตรงต้องใช้เวลาในการพัฒนาอัลกอนานหน่อย ถ้าใช้ Matlab ได้ดีหน่อย แล้วแปลงเป็นซีจะย่นเวลาได้เยอะมากๆ แนะนำภาษาซีเหมือนที่ทำนั่นละครับ
ส่วนฮาร์ดแวร์ ก็เน้น GPU ครับ พยายามหาใช้ตัวที่ดีที่สุดเท่าที่งบถึง พวก CPU ก็เน้นหลายๆ คอร์ มีสปีดสูง ใส่แรมไว้เยอะๆ ประมาณงานตัดต่อหนัง HD 10250p ขึ้นไปได้ละครับ ถ้างบไม่ถึงก็ ตัดต่อวิดีโอได้ HD 1080p แบบลื่นปรี๊ดนั่นละ
อยากให้ทดลอง google big data ดูครับ สามารถทดลองฟรีได้ 30 วัน ที่เห็นใช้กันเป็น ภาษา python ครับ แต่เราทดลองเพื่อหาค่าความถูกต้องของตัวเลขจุดทศยมเยอะ ไว้เปรียบเทียบกับเครื่องคอมเราครับ ว่าจุดทศนิยมเหมือนหรือต่างกันแค่ไหนครับ
https://cloud.google.com/products/big-data/
เหมือนเราสามารถทดลองเล่น ซูเปอคอมพิวเตอร์ ได้ฟรี 30 วันนะ

ขอบคุณครับตัว Matlab น่าสนใจครับพอดีผมเห็นว่าเหมือนเสียเงิน เลยไม่ได้ทดลองใช้เลย
ตรง "ส่วนฮาร์ดแวร์ ก็เน้น GPU ครับ พยายามหาใช้ตัวที่ดีที่สุดเท่าที่งบถึง พวก CPU ก็เน้นหลายๆ คอร์ มีสปีดสูง " ตัวโปรแกรมที่เราเขียนเราจะรู้ได้อย่างไรว่ามันได้นำ GPU มาช่วยประมวลหรอครับ
บันทึกการเข้า
tesla
คนรักเสียว
*

พลังน้ำใจ: 10
ออฟไลน์ ออฟไลน์

กระทู้: 115



ดูรายละเอียด
« ตอบ #3 เมื่อ: 05 มีนาคม 2017, 16:42:19 »


สำหรับ ซอฟต์แวร์ ถ้าเป็นผมนะครับ เขียนด้วย Matlab ซึ่งสามารถแปลงเป็นภาษาซีได้ดีทีเดีย ประหยัดเวลาและมีฟังก์ชันเสริมมากมาย ถ้าไม่คุ้นเคยก็คงใช้เวลาเรียนรู้พอสมควร ยังไง ภาษาซีประมวลผลได้เร็วกว่าภาษาอื่น เพราะมีฟังก์ชันที่ทำงานกับฮาร์ดแวร์ได้โดยตรงครับ เสียตรงต้องใช้เวลาในการพัฒนาอัลกอนานหน่อย ถ้าใช้ Matlab ได้ดีหน่อย แล้วแปลงเป็นซีจะย่นเวลาได้เยอะมากๆ แนะนำภาษาซีเหมือนที่ทำนั่นละครับ
ส่วนฮาร์ดแวร์ ก็เน้น GPU ครับ พยายามหาใช้ตัวที่ดีที่สุดเท่าที่งบถึง พวก CPU ก็เน้นหลายๆ คอร์ มีสปีดสูง ใส่แรมไว้เยอะๆ ประมาณงานตัดต่อหนัง HD 10250p ขึ้นไปได้ละครับ ถ้างบไม่ถึงก็ ตัดต่อวิดีโอได้ HD 1080p แบบลื่นปรี๊ดนั่นละ
อยากให้ทดลอง google big data ดูครับ สามารถทดลองฟรีได้ 30 วัน ที่เห็นใช้กันเป็น ภาษา python ครับ แต่เราทดลองเพื่อหาค่าความถูกต้องของตัวเลขจุดทศยมเยอะ ไว้เปรียบเทียบกับเครื่องคอมเราครับ ว่าจุดทศนิยมเหมือนหรือต่างกันแค่ไหนครับ
https://cloud.google.com/products/big-data/
เหมือนเราสามารถทดลองเล่น ซูเปอคอมพิวเตอร์ ได้ฟรี 30 วันนะ

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



Matlab ดาวน์โหลดได้ตามทอร์เรนท์ทั่วไปครับ ประมาณเกือบ 9gb ตัวล่าสุดตัวเต็มฟูลฟังก์ชัน หากไม่อยากใช้ของเถื่อนก็สมัครทดลองฟรีได้ 30 วันครับ
ส่วนเรื่อง GPU ลองค้นในกูเกิลดูครับ เพราะผมเคยใช้แต่ Matlab ซึ่งมีตัวทูลบอกซ์ Parallel Computing มีฟังก์ชันให้ใช้ได้อยู่แล้วครับ ถ้าเป็นภาษาตัวอื่นต้องหาจากกูเกิลเอาครับ เพราะมันเป็นงานค่อนข้างเฉพาะทาง ส่วนใหญ่เขาจะใช้พัฒนาพวก AI, Deep machine learning, big data ส่วนตัวกำลังเขียน quant bot ด้วย Matlab ว่าจะพอร์ทงานไปลองใน google big data  เลยแนะนำไม่ถูกเหมือนกัน หาจากกูเกิลน่าจะได้ข้อมูลกว้างและดีกว่าครับ
บันทึกการเข้า

ToMoon@2020 ร่วมกันกดไลท์กดแชร์ คลิปช่อง NASA หรือ ช่อง ESA เพื่อแบ่งปันความก้าวหน้าที่สุดของมนุษย์ให้กับคนที่คุณรัก ร่วมกันไปยืนยันชื่อพวกเราไว้อีกล้านๆ ปีว่า พวกเราคือสิ่งมีชีวิตที่พิเศษสุดๆ สำหรับจักรวาล ToMar@2030
nat-ns
คนรักเสียว
*

พลังน้ำใจ: 1
ออฟไลน์ ออฟไลน์

กระทู้: 109



ดูรายละเอียด
« ตอบ #4 เมื่อ: 05 มีนาคม 2017, 18:42:53 »


สำหรับ ซอฟต์แวร์ ถ้าเป็นผมนะครับ เขียนด้วย Matlab ซึ่งสามารถแปลงเป็นภาษาซีได้ดีทีเดีย ประหยัดเวลาและมีฟังก์ชันเสริมมากมาย ถ้าไม่คุ้นเคยก็คงใช้เวลาเรียนรู้พอสมควร ยังไง ภาษาซีประมวลผลได้เร็วกว่าภาษาอื่น เพราะมีฟังก์ชันที่ทำงานกับฮาร์ดแวร์ได้โดยตรงครับ เสียตรงต้องใช้เวลาในการพัฒนาอัลกอนานหน่อย ถ้าใช้ Matlab ได้ดีหน่อย แล้วแปลงเป็นซีจะย่นเวลาได้เยอะมากๆ แนะนำภาษาซีเหมือนที่ทำนั่นละครับ
ส่วนฮาร์ดแวร์ ก็เน้น GPU ครับ พยายามหาใช้ตัวที่ดีที่สุดเท่าที่งบถึง พวก CPU ก็เน้นหลายๆ คอร์ มีสปีดสูง ใส่แรมไว้เยอะๆ ประมาณงานตัดต่อหนัง HD 10250p ขึ้นไปได้ละครับ ถ้างบไม่ถึงก็ ตัดต่อวิดีโอได้ HD 1080p แบบลื่นปรี๊ดนั่นละ
อยากให้ทดลอง google big data ดูครับ สามารถทดลองฟรีได้ 30 วัน ที่เห็นใช้กันเป็น ภาษา python ครับ แต่เราทดลองเพื่อหาค่าความถูกต้องของตัวเลขจุดทศยมเยอะ ไว้เปรียบเทียบกับเครื่องคอมเราครับ ว่าจุดทศนิยมเหมือนหรือต่างกันแค่ไหนครับ
https://cloud.google.com/products/big-data/
เหมือนเราสามารถทดลองเล่น ซูเปอคอมพิวเตอร์ ได้ฟรี 30 วันนะ

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



Matlab ดาวน์โหลดได้ตามทอร์เรนท์ทั่วไปครับ ประมาณเกือบ 9gb ตัวล่าสุดตัวเต็มฟูลฟังก์ชัน หากไม่อยากใช้ของเถื่อนก็สมัครทดลองฟรีได้ 30 วันครับ
ส่วนเรื่อง GPU ลองค้นในกูเกิลดูครับ เพราะผมเคยใช้แต่ Matlab ซึ่งมีตัวทูลบอกซ์ Parallel Computing มีฟังก์ชันให้ใช้ได้อยู่แล้วครับ ถ้าเป็นภาษาตัวอื่นต้องหาจากกูเกิลเอาครับ เพราะมันเป็นงานค่อนข้างเฉพาะทาง ส่วนใหญ่เขาจะใช้พัฒนาพวก AI, Deep machine learning, big data ส่วนตัวกำลังเขียน quant bot ด้วย Matlab ว่าจะพอร์ทงานไปลองใน google big data  เลยแนะนำไม่ถูกเหมือนกัน หาจากกูเกิลน่าจะได้ข้อมูลกว้างและดีกว่าครับ

ขอบคุณมากครับ  Embarrassed
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์