ฉันมีสคริปต์ R สำหรับอ่านข้อมูล csv จำนวนมากจากไฟล์ต่าง ๆ จากนั้นทำงานการเรียนรู้ของเครื่องเช่น svm สำหรับการจัดหมวดหมู่
มีห้องสมุดใดที่ใช้ประโยชน์หลายคอร์บนเซิร์ฟเวอร์สำหรับอาร์
หรือ
วิธีที่เหมาะสมที่สุดในการบรรลุนั้นคืออะไร?
ฉันมีสคริปต์ R สำหรับอ่านข้อมูล csv จำนวนมากจากไฟล์ต่าง ๆ จากนั้นทำงานการเรียนรู้ของเครื่องเช่น svm สำหรับการจัดหมวดหมู่
มีห้องสมุดใดที่ใช้ประโยชน์หลายคอร์บนเซิร์ฟเวอร์สำหรับอาร์
หรือ
วิธีที่เหมาะสมที่สุดในการบรรลุนั้นคืออะไร?
คำตอบ:
ถ้ามันอยู่ในลินุกซ์แล้วส่วนใหญ่ตรงไปข้างหน้าเป็นแบบมัลติคอร์ นอกเหนือจากนั้นฉันขอแนะนำให้ดูMPI (โดยเฉพาะกับแพ็คเกจหิมะ )
โดยทั่วไปแล้วดูที่:
สุดท้ายนี้ฉันขอแนะนำให้ใช้แพ็คเกจforeachเพื่อสรุปแบ็กเอนด์แบบขนานในโค้ดของคุณ ที่จะทำให้มีประโยชน์มากขึ้นในระยะยาว
หากคุณใช้ GNU / Linux คำตอบก่อนหน้านี้โดย Shane และ Dirk นั้นยอดเยี่ยม
หากคุณต้องการวิธีแก้ปัญหาสำหรับ windows มีหนึ่งในบทความนี้:
การประมวลผลแบบมัลติคอร์แบบขนานพร้อม R (บน Windows)
แม้ว่าแพคเกจยังไม่ได้อยู่ใน CRAN สามารถดาวน์โหลดได้จากลิงค์นั้น
เชนถูกต้อง ทั้งมัลติคอร์และRmpiเป็นผู้ชนะ
คุ้มครองเล็กน้อยกว้างของหัวข้อที่อยู่ในCRAN งานดูบนประสิทธิภาพสูงคอมพิวเตอร์ สิ่งนี้ยังเชื่อมโยงไปยังบทความการสำรวจล่าสุดเกี่ยวกับParallel Computing กับ Rจาก JSS
ท้ายสุดตัวอย่างและเคล็ดลับบางอย่างนั้นอยู่ในIntro to HPC พร้อมกับการสอนR ซึ่งผมให้ในบางครั้ง - ดูหน้าการนำเสนอของฉันสำหรับสำเนาล่าสุดจากสัปดาห์ที่แล้วที่ useR
ฉันสังเกตเห็นว่าคำตอบก่อนหน้านี้ขาดการพิจารณาทั่วไปของ HPC
ก่อนอื่นแพ็คเกจเหล่านั้นไม่สามารถให้คุณเรียกใช้SVM หนึ่งแบบขนาน ดังนั้นสิ่งที่คุณสามารถเพิ่มความเร็วได้คือการปรับพารามิเตอร์หรือการตรวจสอบข้ามคุณยังต้องเขียนฟังก์ชันของคุณเองสำหรับสิ่งนั้น หรือแน่นอนคุณอาจเรียกใช้งานสำหรับชุดข้อมูลที่แตกต่างกันในแบบคู่ขนานถ้าเป็นกรณี
ปัญหาที่สองคือหน่วยความจำ หากคุณต้องการกระจายการคำนวณบนคอมพิวเตอร์จริง ๆ สองเครื่องไม่มีอาหารกลางวันฟรีและคุณต้องคัดลอกข้อมูล - ที่นี่คุณต้องพิจารณาว่าเหมาะสมหรือไม่ที่จะแจกจ่ายสำเนาข้อมูลในคอมพิวเตอร์เพื่อบันทึกการสื่อสารบางอย่าง ในทางกลับกันถ้าคุณต้องการใช้หลายคอร์ในคอมพิวเตอร์เครื่องเดียวกว่ามัลติคอร์ที่เหมาะสมอย่างยิ่งเพราะมันช่วยให้กระบวนการลูกทั้งหมดเข้าถึงหน่วยความจำของกระบวนการหลักดังนั้นคุณสามารถประหยัดเวลาและพื้นที่หน่วยความจำจำนวนมาก
sprint
สำหรับ R ที่มีฟังก์ชั่นpsvm
แต่ทว่าเป็นเรื่องเล็กน้อยในการติดตามการเปลี่ยนแปลง R 3.0 และแนวทางการส่ง CRAN ใหม่ดังนั้นการดาวน์โหลดปัจจุบันจึงไม่สามารถใช้ได้บน CRAN หรือเข้ากันได้กับ R 3.0 อย่างสมบูรณ์ ไมล์สะสมของคุณอาจแตกต่างกันไป
ทั้งการตอบสนองของเชนและเดิร์คนั้นเป็นจุดเริ่มต้น
อย่างไรก็ตามคุณอาจต้องการดูรุ่น R เชิงพาณิชย์ที่เรียกว่าRevolution Rซึ่งสร้างขึ้นเพื่อจัดการกับชุดข้อมูลขนาดใหญ่และทำงานในหลายคอร์ ซอฟต์แวร์นี้ฟรีสำหรับนักวิชาการ (ซึ่งอาจเป็นกรณีของคุณฉันไม่รู้)