
私はサーバーを稼働させており、VGA に接続された画面でサーバーにアクセスできるようにしたいと考えています (非常にまれですが、ほとんどの場合、SSH 経由でアクセスします)。そのため、PCI-e グラフィック カードを接続し、VGA ケーブルを取り外しました。グラフィック カードは受動的に冷却されており、ケースを開けて冷たい本体に触れると、顕著な熱を感じ、エネルギーを消費していることがわかります (近くに熱エネルギーを何らかの方法で伝達できる消費者はいません)。
カードを抜くと(使用していないグラフィック カードを無効にする必要がありますか?) 画面を接続するたびに、それを組み込む必要があります。エネルギー消費と同様に、それを避けたいと思います。
無効化と再有効化は OS レベル (SSH 経由など) で行う必要があります。そうしないと、UEFI を構成するための画面が必要になり (または、他に選択肢がない盲目的に行う)、鶏が先か卵が先かという問題に遭遇することになります。
私は Linux 4.0.2 で Ubuntu 15.04 を使用しています。グラフィック カードには XFX HD 5450 850M というラベルが付いており、VGA、HDMI、D-SUB コネクタが付いています。マザーボードは統合グラフィックのない ASRock X99-Extreme です。
編集:ブラックリストに登録した後、sudo lspci -v
(以下の@WhimsicalWombatの有望な回答に従って)リストされているモジュールを使用しました(私の場合はmodprobe.blacklist=module_to_blacklist
カーネルパラメータを使用する必要がありました -https://askubuntu.com/questions/110341/how-to-blacklist-kernel-modules詳細については、radeon
およびを参照してくださいsnd_hda_intel
。PCIeグラフィックカードはまだ熱くなります(パッシブクーラーの温度が60度を超えており、近くに熱源がない)。デバイスにはモジュールがリストされていません。デバイスのlspci -v
出力はlspci -v
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cedar [Radeon HD 5000/6000/7350/8350 Series] (prog-if 00 [VGA controll
er])
Subsystem: XFX Pine Group Inc. Device 303e
Physical Slot: 4
Flags: bus master, fast devsel, latency 0, IRQ 11
Memory at e0000000 (64-bit, prefetchable) [size=256M]
Memory at fbe20000 (64-bit, non-prefetchable) [size=128K]
I/O ports at e000 [size=256]
Expansion ROM at fbe00000 [disabled] [size=128K]
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Cedar HDMI Audio [Radeon HD 5400/6300 Series]
Subsystem: XFX Pine Group Inc. Device aa68
Physical Slot: 4
Flags: bus master, fast devsel, latency 0, IRQ 10
Memory at fbe40000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting
編集2:https://askubuntu.com/a/138953/173287を実行するように提案されており、にリストされているスロットの番号はありecho 0 > /sys/bus/pci/slots/$N/power
ますが、ファイルがありません。/sys/bus/pci/slots/$N
$N
lspci -v
power
編集3: のmodaliasesをカーネルパラメータ/sys/bus/pci/devices/[device]/modalias
に追加してもmodprobe.blacklist=
、Ubuntuのメインラインカーネルには影響しません。http://kernel.ubuntu.com/~kernel-ppa/mainline/また、すべての PCI オプションを有効にしたカスタム 4.0.5 ビルドでは、make localmodconfig
グラフィック カードがまだ加熱している間、「initramfs [バージョン] をロードしています」画面がずっと表示されたままになります。
答え1
最も簡単な方法
最も簡単な方法は、カーネル モジュールをブラックリストに登録してアンロードすることです。まず次のコマンドでバス番号を確認すると、現在のモジュールを確認できます。
sudo lspci | egrep -i "(vga|video)"
のような番号の最初のフィールドに注意してください01:00.0
。次に、使用中のモジュールを表示します。
sudo lspci -vs 01:00 | grep modules
HDMI 対応デバイスの場合、通常、HDMI オーディオ デバイスである 01:00.1 のようなサブデバイスがあります。これもブラックリストに追加します。
/etc/modprobe.d/blacklist または blacklist.conf の両方に、blacklist コマンドを先頭に追加します。たとえば、「blacklist radeon」や「blacklist "snd-hda-intel"」などです。
デバイスを使用したい場合は、sudo modprobe [module name]
有効にするだけです。
カスタム方法
それでも十分でない場合、または実際に使用しているGPU(内蔵または2番目のアダプタ)に同じモジュールを使用している場合は、無効にしたいものをpci-stub
ドライバにバインドします。これを行う最良の方法は、起動時にカーネルコマンドラインから行うことです。
pcistub="pci-stub.ids=<vendorID:deviceID>"
vendorID:deviceID
見つけられるコードに置き換える
lspci -nns <your bus number from above e.g. 01:00>
pcistub="pci-stub.ids=1002:6718,1002:aa80"
pcistub にバインドした後にこれを使用したい場合は、sysfs 経由でバインドを解除し、選択したドライバーに再バインドするか、(より簡単な方法として) 再起動してコマンドラインなしで起動することができます。
可能であれば、まずはモジュールの自動ロードを無効にするだけで十分かどうか試してみます。
編集:
ドライバーをブラックリストに登録した場合、カーネルが次に利用可能なドライバーを試す可能性があります。その場合、必要でない限り、そのドライバーもブラックリストに登録できます。互換性のあるドライバーがすぐになくなり、デバイスはドライバーなしの状態になり、電源がオフ (または少なくとも低) になります。
カーネル ドライバーを使用していないのに発熱している場合は、投稿を更新してください。そのことをぜひお聞かせください。