Link PCI Express tidak harus tetap berada pada state elektrik yang sepenuhnya aktif ketika tidak ada trafik yang bergerak. Active State Power Management, yang umum disingkat ASPM, memungkinkan pasangan link yang kompatibel menempatkan link ke state berdaya lebih rendah selama periode idle.

Tradeoff praktisnya sederhana: state idle yang lebih dalam dapat menghemat lebih banyak daya, tetapi kembali ke operasi aktif membutuhkan waktu. Exit delay tersebut menjadi bagian dari latency yang terlihat ketika trafik baru datang.

ASPM bekerja pada link PCIe antara dua komponen. Mekanisme ini terpisah dari device-specific power state, meskipun platform dapat menggunakan keduanya sebagai bagian dari kebijakan daya yang lebih luas.

Transfer packet normal berlangsung pada link state L0. Link aktif dan siap membawa Transaction Layer Packet tanpa tahap keluar dari low-power state sebelum transfer.

Mempertahankan link di L0 berguna ketika trafik sering datang atau latency menjadi prioritas. Namun, lebih banyak circuitry link tetap aktif sehingga daya tetap dikonsumsi bahkan selama jeda antar-transfer.

Desktop dengan anggaran daya dan pendinginan yang longgar mungkin tidak terlalu menekankan penghematan daya link yang agresif. Notebook, tablet, atau sistem ringkas dapat memperoleh manfaat lebih besar dari pengurangan konsumsi daya idle pada beberapa koneksi PCIe.

L0s mengurangi daya dengan jalur kembali yang singkat

L0s adalah low-power state yang dangkal. Transmitter dapat memasukinya setelah link menjadi idle, lalu kembali ke L0 ketika data perlu dipindahkan lagi.

Karena L0s mempertahankan lebih banyak kesiapan link dibanding state yang lebih dalam, pengurangan dayanya lebih terbatas dibanding L1. Exit latency-nya juga umumnya lebih singkat.

Dua arah pada link PCIe dapat memiliki perilaku L0s yang terpisah. Dukungan dan kebijakan bergantung pada device serta konfigurasi platform, bukan pada software yang memilih state untuk setiap packet secara individual.

L1 menempatkan lebih banyak bagian link ke kondisi berdaya rendah. Hal ini menghasilkan pengurangan daya idle yang lebih besar, tetapi membutuhkan lebih banyak pekerjaan sebelum transfer packet normal dapat dilanjutkan.

L1 menarik ketika periode idle cukup panjang untuk menutup biaya transisi. Jika trafik datang dalam burst cepat yang dipisahkan jeda sangat singkat, perubahan state berulang dapat menambah latency tanpa memberikan cukup waktu yang berguna di low-power state.

Fitur power management PCIe yang lebih baru dapat memperluas L1 dengan sub-state yang mematikan circuitry tambahan. Mode tersebut dapat semakin mengurangi konsumsi idle, sementara perilaku entry dan exit-nya menjadi semakin penting bagi desain platform.

Exit latency muncul ketika trafik kembali berjalan

Link berdaya rendah tidak dapat mentransfer trafik biasa sampai kembali ke state aktif. Transisi wake karena itu menambahkan delay pada transfer pertama setelah interval idle.

Untuk storage, networking, graphics, dan accelerator device, efek yang terlihat bergantung pada timing workload. Transfer besar yang berlangsung terus-menerus menghabiskan sebagian besar waktu dengan link aktif, sehingga exit delay sesekali dapat diabaikan. Transaksi singkat yang sensitif terhadap latency dan dipisahkan oleh periode idle dapat memperlihatkan biaya transisi dengan lebih jelas.

Ini tidak berarti ASPM mengurangi bandwidth PCIe ketika link sedang aktif. Setelah link kembali ke L0, negotiated link width dan signaling rate tetap menentukan kapasitas transport. ASPM terutama mengubah perilaku idle dan transisi kembali ke operasi aktif.

Device power state adalah mekanisme terpisah

Device PCIe juga dapat memiliki device power-management state, yang umum direpresentasikan dengan nama D-state seperti D0 dan D3. State ini menjelaskan kondisi daya device, bukan active state dari link PCIe itu sendiri.

Sebuah device karena itu dapat menggunakan kontrol daya tingkat link dan tingkat device secara bersamaan. Operating system, firmware, driver, dan kemampuan hardware memengaruhi kombinasi mana yang diizinkan.

Perbedaan ini penting saat troubleshooting. Delay ketika device kembali dari device state yang dalam tidak otomatis merupakan delay ASPM. Demikian pula, menonaktifkan fitur sleep pada device tidak selalu memaksa link PCIe-nya tetap berada di L0.

Firmware platform dan operating system membentuk kebijakan

Kedua ujung link harus mengiklankan capability yang kompatibel sebelum ASPM state tertentu dapat digunakan dengan aman. Firmware platform juga mendeskripsikan topologi hardware dan dapat memengaruhi konfigurasi awal.

Operating system dapat menerapkan kebijakan dayanya sendiri setelah boot. Profil yang berorientasi pada performa dapat mengutamakan respons lebih cepat, sedangkan profil hemat energi dapat mengizinkan idle state yang lebih agresif. Kontrol persisnya berbeda antar-operating system, implementasi firmware, dan device driver.

Hardware quirk juga berpengaruh. Beberapa kombinasi device atau platform memiliki perilaku low-power yang bermasalah, sehingga firmware atau kode operating system dapat membatasi state tertentu untuk menjaga reliability.

Mengukur efeknya membutuhkan workload yang tepat

Benchmark throughput berkelanjutan merupakan pengujian yang buruk untuk biaya exit ASPM karena link tetap sibuk hampir sepanjang pengujian. Workload dengan interval idle berulang dan transaksi singkat lebih mungkin memperlihatkan tambahan wake latency.

Pengukuran daya juga membutuhkan waktu idle yang cukup agar residency di low-power state memberikan dampak. Sistem yang terus menghasilkan background I/O mungkin jarang membiarkan link idle cukup lama untuk memperoleh manfaat berarti dari state yang lebih dalam.

Perbandingan yang berguna karena itu bergantung pada workload. Ukur konsumsi energi dan response latency dengan pola trafik yang sama. Pengaturan yang menghemat daya secara terukur pada sistem portable yang sebagian besar idle mungkin hanya memberi sedikit manfaat pada workstation yang terus sibuk.

Tradeoff-nya adalah energi idle versus waktu respons

ASPM mengurangi daya link PCIe dengan memungkinkan link yang idle meninggalkan state L0 yang sepenuhnya aktif. State dangkal kembali dengan cepat dan menghemat lebih sedikit daya. State yang lebih dalam dapat menghemat lebih banyak energi, tetapi menambah transition latency ketika trafik kembali berjalan.

Fitur ini paling efektif ketika link memiliki periode idle yang cukup panjang untuk memanfaatkan low-power residency. Link yang terus aktif hanya memiliki sedikit waktu idle untuk dimanfaatkan. Pada link dengan trafik bursty, kebijakan platform menentukan apakah pengurangan energi sepadan dengan tambahan wake delay.