ดีบักเกอร์เนทีฟประสิทธิภาพสูงสำหรับโปรเจกต์ C/C++ ขนาดใหญ่บน Windows
RAD Debugger แปลงชุดสัญลักษณ์ PDB ขนาดใหญ่เป็นรูปแบบ RDI ที่ปรับให้เหมาะสมแบบนอกกระบวนการ โดยรักษาส่วนติดต่อให้ตอบสนองขณะที่คุณตรวจสอบหน่วยความจำ สัญลักษณ์ และตัวแสดงภาพ เครื่องมือนี้พัฒนาโดย Epic Games และเขียนโดยทีม RAD Game Tools โดยเครื่องมือนี้จะจับคู่กับดีบักเกอร์กราฟิกหลายกระบวนการและ RAD Linker ที่รวดเร็ว มันมุ่งเป้าไปที่วิศวกร C และ C++ ที่ทำงานในฐานรหัส Windows x64 ขนาดใหญ่ที่ต้องการการตรวจสอบระดับต่ำโดยไม่ต้องใช้ IDE เต็มรูปแบบ。
วิธีที่ดีบักเกอร์จัดการกับโปรเจกต์ที่มีสัญลักษณ์มาก
ดีบักเกอร์ทำการแปลง PDB เป็น RDI แบบอะซิงโครนัสนอกกระบวนการ UI ซึ่งช่วยป้องกันไม่ให้ UI หยุดชะงักเมื่อประมวลผลคลังสัญลักษณ์ขนาดใหญ่ การออกแบบนั้นหมายความว่าการวิเคราะห์สัญลักษณ์เกิดขึ้นพร้อมกันกับการโต้ตอบ และ RAD Linker ช่วยลดเวลาเชื่อมโยงสำหรับการสร้าง x64 PE/COFF ขนาดใหญ่ สำหรับนักพัฒนาที่เผชิญกับการโหลดสัญลักษณ์ที่ยาวนานและขั้นตอนการเชื่อมโยง เครื่องมือนี้จะเปลี่ยนการวิเคราะห์สัญลักษณ์ที่บล็อกด้วยท่อที่อยู่นอกกระบวนการซึ่งช่วยให้ส่วนติดต่อกราฟิกตอบสนองได้
มันส่งผลต่อประสิทธิภาพของระบบในระหว่างการดีบักอย่างไร
เครื่องมือนี้ทำงานเป็นแอปพลิเคชันหลายกระบวนการในโหมดผู้ใช้ ดังนั้นงานหนักส่วนใหญ่จึงดำเนินการนอกกระบวนการ UI หลักและจำกัดการแย่ง CPU และเธรดของ UI ดีบักเกอร์มุ่งเป้าไปที่เวิร์กโฟลว์ Windows x64 บนเครื่องท้องถิ่นและยอมรับไบนารีที่ผลิตโดย MSVC หรือ Clang เนื่องจากการแปลงและการทำงานของสัญลักษณ์เกิดขึ้นแบบอะซิงโครนัส การโต้ตอบในพื้นหลังจึงยังคงราบรื่นในขณะที่กระบวนการพื้นหลังจัดการการบีบอัดและการจัดทำดัชนีข้อมูลดีบัก
มันปลอดภัยและใช้ได้จริงสำหรับเครื่องจักรในผลิตภัณฑ์หรือไม่?
ดีบักเกอร์ทำงานบนไฟล์ PDB มาตรฐานและต้องการเพียงเครื่องมือสร้าง MSVC หรือ Clang เท่านั้น จึงหลีกเลี่ยงการเชื่อมต่อ IDE ที่รุกราน โครงการนี้เป็นโอเพนซอร์สภายใต้ลิขสิทธิ์ MIT ซึ่งอนุญาตให้ทีมตรวจสอบหรือแก้ไขพฤติกรรมก่อนการใช้งาน เนื่องจากสถานะ alpha และหมายเหตุเกี่ยวกับความไม่เสถียรเป็นครั้งคราว การใช้งานบนเครื่องจักรในผลิตภัณฑ์ที่สำคัญต้องใช้ความระมัดระวังและการยอมรับพฤติกรรมในระยะเริ่มต้น
เครื่องมือที่มุ่งเน้นสำหรับนักพัฒนาระบบที่ต้องการรันซอฟต์แวร์อัลฟา
RAD Debugger เป็นตัวเลือกที่สร้างขึ้นโดยเฉพาะสำหรับวิศวกร C และ C++ ที่ต้องการการตรวจสอบระดับต่ำที่รวดเร็วบน Windows x64 และสามารถทนต่อขอบที่หยาบในระยะอัลฟา การจัดการสัญลักษณ์นอกกระบวนการและการรวมลิงเกอร์ช่วยเพิ่มความเร็วในการทำงานเมื่อชุดสัญลักษณ์ขนาดใหญ่และลิงค์ยาวเป็นจุดคอขวด แนะนำสำหรับนักพัฒนาที่สะดวกในการทดสอบรุ่นต้นแบบ และไม่แนะนำสำหรับทีมที่ต้องการดีบักเกอร์ที่มีความพร้อมใช้งานในระดับองค์กรที่มีความเรียบร้อย