GPU (Graphics Processing Unit) คือโปรเซสเซอร์เฉพาะสำหรับการประมวลผลข้อมูลกราฟิกแบบขนาน ที่ทำการคำนวณนับล้านครั้งบนพิกเซลและจุดยอดต่อเฟรม ต่างจาก CPU ที่ปรับให้เหมาะสมสำหรับงานแบบลำดับที่มีความหน่วงต่ำ GPU ประกอบด้วยคอร์พลังงานต่ำหลายพันคอร์สำหรับการดำเนินการทางคณิตศาสตร์จำนวนมาก ตามบล็อก NVIDIA Developer Blog (2025) GPU มือถือสมัยใหม่มีมากถึง 1024 คอร์และมีประสิทธิภาพถึง 2 TFLOPS ในโหลดงานคำนวณ นักพัฒนาใช้งาน GPU สำหรับการเรนเดอร์ การประมวลผลภายหลัง และการเรียนรู้ของเครื่องบนอุปกรณ์
ประเด็นสำคัญ
GPU (Graphics Processing Unit) คือไมโครชิปเฉพาะที่ออกแบบมาสำหรับการทำงานแบบขนานจำนวนมาก GPU ตัวแรกปรากฏในช่วงปลายทศวรรษ 1990 ในฐานะตัวเร่งกราฟิก 3D สำหรับพีซีตั้งโต๊ะ ตั้งแต่นั้นมา สถาปัตยกรรมได้วิวัฒนาการจากไปป์ไลน์แบบตายตัวไปเป็นเชเดอร์ที่ตั้งโปรแกรมได้และหน่วยคำนวณสากล
วัตถุประสงค์หลักของ GPU คือ การแรสเตอร์ไรซ์: การแปลงข้อมูลเรขาคณิต (จุดยอด, สามเหลี่ยม) เป็นพิกเซลบนหน้าจอ กระบวนการรวมถึงการแปลงจุดยอด การกำจัดพื้นผิวที่มองไม่เห็น การใส่พื้นผิว และการผสมสี การดำเนินการทั้งหมดนี้ถูกดำเนินการแบบขนานสำหรับองค์ประกอบนับพันพร้อมกัน
ตาม Jon Peddie Research (2025) ตลาด GPU มือถือคิดเป็น 58% ของปริมาณโปรเซสเซอร์กราฟิกทั้งหมด แซงหน้าโซลูชันแยกสำหรับพีซีและเซิร์ฟเวอร์ สมาร์ทโฟนทุกเครื่องมี GPU อย่างน้อยหนึ่งตัวรวมอยู่ใน System-on-Chip (SoC) พร้อมกับ CPU, DSP และโปรเซสเซอร์ประสาท
GPU สมัยใหม่แบ่งออกเป็นสองประเภท: แบบรวม (สร้างใน SoC, แบ่งปันหน่วยความจำกับ CPU) และ แบบแยก (บอร์ดแยกที่มีหน่วยความจำวิดีโอของตัวเอง) การพัฒนาแอปมือถือใช้เฉพาะ GPU แบบรวม — Qualcomm Adreno, ARM Mali, Apple GPU และ Imagination PowerVR
วิวัฒนาการของ GPU ผ่านสามขั้นตอน: ไปป์ไลน์แบบตายตัว (1999–2006), เชเดอร์แบบรวม (2006–2016) และคอร์คำนวณที่ตั้งโปรแกรมได้ (2016 — ปัจจุบัน) ขั้นตอนแรกกำหนดลำดับการดำเนินการที่เข้มงวด — การแปลง, การให้แสง, การใส่พื้นผิว นักพัฒนาไม่สามารถแทรกแซงไปป์ไลน์ได้
ด้วยการมาถึงของ เชเดอร์แบบรวม GPU ได้รับความสามารถในการดำเนินการโปรแกรมตามอำเภอใจ — เชเดอร์ที่เขียนด้วย HLSL หรือ GLSL สิ่งนี้เปิดทางไปสู่ GPGPU — การใช้ GPU สำหรับงานที่ไม่ใช่กราฟิก ขั้นตอนที่สามเพิ่มคอร์เทนเซอร์สำหรับการเรียนรู้ของเครื่องและการเรย์เทรซิงแบบเรียลไทม์
ใน GPU มือถือ เหตุการณ์สำคัญคือการนำ Tile-Based Deferred Rendering (TBDR) มาใช้ — สถาปัตยกรรมที่แฟรมถูกแบ่งออกเป็นไทล์ (16x16 พิกเซล) และประมวลผลในหน่วยความจำออนชิปที่รวดเร็ว สิ่งนี้ลดการใช้พลังงานลง 3–5 เท่าเมื่อเทียบกับการเรนเดอร์แบบ Immediate Mode ที่เป็นลักษณะของ GPU เดสก์ท็อป
สถาปัตยกรรม GPU แตกต่างจาก CPU อย่างสิ้นเชิง แทนที่จะมีคอร์ที่ทรงพลังสองสามคอร์พร้อมแคชขนาดใหญ่ GPU ประกอบด้วยหน่วยคำนวณง่าย ๆ หลายร้อยหรือหลายพันหน่วยที่ปรับให้เหมาะกับ SIMD (Single Instruction, Multiple Data) — คำสั่งเดียวถูกดำเนินการกับองค์ประกอบข้อมูลหลายรายการ
บล็อกพื้นฐานของ GPU คือ Shader Core (ในศัพท์ของ NVIDIA) หรือ Execution Unit (Intel) หลายบล็อกดังกล่าวรวมกันเป็น Compute Units (AMD) หรือ Streaming Multiprocessors (NVIDIA) แต่ละบล็อกประกอบด้วย ALU สำหรับเลขคณิต, ไฟล์รีจิสเตอร์, และตัวจัดตาราง warp (กลุ่มเธรด)
GPU มือถือแตกต่างทางสถาปัตยกรรมจาก GPU เดสก์ท็อป Qualcomm Adreno ใช้สถาปัตยกรรมกับโปรเซสเซอร์เชเดอร์ที่ตั้งโปรแกรมได้และบล็อกการแรสเตอร์ไรซ์เฉพาะ ARM Mali อิงตาม Bifrost หรือ Valhall — สถาปัตยกรรมที่มีการประมวลผล warp แบบสี่เท่า Apple GPU มีการออกแบบของตัวเองตั้งแต่ปี 2017 พร้อมรองรับ Metal และหน่วยความจำแบบรวม
| ผู้ผลิต | ซีรีส์ GPU | สถาปัตยกรรม | API |
|---|---|---|---|
| Qualcomm | Adreno 6xx/7xx/8xx | โปรเซสเซอร์เชเดอร์ที่ตั้งโปรแกรมได้ | Vulkan, OpenGL ES |
| ARM | ซีรีส์ Mali-G | Bifrost / Valhall | Vulkan, OpenGL ES |
| Apple | Apple GPU (A13–A18) | การออกแบบเฉพาะ | Metal |
| Imagination | PowerVR IMG | Furian / B-Series | Vulkan, OpenGL ES |
คุณสมบัติสำคัญของ GPU มือถือคือ Unified Memory Architecture (UMA) GPU และ CPU ใช้ RAM ร่วมกันโดยไม่มีหน่วยความจำวิดีโอเฉพาะ สิ่งนี้ลดความหน่วงในการแลกเปลี่ยนข้อมูลและทำให้การเขียนโปรแกรมง่ายขึ้น แต่จำกัดแบนด์วิธภายใต้การคำนวณที่เข้มข้น
CPU ออกแบบมาสำหรับงานแบบลำดับที่มีความหน่วงต่ำสุด ประกอบด้วยคอร์ที่ทรงพลัง 4–12 คอร์พร้อมแคช L1/L2/L3 ขนาดใหญ่, ตัวทำนายสาขา และการดำเนินการเชิงคาดเดา ในทางกลับกัน GPU เสียสละความหน่วงเพื่อปริมาณงาน — คอร์นับพันประมวลผลข้อมูลด้วยความหน่วงสูงแต่ประสิทธิภาพรวมมหาศาล
ความแตกต่างเห็นได้ชัดใน FLOPS (การดำเนินการจุดลอยตัวต่อวินาที) SoC มือถือระดับท็อปในปี 2025: CPU — 200 GFLOPS, GPU — 2400 GFLOPS GPU เหนือกว่า CPU ถึง 12 เท่าในงานที่อนุญาตให้ทำแบบขนาน อย่างไรก็ตาม สำหรับอัลกอริทึมแบบลำดับ CPU ยังคงเร็วกว่าเนื่องจากค่าใช้จ่ายในการจัดการเธรดที่ต่ำกว่า
ในทางปฏิบัติ นักพัฒนาใช้ CPU สำหรับตรรกะของแอปพลิเคชัน, UI และ I/O และใช้ GPU สำหรับ การเรนเดอร์, การประมวลผลภาพ, การจำลองฟิสิกส์ และการอนุมานโครงข่ายประสาทเทียม ตาม Google Android Performance Patterns (2025) โหลด GPU ที่เหมาะสมที่สุดในแอปพลิเคชันมือถือคือ 60–80% — การโอเวอร์โหลดนำไปสู่การลดความเร็วและความร้อนสูงเกินไป
// CPU — sequential processing
for (int i = 0; i < N; i++) {
result[i] = data[i] * 2.0f;
}
// GPU — parallel processing (GLSL compute shader)
#version 300 es
layout(local_size_x = 256) in;
void main() {
uint idx = gl_GlobalInvocationID.x;
result[idx] = data[idx] * 2.0f;
}
โค้ด CPU ดำเนินการคูณแบบลำดับสำหรับแต่ละองค์ประกอบ เวอร์ชัน GPU เปิด 256 เธรดแบบขนาน แต่ละเธรดคูณองค์ประกอบของตัวเอง ด้วย N=1 ล้าน GPU จะทำงานให้เสร็จเร็วกว่า CPU คอร์เดียว 100–1000 เท่า
GPU มือถือ ทำงานภายใต้ข้อจำกัดด้านความร้อนและพลังงานที่เข้มงวด TDP ทั่วไปของ GPU มือถือคือ 2–8 W เทียบกับ 150–450 W ของเดสก์ท็อป สิ่งนี้ต้องการสถาปัตยกรรมพิเศษที่เน้นประสิทธิภาพพลังงานมากกว่าประสิทธิภาพสูงสุด
เทคโนโลยีประหยัดพลังงานหลักคือ Tile-Based Rendering แฟรมถูกแบ่งออกเป็นไทล์ขนาด 16x16 หรือ 32x32 พิกเซล แต่ละไทล์ถูกประมวลผลอย่างสมบูรณ์ใน SRAM ที่รวดเร็ว (Tile Memory) จากนั้นเขียนไปยัง DRAM ภายนอก สิ่งนี้ลดการเข้าถึงหน่วยความจำลง 4–10 เท่าเมื่อเทียบกับโหมดทันที
Qualcomm Adreno เป็น GPU มือถือที่แพร่หลายที่สุด Adreno 750 (Snapdragon 8 Gen 3) ประกอบด้วยโปรเซสเซอร์เชเดอร์ 12 ตัวพร้อมพูลรีจิสเตอร์ที่ใช้ร่วมกัน รองรับ Vulkan 1.3, OpenGL ES 3.2, OpenCL 3.0 และการเรย์เทรซิงด้วยฮาร์ดแวร์ ตาม Qualcomm (2025) Adreno ให้การปรับปรุงประสิทธิภาพ 45% ในแต่ละรุ่นในขณะที่รักษาการใช้พลังงาน
ARM Mali เป็น GPU ยอดนิยมอันดับสองในอุปกรณ์ Android Mali-G720 อิงตามสถาปัตยกรรม Valhall รุ่นที่ 5 พร้อมรองรับ Variable Rate Shading และ ASTC HDR คุณสมบัติเด่นของ Mali คือการประมวลผลแบบสี่เท่า: สี่เธรดรวมกันเป็นหนึ่ง warp เพื่อการใช้ ALU ที่ดีขึ้น
Apple GPU ออกแบบมาเฉพาะสำหรับ Metal API ตั้งแต่ A13 Bionic Apple ใช้การออกแบบ GPU ของตัวเองพร้อมรองรับ Metal 3, การเรย์เทรซิง และ mesh shader สถาปัตยกรรม Apple GPU มี Unified Memory พร้อมแบนด์วิธสูงสุด 800 GB/s บน M4 Ultra
การลดความเร็วของ GPU — การลดความถี่เนื่องจากความร้อนสูง — เป็นปัญหาหลักของเกมมือถือ ภายใต้โหลดต่อเนื่อง อุณหภูมิ SoC สูงถึง 85–95°C และ GPU ลดความถี่ลง 30–50% ตาม AnandTech (2025) Qualcomm Adreno 750 สูญเสียประสิทธิภาพสูงถึง 35% หลังจาก 15 นาทีใน Genshin Impact
นักพัฒนาสามารถบรรเทาการลดความเร็วได้ผ่าน การปรับแต่งการเรียกวาด, การลดความละเอียดการเรนเดอร์ และการใช้ Foveated Rendering Metal Performance Shaders บน iOS และ Android Frame Pacing API บน Android ช่วยซิงโครไนซ์โหลดกับงบประมาณความร้อนของอุปกรณ์
GPGPU (General-Purpose computing on GPU) คือการใช้โปรเซสเซอร์กราฟิกสำหรับการคำนวณที่ไม่ใช่กราฟิก แนวคิดนี้เกิดขึ้นในช่วงกลางทศวรรษ 2000 เมื่อนักพัฒนาค้นพบว่าเชเดอร์สามารถปรับให้เข้ากับการดำเนินการเมทริกซ์, การเข้ารหัส และการจำลองฟิสิกส์
ปัจจุบัน GPGPU เป็นเครื่องมือมาตรฐานสำหรับงานที่ต้องการการขนานจำนวนมาก: การเรียนรู้ของเครื่อง (การฝึกและการอนุมานโครงข่ายประสาทเทียม), การเข้ารหัส (การแฮช, การเข้ารหัส), การประมวลผลภาพและวิดีโอ (ฟิลเตอร์, ตัวแปลงสัญญาณ) และการจำลองทางวิทยาศาสตร์ (พลศาสตร์ของไหล, เคมีควอนตัม)
บนอุปกรณ์มือถือ GPGPU ถูกเข้าถึงผ่าน Compute Shaders — เชเดอร์ที่ไม่มีเอาต์พุตกราฟิกซึ่งทำงานกับข้อมูลเท่านั้น Compute Shader เปิดกริดของกลุ่มงาน แต่ละกลุ่มประกอบด้วยหลายเธรด การเข้าถึงหน่วยความจำผ่านบัฟเฟอร์และพื้นผิวโดยไม่ผูกกับหน้าจอ
#version 310 es
layout(local_size_x = 16, local_size_y = 16) in;
layout(binding = 0) buffer Input { float data[]; };
layout(binding = 1) buffer Output { float result[]; };
void main() {
uvec2 idx = gl_GlobalInvocationID.xy;
uint offset = idx.y * gl_NumWorkGroups.x * gl_WorkGroupSize.x + idx.x;
result[offset] = sqrt(data[offset]) + 1.0;
}
ตัวอย่าง compute shader คำนวณรากที่สองสำหรับแต่ละองค์ประกอบของอาร์เรย์ กลุ่มงานขนาด 16x16 ประมวลผล 256 องค์ประกอบพร้อมกัน GPU มือถือสมัยใหม่รองรับมากถึง 1024 กลุ่มงานและหลายล้านเธรดทั่วโลก
API การเข้าถึง GPU กำหนดว่านักพัฒนาส่งคำสั่งและข้อมูลไปยังโปรเซสเซอร์กราฟิกอย่างไร มีสาม API หลักที่ใช้บนแพลตฟอร์มมือถือ: Vulkan, Metal และ OpenGL ES แต่ละข้อมีข้อดีและข้อจำกัดที่ส่งผลต่อประสิทธิภาพและความเข้ากันได้
Vulkan คือ API ข้ามแพลตฟอร์มระดับต่ำจาก Khronos Group ซึ่งเป็นผู้สืบทอดของ OpenGL Vulkan ให้การควบคุมโดยตรงแก่นักพัฒนาบนหน่วยความจำ GPU, คิวคำสั่ง และการซิงโครไนซ์ ตาม Khronos (2025) Vulkan ให้การปรับปรุงประสิทธิภาพ 30–60% เมื่อเทียบกับ OpenGL ES โดยลดค่าใช้จ่ายของไดรเวอร์
บน Android Vulkan เป็นข้อบังคับตั้งแต่ Android 7.0 (API 24) และ SoC สมัยใหม่ทั้งหมดรองรับ Vulkan 1.3 Vulkan Memory Allocator และ SPIR-V เป็นตัวแทนกลางอนุญาตให้เขียนเชเดอร์ใน GLSL, HLSL หรือ Rust GPU
Metal คือ API เฉพาะของ Apple สำหรับ GPU บนอุปกรณ์ทั้งหมดในระบบนิเวศ: iPhone, iPad, Mac, Apple TV Metal ให้ค่าใช้จ่ายน้อยที่สุดและเวลาดำเนินการคำสั่งที่คาดการณ์ได้ ตาม Apple Developer Documentation (2025) Metal จัดการการเรียกวาดได้มากถึง 100,000 ครั้งต่อเฟรมโดยไม่มี FPS ลดลง
คุณสมบัติหลักคือ Metal Shading Language (MSL) ที่ใช้ C++ เชเดอร์ถูกคอมไพล์เป็นโค้ดเครื่องพร้อมกับแอปพลิเคชัน ซึ่งไม่จำเป็นต้องมีการคอมไพล์ JIT ที่เป็นลักษณะของ Vulkan Metal รองรับ Mesh Shaders, Ray Tracing และ Dynamic Libraries สำหรับโหลดเชเดอร์ในรันไทม์
OpenGL ES คือเวอร์ชันที่เรียบง่ายของ OpenGL สำหรับระบบฝังตัว ใช้บนอุปกรณ์รุ่นเก่าและเพื่อความเข้ากันได้ย้อนหลัง OpenGL ES 3.2 รองรับบน 94% ของอุปกรณ์ Android ตาม Android Studio (2025) สำหรับโปรเจกต์ใหม่ Google แนะนำ Vulkan แทน OpenGL ES
WebGL คืออะนาล็อกของ OpenGL ES สำหรับเบราว์เซอร์ พื้นฐานสำหรับกราฟิก 3D บนเว็บ WebGL 2.0 (สอดคล้องกับ OpenGL ES 3.0) รองรับบน 92% ของเบราว์เซอร์มือถือ WebGPU เป็นรุ่นถัดไปที่มีสถาปัตยกรรมใกล้เคียงกับ Vulkan และ Metal
คำถามที่พบบ่อย
GPU มือถือทำงานภายในงบประมาณความร้อน 2–8 W ใช้ Tile-Based Rendering เพื่อประหยัดพลังงานและแบ่งปันหน่วยความจำกับ CPU ผ่าน UMA GPU เดสก์ท็อปกินไฟ 150–450 W มีหน่วยความจำวิดีโอเฉพาะ (GDDR) และใช้ Immediate Mode Rendering
Apple GPU ในชิป M4 Ultra และ A18 Pro เป็นผู้นำด้านประสิทธิภาพต่อวัตต์ในหมู่ GPU มือถือ ในอุปกรณ์ Android Qualcomm Adreno 850 ใน Snapdragon 8 Gen 4 และ ARM Mali-G925 ใน MediaTek Dimensity 9500 เป็นผู้นำ
ได้ GPU ถูกใช้อย่างแข็งขันสำหรับ การอนุมานโครงข่ายประสาทเทียม ผ่าน Core ML บน iOS และ TensorFlow Lite / NNAPI บน Android ตาม Google (2025) การเร่งด้วย GPU ให้ความเร็วที่ดีขึ้น 3–10 เท่าเมื่อเทียบกับ CPU
การลดความเร็ว เกิดขึ้นเมื่อเกินงบประมาณความร้อน ภายใต้โหลดต่อเนื่อง อุณหภูมิ SoC สูงถึง 85–95°C และ GPU ลดความถี่เพื่อป้องกันชิป วิธีแก้คือการปรับแต่งการเรนเดอร์และการใช้ขีดจำกัด FPS (30–45 FPS)
Vulkan เป็นตัวเลือกหลักสำหรับโปรเจกต์ใหม่ OpenGL ES สำหรับความเข้ากันได้ย้อนหลังกับอุปกรณ์รุ่นเก่า Metal เป็นข้อบังคับสำหรับ iOS สำหรับการพัฒนาข้ามแพลตฟอร์ม ให้ใช้เฟรมเวิร์กเช่น Unity, Unreal Engine หรือ Filament
สรุป
เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร
IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ
อ่านเพิ่มเติม