가장 쉬운 방법

가장 쉬운 방법

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자세한 내용은 radeonsnd_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$Nlspci -vpower

편집 3: 커널 매개변수에 모달리어스를 추가해도 /sys/bus/pci/devices/[device]/modaliasUbuntu modprobe.blacklist=메인라인 커널에는 영향을 미치지 않습니다.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과 같은 하위 장치가 있습니다. 그것도 블랙리스트에 올리세요.

blacklist 명령 앞에 /etc/modprobe.d/blacklist 또는 blacklist.conf를 모두 추가하십시오. 예를 들어 "블랙리스트 라데온" 및 "블랙리스트 "snd-hda-intel" 등.

장치를 사용하려면 sudo modprobe [module name]활성화하기만 하면 됩니다.

맞춤형 방식

그것이 충분하지 않거나 실제로 사용하는 GPU(통합 또는 두 번째 어댑터)에 동일한 모듈을 사용하는 경우 비활성화하려는 모듈을 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를 통해 바인딩을 해제하고 원하는 드라이버에 다시 바인딩하거나 (더 간단하게) 재부팅하고 명령줄 없이 부팅할 수 있습니다.

가능하다면 모듈 자동 로드를 비활성화하는 것만으로도 충분하다면 먼저 시도하겠습니다.

편집하다:

블랙리스트에 추가하면 커널이 사용 가능한 다음 드라이버를 시도할 가능성이 있습니다. 그렇다면 필요하지 않은 한 블랙리스트에 추가할 수도 있습니다. 곧 호환되는 드라이버가 부족해지고 드라이버 없이 장치를 남겨두므로 전원을 꺼야 합니다(또는 최소한 낮음).

커널 드라이버를 사용하지 않아도 뜨거워지면 게시물을 업데이트해주세요. 그 말을 듣고 싶습니다.

관련 정보