เชื่อได้ว่ามือถือ Android รุ่นใหม่ๆ แทบจะตั้งแต่รุ่นกลางๆขึ้นไป ล้วนมี GPU หรือหน่วยประมวลผลกราฟิกอยู่ในชิปประมวลผลกันแล้วทั้งสิ้น แต่ที่ผ่านมาก็พบว่ามันแทบไม่ได้ถูกนำมาใช้มากนัก นอกจากการใช้เรนเดอร์เกม ยิ่งใครที่ไม่ได้เล่นเกมละก็ GPU นั้นแทบจะไม่ได้ถูกใช้งานอย่างคุ้มค่าเลย ทั้งนี้ส่วนหนึ่งก็เพราะตัวแอพไม่ได้เรียกใช้งาน GPU ผ่านทาง API อย่างที่เกมเรียก ทำให้ภาระในการทำงานไปตกกับ CPU ซะหมด
แต่ใน Android 4.0 (Ice Cream Sandwich) นี้ จะมีการนำ GPU มาใช้ในการทำงานมากขึ้น โดยทุกส่วนที่มีการแสดงผล จะถูกส่งไปให้ GPU ประมวลผลให้ (แต่พวกการคำนวณอะไรทั้งหลายก็ยังให้ CPU ทำงานอยู่) โดยเราเรียกวิธืนี้ว่า GPU Acceleration ซึ่งจะทำให้แอพสามารถทำงานได้ดีขึ้น จากเดิมที่ CPU ต้องคำนวณทั้งการทำงานและการแสดงผล แล้วจึงส่งให้ GPU แสดงเป็นภาพ คราวนี้จะแยกส่วนของการแสดงผลไปให้ GPU ทำแทน คล้ายๆกับในคอมพิวเตอร์ยุคปัจจุบันนี้
อันที่จริงแล้ว GPU Acceleration นี้ มีมาตั้งแต่สมัย Android 3.0 (Honeycomb) แล้ว เพียงแต่มันไม่ได้ถูกตั้งมาเป็นค่า default สำหรับนักพัฒนาโปรแกรมเท่านั้นเอง อยากจะใช้ก็ต้องหาวิธีเรียกใช้งานเอง แต่ใน ICS นี้ ตัว SDK จะจัดการในส่วนนี้ให้เอง
ซึ่งได้มีการวิเคราะห์การทำงานแบบนี้เอาไว้ว่า มันอาจจะไม่ทำให้แอพทำงานได้เร็วขึ้น แต่ทำให้แอพสามารถทำงานได้ไหลลื่นขึ้นมากกว่า โดยทั่วๆไปเราอาจจะสังเกตความแตกต่างระหว่างความเร็วกับความลื่นได้ยาก ถ้าให้เทียบง่ายๆก็อย่างเช่นการเปิดหน้าเว็บผ่านทาง web browser แล้ว scroll หน้าลงมา โดยมี 2 กรณีดังนี้
- เร็ว : โหลดข้อมูลมาได้หมดแล้ว แต่แสดงผลช้าไปนิด
- ลื่น : เมื่อ scroll หน้าลงมา เนื้อหาในเว็บก็แสดงขึ้นมาได้ทันที ทำให้เราเปิดดูเว็บได้อย่างไหลลื่น
แต่ทั้งนี้ใช่ว่ามันจะมีแต่ข้อดี เพราะมันยังมีอีกจุดหนึ่งที่น่าคิด นั่นคือเรื่องของการใช้พลังงานที่มันจะมากขึ้นหรือไม่ เพราะ GPU จะต้องช่วยคำนวณแทบจะตลอดเวลา ก็ทำให้ต้องใช้พลังงานมากขึ้น แล้วระยะเวลาการใช้งานแบตเตอรี่จะอยู่ได้นานขนาดไหน ไหนจะเรื่องความร้อนที่อาจสูงขึ้นอีก ก็หวังว่าจะมีการปิดจุดอ่อนเหล่านี้ได้ดีนะครับ เราจะได้ใช้มือถือ Android ที่ลื่นๆซะที
ปิดท้ายด้วยคลิปการนำเสนอฟีเจอร์ GPU Acceration ของ Google ละกัน (ใครว่างก็นั่งดูได้นะครับ ยาวราวๆ40 กว่านาที ประมาณนั้นแหละ)
ที่มา : Pocketnow, 9to5Google