Versi 2.14.0
Ellexus - Breeze Trace-Mung Manual Panganggo
Pambuka
Breeze HPC minangka alat sing digunakake kanggo ngatasi masalah penyebaran lan nyetel nalika nginstal lan mbukak aplikasi Linux sing rumit.
Breeze TraceOnly minangka download cilik sing ngidini sampeyan nglacak aplikasi lan ngirim menyang wong sing duwe lisensi Breeze lengkap.
Sampeyan ora bisa ndeleng data tanpa lisensi Breeze, nanging yen vendor piranti lunak, sampeyan bisa ngirim data supaya bisa ngerti apa masalahe.
Breeze TraceOnly nglacak argumen aplikasi, lingkungan, lan dependensi sing digunakake kanggo ngatasi masalah mbangun utawa nginstal lan ngrampungake masalah sing disebabake ilang. files utawa perpustakaan.
Breeze TraceOnly uga nyathet pola I/O supaya sampeyan bisa ngerti carane program sampeyan nggunakake jaringan lan file sistem. Data iki bisa digunakake kanggo ngrampungake masalah kinerja lan netepake kemampuan aplikasi sampeyan kanggo skala ing lingkungan paralel.
Instalasi
Download versi paling anyar saka Breeze TraceOnly saka kita websitus lan extract nang endi wae nyoto. Mangga priksa manawa sampeyan ndownload versi Breeze TraceOnly (32 utawa 64bit) sing cocog kanggo mesin sing pengin digunakake.
Breeze TraceOnly ora mbutuhake idin utawa lisensi khusus lan bisa ditindakake dening pangguna sing sah kanggo mbukak aplikasi sing diselidiki.
Nelusuri aplikasi
Breeze TraceOnly mbukak nggunakake program trace. skrip sh kasedhiya ing direktori tingkat paling dhuwur saka instalasi.
Kanggo nglacak lan profile aplikasi sing mung ngetik trace-program. sh-f dituruti dhawuh lan bantahanmu. Kanggo example:
$ ./trace-program.sh -f ~/trace output nggawe kabeh
Yen direktori output sing ditemtokake ing pilihan -f ana lan wis ngemot data jejak, skrip bakal nampilake pesen peringatan lan metu.
3.1 Pilihan baris printah
Bagean ing ngisor iki nampilake kabeh opsi baris perintah sing bener sing digunakake dening program trace. sh. Kabeh opsi kanggo nglacak-program. sh, kudu ditemtokake sadurunge prentah sing bakal dilacak.
–bash-alias= file> -ab file>
Pasokan a file saka definisi alias bash. Breeze mbutuhake definisi kanggo nglacak alias.
Alias sing cocog file bisa digawe kanthi nglakokake prentah ing ngisor iki ing bash sadurunge mbukak skrip iki:
$ alias > alias.txt
–post-trace=
-c
Nglakokake perintah post-trace sawise program sing dilacak wis rampung.
Printah dhewe ora bakal profiled, dilacak, dipantau, utawa dicekel. Sampeyan bisa nggunakake printah iki kanggo mbukak script kirim-processing singkat, utawa kanggo nggawe gendéra file, contone, –post-trace=" tutul /path/to/log/file”. Yen printah ora rampung ing 10 menit, iku bakal matèni.
– log=filejeneng>
-lfilejeneng>
Rekam pesen kesalahan Breeze ing sing ditemtokake file. Yen pilihan iki ora disetel, kesalahan bakal dikirim menyang stderr.
– output =
-f
Direktori sing nglacak data bakal ditulis, lan digunakake dening Breeze TraceOnly kanggo panyimpenan sementara. Opsi iki dibutuhake.
-profile=
-p
Opsi iki nguripake utawa mateni profil. Yen aktif Breeze nglumpukake akeh jinis statistik babagan operasi program sing dilacak. Profil diaktifake kanthi gawan, nanging mateni iki bisa nyepetake tracing lan nyuda ukuran output. Set statistik sing tepat sing diklumpukake dikontrol dening variabel lingkungan sing diterangake ing Pilihan Profil.
-paket
Nganggo script kanggo nemtokake paket sing diinstal ing sistem supaya Breeze bisa nemtokake ngendi file dependensi wis teka saka. Off kanthi gawan. Iki nambah overhead gedhe sadurunge mbukak program lan mung kudu digunakake yen perlu.
-pindhah
Direktori ngendi data tilak bakal disalin sawise roto wis rampung. Bisa digunakake kanggo nyepetake wektu eksekusi program sing dilacak kanthi mlebu menyang panyimpenan lokal, lan nransfer data menyang panyimpenan jaringan.
–remote=<[bsub][,lsbatch][,lsrun][,qsub][,rsh][,sbatch][,srun][,ssh]>
–remot= -r
Opsi iki ngontrol apa Breeze bakal ngetutake aplikasi menyang host eksekusi anyar.
Opsi kasebut bisa ditemtokake minangka dhaptar sing dipisahake koma saka perintah peluncuran proyek sing didhukung utawa salah siji saka ya utawa ora. Nilai ya padha karo nyathet kabeh perintah peluncuran proyek sing bener lan minangka nilai standar kanggo pilihan iki. Nyetel pilihan iki kanggo ora disables nelusuri sembarang proyek anak.
Dhaptar printah saiki didhukung dikenali dening pilihan iki bsub, kumpulan, roto, qsub, rush, roto, ssh lan kumpulan.
Host anyar kudu duwe instalasi Breeze sing padha ing direktori sing padha karo mesin pisanan, lan direktori output jejak kudu ana ing bagean sing dienggo bareng. file sistem sing dipasang ing panggonan sing padha ing saben mesin.
–remote-job=ya
-pekerjaan jarak jauh
Lacak proyek jarak jauh. Nalika siji utawa luwih proyek anak remot diluncurake saka printah / skrip tingkat paling dhuwur, proyek tingkat paling dhuwur ngenteni kabeh proyek remot rampung. Opsi iki dipateni kanthi gawan.
– cangkang =
-s
Path menyang cangkang sampeyan. Iki digunakake kanggo nglacak sesi interaktif sing dieksekusi nggunakake su, ssh, lan program sing padha.
-status=
-S
Kanthi gawan, telpon ing kulawarga stat (stat, fstat, lan lstat) ora dilacak lan profiled. Nguripake iki bisa nyuda nelusuri lan nambah ukuran output.
– tcsh
-t
Jalanake perintah kanggo dilacak ing cangkang tcsh
–tcsh-alias= file>
-ing file>
Pasokan a file saka tcsh utawa csh alias definisi. Breeze mbutuhake definisi kanggo nglacak alias.
Alias sing cocog file bisa digawe kanthi nggunakake printah ing ngisor iki kanthi awis utawa awis sadurunge mbukak skrip iki:
$ alias > alias.txt
– tilak=
Opsi iki nguripake utawa mateni jejak. Tracing diuripake kanthi gawan.
Nilai all-io mbisakake pelacakan I/O lengkap. Kanthi –trace=all-io, Breeze TraceOnly ngumpulake data babagan kabeh sing diwaca, nulis, lan nggoleki saliyane data tracing standar. Dene ing mode nelusuri standar ( –trace=ya), mung sing pisanan maca, nulis lan golek operasi kanggo saben file direkam. NB Nggunakake opsi -trace=all-io bisa uga alon-alon nelusuri lan bisa nambah ukuran output kanthi signifikan - ngaktifake profiling (kanthi standar) bakal menehi informasi sing dibutuhake kanthi overhead sing luwih murah.
–varian=
Opsi iki milih varian Breeze, sing ngidini fungsi nelusuri tambahan.
Nilai sing didhukung saiki mbisakake MPI I/O tracing kanggo MPICH
(–varian=mpich), MVAPICH (–varian=mvapich) lan OpenMPI
(–variant=ompi) aplikasi.
3.2 Pilihan Profiling
Set statistik sing tepat sing diklumpukake dikontrol dening variabel lingkungan. Variabel lingkungan kasebut diringkes ing ngisor iki.
BREEZE_PROFILE_EMBUNG
Dhaptar ember sing dipisahake koma.
Breeze TraceOnly agregat file statistik sistem liwat subset tartamtu saka file sistem, kang kita waca minangka buckets.
Ember bisa wae file utawa direktori. Yen jeneng ember ngemot koma, iku kudu uwal nganggo garis miring mundur siji \ karakter.
Default kanggo kabeh direktori tingkat paling dhuwur ing file sistem lan kabeh titik gunung aktif.
BREEZE_PROFILE_BUCKET_STATS
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel menyang "1" Breeze TraceOnly ngumpulake statistik ing ngisor iki.
Pisanan, counts nomer telpon kanggo fungsi sing nggunakake file sistem. Fungsi kasebut dikumpulake dadi klompok ing ngisor iki:
nampa | nampa |
akses | akses, chdir, maca, path nyata, stat, ... |
nyambung | nyambung |
nggawe | nggawe, mbukak (yen file digawe), tmpfile, mkdir,… |
mbusak | mbusak, rmdir, unlink, ... |
ngganti glob | chmod, link, ganti jeneng, ... |
glob | gulu, gulu64 |
mbukak | mbukak, mbukak,… |
maca | fgets, goreng, peta, maca, maca, recv, scanf, ... |
ngupaya | ramping, golek, mundur,… |
nulis | kesalahan, nulis, nyithak, nyelehake, ngirim, ngelingake, nulis, ... |
Kapindho, ngitung jumlah bita sing diwaca lan ditulis lan jarak nggoleki.
Saben statistik iki dikumpulake kanggo saben file buckets sistem diatur dening BREEZE_PROFILE_BUCKETS (ndeleng ndhuwur).
Default kanggo "1" kanggo on.
BREEZE_PROFILE_TIME_INTERVAL
Nilai integer sing nemtokake sepira kerepe statistik dilapurake.
Kanthi gawan, interval wektu dianggep diwenehi ing milliseconds, nanging sampeyan bisa kanthi tegas nggunakake unit "kita" kanggo microseconds, "ms" kanggo milliseconds, utawa "s" kanggo detik.
Default kanggo "1000ms" (1 detik).
BREEZE_PROFILE_NETWORK_STATS
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel menyang "1" Breeze TraceOnly nglumpukake counts telpon kanggo fungsi sing nggunakake jaringan. Fungsi kasebut dikumpulake dadi klompok ing ngisor iki:
nampa | nampa |
ngiket | ngiket |
nyambung ngrungokake | nyambung |
ngrungokake | ngrungokake |
maca | maca, maca,… |
nulis | nulis, ngirim,… |
Statistik kasebut dikumpulake miturut saben alamat remot sing diakses.
Default kanggo "1" kanggo on.
BREEZE_PROFILE_BUCKET_LATENCY
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel kanggo "1" Breeze TraceOnly ngukur wektu dijupuk dening telpon fungsi sing nggunakake file sistem.
Fungsi kasebut dikumpulake menyang grup sing diterangake ing BREEZE_PROFILE_BUCKET_STATS ing ndhuwur (nampa, ngakses, nyambung, ngganti, glob, mbukak, maca, nulis).
Breeze nglumpukake latensi maksimum lan minimal lan jumlah panggilan sing kalebu ing saben kisaran latensi sing dikonfigurasi dening
BREEZE_PROFILE_TIME_RANGES (ndeleng ngisor), kanggo saben file buckets sistem diatur dening BREEZE_PROFILE_EMBUNG.
Default kanggo "1" kanggo on.
BREEZE_PROFILE_NETWORK_LATENCY
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel menyang "1" Breeze TraceOnly ngukur wektu sing dijupuk dening telpon fungsi sing nggunakake jaringan.
Fungsi kasebut dikumpulake menyang grup sing diterangake ing BREEZE_PROFILE_NETWORKS_STATS ing ndhuwur (nampa, naleni, nyambung, ngrungokake, maca, nulis).
Breeze nglumpukake latensi maksimum lan minimal lan jumlah panggilan sing kalebu ing saben kisaran latensi sing dikonfigurasi dening
BREEZE_PROFILE_TIME_RANGES (ndeleng ngisor), kanggo saben alamat remot, diakses.
Default kanggo "1" kanggo on.
BREEZE_PROFILE_TIME_RANGES
Dhaptar wates interval wektu sing dipisahake koma.
Nalika BREEZE_PROFILE_BUCKET_LATENCY utawa BREEZE_PROFILE_NETWORK_LATENCY diuripake, Breeze nglumpukake jumlah telpon sing kalebu ing sawetara wektu (jumlah panggilan kurang saka 1us, jumlah telpon sing njupuk 1-10us, ...).
Saben wates interval wektu kudu ditemtokake minangka nilai integer. Yen ora ditemtokake interval dianggep diwenehi ing milliseconds, nanging sampeyan bisa kanthi tegas nggunakake unit "kita" kanggo microseconds, "ms" kanggo milliseconds, utawa "s" kanggo detik.
Kanggo example, yen sampeyan nyetel:
BREEZE_PROFILE_TIME_RANGES=1us,1ms,1d
Banjur ana papat kisaran sing ditetepake: ≤1us, 1us-1ms, 1ms-1s, lan>1s.
Breeze TraceOnly bakal nampa nganti 15 nilai kanggo setelan iki (mula nganti 16 kisaran).
Defaults to 1us,10us,100us,1ms,10ms,100ms,1s,10s,100s,1000s.
BREEZE_PROFILE_GAGAL_IO
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel kanggo "1" Breeze TraceOnly ngumpulake counts telpon fungsi sing gagal.
Fungsi-fungsi kasebut dikumpulake dadi klompok sing diterangake ing ndhuwur (nampa, ngakses, ngiket, nyambung, ngganti, glob, ngrungokake, mbukak, maca, nggoleki, nulis).
Saben statistik iki dikumpulake kanggo saben file buckets sistem diatur dening BREEZE_PROFILE_BUCKET (deleng
ndhuwur), lan kanggo saben alamat remot (ing kasus fungsi jaringan).
Gagal kasebut dikumpulake kanthi nomer kesalahan (errno).
Default kanggo "1" kanggo on.
BREEZE_PROFILE_FS_TRAWL
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel menyang "1" Breeze TraceOnly ngenali kasus nalika program "trawls" file sistem, testing akeh non-ana file path sistem ing suksesi.
File trawls sistem bisa kelakon nalika lingkungan kurang diatur, kanggo Example, yen PATH wis akeh unsur, lan program kudu nelusuri akeh panggonan kanggo nemokake files sing padha kudu. On disebarake file sistem iki bisa nimbulaké degradasi kinerja serius.
Breeze nemtokake "trawl" minangka urutan BREEZE_PRO tanpa gangguanFILE_TRAWL_LENGTH (ndeleng ngisor) utawa luwih akeh telpon gagal menyang fungsi sing padha. Trawl dipungkasi kanthi sukses ing fungsi kasebut utawa kanthi nelpon menyang fungsi sing beda.
Breeze nyathet nomer telpon sing gagal ing trawl, jenenge file digandhengake karo telpon gagal final, lan wektu dijupuk dening kabèh urutan telpon gagal.
Default kanggo "1" kanggo on.
BREEZE_PROFILE_TRAWL_LENGTH
Nilai integer sing nemtokake jumlah minimal telpon gagal sing dianggep Breeze minangka "trawl". Deleng BREEZE_PROFILE_FS_TRAWL
ndhuwur.
Default kanggo "4".
BREEZE_PROFILE_RESOURCE_USAGE
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel menyang "1" Breeze nglaporake memori lan CPU sing digunakake dening program kasebut minangka profiled.
Breeze nyathet "ukuran program total" (memori virtual sing dilindhungi undhang-undhang) lan "ukuran set penduduk" (memori sing dipetakan) minangka dilapurake dening / proc / [pid] / negara. Waca "man proc(5)" kanggo rincian.
Breeze uga nyathet "wektu CPU pangguna" lan "wektu CPU sistem" minangka sawetara mikrodetik wiwit pangukuran pungkasan.
Uga nyathet "saklar konteks sukarela" lan "saklar konteks tanpa sukarela". Nilai kasebut nuduhake delta nganti pangukuran pungkasan.
Default kanggo "1" kanggo on.
BREEZE_PROFILE_SYMLINK_COUNT
Boolean, "1" kanggo on, "0" kanggo mati.
Nalika disetel menyang "1" Breeze TraceOnly ngetung jumlah pranala simbolis sing kudu ditindakake kanggo mutusake masalah saben. file path sistem digunakake dening program ing tilak.
Breeze aggregates count saka file operasi sistem dening dawa chain symlink, nganti BREEZE_PROFILE_SYMLINK_DEPTH (ndeleng ngisor).
Default kanggo "1" kanggo on.
BREEZE_PROFILE_SYMLINK_DEPTH
Nilai integer sing nemtokake dawa maksimum rantai pranala simbolis sing bakal ditindakake Breeze TraceOnly. Deleng BREEZE_PROFILE_SYMLINK_COUNT ing ndhuwur.
Default kanggo "5".
3.3 Aplikasi nelusuri ing host remot
Breeze TraceOnly saiki ndhukung aplikasi tracing ing host remot nggunakake bsub, batch, run, qsub, rsh, batch, run, lan ssh.
Program jejak awal. script sh bisa diajukake kanggo schedulers proyek didhukung kayata sub utawa sub langsung anggere instalasi Breeze TraceOnly kasedhiya liwat path padha ing kabeh kelenjar inang remot bisa.
Kajaba iku, yen program sing dilacak nganggo printah ing host eksekusi anyar liwat salah sawijining prentah sing didhukung, Breeze
Tracey bakal nyoba nulis maneh printah kasebut supaya tugas iki uga bisa dilacak. Direktori output sing digunakake kanggo printah ing host remot bakal digawe ing direktori output sing ditemtokake dening pilihan -f dhisikan, mulane kudu kasedhiya ing kabeh simpul host remot, lan jenenge:
/remot jejak- -
Kajaba iku, yen printah kasebut diajukake minangka bagean saka larik proyek, indeks array proyek sing dilacak bakal ditambahake menehi spesifikasi direktori output lengkap /remot jejak- - -
3.4 Watesan
Kanggo nglacak printah senyawa kayata command1 && command2 utawa pipeline kayata command1 | command2, sampeyan kudu ngutip printah kanggo nyegah cangkang saka interpretasi command1 minangka argumentasi kanggo trace-program. sh lan piping output menyang command2. Kanggo example:
$ ./trace-program.sh -f "dhawuh 1 | perintah2"
Pilihan liyane yaiku mbungkus kabeh perintah ing cangkang. Kanggo example: $ ./trace-program.sh -f ; sh -c \ cd / aplikasi; ./io_command | dhawuh2
Wigati dicathet yen Breeze TraceOnly ora bakal kanthi otomatis ndeteksi printah senyawa nalika nulis maneh kiriman proyek menyang host remot.
Utawa, sampeyan bisa sumber trace-program.sh, nglakokake perintah sing pengin dilacak lan metu saka cangkang:
$ . ./trace-program.sh -f
$cd /aplikasi
$ ./io_command | dhawuh2
$a metu
3.5 Nelusuri memori-peta files
Nalika nelusuri aplikasi sing peta files menyang memori karo mmap, Breeze nglacak operasi map dhisikan yen wis digawe dening a file.
Sembarang operasi sakteruse ing wilayah memori dhewe ora dilacak. Kanggo example, nalika aplikasi nelpon peta, Breeze bakal nglacak operasi maca / nulis kanggo file ing pitakonan. Yen aplikasi banjur maca / nulis menyang area memori, Breeze ora bakal nglacak operasi I / O memori.
Yen aplikasi nelpon peta kanthi gendera MAP_ANONYMOUS (yaiku, pemetaan ora didhukung dening sembarang file), Breeze ora bakal nglacak operasi peta. Breeze uga ora nglacak operasi munmap, sing mbusak pemetaan sing wis ana.
Mbusak informasi rahasia saka output tilak
Bisa uga nalika nglacak aplikasi Breeze TraceOnly bisa uga wis njupuk informasi sing ora pengin dituduhake karo tim sing bakal nganalisa output jejak kayata rahasia. file jeneng.
Kanthi gawan Breeze, TraceOnly nggawe binar files minangka iki luwih spasi-efisien, Nanging, iku bisa kanggo ngowahi output binar iki menyang teks biasa nggunakake decode-trace. sh script sing bisa ditemokake ing direktori tingkat paling dhuwur saka instalasi.
Skrip njupuk rong paramèter: $ ./decode-trace.sh
Ing kudu dadi direktori output Breeze TraceOnly. Iki bakal dadi direktori sing dilewati minangka pilihan -f menyang program trace. printah sh utawa direktori tilak digawe minangka asil saka mbukak printah ing host remot (kaya diterangake ing bagean Tracing aplikasi ing sarwa dumadi remot ndhuwur).
Kabeh strings, jeneng, lan variabel ing tilak kadhaptar ing file disebut strings ing tingkat ndhuwur struktur direktori tilak decoded. Iki file bisa diowahi nganggo teks biasa wae file editor sing ngidini pangguna ngganti nilai rahasia.
Sawise kabeh data rahasia wis dianyari, versi teks kosong saka jejak bisa dikirim menyang tim sing bakal nganalisa tilak ing panggonan output binar asli.
Dokumen / Sumber Daya
![]() |
breeze Alat HPC Digunakake kanggo Ngatasi Penyebaran [pdf] Manual pangguna Alat HPC Digunakake kanggo Ngatasi Penyebaran |