Libmsr tidak lagi dipertahankan secara aktif - libmsr telah berevolusi menjadi variorum, yang dapat ditemukan di github: https://github.com/llnl/variorum.
Selamat datang di LIBMSR, antarmuka yang ramah (baik, lebih ramah) untuk banyak register model khusus dalam prosesor Intel. Sekarang dengan dukungan register konfigurasi PCI untuk beberapa perangkat keras Intel.
Versi 0.3.1
Penting
Libmsr tidak lagi dikembangkan secara aktif. Variorum https://variorum.readthedocs.io/ adalah evolusi dan penerus libmsr. Variorum dapat ditemukan di github:
https://github.com/llnl/variorum
24 Maret 2020
http://software.llnl.gov/libmsr
https://github.com/llnl/libmsr
LibMSR menyediakan antarmuka untuk mengakses register model spesifik (MSR) pada platform Intel, yang menyediakan fungsionalitas istimewa untuk memantau dan mengendalikan berbagai fitur CPU.
Instalasi sederhana. Anda akan membutuhkan CMake versi 2.8 atau lebih tinggi dan GCC. Dalam kebanyakan kasus, instalasi adalah sebagai berikut:
$ cmake . -DCMAKE_INSTALL_PREFIX=${HOME}/build/libmsr
$ make
$ make install
Instalasi tergantung pada file master.h , yang mendefinisikan offset untuk beberapa MSR yang diberikan arsitektur tertentu (misalnya, Sandy Bridge, Ivy Bridge, Haswell, dll.). Alat konfigurasi otomatis dapat dipaksa untuk menggunakan file header arsitektur tertentu atau dapat mendeteksi arsitektur secara otomatis. Untuk menentukan arsitektur tertentu, jalankan cmake dengan opsi -DLIBMSR_TARGET_ARCH=<ARG> di mana ARG berada di hexadecimal. Di masa depan, kami berencana untuk memiliki satu set file konfigurasi spesifik arsitektur yang dapat dimuat sebelumnya ke CMake untuk mengisi cache.
Arsitektur yang saat ini didukung adalah Intel Xeon V1-3 (Sandy Bridge, Ivy Bridge, dan Haswell Server Processors). Perpustakaan secara teknis mendukung semua prosesor berdasarkan arsitektur ini, tetapi beberapa fitur mungkin hilang dari produk klien. Menggunakan file header yang salah cenderung menyebabkan masalah.
Arsitektur yang didukung:
2D (Sandy Bridge) 57 (Knights Landing)
3E (Ivy Bridge)
3F (Haswell)
4F (Broadwell)
55 (Skylake)*
Jika Anda tidak yakin dengan nomor arsitektur Anda, periksa bidang "Model" di lscpu atau /proc/cpuinfo (perhatikan bahwa itu tidak akan ada di heksadesimal).
*Dukungan Skylake saat ini eksperimental dan membutuhkan lebih banyak pengujian/validasi.
Perangkat lunak ini tergantung pada file /dev/cpu/*/msr yang hadir. Kernel baru -baru ini membutuhkan kemampuan tambahan. Kami merasa lebih mudah untuk menggunakan modul kernel MSR-Safe kami sendiri dengan izin R/W, tetapi berjalan sebagai root (atau melalui repot-repot menambahkan kemampuan ke binari) adalah pilihan lain.
Jika Anda memerlukan dukungan PCI Configuration Register (CSR) di LIBMSR, Anda harus menginstal CSR-Safe. Kode ini saat ini tidak ada di GitHub - Anda harus memintanya.
Hubungi msr_init() sebelum menggunakan salah satu API.
Untuk kode sampel, lihat libmsr_test.c di test/ direktori.
Dokumentasi kami yang paling mutakhir untuk LIBMSR dapat dihasilkan dengan make doc dan make latex_doc untuk versi HTML dan PDF, masing-masing. Ada juga beberapa file PDF yang berguna di documentation/ direktori.
Barry Rountree, Pimpinan Proyek, [email protected]
Stephanie Brink, pengembang, [email protected]
Silakan menghubungi pengembang dengan pertanyaan atau umpan balik.
Kami mengumpulkan nama -nama mereka yang sebelumnya berkontribusi pada LIBMSR selama bertahun -tahun. Lihat daftar saat ini di file AUTHORS . Silakan hubungi pengembang agar nama Anda ditambahkan ke daftar.
LIBMSR dirilis di bawah lisensi GPLV2.1. Untuk detail lebih lanjut, lihat file lisensi.
LLNL-CODE-645430