EnglishFrenchSpanyol

Ad


Favicon OnWorks

memusage - Dalam talian di Awan

Jalankan memusage dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah memusage arahan yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.

JADUAL:

NAMA


memusage - penggunaan memori profil program

SINOPSIS


memusage [pilihan]... program [pilihan program]...

DESCRIPTION


memusage ialah skrip bash yang memprofilkan penggunaan memori program, program. ia
pramuat libmemusage.so perpustakaan ke dalam persekitaran pemanggil (melalui LD_PRELAD
pembolehubah persekitaran; lihat ld.so(8)). The libmemusage.so perpustakaan mengesan peruntukan memori
dengan memintas panggilan ke malloc(3), calloc(3), percuma(3), dan peruntukkan semula(3); secara pilihan, panggilan
kepada mmap(2), mremap(2), dan munmap(2) juga boleh dipintas.

memusage boleh mengeluarkan data yang dikumpul dalam bentuk teks, atau ia boleh menggunakan memusagestat(1) (lihat
yang -p pilihan, di bawah) untuk mencipta fail PNG yang mengandungi perwakilan grafik bagi
data yang dikumpul.

Memori penggunaan ringkasan
Output baris "Ringkasan penggunaan memori" oleh memusage mengandungi tiga bidang:

timbunan jumlah
Jumlah saiz hujah semua malloc(3) panggilan, hasil hujah
(nmemb*saiz) semua calloc(3) panggilan, dan jumlah panjang hujah semua mmap(2)
panggilan. Dalam kes peruntukkan semula(3) dan mremap(2), jika saiz baru sebuah
peruntukan adalah lebih besar daripada saiz sebelumnya, jumlah semua perbezaan tersebut
(saiz baru tolak saiz lama) ditambah.

timbunan puncak
Maksimum semua saiz hujah daripada malloc(3), semua produk daripada nmemb*saiz of
calloc(3), semua saiz hujah daripada peruntukkan semula(3), panjang hujah daripada mmap(2), dan
saiz_baru hujah daripada mremap(2).

timbunan puncak
Sebelum panggilan pertama ke mana-mana fungsi yang dipantau, alamat penuding tindanan
(penunjuk tindanan asas) disimpan. Selepas setiap panggilan fungsi, timbunan sebenar
alamat penuding dibaca dan perbezaan dari penuding tindanan asas
dikira. Maksimum perbezaan ini ialah puncak tindanan.

Sejurus selepas garis ringkasan ini, jadual menunjukkan panggilan nombor, jumlah memori
diperuntukkan atau diagihkan, dan bilangan panggilan yang gagal untuk setiap fungsi yang dipintas. Untuk
peruntukkan semula(3) dan mremap(2), medan tambahan "nomove" menunjukkan pengagihan semula yang berubah
alamat blok dan medan "dec" tambahan menunjukkan pengagihan semula yang berkurangan
saiz blok. Untuk peruntukkan semula(3), medan tambahan "percuma" menunjukkan pengagihan semula
yang menyebabkan satu blok dibebaskan (iaitu, saiz yang diperuntukkan semula ialah 0).

"Reloc/total memory" output jadual oleh memusage tidak menggambarkan kes di mana
peruntukkan semula(3) digunakan untuk mengagihkan semula blok memori untuk mempunyai saiz yang lebih kecil daripada sebelumnya.
Ini boleh menyebabkan jumlah semua sel "jumlah memori" (tidak termasuk "percuma") menjadi lebih besar daripada sel
sel "bebas/jumlah memori".

Histogram Untuk menyekat saiz
"Histogram untuk saiz blok" menyediakan pecahan peruntukan memori kepada pelbagai
saiz baldi.

PILIHAN


-n nama, --progname=nama
Nama fail program ke profil.

-p fail, --png=fail
Hasilkan grafik PNG dan simpan dalam fail.

-d fail, --data=fail
Hasilkan fail data binari dan simpannya fail.

-u, --tidak ditimbal
Jangan penimbal keluaran.

-b saiz, --penampan=saiz
Mengumpul saiz entri sebelum menulisnya.

--tiada-pemasa
Lumpuhkan berasaskan pemasa (SIGPROF) pensampelan nilai penuding tindanan.

-m, --mmap
Juga jejak mmap(2), mremap(2), dan munmap(2).

-?, - membantu
Cetak bantuan dan keluar.

--penggunaan
Cetak mesej penggunaan ringkas dan keluar.

-V, --versi
Cetak maklumat versi dan keluar.

Pilihan berikut hanya digunakan apabila menjana output grafik:

-t, --berasaskan masa
Gunakan masa (bukan bilangan panggilan fungsi) sebagai skala untuk paksi X.

-T, --jumlah
Juga lukis graf jumlah penggunaan memori.

--tajuk=nama
Penggunaan nama sebagai tajuk graf.

-x saiz, --saiz-x=saiz
Buat graf saiz lebar piksel.

-y saiz, --y-saiz=saiz
Buat graf saiz piksel tinggi.

EXIT STATUS


Status keluar adalah sama dengan status keluar program berprofil.

CONTOH


Di bawah ialah atur cara mudah yang memperuntukkan semula blok memori dalam kitaran yang meningkat kepada puncak
sebelum itu mengalokasi semula memori secara kitaran dalam blok yang lebih kecil yang kembali kepada sifar.
Selepas menyusun atur cara dan menjalankan arahan berikut, graf memori
penggunaan program boleh didapati dalam fail memusage.png:

$ memusage --data=memusage.dat ./a.keluar
...
Ringkasan penggunaan memori: jumlah timbunan: 45200, puncak timbunan: 6440, puncak timbunan: 224
jumlah panggilan jumlah memori panggilan gagal
malloc| 1 400 0
realloc| 40 44800 0 (nomove:40, Dis:19, percuma:0)
calloc| 0 0 0
percuma| 1 440
Histogram untuk saiz blok:
192-207 1 2% =================
...
2192-2207 1 2% =================
2240-2255 2 4% ==================================
2832-2847 2 4% ==================================
3440-3455 2 4% ==================================
4032-4047 2 4% ==================================
4640-4655 2 4% ==================================
5232-5247 2 4% ==================================
5840-5855 2 4% ==================================
6432-6447 1 2% =================
$ memusagestat memusage.dat memusage.png

Program sumber
#sertakan
#sertakan

#define KITARAN 20

int
utama(int argc, char *argv[])
{
int i, j;
int *p;

printf("mallok: %zd\n", sizeof(int) * 100);
p = malloc(sizeof(int) * 100);

untuk (i = 0; i <KITARAN; i++) {
jika (i < KITARAN / 2)
j = i;
lagi
j--;

printf("realloc: %zd\n", sizeof(int) * (j * 50 + 110));
p = realloc(p, sizeof(int) * (j * 50 + 100));

printf("realloc: %zd\n", sizeof(int) * ((j+1) * 150 + 110));
p = realloc(p, sizeof(int) * ((j + 1) * 150 + 110));
}

percuma(p);
keluar(EXIT_SUCCESS);
}

Gunakan memusage dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

  • 1
    VBA-M (Diarkib - Kini di Github)
    VBA-M (Diarkib - Kini di Github)
    Projek telah berpindah ke
    https://github.com/visualboyadvance-m/visualboyadvance-m
    Ciri-ciri: Ciptaan menipu simpan statesmulti
    sistem, menyokong gba, gbc, gb, sgb,
    sgb2Tu...
    Muat turun VBA-M (Diarkib - Sekarang di Github)
  • 2
    Stacer
    Stacer
    Pengoptimum dan Pemantauan Sistem Linux
    Repositori Github:
    https://github.com/oguzhaninan/Stacer.
    Khalayak: Pengguna Akhir/Desktop. pengguna
    antara muka: Qt. Pengaturcaraan La...
    Muat turun Stacer
  • 3
    orangefox
    orangefox
    Fork TeamWinRecoveryProject(TWRP)
    dengan banyak fungsi tambahan, reka bentuk semula
    dan banyak lagi Ciri:Menyokong Treble dan
    bukan-Treble ROM kernel Oreo terkini,
    dibina...
    Muat turun OrangeFox
  • 4
    itop - ITSM CMDB OpenSource
    itop - ITSM CMDB OpenSource
    Portal Operasi IT: terbuka sepenuhnya
    sumber, ITIL, perkhidmatan berasaskan web
    alat pengurusan termasuk sepenuhnya
    CMDB boleh disesuaikan, sistem meja bantuan dan
    seorang lelaki dokumen...
    Muat turun itop - ITSM CMDB OpenSource
  • 5
    Clementine
    Clementine
    Clementine ialah muzik berbilang platform
    pemain dan penganjur perpustakaan yang diilhamkan oleh
    Amarok 1.4. Ia mempunyai puasa dan
    antara muka yang mudah digunakan, dan membolehkan anda
    cari dan...
    Muat turun Clementine
  • 6
    XISMuS
    XISMuS
    PERHATIAN: Kemas kini kumulatif 2.4.3 telah
    telah dibebaskan!! Kemas kini berfungsi untuk mana-mana
    versi 2.xx sebelumnya. Jika menaik taraf
    daripada versi v1.xx, sila muat turun dan
    i ...
    Muat turun XISMuS
  • Lebih »

Arahan Linux

Ad