คำถามติดแท็ก warp-scheduler

2
CUDA บล็อก / warps / threads แผนที่บนแกน CUDA ได้อย่างไร
ฉันใช้ CUDA มาหลายสัปดาห์แล้ว แต่ฉันมีข้อสงสัยเกี่ยวกับการจัดสรรบล็อก / warps / thread ฉันกำลังศึกษาสถาปัตยกรรมจากมุมมองการสอน (โครงการมหาวิทยาลัย) ดังนั้นการเข้าถึงประสิทธิภาพสูงสุดจึงไม่ใช่สิ่งที่ฉันกังวล ก่อนอื่นฉันอยากจะเข้าใจถ้าฉันได้รับข้อมูลตรงนี้: โปรแกรมเมอร์เขียนเคอร์เนลและจัดระเบียบการดำเนินการในกริดของบล็อกเธรด แต่ละบล็อกถูกกำหนดให้กับ Streaming Multiprocessor (SM) เมื่อกำหนดแล้วจะไม่สามารถโยกย้ายไปยัง SM อื่นได้ SM แต่ละตัวแยกบล็อกของตัวเองออกเป็น Warps (ปัจจุบันมีขนาดสูงสุด 32 เธรด) เธรดทั้งหมดในวิปริตดำเนินการพร้อมกันกับทรัพยากรของ SM การดำเนินการจริงของเธรดนั้นดำเนินการโดย CUDA Cores ที่อยู่ใน SM ไม่มีการแมปเฉพาะระหว่างเธรดและแกน ถ้าวาร์ปประกอบด้วยเธรด 20 เธรด แต่ในปัจจุบันมีเพียง 16 คอร์ที่ใช้ได้วิปริตจะไม่ทำงาน ในทางกลับกันหากบล็อกมี 48 เธรดบล็อกจะถูกแยกออกเป็น 2 วาร์ปและจะดำเนินการควบคู่กันโดยมีหน่วยความจำเพียงพอ หากเธรดเริ่มทำงานบนคอร์นั้นจะถูกหยุดทำงานเพื่อเข้าถึงหน่วยความจำหรือสำหรับการดำเนินการจุดลอยตัวที่ยาวนาน พวกเขาถูกต้องหรือไม่ ตอนนี้ฉันมี GeForce 560 …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.