วันจันทร์ที่ 22 เมษายน พ.ศ. 2562

ทดสอบการทำงานระหว่าง Pipeline Process และ Basic Process

ทำการทดสอบว่าการทำงานของ Pipeline Process นั้นจะมีประสิทธิภาพที่เร็วกว่าการทำงานปกติหรือไม่ โดยใช้การทดสอบพื้นฐานดังนี้

แบ่งฟังค์ชันออกเป็น 4 ตัว คือ

ฟังค์ชันสำหรับประมวลผลภาพแบบรวม


และฟังค์ชันการประมวลผลแบบแยก โดยจะแบ่งเป็น 3 Group สำหรับ 3 Process ดังนี้


ฟังค์ชันสำหรับทำการปรับสีของภาพและทำ Gaussian blur


ฟังค์ชันสำหรับการทำ Erode ภาพ


ฟังค์ชันสำหรับการทำ Dilate ภาพ

โดยจะทำการ Process รูปภาพ 3 รูป โดยแบ่งเป็น


การเรียกใช้แบบ Pipeline Process 3 Processes ในเวลาเดียวกัน


การเรียกใช้แบบ Basic Process เพื่อประมวลผลภาพ 3 รูป

ผลที่ได้จากการทดลองแสดงให้เห็นดังกราฟข้างต้น


จะพบว่าเวลาการทำงานในช่วงแรกนั้นผลความเร็วนั้นแทบไม่ต่างกันเลย แต่เมื่อจำนวน loop ที่สูงมากๆจะพบว่า เวลาการทำงานของ Pipeline Process นั้นจะเริ่มมีเวลาการทำงานที่เร็วกว่าอย่างเห็นได้ชัด

ข้อควรระวังในการทำงานแบบ Pipeline คือเวลาการทำงานของฟังค์ชันควรจะไล่เลี่ยกันเพื่อป้องกันคอขวด ( Bottleneck ) เช่น กรณีศึกษาที่ให้ Process1 มี loop การทำงานที่สูงกว่าอีก 2 Processes และประมวลผลภาพ 3 ภาพดังเดิม จะทำให้เกิดลักษณะดังนี้


ในช่วงเริ่มต้นยังมีลักษณะการทำงานปกติคือ เมื่อประมวลผลจาก Process1 เสร็จแล้วก็ส่งผลไปให้ Process2 ประมวลผลต่อ และ Process1 ก็นำภาพถัดไปมาประมวลผล สังเกตได้จาก CPU Core ที่ทำงานพร้อมกัน 2 ตัว


จากภาพจะพบว่าถึงแม้ว่า Process2 จะทำงานเสร็จแล้ว แต่เนื่องจาก Process1 ยังประมวลผลไม่เสร็จจึงส่งข้อมูลมาให้ไม่ได้ทำให้เกิดการขาดช่วงกันของ Pipeline Process

1 ความคิดเห็น:

  1. Golden Nugget Hotel and Casino - Mapyro
    Find Golden Nugget Hotel and Casino locations, rates, amenities: expert Las Vegas research, only 나주 출장마사지 at Hotel 여주 출장샵 and Travel Index.How many rooms can I book at Golden 전라남도 출장샵 Nugget Hotel and Casino?How many 여주 출장안마 people can I book 청주 출장안마 at Golden Nugget Hotel and Casino?

    ตอบลบ