fbpx
Tips

Force GPU Rendering กับความเชื่อที่ผิดๆ

คิดว่าหลายๆคนที่ใช้แอนดรอยด์ที่ใช้ ICS ขึ้นไปคงเคยเข้าไปซนในส่วนของ Setting กันมาบ้าง แล้วในหัวข้อของ Developer Option จะมีหัวข้อนึงที่น่าสนใจอยู่นั่นก็คือ Force GPU Rendering ซึ่งหลายๆคนคิดว่าถ้าติ๊กตรงนี้แล้วจะทำให้ GPU หรือการ์ดจอประมวลภาพสองมิติแทน CPU ซึ่งจะทำให้เครื่องของเราทำงานได้เร็วขึ้น …… จริงเหรอ? มาลองดูกันครับ

252x450

Force GPU Rendering เจ้าปัญหาอยู่ตรงนี้ไง เคยกดกันมั้ย ?


แล้วมันจะมาอยู่ในส่วน Developer Option ทำไมฟระ ถ้ามันจำเป็นจะมีให้เปิดปิดทำไม – -)|||

เพราะงั้นผมก็เลยไปหาข้อมูลเกี่ยวกับเจ้านี่ดูครับ ว่าจริงๆแล้วมันมีไว้ทำอะไรกันแน่ จึงได้ข้อสรุปมาดังนี้ครับ (ถ้าผิดตรงไหนช่วยติงกันได้นะครับ)

  1. โดยทั่วไปแล้วการประมวลผลเกี่ยวกับภาพต่างๆจะแบ่งออกเป็นสองส่วนคือประมวลผลด้วย Software ซึ่งใช้ CPU คำนวณและส่วนที่สองคือใช้ Hardware ก็คือใช้ GPU นั่นเอง
  2. ภาพสองมิติต่างๆ (2D) จะใช้ CPU และ สามมิติ (3D) จะใช้ GPU ในการประมวลผลครับ แต่อาจจะมีบางกรณีที่ผู้พัฒนาโปรแกรมจะใช้ GPU ในการประมวลผลภาพสองมิติครับ
  3. แต่เมื่อเราติ๊กถูกที่ Force GPU Rendering แล้วจะเกิดอะไรขึ้น ? แอนดรอยด์จะบังคับให้แอพพลิเคชันประมวลผลภาพสองมิติด้วย GPU ถึงแม้ว่าผู้พัฒนาจะไม่ได้เขียนโปรแกรมในส่วนนี้ยังไงล่ะ ซึ่งขั้นตอนนี้ จะทำให้แอพพลิเคชันนั้นรับประทาน Ram ในมือถือของเราเพิ่มขึ้นประมาณ 2-8MB ต่อแอพเพื่อโหลด OpenGL Driver ลงไปประมวลผลด้วย ซึ่งตรงนี้ไม่เป็นผลดีต่อเครื่องที่มีแรมน้อยๆแน่นอน นอกจากนั้นการบริโภคแรมของแอพเพิ่มขึ้น จะทำให้โปรแกรมเบื้องหลังอื่นๆ ถูำก Kill Process บ่อยขึ้น ซึ่งอาจจะทำให้เครื่องช้าลงเนื่องจากจะมีบางแอพ ถูก Kill และ ถูกเรียกใหม่ขึ้นมาบ่อยๆ
  4. แต่ถ้าในกรณีที่เครื่องมีแรมเหลือเฟือล่ะ? แน่นอนว่าในส่วนนี้ GPU จะช่วยแบ่งเบาภาระงานของ CPU ให้ทำงานน้อยลง ทำให้เครื่องดูเร็วขึ้น
  5. แต่!! มันมีปัญหาอยู่อีกตรงที่ว่า การที่เราบังคับให้โปรแกรมประมวลผลสองมิติด้วย GPU โดยที่ผู้พัฒนาไม่ได้เป็นคนกำหนดไว้และยังไม่ได้ทดสอบการนั้นไม่เป็นผลดีนักซึ่งปัญหาที่ผมพบเองโดยตรงคือมีการประมวลผลโดยรวมทั้งหมดของเครื่องที่ช้าลงรวมถึงเครื่องมีอาการงอแงและแสดงภาพผิดเพี้ยนไปจากเดิมแม้ว่าการประมวลผล 2D จะเร็วขึ้นก็ตาม (มีน้องที่ร่วมทดสอบท่านหนึ่งบอกว่าพอปิดแล้วเกมที่เคยกระตุกกับลื่นขึ้นมาทันตาเลยทีเดียว)

    ภาพด้้านซ้ายและขวาคือการ Benchmark เมื่อเปิด/ปิดโหมด Force GPU Rendering

    ซึงสังเกตว่าเมื่อเปิดจะมีคะแนน 2D ที่สูงขึ้นแต่ผลคะแนนรวมกลับลดลง

    สังเกตได้ว่าพอเปิดการทำงานของ GPU Rendering ทำให้การแสดงผลของโปรแกรมผิดเพี้ยนไปจากเดิมพอสมควร

แล้วเราควรทำยังไง ?

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

สรุปง่ายๆอีกทีก็คือ
– โหมดนี้เป็นการบังคับให้ทุกโปรแกรมประมวลผลภาพด้วย GPU
– โดยทฤษฎีเราเชื่อว่าจะทำให้เครื่องของเราประมวลผลภาพเร็วขึ้น ซึ่งจริงๆมันก็ควรจะเป็นเช่นนั้น
– แต่อย่าลืมหว่าโหมดนี้อยู่ในส่วนของ Development Setting ซึ่งเป็นส่วนของผู้พัฒนา ไม่ใช่ของผู้ใช้ทั่วไป
– หลายๆโปรแกรมที่ไม่รองรับอาจจะแสดงผลผิดพลาดหรือทำงานช้าลง เครื่องคุณอาจจะเอ๋อและช้าลงไปเลย (กำ)
– สำหรับโปรแกรมที่รองรับการทำงานของ GPU Rendering อยู่แล้วจะปรับไม่ปรับตรงนี้ก็ไม่มีผลอะไร
– เพราะฉะนั้นโดยทั่วไปคนธรรมดาอย่างเราๆไม่ควรเปิดใช้โดยไม่รู้ที่มาที่ไปครับผม

ปล. บทความบางส่วนอ้างอิงจาก The truth about hardware acceleration on Android : EXTREME TECH ครับ

31 Comments

  1. Avatar

    SSlover Post on November 11, 2012 at 8:29 am

    #592164

    คนแรก
    ไม่เคยปิดเลย อิอิ

  2. khun_Song

    khun_Song Post on November 11, 2012 at 9:16 am

    #592175

    จริงอะ ผมก็คนนึงล่ะที่เปิดมันตลอดเลย

    ทั้งที่ไม่เคยเห็นว่ามันจะต่างกันเท่าไหร่

  3. Kraizis

    Kraizis Post on November 11, 2012 at 3:37 pm

    #592215

    มาอ่านเป็นวิทยาทาน อันเนื่องมาจากผมไม่มีฟังก์ชันนี้ ก็เลยรอดตัวไป

  4. Avatar

    wuttipong8074 Post on November 11, 2012 at 4:28 pm

    #592243

    ผมเปิดแล้วเล่นไลน์ลื่นมากแต่ถ้าไม่ปิดรู้สึกว่าเวลาเลื่อนมันกระตุกอ่ะครับ

  5. Gimme

    Gimme Post on November 11, 2012 at 4:54 pm

    #592254

    ขอปรับหน้าตาบทความหน่อยนะครับ 🙂

    • minikoong1

      minikoong1 Post on November 11, 2012 at 7:18 pm

      #592330

      ได้ครับ พอดีไม่ค่อยได้เขียนข่าวที่นี่ จัดอะไรๆ ไม่ค่อยถูกเหมือนกัน ^^"

    • Gimme

      Gimme Post on November 11, 2012 at 8:30 pm

      #592361

      ยินดีที่มาเขียนมาก มาบ่อยๆนะ ^^
      กด edit ดูโค้ดที่ปรับแต่งในบทความนี้ได้เลยนะคับว่าใส่ tag อะไรพวกนี้ไปยังไงมั่ง

  6. laruku

    laruku Post on November 11, 2012 at 5:14 pm

    #592267

    Confirm ว่า Line กระตุกถ้าไม่เปิด GPU ครับ ใช้ ICS แต่บน Jelly Bean ลื่นเลย

    • Avatar

      tooddang Post on November 12, 2012 at 12:04 am

      #592539

      line นี่นักพัฒนาเค้าไม่รู้ตัวเลยเหรอ ว่าแอพครับกระตุกมาก -*-

  7. EthanFirst

    EthanFirst Post on November 11, 2012 at 5:46 pm

    #592289

    +1 ให้บทความนี้คับ

    ถ้าคุณไม่ใช่ Dev ก็ไม่ควรเข้าไปยุ่งกับ Developer option อยู่แล้ว

    แต่เด๋ว Android 4.2 ก็จะซ่อนมานไปและ

  8. neostp

    neostp Post on November 11, 2012 at 6:32 pm

    #592306

    ไม่ได้เปิดเหมือนกัน ^__^

    ปล.ไลน์ผมไม่กระตุกนะ ram 1 gb

  9. teenoynalove

    teenoynalove Post on November 11, 2012 at 7:09 pm

    #592325

    ใช่ๆ ถ้าไม่เปิด Line กระตุกชัดเจนเลยอ่ะ
    ใช้ one x ใครเป็นบ้าง

  10. Xorion

    Xorion Post on November 11, 2012 at 7:23 pm

    #592334

    เปิดตลอดเหมือนกัน

  11. anusorn21

    anusorn21 Post on November 11, 2012 at 7:58 pm

    #592350

    Line เหรอเลิกใช้ไปแล้วรู้สึกว่ามันมีปํญหากับเอส2ผมมาก

  12. kundew

    kundew Post on November 11, 2012 at 9:38 pm

    #592425

    ว่าแล้วทามมัย RAM วิ่งเยอะจัง ไปติ๊กไวเมื่อ อาทิตย์ก่อน ขอบคุณสำหรับบทความ ….+1 ครับ

  13. kundew

    kundew Post on November 11, 2012 at 9:38 pm

    #592426

    ว่าแล้วทามมัย RAM วิ่งเยอะจัง ไปติ๊กไวเมื่อ อาทิตย์ก่อน ขอบคุณสำหรับบทความ ….+1 ครับ

  14. Avatar

    darkleonic Post on November 12, 2012 at 4:48 am

    #592725

    หลักๆ ที่ผมเห็นเลยคือ twicca มันลื่นชึ้นเห็นๆเลย และมันก็ไม่มีปัญหาในการใช้งานด้วย
    เพราะงั้นยืนยันเปิดใช้งานต่อไป

  15. pollyman

    pollyman Post on November 12, 2012 at 5:00 am

    #592742

    แต่คำอธิบายเขียนว่า เร่งประสิทธิภาพของ 2D ซะงั้น น่าจะเขียนบอกด้วยนะว่า ถ้าใช้แล้วจะเกิดผลข้างเคียงไรบ้าง – -"

  16. Avatar

    housezaa Post on November 12, 2012 at 5:12 am

    #592748

    ไม่่เคยเปิดเลยครับ เพราะรู้สึกว่ามันเป็น option ของ dev เลยไม่อยากยุ่งกลัวเครื่องเอ๋อ

  17. Avatar

    peepo555 Post on November 12, 2012 at 5:28 am

    #592764

    ผมหาข้อมูลนี้มานานมาก ขอบคุณที่สรุปมาให้อ่านได้ง่ายๆครับ ใช้ One X ถ้าไม่เปิดนี่ Line กระตุกหนักเลยครับ ตอนนี้เลยเปิดตลอดเลย

  18. hunterbank

    hunterbank Post on November 12, 2012 at 6:15 am

    #592802

    Note 2 เปิดตลอดนะครับ มันทำให้รู้สึกดีในหลายๆแอพอ่ะครับ 🙂

  19. Avatar

    nopolice Post on November 12, 2012 at 6:39 am

    #592809

    GPU มันประมวลผล parallel เร็วแต่ถ้าเขียนมาไม่ได้เป็นแบบ parallel ก็เท่านั้น สู้ cpu ที่ core ใหญ่กว่าไม่ได้

    LINE ram 2 GB ก็เป็นครับ เป็นกันหมดแล้ว กว่าจะแก้บัคสักพักก็เป็นอีก (ส่วนอื่น)
    แล้วพัฒนาช้าด้วย ถ้าเทียบกับขนาด บริษัท (ผมวัดจากรายได้นะ)

  20. Avatar

    loquitur Post on November 12, 2012 at 2:08 pm

    #592867

    แล้วเจ้า disable hardware overlay ล่ะครับ เอาไว้ทำอะไร ท่านใดทราบบ้างค้าบ

  21. Avatar

    loquitur Post on November 12, 2012 at 2:08 pm

    #592868

    แล้วเจ้า disable hardware overlay ล่ะครับ เอาไว้ทำอะไร ท่านใดทราบบ้างค้าบ

  22. Avatar

    Mr. Coffee Post on November 12, 2012 at 4:23 pm

    #592926

    ผมวาเปิดแล้วมันกินแบตอ่ะ

  23. Avatar

    kotaro1150 Post on November 12, 2012 at 4:25 pm

    #592928

    เล่น need for speed most wanted เห็นผลนะครับ ผมใข้ xperia s
    ตอนไม่เปิดมันจะหน่วงๆบางจังหวะ แต่ถ้าเปิดมันลื่นตลอดเกมเลยครับ(แต่รุ้สึกเครื่องก็ร้อนขึ้น)

  24. Avatar

    kotaro1150 Post on November 12, 2012 at 4:25 pm

    #592929

    เล่น need for speed most wanted เห็นผลนะครับ ผมใข้ xperia s
    ตอนไม่เปิดมันจะหน่วงๆบางจังหวะ แต่ถ้าเปิดมันลื่นตลอดเกมเลยครับ(แต่รุ้สึกเครื่องก็ร้อนขึ้น)

  25. obese72

    obese72 Post on November 12, 2012 at 4:45 pm

    #592950

    ขอบคุณมากครับ เป็นความรู้ที่ผมอยากรู้มานานมาก ทีนี้จะลองเปิดๆ ปิดๆ แล้วสังเกตุดูบ้าง

  26. kong

    kong Post on November 12, 2012 at 9:23 pm

    #593212

    เท่าที่ลองมา ถ้าเป็น Android รุ่นต่ำกว่า 4.0.4 นี่ เปิด Force GPU rendering ช่วยให้ใช้งานได้ลื่นขึ้นนะครับ แต่ใน JB นี่ช้าลงเห็นๆ

    ส่วน Developer options นี่ ถ้าเป็น Power User ยังไงก็ต้องเข้าเมนูนี้ครับ เช่น
    – เปิดใช้งาน ADB
    – ปรับลด Window animation และ Transition animation เครื่องไม่ค่อยแรงนี่ช่วยได้เยอะ
    – เปิดฟีเจอร์ Stay awake ไม่ต้องปิดหน้าจอเวลาเสียบชาร์จแบต
    – ฯลฯ

    ไม่ใช่ว่าจำกัดเฉพาะ Developer แน่นอนครับ

  27. Avatar

    punburee Post on November 13, 2012 at 3:06 am

    #593447

    ใช้ ics ก่อนหน้านี้เปิดตลอด
    พอลองปิด แล้วเครื่องเอ๋อ กระตุก ค้างบ่อย โดยเฉพาะเวลาเล่น chrome เห็นผลชัดเจนมาก
    ตอนนี้ เลยเลือกเปิดดีกว่า ลื่นกว่าเยอะเลยครับ ^^

  28. Avatar

    wor_netto Post on November 13, 2012 at 5:57 am

    #593622

    ความรู้สึก(คิดไปเอง)ผมว่ามันเหมือน Overclock GPU หรือเปล่า เปิดแล้วลื่น แต่ร้อนและซดแบตเพิ่มอีีกเยอะ

Leave a Reply

To Top