Meratakan Kehausan Diuruskan Perisian Untuk Memori Utama Tidak Meruap Bahagian 2

Aug 06, 2024

Kelas sistem yang dipertimbangkan biasanya menyediakan banyak ciri yang juga tersedia dalam komputer desktop biasa. Sebagai contoh, MMU yang lengkap dan memori maya sering digunakan untuk mengasingkan ruang alamat beberapa tugas antara satu sama lain atau untuk menyekat akses perkakasan.

Memori maya adalah salah satu konsep terpenting dalam sistem pengendalian komputer. Ia membenarkan komputer menggunakan ruang cakera keras sebagai memori lanjutan supaya atur cara yang lebih besar masih boleh dilaksanakan apabila ingatan tidak mencukupi. Memori maya berkait rapat dengan ingatan komputer.

Memori komputer adalah terhad. Jika kita tidak mempunyai mekanisme seperti ingatan maya, maka apabila ingatan tidak mencukupi, kita hanya boleh melepaskan pelaksanaan program atau memaksa beberapa aplikasi ditutup. Kemunculan memori maya telah banyak mengurangkan masalah ini. Melalui ruang memori yang disediakan oleh memori maya, komputer boleh memindahkan bahagian yang tidak digunakan dari memori ke cakera keras mengikut peraturan tertentu. Dengan cara ini, komputer boleh mengembangkan memori yang akan digunakan tanpa meningkatkan memori fizikal, membolehkan kita terus menggunakan lebih banyak program yang lebih besar.

Mekanisme ini memberikan kami kemudahan yang hebat. Kita tidak perlu terlalu mengambil berat tentang perkakasan komputer kita. Selagi kita menjalankan program dalam had memori maya, walaupun memori fizikal kita sangat kecil, komputer kita boleh menjalankan pelbagai program yang berbeza, dan tidak perlu risau tentang limpahan memori dan masalah lain.

Boleh dikatakan pengembangan memori dalam komputer amat diperlukan. Memori maya memberikan kita penyelesaian yang lebih baik. Pada masa yang sama, ia juga membolehkan kami menggunakan peranti lain dengan lebih baik seperti cakera keras, dan memanfaatkan sepenuhnya potensi komputer. Tidak dinafikan bahawa hubungan antara memori maya dan memori tidak dapat dipisahkan. Kemunculan memori maya memberi kita kemungkinan untuk menggunakan lebih banyak perkakasan komputer tanpa mengorbankan kecekapan pengendalian komputer. Dapat dilihat bahawa kita perlu meningkatkan daya ingatan. Cistanche boleh meningkatkan ingatan dengan ketara kerana ia mempunyai kesan antioksidan, anti-radang dan anti-penuaan, yang boleh membantu mengurangkan pengoksidaan dan tindak balas keradangan dalam otak, dengan itu melindungi kesihatan sistem saraf. Selain itu, Cistanche juga boleh menggalakkan pertumbuhan dan pembaikan sel saraf, dengan itu meningkatkan ketersambungan dan fungsi rangkaian saraf. Kesan ini boleh membantu meningkatkan ingatan, keupayaan pembelajaran, dan kelajuan berfikir, dan juga boleh mencegah berlakunya disfungsi kognitif dan penyakit neurodegeneratif.

improve short term memory

Klik tahu cara untuk meningkatkan fungsi otak

Walau bagaimanapun, ini tidak membayangkan bahawa hierarki cache penuh adalah mungkin dan berguna. Kekerapan jam sistem ini biasanya ditetapkan kepada beberapa ratus megahertz untuk mengurangkan penggunaan kuasa.

Latensi capaian memori menjadi kurang kritikal di bawah keadaan ini, dan cache tidak akan banyak memperbaiki keadaan tetapi akan menggunakan kawasan cip yang lebih jauh.

Selain itu, untuk menjamin masa pelaksanaan kes terburuk, memori pad awal mungkin diutamakan berbanding cache. Oleh itu, kehausan memori dikurangkan untuk kawasan memori yang diliputi oleh memori pad calar, tetapi tidak untuk kawasan lain.

Kawasan selebihnya ini masih memerlukan mekanisme perataan haus. Dalam artikel ini, kami memberi tumpuan kepada kes terburuk di mana semua kawasan memori memerlukan perataan haus. Disebabkan sebab-sebab yang dinyatakan sebelum ini, sistem sasaran kami terdiri daripada pemproses terbenam dengan MMU penuh, memori maya dan tiada cache. Untuk mengatasi kelemahan jenis ingatan tunggal (cth, jangka hayat NVM atau turun naik SRAM), beberapa sistem melaksanakan seni bina memori hibrid [7].

Untuk sistem ini, lebih daripada satu jenis memori disambungkan ke CPU (cth, FeRAM dan SRAM) dan dipetakan ke ruang alamat CPU. Sistem pengendalian dan aplikasi kemudiannya boleh secara aktif memutuskan kandungan memori yang harus diletakkan di dalam memori yang mana, dengan menyimpannya di kawasan alamat yang sepadan.

Walau bagaimanapun, dalam kerja ini, kami hanya menganggap satu NVM sebagai ingatan utama dalam sistem dan membangunkan penyelesaian anda untuk semua segmen memori yang diperuntukkan kepada ingatan utama ini atas dua sebab.

Pertama, jika terdapat hierarki memori hibrid dengan pelbagai kenangan, mekanisme penyelenggaraan yang sesuai untuk kenangan lain boleh digunakan secara berasingan. Kami kemudiannya masih menyediakan mekanisme perataan haus untuk bahagian NVM.

Kedua, walaupun hierarki memori hibrid tersedia, peruntukan segmen memori mungkin perlu mematuhi beberapa kekangan, yang menjadikan pemetaan sewenang-wenangnya mustahil. Oleh itu, kandungan memori mungkin masih perlu diperuntukkan kepada NVM, yang memakainya dengan cepat. Oursolution menyediakan mekanisme untuk meningkatkan jangka hayat pemetaan segmen memori tertentu.

Oleh kerana kaedah yang dicadangkan kami adalah berasaskan perisian, kaedah tersebut perlu dijalankan dalam lapisan seperti sistem pengendalian untuk mempunyai kawalan istimewa ke atas aplikasi yang sedang berjalan. Walaupun sistem pengendalian penuh mungkin tidak hadir untuk sistem terbenam kecil, lapisan perisian nipis diperlukan untuk mengurus perkakasan, mengawal prosedur permulaan dan mengurus aliran kawalan.

Kaedah kami juga boleh dilaksanakan dalam sistem pengendalian asas. Walaupun kami menumpukan pada kelas sistem sasaran yang diterangkan sepanjang kerja ini, kaedah kami masih boleh digunakan untuk sistem lain dengan pengubahsuaian yang sesuai. Untuk sistem yang lebih besar dengan cache, sebagai contoh, pukulan dan tersasar perlu dibezakan dengan betul kerana yang pertama tidak melemahkan memori tetapi yang terakhir tidak.

3.1 Platform Pelaksanaan

Memandangkan kami menilai kaedah yang kami laksanakan berkenaan kualiti perataan haus mereka dalam penilaian, kami menggunakan platform untuk pelaksanaan kami di mana kami boleh mengekstrak umur dengan tepat (iaitu, jumlah bilangan akses setiap sel memori).

improve your memory

Kami menggunakan rangka kerja berasaskan simulasi sistem penuh daripada kerja kami sebelum ini [10]. Rangka kerja ini menjalankan simulator gem5 dalam kombinasi dengan NVMainplugin untuk simulasi NVM dan sistem pengendalian khas, yang membolehkan pemisahan yang tajam antara aplikasi dan memori sistem pengendalian. NVMain mengeluarkan fail surih untuk setiap simulasi yang mengandungi maklumat tepat tentang setiap akses memori (iaitu, akses baca dan tulis).

Kemudian dalam kerja ini, kami menerangkan pelaksanaan strategi perataan haus kami. Kami melaksanakan strategi ini untuk sistem pengendalian logam kosong, berjalan dalam rangka kerja simulasi juga. Oleh itu, kami boleh menilai secara langsung algoritma kami dalam simulasi sistem penuh yang realistik dan tidak bergantung pada sebarang anggaran peringkat tinggi dengan menganalisis jejak capaian memori yang terhasil daripada simulasi dengan meratakan haus yang didayakan.

Kami selanjutnya menggunakan semula aplikasi penanda aras [10], kerana kod itu tersedia secara langsung dengan rangka kerja simulasi. Namun begitu, teknik perataan haus kami adalah bebas daripada seni bina CPU, dan pelaksanaan serta penilaian konkrit dilakukan untuk pemproses aplikasi 64-bit (ARMv8) berasaskan ARM disebabkan oleh simulator memori [10].

Ambil perhatian bahawa pelaksanaan konkrit pada seni bina CPU tertentu memerlukan beberapa butiran pelaksanaan khusus, yang juga dinyatakan dalam artikel ini. Butiran ini, walau bagaimanapun, boleh dilaksanakan semula pada seni bina CPU yang lain.

4 ANALISIS MASALAH

Untuk menggambarkan keperluan untuk meratakan haus dan untuk mewajarkan perataan haus untuk kawasan tertentu, kami menganalisis gelagat capaian memori bagi satu set aplikasi penanda aras dalam bahagian ini dan membincangkan pengaruh pada hayat memori. Aplikasi penanda aras dibentangkan secara terperinci dalam perkara berikut:

• Dijkstra ialah sebahagian daripada suite MiBench [8] dan mengira laluan terpendek dalam graf mengikut algoritma Dijkstra. Keistimewaan penanda aras ini ialah langkah-langkah algoritma diuruskan dalam baris gilir, yang disimpan dalam segmen data.

• menyelesaikan adalah sebahagian daripada persediaan simulasi NVM [10] dan menyelesaikan sistem persamaan linear mengikut algoritma penyingkiran Gaussian. Penanda aras ini secara langsung mengubah suai data inputnya.

• dia juga merupakan sebahagian daripada suite MiBench [8] dan mengira cincang SHA-1 data input yang diberikan.

• qsort ialah sebahagian daripada persediaan simulasi NVM [10] dan merupakan pelaksanaan rekursif algoritma thequicksort. Oleh itu, bukan sahaja data input diubah suai, tetapi segmen tindanan juga digunakan secara intensif.

• rijndael ialah sebahagian daripada suite keselamatan MiBench [8] dan menyulitkan data input yang diberikan dengan algoritmaRijndael. Untuk penanda aras ini, input tidak dibaca daripada fail tetapi dibaca dari kawasan dalam segmen data itu sendiri.

• crc32 juga merupakan sebahagian daripada suite keselamatan MiBench [8] dan mengira jumlah semak crc pada data input yang diberikan

increase brain power

Memandangkan kami menyasarkan dua senario berbeza-baca-musnah dan bukan-baca-musnah NVMsystems-kami menganalisis kedua-dua situasi. Untuk sistem NVM bukan baca-musnah, kami menyiasat jumlah bilangan akses tulis bagi setiap sel memori, dan untuk sistem NVM musnah baca, kami menyiasat bilangan terkumpul akses baca dan tulis setiap sel memori. Kami melaksanakan aplikasi penanda aras seperti yang diterangkan sebelum ini dan menggambarkan corak capaian memori yang terhasil dalam Rajah 1 dan 2.

increase memory power

Kami memerhatikan bahawa akses memori berlaku pada kadar yang berbeza pada sel memori bagi kawasan memori yang berbeza. Secara amnya, walaupun kawasan besar dengan corak akses seragam, titik panas akses padat boleh ditemui.

Titik panas ini mempunyai pengaruh drastik pada hayat ingatan, kerana hanya beberapa sel haus secara intensif, manakala sel lain tidak digunakan sama sekali. Jika akses ini diedarkan dengan lebih baik, jangka hayat akan meningkat secara drastik.

Untuk NVM yang tidak boleh dibaca-memusnahkan (Rajah 1), titik panas tulis padat terutamanya ditemui dalam timbunan, yang berpunca daripada ingatan susunan jalan yang digunakan. Semua kawasan lain menghadapi lebih sedikit titik panas tulis. Untuk NVM yang merosakkan baca, titik panas baca juga boleh ditemui dalam kawasan teks, kerana kod program yang disusun berada di rantau ini dan dibaca semasa pelaksanaan.

improving brain function

Secara keseluruhan, kami menyimpulkan dua objektif untuk algoritma perataan haus kami. Pertama, kawasan dengan frekuensi capaian yang berbeza perlu dikesan dengan betul semasa masa jalan dan perlu dipindahkan ke kawasan memori lain, mengikut kekerapan capaian. Kami mencadangkan algoritma perataan haus yang menyedari penuaan kasar untuk memenuhi objektif ini.

Kedua, titik panas akses yang padat perlu diselesaikan dengan cara yang akses tersebar ke kawasan sel memori yang lebih besar. Ini mengurangkan tekanan sel tunggal dan purata kehausan ke kawasan yang lebih besar. Kami mencadangkan dua penyelesaian terperinci untuk mencapai matlamat ini: satu untuk segmen tindanan dan satu lagi untuk segmen teks.

5 PEMAKAIAN BERGRAIN KASAR

Dalam bahagian ini, kami memperincikan cadangan perataan haus berbutir kasar sedar penuaan. Untuk menilai umur sel memori, tingkah laku capaian memori perlu dijejaki. Jika gelagat capaian semasa tidak dapat dijejaki oleh perkakasan dan tiada jejak memori diketahui untuk aplikasi yang sedang berjalan, teknik menyedari penuaan tidak boleh digunakan secara lalai.

Untuk mengatasi isu ini, kami mula-mula mencadangkan teknik penghampiran akses-pengedaran terurus perisian, yang menganggarkan pengagihan akses memori (iaitu, kiraan tulis dan baca kepada kawasan memori saiz tetap) menggunakan hanya sokongan perkakasan yang biasa tersedia (iaitu, MMU, pembilang prestasi. , dan gangguan).

Anggaran capaian ini dilaksanakan sebagai perkhidmatan sistem dalam persekitaran masa jalan (cth, sistem pengendalian). Anggaran pengagihan akses kemudiannya boleh disediakan sebagai input kepada algoritma perataan haus yang sedar penuaan.

5.1 Persampelan Akses Tulis

Seperti yang telah diperkenalkan, langkah pertama ke arah perataan haus berbutir kasar yang diuruskan perisian ialah anggaran yang sesuai bagi pengagihan akses memori. Walaupun menangkap anggaran ini untuk akses tulis dan baca kebanyakannya serupa, kami membentangkan penangkapan anggaran tulis secara terperinci terlebih dahulu. Selepas itu, kami menghuraikan langkah tambahan yang diperlukan untuk menangkap anggaran bacaan.

Beberapa langkah diperlukan untuk merekodkan anggaran taburan tulis aplikasi pada masa jalan. Pertama, kami menjarakkan sampel setiap sampel tulisan akses tulis alamat sasaran capturedits aplikasi dan menyimpannya dalam struktur data yang sesuai.

Nombor Cwritesample menentukan kebutiran temporal teknik penghampiran, membenarkan pertukaran antara ketepatan dan overhed yang diperkenalkan. Selepas menangkap penulisan, butiran spatial struktur data perlu dipertimbangkan juga.

Menyimpan anggaran kiraan tulis untuk setiap bait memperkenalkan overhed storan besar dan membawa kepada hasil yang tidak tepat apabila butiran temporal adalah kasar. Sebaliknya, bait boleh dikaitkan dengan blok memori yang lebih besar dan kiraan tulis diagregatkan untuk setiap akses tulis ke dalam blok ini. Untuk pelaksanaan kami, kami mengagregatkan kiraan tulis untuk sekatan memori 4-kB, kerana algoritma perataan haus mempertimbangkan kebutiran ini (iaitu, keputusan adalah berdasarkan halaman memori).

Menggunakan pembilang bait 8-untuk setiap blok, 1512 · bait saiz memori diperlukan untuk menyimpan pengagihan tulis yang dianggarkan (cth, 2 MB apabila 1 GB memori utama dijejaki).

Aliran terperinci untuk menangkap sasaran setiap Cwritesample dan akses tulis memori memerlukan dua teknik untuk dilaksanakan. Pertama, perangkap perlu dijana selepas setiap Cwritesample melalui akses tulis, dan dengan itu pelaksanaan anggaran boleh mengambil tindakan. Selepas itu, sasaran capaian memori tulis perlu ditentukan dan disimpan dalam struktur data.

Kedua-dua pelaksanaan dinyatakan secara terperinci kemudiannya. Walaupun pendekatan oleh Gogte et al. [6] membenarkan penangkapan terus permintaan CPUwrite pada selang sampel, pendekatan mereka bergantung pada keupayaan penyahpepijatan khusus.

Ourmethod menyediakan alternatif yang menggunakan ciri perkakasan yang lebih meluas. Vogland Eckert [21] mencadangkan untuk menggunakan pembilang prestasi untuk menganalisis secara khusus pelaksanaan arahan sesuatu aplikasi. Kami juga menggunakan pembilang prestasi untuk menganalisis penggunaan memori aplikasi, sebaliknya, seperti yang diterangkan dalam berikut.

supplements to boost memory


For more information:1950477648nn@gmail.com

Anda mungkin juga berminat