รับการใช้งาน CPU และ GPU ใน Raspberry Pi


22

ฉันพยายามคิดแยกที่ดีสำหรับ CPU / GPU มีวิธีในการตรวจสอบการใช้งาน CPU และ GPU เพื่อดูว่าฉันควรทำการแยกหรือไม่?


1
คำถามนี้อาจมีประโยชน์สำหรับคุณ
Jivings

1
IMO คำถามกำลังสับสน คุณต้องการทราบการใช้งานหน่วยความจำสำหรับแอปพลิเคชันและกราฟิก (เพื่อให้คุณสามารถกำหนดตัวแยก) หรือคุณต้องการที่จะรู้ว่า CPU / GPU โหลดปัจจุบันหรือไม่?
keiki

@ otakun85 ฉันต้องการทราบการใช้งานปัจจุบันของแอปพลิเคชันเพื่อให้ฉันสามารถตัดสินใจได้ดีเกี่ยวกับสถานที่ที่จะแยก
Scoop

@Jivings ใช่นั่นเป็นคำถามที่ดี เป็นการดีที่จะทราบว่าฟีเจอร์บางอย่างจะเปิดและปิดขึ้นอยู่กับจำนวนหน่วยความจำที่จัดสรรให้กับ GPU หากเป็นไปได้แม้ว่าจะเป็นประโยชน์ในการทราบการใช้งานที่ถูกต้องเช่นกันกำหนดหมวดหมู่ที่ฉันอยู่ในนั้น
Scoop

คำตอบ:


13

หนึ่งในวิธีที่ง่ายคือการได้รับราสเบอร์รี่ Pi ตัวเองเพื่อจัดการวิธี RAM คือแยกระหว่าง CPU และ GPU ด้วยการแยกหน่วยความจำแบบไดนามิก แม้ว่า raspi-config จะไม่สามารถทำได้สำหรับคุณ แต่มีการตั้งค่าตัวอย่างสำหรับ /boot/config.txt ที่มีอยู่ในฟอรัม


ขอบคุณสำหรับสิ่งนี้. ฉันไม่ทราบว่าทีมมีการแบ่งแบบไดนามิกที่ถูกต้อง
Vincent P

15

คุณสามารถรับมุมมองแบบเรียลไทม์ของการใช้หน่วยความจำโดยใช้คำสั่งtopหรือ htopคุณอาจต้องติดตั้งถ้าคุณได้รับข้อความhtop htop: command not foundสมมติว่าคุณใช้ Raspbian ให้ติดตั้งโดยเรียกใช้sudo apt-get install htop


2
สิ่งที่เป็นประโยชน์มากกว่าปกติtop?
Morgan Courbet

1
htop ดูเหมือนว่าจะ "ดี" htop.sourceforge.net/index.php?page=comparison
สกู๊ป

2
htopเป็นมิตรกับผู้ใช้มากขึ้น ฉันมักจะใช้htopแทนtop
w0rldart

นอกจากนี้หากคุณใช้เครื่องมัลติคอร์เช่น RPi 2 คุณจะเห็นการโหลดสำหรับแต่ละคอร์ในกราฟแท่งที่ดีและตัวอย่างเช่นเมื่อคุณเห็น 'งูใหญ่' ในรายการงานมันจะแสดงเส้น comamnd ทั้งหมดเพื่อให้คุณ ดูว่าโปรแกรมใดกำลังทำงานอยู่
jpwynn

@jpwynn โปรดทราบว่าเมื่อtopคุณกด1และคุณจะเห็นโปรเซสเซอร์ทั้งหมดด้วย แต่ฉันยอมรับว่าhtopโดยทั่วไปจะดีกว่า / ใช้งานง่ายกว่า
Alexis Wilke

11

โดยทั่วไปคุณไม่สามารถใช้งาน GPU ได้ในขณะนี้ คุณสามารถได้รับการใช้งาน CPU เท่านั้นลองtopคำสั่ง

อัปเดต Raspbian ตอนนี้รวมถึงhtopซึ่งเป็น verbose มากขึ้นและง่ายต่อการอ่าน

เกี่ยวกับการแบ่ง CPU / GPU ที่เหมาะสม มันขึ้นอยู่กับสิ่งที่คุณใช้ RPi ของคุณ หากคุณไม่ได้เล่นวิดีโอและเกม (ปรับแต่ง GPU) แล้วให้ CPU กับ RAM มากที่สุด นอกจากนี้หากคุณเรียกใช้ "หัวขาด" (ไม่เชื่อมต่อกับหน้าจอ) จากนั้นกำหนด CPU ให้มากที่สุดเท่าที่จะทำได้

โครเมี่ยมยังไม่สามารถใช้ GPU ให้ตรวจสอบต่อไปด้าย มันมาจากหนึ่งในผู้ที่ทำการพัฒนา Chromium สำหรับ Raspberry Pi นอกจากนี้ยังมีเคล็ดลับในการทำให้ Chromium ทำงานได้เร็วขึ้นในโพสต์ต้นฉบับ


ดังนั้นปัญหาคือฉันไม่แน่ใจว่า chrome ใช้ gpu หรือไม่ และถ้าเป็นเช่นนั้นสำหรับสิ่งประเภทใด มันจะมีประโยชน์สำหรับการใช้ GPU แต่อาจเป็นไปไม่ได้
Scoop

@coop ฉันได้อัปเดตคำตอบของฉันแล้ว
Vincent P

@Scoop จากการทดสอบของฉันในวันนี้ (2018) รองรับ GPU ที่รวมอยู่ในเบราว์เซอร์ Chrome chrome://gpuคุณสามารถดูได้โดยไปที่
Alexis Wilke

7

ในการตรวจสอบการใช้ RAM free -h -s 1ที่คุณสามารถเรียกใช้ ทุกวินาที ( -s 1) ตารางที่คล้ายกันจะปรากฏขึ้น:

             total       used       free     shared    buffers     cached
Mem:          438M       146M       292M         0B        15M       102M
-/+ buffers/cache:        28M       409M
Swap:          99M         0B        99M

บรรทัดMem:คือสิ่งที่คุณกำลังมองหา

ในตัวอย่างข้างต้นคุณจะเห็นว่าในปัจจุบันมีการใช้งานทั้งหมด 438MB, 146MB และ 292MB ยังคงฟรี ใน 512MB RPi ของฉันฉันได้ตั้งค่า 64MB สำหรับ GPU แล้ว


2
โปรดทราบว่านี่ไม่ใช่การใช้งาน CPU จริง ๆ แต่เป็นการใช้งาน RAM
Hut8 8

2

ในการตรวจสอบการใช้งาน CPU, RAM และ SWAP ใน Raspbian คุณสามารถใช้ TOP หรือ HTOP

ใน terminal topวิ่ง TOP พร้อมใช้งานตามค่าเริ่มต้นและให้รายละเอียดที่สมเหตุสมผล TOP ใน Raspbian Terminal RPi3

แต่ฉันคิดว่า HTOP มีประโยชน์มากกว่าโดยมีรายละเอียดและคุณสมบัติที่ดีกว่า HTOPP ไม่พร้อมใช้งานตามค่าเริ่มต้นและจำเป็นต้องติดตั้ง

รันsudo apt-get update && sudo apt-get install htopใน Terminal เพื่อติดตั้ง HTOP

ในเทอร์มินัลรันhtopหลังจากติดตั้งเสร็จสมบูรณ์

HTOP ใน Raspbian RPi 3

หวังว่าจะช่วย


2

คำสั่งที่จะทำให้คุณเข้าใจในสิ่งที่ถูกจัดสรรโดย GPU sudo vcdbg relocคือ ผลลัพธ์ดูเหมือนสิ่งที่เริ่มต้นที่นี่ ในกรณีของฉันฉันเห็นว่า 236M ที่จัดสรรนั้นใกล้เคียงกับค่าใน/boot/config.txt-> gpu_mem=256ดังนั้นฉันต้องชนมันเล็กน้อย

Relocatable heap version 4 found at 0x30000000
total space allocated is 236M, with 234M relocatable, 2.3M legacy and 0 offline
1 legacy blocks of size 2359296

free list at 0x3ad9aaa0
352 free memory in 2 free block(s)
largest free block is 320 bytes

0x30000000: legacy block 2.3M
0x30240000: free 320
[  80] 0x30240140: used  608 (refcount 1 lock count 0, size      540, align    4, data 0x30240160, d0rual) 'GLXX_TEXTURE_T'
[  78] 0x302403a0: used  192 (refcount 1 lock count 0, size      128, align    4, data 0x302403c0, D1rual) 'GLXX_BUFFER_INNER_T.storage'

1
อาจเป็นเรื่องที่ทำให้สับสนสำหรับคนที่คุณพูดว่า "ในกรณีของฉันฉันเห็นว่า 236M ที่จัดสรรนั้นใกล้เคียงกับค่าใน /boot/config.txt -> gpu_mem = 256" ตั้งแต่แรกเห็น นี่หมายความว่าคุณได้รับหมายเลขแรกจากบรรทัดแรกซึ่งจะเหมือนกันเสมอ จำนวนหน่วยความจำว่างจริง ๆ ใน stanza ที่สองและจำนวนของการใช้จะเป็นค่าที่จัดสรร (236M) ลบนี่ เหล่านั้นจะสอดคล้องกับและ vcgencmd get_mem reloc raspberrypi.org/forums/viewtopic.php?t=158157vcgencmd get_mem reloc_total
Goldilocks
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.