ที่งาน SC13 อินเทลเปิดเผยรายละเอียดของหน่วยประมวลผลสำหรับงานประสิทธิภาพสูงที่ต้องการการคำนวณขนานจำนวนมาก เป็นหน่วยประมวลผลที่พัฒนาต่อจาก Xeon Phi โดยมีชื่อรหัสว่า Knight's Landing (KNL)
อินเทลระบุว่าแนวคิดการใช้หน่วยประมวลผลหลัก ร่วมกับหน่วยประมวลผลเฉพาะเพื่อมาทำงานขนานสร้างความยุ่งยากในการพัฒนาอย่างมาก เพราะนักพัฒนาต้องมานั่งคิดว่างานใดจะอยู่บนหน่วยประมวลผลหลัก งานใดต้องโยกไปให้หน่วยประมวลผลเสริม
ทุกวันนี้การทั้ง AMD และ NVIDIA ล้วนเสนอแนวทางการ "แก้ปัญหา" ความยุ่งยากของการย้ายงานไปอยู่บนหน่วยประมวลผลเสริม ด้วยการทำให้หน่วยความจำเป็นผืนเดียวกัน เช่น HSA ของ AMD และ CUDA 6 ของ NVIDIA
อินเทลระบุว่า KNL จะมีคอร์ "จำนวนมาก" (many core) โดยไม่ระบุจำนวนที่ชัดเจน แต่ใช้คำเดียวกันที่อินเทลใช้เรียก Xeon Phi ที่วางขายในตอนนี้ และ Phi มีคอร์ภายใน 61 คอร์
ปัญหาของหน่วยประมวลผลขนานที่มีคอร์จำนวนมาก คือการอ้างถึงหน่วยความจำ ในกรณีของชิปกราฟิกนั้นอ้างถึงหน่วยความจำได้จำกัด จำนวนคอร์ที่สูงมากๆ และแต่ละคอร์ต่างพยายามอ้างหน่วยความจำจะทำให้เวลาประมวลผลเสียเวลาไปกับการส่งข้อมูลจากหน่วยความจำเข้าและออกจากซีพียู อินเทลเสนอทางแก้ด้วยการเพิ่มหน่วยความจำ "ระดับใกล้" (near memory) เข้าไว้ในแพ็กเกจเดียวกับตัวซีพียู หน่วยความจำนี้มีความเร็วสูงกว่าหน่วยความจำปกติ ทำงานใกล้ชิดกับตัวซีพียูทำให้ส่งข้อมูลได้เร็วมาก ทำหน้าที่เป็นแคชให้กับซีพียูเพื่อลดการดึงข้อมูลเข้าออกจากหน่วยความจำแบบ DDR ที่อยู่ภายนอกชิปและมีพื้นที่ขนาดใหญ่มาก โดยอินเทลเรียกหน่วยความจำ DDR ที่เราใช้ทุกวันนี้ว่าเป็นหน่วยความจำ "ระดับไกล" (far memory)
ถึงตอนนี้ KNL วางตลาดจริง นอกจากสัญญาณนาฬิกา, จำนวนคอร์, หน่วยความจำภายนอกที่รองรับได้ แบบทุกวันนี้ เราคงต้องดู หน่วยความจำบนตัวชิปเพิ่มเติม
KNL จะวางตลาดจริงในอีก 12 ถึง 18 เดือนข้างหน้า มันจะใช้สถาปัตยกรรมใหม่ พร้อมๆ กับการวางตลาดด้วยเทคโนโลยีการผลิต 14 นาโนเมตร โดย KNL จะไม่ถูกเรียกว่าเป็นชิปเร่งการประมวลผลแบบ Xeon Phi อีกแล้ว แต่ถูกเรียกว่าซีพียูคอร์จำนวนมาก (many core CPU) แทน เพราะทำงานได้ด้วยตัวเอง
หลายๆ ข่าวที่ผ่านมาเวลาที่ Blognone นำเสนอข่าวการใช้ชิปกราฟิกในซุปเปอร์คอมพิวเตอร์ มักมีผู้อ่านถามกันว่าทำไมเราถึงไม่ใช้ชิปกราฟิกแทนที่ซีพียูไปเลย เพราะมันมีพลังประมวลผลสูงมากแล้ว ตอนนี้คำตอบคงชัดเจนว่าอินเทลกำลังไปแนวทางนี้แล้ว แต่ถึงเวลาวางตลาดจริงแล้วสินค้าจะถูกวางตลาดอยู่ในระดับไหน คนทั่วไปจะมีโอกาสได้ใช้งานกันหรือไม่คงเป็นอีกเรื่องที่เราต้องรอลุ้นกัน
ที่มา - The Register, Intel
Comments
สุรปมันคือ CPU ปกติที่เพิ่ม core เข้าไปมากๆ พร้อมๆกับการเพิ่ม cache เข้าไปเหรอครับ?
ประมาณนั้นครับ รายละเอียดยังน้อยมาก คงยังสรุปอะไรไม่ได้
ข้อสังเกตเพิ่มเติม คืออินเทลเรียกว่า "แรม" มากกว่าที่จะเรียกว่า "แคช" โดยทั่วไปแล้ว แคชมักจะเป็น static memory ความเร็วสูง แต่ต้นทุนแพง (ใช้ทรานซิสเตอร์ 6 ตัว) ขณะที่แรมทุกวันนี้มักเรียก dynamic memory ที่ความเร็วต่ำกว่า แต่ต้นทุนต่ำไปด้วย (ใช้ทรานซิสเตอร์ตัวเดียว)
ความเป็นไปได้คือแคชที่คุณเรียก แต่อินเทลเรียกว่าแรม คือการใช้ dynamic memory แพงๆ ความเร็วสูงๆ ขนาดใหญ่พอสมควร (อาจจะหลายร้อยเมกกะไบต์) เข้าไว้เป็นแคชอีกชั้น เมื่ออยู่ในแพ็กเกจเดียวกัน แต่คนละชิป คนละกระบวนการผลิต latency มักจะดีกว่าการอยู่นอกแพ็กเกจมาก
การเพิ่มคอร์เข้าไปมากๆจะมีปัญหาสำคัญคือ แต่ละคอร์ต้องการหน่วยความจำของตัวเอง การลากสายต่อกับแรมของแต่ละคอร์ต้องใช้สายนับร้อยเส้น data ประมาณ 64 เส้น (บิต) กับ address ขึั้นกับแรมที่รับได้
ถ้าต่อทุกคอร์ คุณง่ายๆ ว่า 100 เส้นต่อชุดเมมโมรี ถ้า 60 คอร์ก็ 6,000 เส้น เราออกแบบบอร์ดกันไม่ได้แน่ๆ
ทางเลือกที่อินเทล "อาจจะ" ทำคือต่อสาย 6,000 เส้นที่ว่าออกมาจากชิปซีพียูจริงๆ แล้วต่อหน่วยความจำในแพ็กเกจเดียวกันแยกกันไป จากนั้นต่อตัวควบคุมหน่วยความจำ แยกออกมาอีกชุด มีทางเข้าออกทางเดียวต่อกับหน่วยความจำภายนอก
ทั้งหมดนี้ "คาดเดา" จากข้อมูลเท่าที่มีนะครับ
lewcpe.com, @wasonliw
ส่วนตัว ผมชอบบทวิเคราะห์ของคุณลิ่วมากเลยครับ (รวมถึงความเห็นด้วย)
หลายๆ ครั้งอ่านแล้วก็สงสัยว่าคุณลิ่วได้ความรู้เหล่านี้มาจากไหน
ผมเองก็อยากมีความรู้ในเชิงลึกบ้างเหมือนกัน
คอยติดตามอ่านเรื่องเกี่ยวกับ CPU เชิงลึก และ Security เสมอ
อีกอย่างที่ชอบคือ สไตล์การให้ความเห็นของคุณลิ่วชัดเจน และไม่สรุปอะไรมั่ว
ไม่พูดลอยๆ ว่าอะไรจริง หรือไม่จริง แต่พูดวิเคราะห์ตามข้อมูลที่มี และบอกชัดเจนว่าอันไหนวิเคราะห์
ชอบครับ
รอ King's Landing
ทุกวันนี้การทั้ง AMD และ NVIDIA ล้วนเสนอ
น่าจะตัดคำว่า "การ" ออกนะครับ
ผมอยากได้ clock สูงๆ มากกว่า
เชื่อไหม ผมแปลงไฟล์ DVD 1 เรื่อง ด้วย Pentium Dual-Core (spec เมื่อ 3 ปีที่แล้ว) เที่ยบกับ Intel Core i5 ปัจจุบัน ใช้เวลาพอๆกันเลย
ใช้โปรแกรมอะไรแปลงครับ เดี๋ยวนี้มันมีโปรแกรมที่ใช้ประโยชน์จากหลายๆคอร์นะครับ เร็วขึ้นมาก บางโปรแกรมใช้ gpu ช่วย เร็วขึ้นไปอีกเยอะมาก บางผลทดสอบเร็วขึ้น 8 เท่าเลยนะครับ
ผมว่าควรจะหา Software ที่สนับสนุนการ Encode/Decode แบบ Multi-Processor มาใช้งานมากกว่านะครับ
ใช้ format factory เวอร์ชั่น multi threads ด้วยครับ แต่มันจะ multi threads ก็ต่อเมื่อแปลงไฟล์มากกว่า 1 ไฟล์ คือถ้าเราแปลงไฟล์เดียว มันแยกเป็นหลาย threads ให้เราไม่ได้น่ะครับ
มันมี software ที่แปลงไฟล์เดียวแล้วแยก threads ได้ด้วยเหรอครับช่วยแนะนำหน่อย
เยอะแยะเลยครับ software ที่ base จาก ffmpeg / mencoder ทำได้หมดทุกตัวครับ
ผมเคยใช้ core 2 duo แปลง slide เป็น DVD เมื่อก่อนให้เวลา 10 ชม เดี่ยวนี้ ใช้ i 5 ใช้เวลาแค่ไม่ถึง ชม
Opensource - Hackintosh - Graphic Design - Scriptkiddie - Xenlism Project
ถึงบางอ้อล่ะครับผมก็โง่อยู่ตั้งนานคือ format factory มันไม่ multi threads (ทั้งๆที่ตัวโปรแกรมบอก multi threads) ตอนนี้ลอง TEncoder มันเร็วขึ้นจริงๆ ฮะ (มากด้วย)
ตอนนี้กำลังมองหาโปรแกรมบน linux ที่ใช้ gpu ช่วยแปลงไม่รู้จะมีหรือป่าว
รอ winterfell ครับ the house of stark
สำหรับคนที่ชอบ king's landing ครับ
game of thrones?
^
^
that's just my two cents.
เดี๋ยวโดนมังกรถล่ม
ตอนอ่านหัวข้อข่าวผมก็นึกถึง King's Landing ฮ่าๆ
อดคิดไม่ได้ครับ
วันก่อน comment เรื่อง arm มี core เยอะๆไปก้ไม่คิดว่า intel จะเป็นคนทำ
ตอนนี้เริ่มต้นที่ตลาด server แต่ถ้า Arm , AMD เอาบ้างเราอาจจะไได้เห็น desktop ที่มี core เยอะๆ บน desktop
Opensource - Hackintosh - Graphic Design - Scriptkiddie - Xenlism Project
บน Enterprise Server นี่ เสียค่า Core License กันอ๊วกเลยนะครับ ฮ่าๆๆ