Canonical เปิดตัวยูทิลิตี้ etrace ซึ่งเป็นเครื่องมือสร้างโปรไฟล์แอปพลิเคชันอเนกประสงค์

ตามบัญญัติของวัด

Canonical ได้แนะนำ etrace, ยูทิลิตี้ ออกแบบมาเพื่อติดตามกิจกรรมระหว่างการดำเนินการแอปพลิเคชัน โปรแกรมมีลักษณะคล้ายกับยูทิลิตี้ strace และ ltrace และยังใช้ ptrace ที่รันไทม์

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

มีคำสั่งสองคำสั่ง "exec" และ "file" สำหรับข้อมูลเกี่ยวกับวิธีการเข้าถึงไฟล์และเรียกใช้กระบวนการอื่น ๆ ในกรณีแรกจะมีการตรวจสอบการทำงานของการเรียกระบบที่เกี่ยวข้องกับไฟล์และในกรณีที่สองตระกูลการโทรของระบบบริหารจะถูกดักฟัง

Etrace เป็นแอปพลิเคชันการติดตามทั่วไปซึ่งมีประโยชน์สำหรับการวัดและการแก้ไขจุดบกพร่องในวงกว้างสามประการ:

  • แอปพลิเคชันใช้เวลานานเท่าใดในการแสดงหน้าต่าง (กราฟิก / UI) บนหน้าจอ
  • ลำดับของงานที่สร้างและดำเนินการโดยโปรแกรมหลักในช่วงเวลาดำเนินการ รายการไฟล์ที่เข้าถึงระหว่างการทำงานของโปรแกรม

เมตริกเหล่านี้สามารถใช้เพื่อแก้ไขปัญหาที่อาจเกิดขึ้นได้ ในการจับภาพและทำความเข้าใจว่าแพ็กเกจพยายามที่จะหยุดหรือพบปัญหาคอขวดด้านประสิทธิภาพในทันที

แน่นอน ยังใช้งานได้กับแพ็คเกจ linux ดั้งเดิมหรือโปรแกรมปฏิบัติการใด ๆแม้ว่าจะมีฟังก์ชันการทำงานแบบสำเร็จรูปที่ลดลงเล็กน้อย (เช่นไม่ได้ติดตั้งแพ็กเกจเนทีฟใหม่) แต่คุณยังสามารถรวบรวมข้อมูลแอปและวัดระยะเวลาในการแสดงหน้าต่างได้

ยูทิลิตี้นี้ยังสามารถใช้เพื่อระบุปัญหาคอขวด ประสิทธิภาพในแอปพลิเคชันกราฟิกที่ใช้ X11 และแสดงระยะเวลาที่แอปพลิเคชันจะเริ่มต้นก่อนที่จะเริ่มแสดงผลหน้าต่าง

นอกจากนี้ยังมีตัวเลือกเฉพาะสแน็ป "–reinstall-snap" และ "–clean-snap-user-data" ซึ่งช่วยให้คุณสามารถติดตั้งแพ็กเกจ snap ใหม่เพื่อทำการวัดโดยไม่ใช้แคชหรือลบข้อมูลผู้ใช้ที่เกี่ยวข้องกับแพ็กเกจ ก่อนที่จะเรียกใช้

การใช้งานพื้นฐาน

Etrace มีให้ในรูปแบบแพ็คเกจดังนั้นเราต้องติดตั้งก่อน เนื่องจาก etrace ถูกใช้เพื่อรันโปรแกรมตามอำเภอใจรวมถึงแพ็กเกจ snap อื่น ๆ และแม้แต่แพ็คเกจลินุกซ์แบบเดิมจึงต้องการสิทธิ์ทั้งระบบผ่านการล็อกแบบคลาสสิกซึ่งสามารถยอมรับได้โดยใช้แฟล็ก –classic เมื่อคำสั่งต่อไปนี้ถูกเรียกใช้

ในการติดตั้ง etrace:

snap install etrace --candidate --classic

กรณีการใช้งาน etrace แรก คือการวัดว่าแอพพลิเคชั่นกราฟิกใช้เวลานานแค่ไหนในการแสดงหน้าต่างบนหน้าจอ

เริ่มต้นด้วยปลั๊กอินง่ายๆเครื่องคิดเลข gnome และวนรอบ 10 ครั้งเพื่อดูว่าการดำเนินการนี้ใช้เวลานานแค่ไหน โปรดทราบว่าคุณต้องติดตั้งเครื่องคิดเลข gnome - ติดตั้งเครื่องคิดเลข gnome ที่นี่เราใช้อ็อพชัน –no-trace เนื่องจากเราไม่ต้องการสแต็กการติดตามแบบเต็มเราแค่ต้องการให้ etrace วัดระยะเวลาในการเริ่มต้น เราจะเข้าสู่ความสามารถในการติดตามอย่างเต็มรูปแบบในภายหลัง

etrace --repeat = 10 exec --use-snap-run --no-trace gnome-calculator --cmd-stderr = /dev/null
Total startup time: 1.531152957s
Total startup time: 513.948576ms
Total startup time: 512.980061ms
Total startup time: 515.576753ms
Total startup time: 508.354472ms
Total startup time: 515.734329ms
Total startup time: 508.414271ms
Total startup time: 514.258788ms
Total startup time: 508.407346ms
Total startup time: 511.950964ms

นอกจากนี้ Canonical ประกาศการใช้งานการสนับสนุน snap สำหรับ อัลกอริธึมการบีบอัด LZO อัลกอริทึม LZO มุ่งเน้นไปที่การบรรลุความเร็วในการคลายการบีบอัดสูงสุดโดยมีค่าใช้จ่ายในการเพิ่มขนาดของไฟล์ที่ได้ เมื่อทดสอบแพ็กเกจด้วย Chromium การใช้ LZO แทนอัลกอริทึม XZ เริ่มต้นจะช่วยให้คุณเร่งความเร็วในการเปิดตัวแพ็กเกจ snap 2-3 ครั้งโดยลดเวลาที่ต้องใช้ในการคลายการบีบอัดรูปภาพ SquashFS

โดยเฉพาะอย่างยิ่งการเปิดตัว Chromium ครั้งแรกที่ติดตั้งจากแพ็คเกจ deb ปกติจะใช้เวลาประมาณ 1,7 วินาที

การเปิดตัวครั้งแรกจาก snap เมื่อใช้ XZ จะใช้เวลา 8.1 วินาทีและเมื่อใช้ LZO - 3.1 วินาที ในการรีบูตด้วยข้อมูลที่แคชไว้เวลาเริ่มต้นคือ 0,6, 0,7 และ 0,6 วินาที ตามลำดับ

ขนาดของแพ็คเกจ snap เพิ่มขึ้นจาก 150MB เป็น 250MB ด้วย LZO


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา