- เพื่อเสริมสภาพแวดล้อม local LLM ที่มีแค่ RTX 4080 16GB แล้วยังไม่พอ จึงเพิ่ม Tesla V100 SXM2 16GB มือสองพร้อมอะแดปเตอร์ในราคาราว £200 ทำให้รวมเป็น VRAM ทั้งหมด 32GB
- V100 SXM2 เป็น GPU สำหรับเซิร์ฟเวอร์ที่ไม่มีสล็อต PCIe, ไม่มีพอร์ตแสดงผล, และไม่มีขั้วไฟมาตรฐานทั่วไป แต่สามารถติดตั้งในพีซีเกมมิงได้ผ่านอะแดปเตอร์ SXM2-to-PCIe
- พัดลมเซิร์ฟเวอร์มีเสียงดังพื้นฐานถึง 82dB จนใช้งานในห้องแทบไม่ได้ แต่แก้ด้วยสายจัมเปอร์ PH2.0-2.54mm ต่อเข้าหัวพัดลมบนเมนบอร์ด เพื่อควบคุม PWM และลดเสียงได้
- ใช้ tensor splitting ของ llama.cpp แบ่ง Qwen3.6-27B-MTP Q5_K_M ไปรันบน RTX 4080 และ V100 ได้คอนเท็กซ์ 128k และความเร็วอนุมานราว 32 tok/s
- แม้จะไม่เรียบร้อยเท่า GPU 32GB ใบเดียว และยังมีปัญหาเรื่องไดรเวอร์, CUDA, และ warm reboot อยู่ แต่ GPU เซิร์ฟเวอร์มือสอง ก็อาจเป็นทางเลือกขยาย VRAM สำหรับ local LLM ที่คุ้มค่า
สภาพแวดล้อม local LLM 32GB ที่ประกอบด้วยงบ £200
- แค่ RTX 4080 VRAM 16GB ยังไม่พอสำหรับรันโมเดลโลคัลตามต้องการ จึงเพิ่ม GPU ดาต้าเซ็นเตอร์มือสองเข้ากับพีซีเกมมิงผ่านอะแดปเตอร์
- ซื้อ Tesla V100 SXM2 16GB พร้อมอะแดปเตอร์ SXM2-to-PCIe รวมราคาราว £200 ทำให้ได้สภาพแวดล้อม VRAM รวม 32GB จาก GPU สองใบ
- แบ่งโมเดลขนาด 27B พารามิเตอร์ไปรันบน GPU สองใบ ได้ความเร็วราว 32 tokens/s และทั้งตัวโมเดลรวมถึงคอนเท็กซ์ก็อยู่ใน VRAM ทั้งหมด
- แม้ประสบการณ์จะไม่เหมือน GPU ผู้บริโภค 32GB ใบเดียว แต่ก็ได้ความจุ VRAM ในราคาที่ต่ำกว่า RTX 5090 32GB มาก
Tesla V100 SXM2 และอะแดปเตอร์
- Tesla V100 SXM2 16GB เป็น GPU สำหรับเซิร์ฟเวอร์ NVIDIA DGX และแร็กของไฮเปอร์สเกลเลอร์
- ไม่มีสล็อต PCIe ปกติ, ไม่มีพอร์ตแสดงผล, และไม่มีขั้วต่อไฟแบบทั่วไป
- ถูกออกแบบให้ติดตั้งบนบอร์ดเฉพาะภายในเซิร์ฟเวอร์และสื่อสารผ่าน NVLink
- หากต้องการเสียบเข้ากับเมนบอร์ดโดยตรง จำเป็นต้องใช้อะแดปเตอร์แยก
- V100 เป็น Volta GPU และมีหน่วยความจำ HBM2 16GB พร้อม 5120 CUDA cores
- ราคาที่ซื้อจาก eBay อยู่ที่ราว £150
- แม้จะเป็น GPU ปี 2017 แต่พลังประมวลผลและ VRAM ยังใช้ได้ดีสำหรับงาน local LLM
- แบนด์วิดท์ของหน่วยความจำ HBM2 คือข้อเด่นสำคัญ
- V100 มี memory bus 4096-bit และให้แบนด์วิดท์ 900GB/s
- สูงกว่าแบนด์วิดท์ GDDR6X ของ RTX 4080 ที่ 736GB/s อยู่ 22%
- สูงกว่า Apple M3 Max 400GB/s, M4 Max 546GB/s, และ M5 Max 614GB/s
- AMD RX 7900 XTX มี GDDR6 24GB และแบนด์วิดท์ 960GB/s สูงกว่า V100 เล็กน้อย แต่มีราคาเกิน £700
- การรองรับ LLM inference ของ ROCm ยังถูกมองว่ายังไม่ลื่นเท่า CUDA
- V100 ให้แบนด์วิดท์ 94% ของ RX 7900 XTX ในราคาต่ำกว่าหนึ่งในสี่ และใช้งานกับ llama.cpp ได้
- RTX 5090 มีแบนด์วิดท์ 1,792GB/s ซึ่งเหนือกว่า V100 ชัดเจน แต่มีราคามากกว่า £2,000
- ในการทำ LLM inference แบนด์วิดท์หน่วยความจำเป็นคอขวดที่กำหนด tokens/s จึงเป็นปัจจัยสำคัญ
- อะแดปเตอร์ SXM2-to-PCIe ไม่ใช่ผลิตภัณฑ์ทางการของ NVIDIA และไม่มีการซัพพอร์ตอย่างเป็นทางการ
- เป็น bare PCB ที่ด้านหนึ่งเป็นซ็อกเก็ต SXM2 และอีกด้านเป็นขั้วต่อ PCIe edge connector
- ราคาอยู่ที่ราว £50 ทำให้ต้นทุนรวมทั้งชุดอยู่ที่ประมาณ £200
- อะแดปเตอร์นี้ทำให้สามารถเสียบ V100 16GB ลงบนเมนบอร์ดร่วมกับ RTX 4080 ได้
ปัญหาพัดลมระบายความร้อนแบบเซิร์ฟเวอร์และวิธีแก้
- V100 SXM2 ถูกออกแบบมาให้ทำงานในสภาพแวดล้อมระบายความร้อนระดับอุตสาหกรรมของเซิร์ฟเวอร์ 2U
- พัดลมบนอะแดปเตอร์มีเสียงดังเกินกว่าจะใช้งานในห้องทั่วไป
- วัดด้วย Apple Watch ได้เสียง 82dB และถูกเปรียบว่าอยู่ระหว่างเครื่องกำจัดขยะกับเครื่องตัดหญ้า
- ในสภาพเดิมไม่สามารถควบคุมพัดลมได้
- ทั้ง
nvidia-smi, การสำรวจอุปกรณ์บน Linux, และการลองใช้ Windows Afterburner ล้วนไม่สำเร็จ
- ดูเหมือนว่าพัดลมของอะแดปเตอร์ถูกออกแบบให้หมุน 100% ตลอดเวลาเหมือนอยู่ในแร็กเซิร์ฟเวอร์
- ใช้ การทดสอบด้วยแบตเตอรี่ 9V เพื่อตรวจสอบการจัดเรียงขาพัดลม
- เมื่อต่อสายจัมเปอร์เข้ากับ VCC และ ground แล้วแตะแบตเตอรี่ 9V พัดลมก็หมุน
- เสียงเงียบลงกว่าการขับที่ 12V มาก ทำให้เห็นว่าการควบคุมพัดลมน่าจะทำได้
- พัดลมทำงานคล้ายพัดลมเคสพีซีมาตรฐาน
- เสียบสายจัมเปอร์เข้ากับคอนเน็กเตอร์พัดลม แล้วต่ออีกด้านเข้ากับหัวพัดลมว่างบนเมนบอร์ด
- เมนบอร์ดอ่านค่า RPM ได้ และควบคุม PWM ได้เช่นกัน
- แม้ตั้งไว้ที่ความเร็ว 10% อุณหภูมิขณะฟูลโหลดก็ไม่เกิน 50°C และแทบไม่ได้ยินเสียง
- สายสุดท้ายใช้ jumper cable แบบ 2.54mm male to PH2.0 female
- คอนเน็กเตอร์พัดลมของอะแดปเตอร์เป็นปลั๊ก JST PH2.0 4 พิน
- หัวพัดลมบนเมนบอร์ดใช้มาตรฐาน 0.1 นิ้ว หรือ pitch 2.54mm
- ฝั่ง PH2.0 female ต่อเข้าขา tachometer และ PWM ของพัดลม ส่วนฝั่ง 2.54mm male ต่อเข้าหัวพัดลมของเมนบอร์ด
- แก้ปัญหา 82dB ได้ด้วยสายจัมเปอร์ราคาประมาณ £2 และการตรวจสอบคอนเน็กเตอร์
ขยาย VRAM ด้วย GPU สองใบ
- ชุด GPU สุดท้ายมีดังนี้
- RTX 4080: VRAM 16GB, สถาปัตยกรรม Ada
- Tesla V100: VRAM 16GB, สถาปัตยกรรม Volta
- รวม: VRAM 32GB กระจายอยู่บน GPU สองใบ
- llama.cpp สามารถใช้ tensor splitting เพื่อแบ่งโมเดลไปรันบน GPU สองใบได้
- ประมวลผลแบบ pipeline ผ่านบัส PCIe
- RTX 4080 จัดการบางเลเยอร์ และ V100 จัดการส่วนที่เหลือ
- แม้จะไม่เร็วเท่า GPU 32GB ใบเดียว แต่ใช้งานได้จริง และต้นทุนอยู่ราว 10% ของ GPU 32GB
- สังเกตว่าการใช้พลังงานของ V100 สูงสุดอยู่ราว 150W
- สำหรับ GPU ที่ใช้ทำ local LLM inference ถือว่าไม่เล็ก แต่ก็ไม่ได้ผิดปกติจนเกินไป
- V100 รุ่น 32GB ก็ยังเป็นอีกทางเลือกหนึ่ง
- แม้ราคาจะมากกว่าสองเท่าของที่ซื้อมา แต่ก็ยังได้ HBM2 32GB บนการ์ดใบเดียวด้วยเงินเพียงไม่กี่ร้อยปอนด์
- ถ้าใช้ V100 32GB สองใบก็จะได้ VRAM 64GB ซึ่งถูกอธิบายว่าราคาอยู่ราว 20% ของ RTX 5090 ปัจจุบัน
- ฟอร์แมต SXM2 รองรับ NVLink โดยพื้นฐาน
- หากทำชุด multi-GPU อย่างจริงจัง GPU จะสื่อสารกันได้ด้วยแบนด์วิดท์สูง
- แม้ผ่านอะแดปเตอร์ PCIe ประสิทธิภาพของ tensor split ก็ยังถือว่าเสถียรเพียงพอ
จัดไดรเวอร์และ CUDA ให้ตรงกันบน NixOS
- การตั้งค่าซอฟต์แวร์เป็นไปค่อนข้างราบรื่นด้วย NixOS
- V100 ใช้ชิป Volta และ NVIDIA ยกเลิกการรองรับ Volta ตั้งแต่ไดรเวอร์ branch 560
- ไดรเวอร์รุ่นสุดท้ายที่รองรับทั้ง RTX 4080 Ada และ V100 Volta พร้อมกันคือ branch 550.x
- บน NixOS ตรงกับ
nvidiaPackages.legacy_535
- ไดรเวอร์นี้รองรับถึง CUDA 12.2 เท่านั้น
- ปัจจุบัน nixpkgs ให้ CUDA 12.6 ขึ้นไป
- จึงต้องดึง CUDA 12.2 มาจาก nixpkgs 24.05
- ไดรเวอร์ต้องการ Linux kernel 6.6
- legacy driver ไม่รองรับเคอร์เนลที่ใหม่กว่านี้
- แม้จะเป็นเซิร์ฟเวอร์ inference แบบ headless ก็ยังต้องเปิด
services.xserver.enable = true
- หากไม่ตั้งค่านี้ โมดูลเคอร์เนลของ NVIDIA จะไม่ถูกโหลด
- การตั้งค่า NixOS หลักประกอบด้วยการกำหนดเคอร์เนล, NVIDIA legacy driver, และไดรเวอร์ NVIDIA สำหรับ X server
boot.kernelPackages = pkgs.linuxPackages_6_6;
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.legacy_535;
services.xserver.enable = true;
services.xserver.videoDrivers = [ "nvidia" ];
- CUDA 12.2 ถูกดึงมาจาก nixpkgs เวอร์ชันเก่าผ่าน overlay
nixpkgs.overlays = [
(final: prev: {
cudaPackages_12_2 = nixpkgs-cuda.legacyPackages.${prev.system}.cudaPackages_12_2;
})
];
- GPU ทั้งสองใบแสดงผลได้ครบและ CUDA ก็ทำงานได้ตามปกติ
- นิยามของเครื่องทั้งหมดรวมอยู่ใน commit นี้ของ dotfiles repo
- รวมถึง service definition ของ llama.cpp และ custom build ที่ตรึงไว้กับเวอร์ชันที่ถูกต้อง
โมเดลที่รันและประสิทธิภาพ
- โมเดลที่รันคือเวอร์ชัน quantized ของ Qwen3.6-27B-MTP Q5_K_M
- ขนาดโมเดลอยู่ที่ราว 19GB
- เมื่อใช้ GPU สองใบ โมเดลทั้งหมดสามารถอยู่ใน VRAM และยังมีพื้นที่เหลือสำหรับคอนเท็กซ์
- การตั้งค่าหลักในการรันมีดังนี้
- Model: Qwen3.6-27B-MTP Q5_K_M, 19GB
- Context size: 128k tokens
- GPU layers: 99, offload ทั้งหมด
- Tensor split:
-ts 1.0,1.0, แบ่งเท่ากันระหว่าง GPU สองใบ
- ประสิทธิภาพที่ได้มีดังนี้
- Inference speed: ราว 32 tok/s
- Prompt processing: ราว 133~160 tok/s
- 32 tokens/s ถูกประเมินว่าเร็วพอสำหรับการใช้งานแบบโต้ตอบ
- ทำได้แม้จะเป็นการต่อ GPU คนละสถาปัตยกรรมผ่าน PCIe แล้วใช้ tensor split
- เมื่อคิดรวม latency ของเครือข่ายแล้ว ยังถูกอธิบายว่าเร็วกว่า cloud API endpoint ส่วนใหญ่
MTP และอินพุตรูปภาพ
- MTP ย่อมาจาก Multi-Token Prediction
- การทำ LLM inference แบบทั่วไปจะทำนายทีละหนึ่งโทเค็น รับโทเค็นนั้น แล้วค่อยทำนายโทเค็นถัดไป
- MTP จะทำนายโทเค็นในอนาคตหลายตัวพร้อมกัน แล้วตรวจสอบว่าโทเค็นใดถูกต้อง
- โทเค็นที่ยอมรับได้แทบถือว่าได้มาฟรี ส่วนที่ทำนายผิดจะย้อนกลับไปใช้เส้นทางปกติ
- ผลของ MTP คือทำให้ความเร็วการสร้างเพิ่มขึ้นราว 1.5~2 เท่าโดยไม่เสียความแม่นยำ
- ในชุดนี้จากราว 32 tok/s อาจขึ้นไปถึง 50~60 tok/s เมื่อ MTP เดาตรงได้ดี
- มีประโยชน์มากโดยเฉพาะกับเอาต์พุตที่คาดเดาได้ เช่น โค้ด
- การรองรับ MTP ใน llama.cpp ยังเป็นฟีเจอร์ใหม่
- เวอร์ชัน llama.cpp ใน nixpkgs ยังไม่รองรับสถาปัตยกรรม Qwen3.6 MTP
- จึงต้องคอมไพล์ llama.cpp จากซอร์สที่ commit เฉพาะซึ่งเพิ่มการรองรับนี้
- บน NixOS มีการทำ custom derivation ที่ตรึงไว้กับ commit ดังกล่าวเพื่อให้ทำซ้ำได้
- หากเปลี่ยนโมเดลหรือเวอร์ชัน llama.cpp ก็แก้เพียงหนึ่งบรรทัดใน config แล้วรัน
nixos-rebuild switch
- Qwen3.6-27B รองรับอินพุตภาพผ่านไฟล์ multimodal projector แยกต่างหากชื่อ mmproj
- ไฟล์เพิ่มเติมนี้มีขนาดราว 928MB
- โครงสร้างคือ vision encoder แปลงพิกเซลของภาพไปเป็นพื้นที่ token embedding ของ LLM
- ไม่ใช่ว่าโมเดล “มองเห็น” ภาพเหมือนมนุษย์
- LLM จะประมวลผลเวกเตอร์ที่แปลงแล้วเหมือนเป็นลำดับโทเค็นอีกชุดหนึ่ง
- แฟล็กสำหรับรัน llama.cpp มีดังนี้
--mmproj /mnt/nas/llamacpp/mmproj-F16.gguf --mmproj-offload
--mmproj-offload จะย้าย vision encoder ขึ้นไปรันบน GPU พร้อมกับตัวโมเดล
- ทำให้ยังคง inference ได้รวดเร็วแม้มีอินพุตเป็นรูปภาพ
วิธีใช้งานแบบโลคัล
- ชุดนี้ถูกใช้งานร่วมกับ OpenCode
- OpenCode คือ AI coding assistant ที่สามารถรันกับโมเดลโลคัลได้
- เซิร์ฟเวอร์ LLM รันอยู่บนเดสก์ท็อป แต่ใช้งานจากอุปกรณ์อื่น
- เครื่องอื่นในบ้านเข้าถึงผ่านเครือข่ายได้
- จากภายนอกเข้าถึงผ่าน Tailscale
- การใช้เซิร์ฟเวอร์ llama.cpp ใน OpenCode ทำได้ด้วยการตั้งค่า API URL
- โมเดลรันอยู่บนเครื่องโลคัล
- การตอบสนองรวดเร็วและข้อมูลไม่ออกนอกเครือข่าย
ปัญหาและข้อจำกัดที่ยังเหลือ
- มี ปัญหาที่ V100 หายไปหลัง warm reboot เป็นบางครั้ง
- หลังรีบูตแบบที่ระบบปฏิบัติการเริ่มใหม่แต่เมนบอร์ดยังมีไฟอยู่ บางครั้ง
lspci และ nvidia-smi จะไม่เห็น V100
- ดูเหมือนจะเป็นปัญหา ACPI enumeration ของสล็อต PCIe
- หากปิดเครื่องจริง รอสักไม่กี่วินาที แล้วเปิดใหม่แบบ cold reboot จะกลับมาทุกครั้ง
- หากไม่มี V100, llama.cpp จะเริ่มทำงานไม่ได้
- เพราะโมเดลนี้ใส่ลงใน GPU 16GB ใบเดียวไม่ได้
- service จะ crash loop ซ้ำไปเรื่อย ๆ จนกว่า GPU จะกลับมา
- โดยปกติมักอยู่ใกล้เครื่องตอนรีบูต จึงมองว่าไม่ได้เป็นปัญหาใหญ่ในการใช้งานจริง
- การใช้ tensor split ข้าม GPU สองใบคนละสถาปัตยกรรมไม่เรียบร้อยเท่า GPU ใบเดียว
- V100 ก็ไม่ใช่ GPU ที่เร็วที่สุดสำหรับงาน inference
- แต่ก็ถูกประเมินว่าคุ้มค่ามากเมื่อเทียบราคา
ตัวเลือกและบทสรุป
- สิ่งที่ได้จากงบราว £200 มีดังนี้
- GPU ดาต้าเซ็นเตอร์ 16GB ที่ทำงานร่วมกับ GPU เกมมิงได้
- VRAM รวม 32GB สำหรับ local LLM inference
- ความเร็ว 32 tokens/s กับโมเดล 27B พารามิเตอร์
- หน้าต่างคอนเท็กซ์ 128k token
- รองรับ vision สำหรับอินพุตรูปภาพ
- โมเดลที่รันแบบโลคัลทั้งหมดโดยไม่ต้องพึ่งคลาวด์และไม่มีค่าใช้จ่ายต่อโทเค็น
- ต้นทุนที่แท้จริงคือเสียงพัดลม แต่แก้ได้ด้วยสายจัมเปอร์และการตรวจสอบคอนเน็กเตอร์
- หากต้องการรันโมเดลโลคัลอย่างจริงจัง ตลาด GPU เซิร์ฟเวอร์มือสอง อาจเป็นทางเลือกที่น่าสนใจ
- แม้ไม่มี GPU เดิมอยู่แล้ว ก็สามารถใส่ V100 เดี่ยวลงในเซิร์ฟเวอร์ราคาประหยัดเพื่อให้ได้ 16GB VRAM และสภาพแวดล้อม local LLM ที่ใช้งานได้
- V100 SXM2 ไม่ใช่ตัวเลือกเดียว
- P40 ให้ 24GB ในงบใกล้เคียงกัน แต่ช้ากว่าและไม่มี Tensor Cores
- V100 รุ่น 32GB มีราคาแพงกว่า แต่ก็ยังถูกกว่า GPU ผู้บริโภคที่มี VRAM เท่ากัน
- อย่างไรก็ตาม ต้องเตรียมรับมือกับปัญหาพัดลมไว้ด้วย
1 ความคิดเห็น
ความคิดเห็นจาก Lobste.rs
แนวทางนี้เจ๋งมาก และยิ่งทำให้อยากรู้เรื่อง อาการที่ GPU หายไปจาก PCIe มากขึ้น เพราะสาเหตุมีได้เยอะมาก
เสียงพัดลม GPU ที่เร่งดัง ๆ ทำให้นึกถึงตอนอยู่ทีม NVIDIA CUDA เพื่อนร่วมงานคนหนึ่งกำลังเพิ่มฟังก์ชันควบคุมพัดลมให้ NVML และ
nvidia-smiแล้วก็ได้ยินเสียงพัดลมดังขึ้นเบาลงมาจากอีกฝั่งของฉากกั้น ก่อนที่เขาจะโผล่หน้าออกมาพร้อมรอยยิ้มกว้างเขาบอกว่านี่เป็นฟีเจอร์ที่ชอบที่สุดเท่าที่เคยทำมา เพราะพอฟังก์ชันทำงาน ก็ได้ยินผลลัพธ์ด้วยหูทันที
ถ้าสนใจ โฮสต์ LLM เอง Dell OEM RTX 3090 มักจะถูกกว่าสินค้าแบรนด์ใหญ่ และเคยหาได้ราว ๆ 800 ดอลลาร์แคนาดา
ตอนนี้คงต้องไปอ่านเพิ่มว่า vLLM ทำงานอย่างไร เพราะบางครั้งโมเดลจะเริ่มพ่นรายชื่อและคำคุณศัพท์ที่เกี่ยวข้องออกมายาวเป็นหางว่าว น่าจะตั้งค่าอะไรผิดสักอย่าง
เท่าที่เข้าใจ โมเดลที่พอใช้งานได้ส่วนใหญ่ต้องการอย่างน้อย 48~64GB VRAM ถึงจะรันได้ดี เลยคิดว่าชิป Apple M series ที่ใช้สถาปัตยกรรมหน่วยความจำรวมถึงได้รับความนิยมในด้านนี้
ของแบบนั้นก็มีขายเป็นแพ็กเกจสำเร็จรูปอยู่แล้ว แต่ก็จะเป็นแนว ประกันจากผู้ผลิต 3 เดือน แล้วจบ
https://ebay.com/itm/297819576914/…
ในสหรัฐฯ รุ่น 32GB มือสองซื้อขายกันอยู่ที่ราว 600 ดอลลาร์
ส่วนอะแดปเตอร์ก็น่าจะซื้อจากจีนซึ่งเป็นแหล่งผลิตโดยตรง
สงสัยว่าฝั่ง AMD มีตัวเทียบกันได้ไหม ตอนนี้ใช้ 48GB W7900 สองใบ อยู่ แต่อยากขยายเพื่อให้รันโมเดลใหญ่กว่านี้ได้
แค่ต้องเสริมระบบระบายความร้อนเพิ่ม แต่ไม่ต้องมานั่งดัดแปลงอะแดปเตอร์
ผมคอยอ่านทุกครั้งที่เจอการจัดสเปกสำหรับรันโมเดลในเครื่อง และตอนนี้ช่วงความต้องการ VRAM ระดับกลางที่ 48~128GB ดูเหมือนจะยังไม่มีจุดคุ้มค่าที่โดดเด่นจริง ๆ ตัวเลือกหลัก ๆ มีประมาณสามแบบ: GPU ดาต้าเซ็นเตอร์หลายใบจากรุ่นก่อนหน้า 3 เจเนอเรชัน (Tesla V100, Instinct MI60), ผลิตภัณฑ์ระดับล่างสุดของเจเนอเรชันปัจจุบันหลายใบแต่มี VRAM เยอะ (Arc Pro B70), หรือกล่องสำเร็จรูปแบบรวมทุกอย่างของเจเนอเรชันปัจจุบัน (DGX Spark, Mac Mini, Strix Halo)
สำหรับคนที่อัปเกรดจาก GPU ผู้บริโภค 32GB ใบเดียวหรือ 16GB สองใบ แต่ละทางเลือกก็มีทั้งข้อแลกเปลี่ยนและข้อดีอยู่บ้าง แต่ถ้าตอนนี้ใช้การ์ด 48GB สองใบอยู่แล้ว ก็ไม่แน่ใจนักว่าจะมีการอัปเกรดฮาร์ดแวร์มือสองแบบไหนที่ให้ความรู้สึกว่าดีขึ้นอย่างชัดเจน