Puncte:1

Nu se afișează memoria RAM disponibilă

drapel th

În prezent rulez Ubuntu pe laptopul meu. Conform specificațiilor mele și uitându-mă la bios-ul meu, ar trebui să existe 16 GiB de RAM. Când l-am primit prima dată, aveau 16 GiB de memorie RAM, dar oricând sun liber sau htop chiar acum, arată doar 12GiB. Ieșirea pentru liber este:

              total folosit gratuit partajat buff/cache disponibil
Mem: 12077124 1817484 8333912 18500 1925728 9965952
Schimbă: 33554428 0 33554428

iar ieșirea pentru dmesg | grep -i memorie este:

[ 0.004350] verificare: Scanarea 1 zone pentru corupție de memorie scăzută
[ 0,004667] ACPI: Rezervarea memoriei tabelului FACP la [mem 0xc5993000-0xc5993113]
[ 0,004668] ACPI: Rezervarea memoriei tabelului DSDT la [mem 0xc597c000-0xc598d8ca]
[ 0,004669] ACPI: Rezervarea memoriei tabelului FACS la [mem 0xcbc19000-0xcbc1903f]
[ 0,004669] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc7c9c000-0xc7c9c0a1]
[ 0,004670] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc7c9a000-0xc7c9b18e]
[ 0,004670] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc7c8c000-0xc7c93228]
[ 0,004671] ACPI: Rezervarea memoriei tabelului IVRS la [mem 0xc7c6a000-0xc7c6a1a3]
[ 0,004671] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc7c38000-0xc7c38a41]
[ 0.004672] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc7bb3000-0xc7bb3631]
[ 0,004672] ACPI: Rezervarea memoriei tabelului TPM2 la [mem 0xc7bb2000-0xc7bb2033]
[ 0.004673] ACPI: Rezervarea memoriei tabelului POAT la [mem 0xc7baf000-0xc7baf054]
[ 0.004673] ACPI: Rezervarea memoriei tabelului BATB la [mem 0xc7b9a000-0xc7b9a049]
[ 0,004674] ACPI: Rezervarea memoriei tabelului HPET la [mem 0xc5992000-0xc5992037]
[ 0,004675] ACPI: Rezervarea memoriei tabelului APIC la [mem 0xc5991000-0xc5991137]
[ 0,004675] ACPI: Rezervarea memoriei tabelului MCFG la [mem 0xc5990000-0xc599003b]
[ 0,004676] ACPI: Rezervarea memoriei tabelului SBST la [mem 0xc598f000-0xc598f02f]
[ 0,004676] ACPI: Rezervarea memoriei tabelului WSMT la [mem 0xc598e000-0xc598e027]
[ 0,004677] ACPI: Rezervarea memoriei tabelului VFCT la [mem 0xc596e000-0xc597b883]
[ 0,004677] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc5968000-0xc596d353]
[ 0,004678] ACPI: Se rezervă memoria tabelului CRAT la [mem 0xc5967000-0xc5967ebf]
[ 0.004679] ACPI: Rezervarea memoriei tabelului CDIT la [mem 0xc5966000-0xc5966028]
[ 0,004679] ACPI: Rezervarea memoriei tabelului FPDT la [mem 0xc7b9b000-0xc7b9b033]
[ 0,004680] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc5965000-0xc5965148]
[ 0,004680] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc5963000-0xc59644ba]
[ 0,004681] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc5961000-0xc596257f]
[ 0,004681] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc595d000-0xc5960972]
[ 0,004682] ACPI: Rezervarea memoriei tabelului BGRT la [mem 0xc595c000-0xc595c037]
[ 0.004683] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc595b000-0xc595b057]
[ 0,004683] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc595a000-0xc595a24c]
[ 0,004684] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc5958000-0xc59592bb]
[ 0,004684] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc5957000-0xc5957ad4]
[ 0.004685] ACPI: Rezervarea memoriei tabelului UEFI la [mem 0xcbc18000-0xcbc180d9]
[ 0,004685] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc5956000-0xc5956051]
[ 0,004686] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc7c98000-0xc7c9808f]
[ 0,004687] ACPI: Rezervarea memoriei tabelului SSDT la [mem 0xc7c97000-0xc7c979b4]
[ 0,004947] Domenii timpurii de noduri de memorie
[ 0.032537] PM: hibernare: Memorie înregistrată: [mem 0x00000000-0x00000fff]
[ 0.032539] PM: hibernare: memorie înregistrată: [mem 0x0009f000-0x0009ffff]
[ 0.032539] PM: hibernare: Memorie noastră înregistrată: [mem 0x000a0000-0x000dffff]
[ 0.032540] PM: hibernare: Memorie noastră înregistrată: [mem 0x000e0000-0x000fffff]
[ 0.032541] PM: hibernare: Memorie noastră înregistrată: [mem 0x09c00000-0x09da0fff]
[ 0.032542] PM: hibernare: Memorie noastră înregistrată: [mem 0x09f00000-0x09f0cfff]
[ 0.032542] PM: hibernare: Memorie noastră înregistrată: [mem 0x9973c000-0x9973cfff]
[ 0.032543] PM: hibernare: Memorie noastră înregistrată: [mem 0x99749000-0x99749fff]
[ 0.032544] PM: hibernare: memoria noastră înregistrată: [mem 0xc0a5b000-0xc0aebfff]
[ 0.032545] PM: hibernare: Memorie noastră înregistrată: [mem 0xc1214000-0xc1214fff]
[ 0.032546] PM: hibernare: Memorie noastră înregistrată: [mem 0xc1bee000-0xc1beefff]
[ 0.032547] PM: hibernare: Memorie noastră înregistrată: [mem 0xc4b7e000-0xcad7dfff]
[ 0.032548] PM: hibernare: Memorie noastră înregistrată: [mem 0xcad7e000-0xcbd7dfff]
[ 0.032548] PM: hibernare: Memorie noastră înregistrată: [mem 0xcbd7e000-0xcbdfdfff]
[ 0.032549] PM: hibernare: memorie noastră înregistrată: [mem 0xce000000-0xcfffffff]
[ 0.032549] PM: hibernare: Memorie noastră înregistrată: [mem 0xd0000000-0xf7ffffff]
[ 0.032550] PM: hibernare: Memorie noastră înregistrată: [mem 0xf8000000-0xfbffffff]
[ 0.032550] PM: hibernare: Memorie noastră înregistrată: [mem 0xfc000000-0xfdbfffff]
[ 0.032551] PM: hibernare: memorie noastră înregistrată: [mem 0xfdc00000-0xfdcfffff]
[ 0.032551] PM: hibernare: memorie noastră înregistrată: [mem 0xfdd00000-0xfed7ffff]
[ 0.032551] PM: hibernare: Memorie noastră înregistrată: [mem 0xfed80000-0xfed80fff]
[ 0.032552] PM: hibernare: Memoria noastră înregistrată: [mem 0xfed81000-0xffffffff]
[ 0.071132] Memorie: 11923324K/12401088K disponibil (14345K cod kernel, 3478K rwdata, 10340K rodata, 2688K init, 5976K bss, 477504K cma, rezervat)
[ 0.109279] Eliberarea memoriei alternative SMP: 40K
[ 0,255382] x86/mm: Dimensiunea blocului de memorie: 128MB
[ 0.633239] Eliberarea memoriei initrd: 56768K
[ 0.636859] verificare: Scanarea pentru coruperea memoriei scăzute la fiecare 60 de secunde
[ 0.922923] Eliberarea memoriei decriptate neutilizate: 2036K
[ 0.923550] Eliberarea memoriei imaginii kernel neutilizate (initmem): 2688K
[ 0.936446] Eliberarea memoriei imaginii kernel neutilizate (decalaj text/rodata): 2036K
[ 0.937019] Eliberarea memoriei imaginii kernel neutilizate (rodata/data gap): 1948K
[ 2.777602] Driver de memorie nevolatilă v1.3
[ 3.074212] amdgpu 0000:07:00.0: amdgpu: Funcția Trusted Memory Zone (TMZ) este dezactivată ca experimental (implicit)
[ 3.314687] [TTM] Nucleu de zonă: memorie grafică disponibilă: 6038562 KiB
[ 3.314688] [TTM] Zona dma32: Memorie grafică disponibilă: 2097152 KiB
[ 3.314780] [drm] amdgpu: 4096 M de memorie VRAM gata
[ 3.314782] [drm] amdgpu: 4096M de memorie GTT gata.

Nu prea știu ce caut și mi-ar plăcea orice sfat. În special faptul că a arătat-o ​​și am putut să-l folosesc mă încurcă. Ce aș fi putut greși?

Actualizare 1: am alergat sudo dmidecode -t memorie, care dă rezultatul:

# dmidecode 3.2
Obținerea datelor SMBIOS de la sysfs.
SMBIOS 3.3.0 prezent.
# Implementările SMBIOS mai noi decât versiunea 3.2.0 nu sunt
# pe deplin acceptat de această versiune de dmidecode.

Mâner 0x0001, DMI tip 16, 23 de octeți
Matrice de memorie fizică
    Locație: placă de sistem sau placă de bază
    Utilizare: Memorie de sistem
    Tip de corectare a erorilor: Niciuna
    Capacitate maxima: 64 GB
    Informații despre eroare: 0x0000
    Număr de dispozitive: 2

Mâner 0x0008, DMI tip 17, 92 de octeți
Dispozitiv de memorie
    Mânerul matricei: 0x0001
    Găsirea informațiilor despre eroare: 0x0007
    Lățimea totală: 64 de biți
    Lățimea datelor: 64 biți
    Dimensiune: 16384 MB
    Factor de formă: SODIMM
    Set: niciunul
    Localizator: DIMM 0
    Localizator bancă: P0 CHANNEL A
    Tip: DDR4
    Detaliu tip: sincron fără tampon (neînregistrat)
    Viteza: 3200 MT/s
    Producator: Hynix
    Număr de serie: 00000000
    Etichetă de bun: nespecificată
    Număr piesa: HMAB2GS6AMR6N-XN    
    Clasament: 1
    Viteza de memorie configurată: 3200 MT/s
    Tensiune minima: 1,2 V
    Tensiune maximă: 1,2 V
    Tensiune configurată: 1,2 V
    Tehnologia memoriei: DRAM
    Capacitatea modului de funcționare a memoriei: memorie volatilă
    Versiune firmware: necunoscut
    ID producător modul: Bank 1, Hex 0xAD
    ID produs modul: necunoscut
    ID-ul producătorului controlerului subsistemului de memorie: necunoscut
    Controler subsistem de memorie ID produs: necunoscut
    Dimensiune non-volatilă: niciunul
    Dimensiune volatilă: 16 GB
    Dimensiune cache: niciuna
    Dimensiune logică: niciuna

Mâner 0x000B, DMI tip 17, 92 de octeți
Dispozitiv de memorie
    Mânerul matricei: 0x0001
    Găsirea informațiilor despre eroare: 0x000A
    Lățimea totală: necunoscută
    Lățimea datelor: necunoscută
    Dimensiune: Niciun modul instalat
    Factor de formă: necunoscut
    Set: niciunul
    Localizator: DIMM 0
    Localizator bancă: P0 CANAL B
    Tip: necunoscut
    Detaliu tip: necunoscut
    Viteza: necunoscuta
    Producator: Null
    Număr de serie: nul
    Etichetă de bun: nespecificată
    Numărul piesei: nul
    Rang: Necunoscut
    Viteza de memorie configurată: necunoscută
    Tensiune minima: necunoscuta
    Tensiune maximă: necunoscută
    Tensiune configurată: necunoscut
    Tehnologia memoriei: necunoscută
    Capacitatea modului de operare a memoriei: Necunoscut
    Versiune firmware: necunoscut
    ID producător modul: necunoscut
    ID produs modul: necunoscut
    ID-ul producătorului controlerului subsistemului de memorie: necunoscut
    Controler subsistem de memorie ID produs: necunoscut
    Dimensiune non-volatilă: niciunul
    Dimensiune volatilă: Niciuna
    Dimensiune cache: niciuna
    Dimensiune logică: niciuna

Actualizarea 2: Specificațiile mele sunt:

CPU: AMD Ryzen⢠7 PRO (5850U)

GPU: Radeon RX Vega 8

RAM: 16 GB DDR4 3200 MHz (nu cunosc compania)
drapel jp
Știți care este hardware-ul fizic? Este întâmplător 4 DIMM-uri de 4GB? Dacă da, ați putea posta rezultatul `sudo dmidecode -t memory`. (Nu știu dacă dmidecode este instalat implicit. Doar instalați-l, este un instrument util)
drapel jp
De asemenea, ați putea furniza ce procesor este acesta? Dacă acesta este un APU AMD (deci, „grafică integrată”) AMD, este posibil să fi rezervat 4 GB în firmware-ul dumneavoastră pentru APU. Întreb, pentru că văd că dmesg-ul raportează 4GB RAM pentru placa ta grafică, dar dacă este un APU și nu o placă grafică discretă, va fi luat din memoria principală. În mod normal, în firmware-ul dvs., acesta este setat la „Automat”, dar mulți oameni primesc „bafatul” că ar trebui să îl pună la „maximum posibil”, apoi sunt surprinși că a dispărut multă memorie RAM principală. Din nou, acest lucru se aplică numai dacă aveți un APU, nu și dacă aveți o placă grafică discretă.
Fadi avatar
drapel co
rulați `sudo lshw -c memory` și verificați dimensiunea memoriei
DeerFreak avatar
drapel th
Am postat specificațiile în Update 2. @jawtheshark Da, am un GPU integrat Radeon RX Vega 8. Înseamnă că nu pot recupera RAM lipsă? Sau care sunt pașii pentru a inversa acest lucru? Mulțumesc
drapel jp
Bine, ceea ce știm este că aveți exact 1 DIMM de 16 GB. Deci, *ar trebui* să aveți 16 GB și este puțin probabil ca stick-ul să fie defect pentru 25% și raportează asta ca atare. Cu toate acestea, aveți un APU. Placa grafică folosește astfel memoria RAM de sistem și nu are propriul VRAM.
drapel jp
Cred că ne uităm la cauză: partea grafică a APU-ului rezervă 4 GB din RAM de sistem pentru utilizarea sa. Presupun că ați setat așa, pentru că nu cred că aceasta este o setare implicită. Ce trebuie să faceți, intrați în firmware-ul dvs. (BIOS/uEFI) și căutați opțiunea în care alocați RAM pentru placa grafică integrată. Setați-l înapoi la „Automat”. Din păcate, nu vă pot spune unde este exact, fiecare firmware este diferit (BIOS/uEFI).
DeerFreak avatar
drapel th
@jawtheshark Am setat UMA Frame buffersize la automat (setarea era deja activată) și nu mi-a schimbat dimensiunea RAM la normal. Cu toate acestea, setarea la doar 1G a crescut memoria RAM așa cum m-aș aștepta. Deci problema este cu siguranță UMA. Setarea manuală este periculoasă? Și de ce „auto” nu îmi restabilește memoria RAM completă? Mulțumesc mult
heynnema avatar
drapel ru
Procesoarele AMD Ryzen sunt agitate în privința memoriei. Arată-mi `sudo dmidecode -s bios-version` și spune-mi marca/modelul EXACT al computerului sau al plăcii de bază. Accesați, de asemenea, https://www.memtest86.com/ și descărcați/rulați „memtestul” gratuit pentru a vă testa memoria.Obțineți cel puțin o trecere completă a tuturor testelor 4/4 pentru a confirma o memorie bună. Acest lucru poate dura câteva ore.
drapel jp
@DeerFreak A nu-l seta manual nu este periculos. Se pare atunci că „Auto” rezerve implicit 4 GB din orice motiv. Așa scrie în dmesg-ul tău, dar sunt într-adevăr surprins că rezervă atât de mult pe „Auto”. Dacă aveți Windows, ce comportament arată Windows?
DeerFreak avatar
drapel th
Am doar o instalare ubuntu, dar aș putea porni un stick Windows foarte repede.
drapel jp
@heynnema Da, procesoarele Ryzen sunt pretentioase, dar având în vedere configurația (1x16GB DIMM), cel mai probabil, acesta nu este o platformă auto-construită (aș paria chiar că este un laptop), așa că este foarte puțin probabil să fie stick-ul RAM, mai ales scoate exact 4GB. În mod normal, un sistem prefabricat are RAM corespunzatoare cu procesorul pentru a evita returnările. Acum, a face un memtest este o idee bună în general, dar este foarte puțin probabil să fie problema. De asemenea, ar trebui să trimiteți oamenii la versiunea open source http://www.memtest.org/
drapel jp
@DeerFreak A fost mai ales din curiozitate. Lucrul este „Auto” înseamnă în mod normal că sistemul de operare poate solicita mai mult (sau mai puțin) RAM pentru APU în mod dinamic. Într-un mediu desktop normal ar merge cu minim, iar într-un joc ar fi nevoie de tot. Este posibil ca driverele Linux să nu accepte acest lucru și, astfel, pur și simplu să ia tot ce pot.
drapel jp
Tocmai am intrat în SteamBox-ul meu. L-am construit acum câțiva ani și are un Ryzen 3 2200G. Nu m-am obosit niciodată să verific ce cantitate de RAM este folosită, pentru că chiar și atunci când avea doar 8 GB RAM totul a funcționat bine și este folosit mai ales ca „experiență de consolă”. A fost actualizat la 32 GB RAM când RAM era ieftină. Indiferent, maximul pe care 2200G îl poate rezerva este de 2GB și... într-adevăr, găsesc exact aceeași linie în dmesg-ul meu: `[1.397340] [drm] amdgpu: 2048M of VRAM memory ready`. Pentru `free -m`, de asemenea, îmi arată doar 30GB. Aș spune că acesta este un comportament normal (pe Linux) pentru APU-urile AMD.
drapel jp
Dacă nu jucați jocuri și nu aveți nevoie de rezervarea de 4 GB VRAM (de exemplu, aparatul este folosit în principal pentru aplicații desktop), reduceți rezervarea în frimware. 1 GB este suficient pentru utilizarea normală a desktopului.
DeerFreak avatar
drapel th
În primul rând, vă mulțumesc foarte mult pentru că m-ați ajutat :) În al doilea rând, sunt puțin nedumerit, deoarece am cumpărat acest computer special pentru codificare și rularea codului care nu este greu de gpu. Pentru asta am a doua mașină mult mai mare. Deci nu mă așteptam ca GPU-ul intern să interfereze cu aproape nimic.
drapel jp
Dacă te uiți la această documentație a nucleului: https://www.kernel.org/doc/html/latest/gpu/amdgpu.html Veți observa următorul parametru: `vramlimit (int) --> Restricționați cantitatea totală de VRAM în MiB pentru testare. Valoarea implicită este 0 (Utilizați VRAM complet).` Așadar, iată: implicit este să rezervi toată VRAM-ul posibil, iar dacă „Auto” spune sistemului „maximul meu este de 4 GB”, acesta va prelua toți cei 4 GB...
DeerFreak avatar
drapel th
@heynnema Vă mulțumim pentru timpul acordat, dar cred că am rezolvat problema. Am de gând să închid problema.
heynnema avatar
drapel ru
@jawtheshark memtest.org este un furk al memtest86.org. Pe site-ul memtest.org scrie *„Aici este Memtest86+ 5.31b, cu multe remedieri de erori în funcțiile de bază. Această versiune nu este încă pregătită pentru producție, deoarece îi lipsește ceva feedback de la testerii beta”*. Pe memtest86.org scrie *„MemTest86 este software-ul original, gratuit, independent de testare a memoriei pentru computerele x86 și ARM”*.
DeerFreak avatar
drapel th
Da, computerul pe care îl am este un laptop. Am acest model: https://www.lenovocampus.de/wp-content/uploads/2021/08/ThinkPadP14sGen2Datasheet-Final.pdf
drapel jp
Da, @heynnema și nu este open source, nici software gratuit. Preferați întotdeauna software-ul deschis și gratuit decât software-ul proprietar. Memtest86+ este doar folosit gratuit, nu software gratuit. Există o diferență, iar diferența este importantă.
Puncte:1
drapel th

Acest răspuns a fost oferit în principal de jawtheshark în comentarii. O voi rezuma aici pentru a închide problema. Problema este că Linux ia, pentru GPU-urile integrate, o parte din RAM și o folosește ca VRAM. Partea grafică a APU-ului rezervă 4 GB din RAM de sistem pentru utilizarea sa. Privind această documentație a nucleului: kernel.org/doc/html/latest/gpu/amdgpu.html Parametrul: vramlimit (int) --> Restricționați cantitatea totală de VRAM în MiB pentru testare. Valoarea implicită este 0 (Utilizați VRAM complet). Ceea ce înseamnă că opțiunea „auto” pentru delegarea memoriei RAM către GPU-ul integrat, delegă o cantitate mare de RAM către GPU. Deoarece folosesc mașina doar ca stație de lucru, voi seta opțiunea „auto” din bios la „1 GB”, valoarea minimă.

Puncte:0
drapel sa

Ubuntu nu detectează toată capacitatea RAM instalată, posibil din cauza unei defecțiuni hardware pe unul dintre stick-urile RAM, care ar putea fi înlocuit opțional cu un nou stick RAM care are același tip, capacitate și viteză de ceas pentru a restabili capacitatea RAM la nivelul său. original de 16 GB. Rulați următoarea comandă pentru a afișa toate sloturile RAM și dacă există sau nu un stick RAM instalat în fiecare slot.

sudo dmidecode -t memorie

Exemplu de rezultate parțiale ale sudo dmidecode -t memorie :

Număr de dispozitive: 4

Mâner 0x0011, DMI tip 17, 84 de octeți
Dispozitiv de memorie
    Mânerul matricei: 0x0009
    Găsirea informațiilor despre eroare: 0x0010
    Lățimea totală: necunoscută
    Lățimea datelor: necunoscută
    Mărimea: Niciun modul instalat

Rezultatele complete ale exemplului de mai sus ar arăta că computerul gazdă are 4 sloturi RAM și două dintre cele patru sloturi RAM au în prezent instalat un modul RAM. Ar arăta, de asemenea, capacitatea fiecărui modul RAM instalat și capacitatea RAM maximă a computerului gazdă.

DeerFreak avatar
drapel th
Multumesc pentru raspuns. Am rulat comanda și am primit următorul stdout: ``` Mâner 0x0008, DMI tip 17, 92 de octeți Dispozitiv de memorie [...] Dimensiune: 16384 MB [...] Mâner 0x000B, DMI tip 17, 92 de octeți Dispozitiv de memorie [...] Dimensiune: Niciun modul instalat [...] ``` Dacă interpretez acest lucru corect: am două sloturi pentru RAM-Stick. Este instalat doar unul, dar ar avea capacitatea, caut (16 GiB). Ce este în neregulă cu primul slot?
karel avatar
drapel sa
Nimic nu este în neregulă cu slotul RAM și computerul detectează stick-ul RAM, dar conform „gratuit” doar 12 GB din cei 16 GB instalați sunt disponibile. Voi cerceta această ieșire a terminalului și voi edita întrebarea mea dacă găsesc ceva care merită postat.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.