2018年5月21更新
對(duì)于交火顯卡,什么是交火顯卡,即lspci 出來(lái)的有3D nvidia xxx字樣,那就是交火顯卡,這類顯卡用于Linux 是不恰當(dāng)?shù)摹kp顯驅(qū)動(dòng)太坑,對(duì)于此類顯卡最穩(wěn)的辦法是在bios 里屏蔽獨(dú)顯,假定bios 提供了這個(gè)選項(xiàng)。其次,受黑蘋果啟發(fā),用四葉草替換grub 配置dsdt 以屏蔽獨(dú)顯,此發(fā)略微復(fù)雜。假如一定要用獨(dú)顯,唯一可行的就是大黃蜂,大黃蜂才能真正停用獨(dú)顯,徹底改善續(xù)航。
結(jié)束
硬件
CPU:6700HQ (skylake)
GPU:GTX960m Intel HD530
硬盤:ssd+機(jī)械
內(nèi)存:8G單條
安裝Ubuntu16.04
安裝方式:光盤鏡像USB安裝 過(guò)程略(教程比比皆是)
遇到的問(wèn)題:
1.顯卡驅(qū)動(dòng)
表現(xiàn):1.卡在開機(jī)紫屏? 2.不能關(guān)機(jī) 不能休眠3.異常的分辨率4文本模式卡死
解決方式:開機(jī)時(shí)grub添加nomodeset,添加在哪,還請(qǐng)問(wèn)度娘。其目的為屏蔽掉顯示驅(qū)動(dòng)程序。開機(jī)后從附加驅(qū)動(dòng)中添加專用驅(qū)動(dòng)必須包括,n卡的專用驅(qū)動(dòng)。Intel微代碼為可選(我添加了),等待安裝完成,之后重啟。重啟后應(yīng)該可以正常開機(jī)且不會(huì)卡在紫色屏幕。此時(shí)使用的是n卡,詳見(jiàn)應(yīng)用nvidia Xserver settings應(yīng)用。打開nvidia Xserver settings,找到prime profiles切換到核顯,對(duì)于筆記本而言功耗時(shí)非常重要的,注銷后切換生效。此刻遇到關(guān)鍵問(wèn)題,關(guān)機(jī)卡死。這是不是n卡的鍋,而是內(nèi)核的鍋。如果使用Ctrl+ ALT+F1等切換文本,屏幕會(huì)冒出^@,按大寫字母鎖定鍵會(huì)產(chǎn)生奇跡。這都是內(nèi)核的鍋。強(qiáng)制關(guān)機(jī)后重啟,grub菜單選擇Ubuntu高級(jí)選項(xiàng),使用4.4內(nèi)核啟動(dòng)。啟動(dòng)后完美, 卸載其他多余內(nèi)核,或更改首選內(nèi)核(具體問(wèn)度娘)。至此顯卡問(wèn)題結(jié)束。
帶來(lái)的問(wèn)題:藍(lán)牙連接手機(jī)后,不能使用手機(jī)控制音樂(lè)音量(電腦當(dāng)音響用)
2.功耗
表現(xiàn):硬盤不休息,風(fēng)扇狂轉(zhuǎn)
解決方式:安裝tlp,建議使用其他ppa安裝,版本最新版0(截止2018年2月,最新版為1.1.1)。默認(rèn)的tlp能有效的降低功耗,在此奉上我的tlp配置。注意,不同的硬件需要個(gè)性化修改。英文說(shuō)明已將用法說(shuō)明的很明了了。
#------------------------------------------------------------------------------
# tlp - Parameters for power saving
# See full explanation: http://linrunner.de/en/tlp/docs/tlp-configuration.html
# Hint: some features are disabled by default, remove the
leading # to enable
# them.
# Set to 0 to disable, 1 to enable TLP.
TLP_ENABLE=1
# Operation mode when no power supply can be detected: AC, BAT.
# Concerns some desktop and embedded hardware only.
TLP_DEFAULT_MODE=AC
# Operation mode select: 0=depend on power source, 1=always
use TLP_DEFAULT_MODE
# Hint: use in conjunction with TLP_DEFAULT_MODE=BAT for BAT
settings on AC.
TLP_PERSISTENT_DEFAULT=0
# Seconds laptop mode has to wait after the disk goes idle
before doing a sync.
# Non-zero value enables, zero disables laptop mode.
DISK_IDLE_SECS_ON_AC=0
DISK_IDLE_SECS_ON_BAT=2
# Dirty page values (timeouts in secs).
MAX_LOST_WORK_SECS_ON_AC=15
MAX_LOST_WORK_SECS_ON_BAT=60
# Hint: CPU parameters below are disabled by default, remove
the leading #
# to enable them, otherwise kernel default values are used.
# Select a CPU frequency scaling governor.
# Intel Core i processor with intel_pstate driver:
#? powersave(*),performance.
# Older hardware with acpi-cpufreq driver:
#? ondemand(*),powersave, performance, conservative, schedutil.
# (*) is recommended.
# Hint: use tlp-stat -p to show the active driver and
available governors.
# Important:
#? powersave forintel_pstate and ondemand for acpi-cpufreq are power
#? efficient for*almost all* workloads and therefore kernel and most
#? distributions havechosen them as defaults. If you still want to change,
#? you should knowwhat you're doing! You *must* disable your distribution's
#? governor settingsor conflicts will occur.
CPU_SCALING_GOVERNOR_ON_AC=powersave
CPU_SCALING_GOVERNOR_ON_BAT=powersave
# Set the min/max frequency available for the scaling
governor.
# Possible values strongly depend on your CPU. For available
frequencies see
# the output of tlp-stat -p.
#CPU_SCALING_MIN_FREQ_ON_AC=0
#CPU_SCALING_MAX_FREQ_ON_AC=0
#CPU_SCALING_MIN_FREQ_ON_BAT=0
#CPU_SCALING_MAX_FREQ_ON_BAT=0
# Set energy performance hints (HWP) for Intel P-state
governor:
#? performance,balance_performance, default, balance_power, power
# Values are given in order of increasing power saving.
# Note: Intel Skylake or newer CPU and Kernel >= 4.10
required.
CPU_HWP_ON_AC=balance_performance
CPU_HWP_ON_BAT=power
# Set Intel P-state performance: 0..100 (%).
# Limit the max/min P-state to control the power dissipation
of the CPU.
# Values are stated as a percentage of the available
performance.
# Requires an Intel Core i processor with intel_pstate
driver.
CPU_MIN_PERF_ON_AC=0
CPU_MAX_PERF_ON_AC=100
CPU_MIN_PERF_ON_BAT=0
CPU_MAX_PERF_ON_BAT=10
# Set the CPU "turbo boost" feature: 0=disable,
1=allow
# Requires an Intel Core i processor.
# Important:
# - This may conflict with your distribution's governor
settings
# - A value of 1 does *not* activate boosting, it just allows
it
#CPU_BOOST_ON_AC=1
#CPU_BOOST_ON_BAT=0
# Minimize number of used CPU cores/hyper-threads under light
load conditions:
#? 0=disable,1=enable.
SCHED_POWERSAVE_ON_AC=0
SCHED_POWERSAVE_ON_BAT=1
# Kernel NMI Watchdog:
#? 0=disable (default,saves power), 1=enable (for kernel debugging only).
NMI_WATCHDOG=0
# Change CPU voltages aka "undervolting" - Kernel
with PHC patch required.
# Frequency voltage pairs are written to:
#? /sys/devices/system/cpu/cpu0/cpufreq/phc_controls
# CAUTION: only use this, if you thoroughly understand what
you are doing!
#PHC_CONTROLS="F:V F:V F:V F:V"
# Set CPU performance versus energy savings policy:
#? performance,balance-performance, default, balance-power, power.
# Values are given in order of increasing power saving.
# Requires kernel module msr and x86_energy_perf_policy from
linux-tools.
ENERGY_PERF_POLICY_ON_AC=balance-performance
ENERGY_PERF_POLICY_ON_BAT=power
# Disk devices; separate multiple devices with spaces
(default: sda).
# Devices can be specified by disk ID also (lookup with: tlp
diskid).
DISK_DEVICES="sda sdb"
# Disk advanced power management level: 1..254, 255 (max
saving, min, off).
# Levels 1..127 may spin down the disk; 255 allowable on most
drives.
# Separate values for multiple disks with spaces. Use the
special value 'keep'
# to keep the hardware default for the particular disk.
DISK_APM_LEVEL_ON_AC="keep keep"
DISK_APM_LEVEL_ON_BAT="1 1"
# Hard disk spin down timeout:
#? 0:? ? ? ? spin down disabled
#? 1..240:? timeouts from 5s to 20min (in units of 5s)
#? 241..251: timeoutsfrom 30min to 5.5 hours (in units of 30min)
# See 'man hdparm' for details.
# Separate values for multiple disks with spaces. Use the
special value 'keep'
# to keep the hardware default for the particular disk.
DISK_SPINDOWN_TIMEOUT_ON_AC="240 240"
DISK_SPINDOWN_TIMEOUT_ON_BAT="120 120"
# Select IO scheduler for the disk devices: cfq, deadline,
noop (Default: cfq).
# Separate values for multiple disks with spaces. Use the
special value 'keep'
# to keep the kernel default scheduler for the particular
disk.
#DISK_IOSCHED="cfq cfq"
# AHCI link power management (ALPM) for disk devices:
#? min_power,med_power_with_dipm(*), medium_power, max_performance.
# (*) Kernel >= 4.15 required, then recommended.
# Multiple values separated with spaces are tried
sequentially until success.
SATA_LINKPWR_ON_AC="med_power_with_dipm
max_performance"
SATA_LINKPWR_ON_BAT="med_power_with_dipm min_power"
# Exclude host devices from AHCI link power management.
# Separate multiple hosts with spaces.
#SATA_LINKPWR_BLACKLIST="host1"
# Runtime Power Management for AHCI host and disks devices:
#? on=disable,auto=enable.
# EXPERIMENTAL ** WARNING: auto will most likely cause system
lockups/data loss.
#AHCI_RUNTIME_PM_ON_AC=on
#AHCI_RUNTIME_PM_ON_BAT=on
# Seconds of inactivity before disk is suspended.
AHCI_RUNTIME_PM_TIMEOUT=15
# PCI Express Active State Power Management (PCIe ASPM):
#? default,performance, powersave.
PCIE_ASPM_ON_AC=performance
PCIE_ASPM_ON_BAT=powersave
# Radeon graphics clock speed (profile method): low, mid,
high, auto, default;
# auto = mid on BAT, high on AC; default = use hardware
defaults.
#RADEON_POWER_PROFILE_ON_AC=high
#RADEON_POWER_PROFILE_ON_BAT=low
# Radeon dynamic power management method (DPM): battery,
performance.
#RADEON_DPM_STATE_ON_AC=performance
#RADEON_DPM_STATE_ON_BAT=battery
# Radeon DPM performance level: auto, low, high; auto is
recommended.
#RADEON_DPM_PERF_LEVEL_ON_AC=auto
#RADEON_DPM_PERF_LEVEL_ON_BAT=auto
# WiFi power saving mode: on=enable, off=disable; not
supported by all adapters.
WIFI_PWR_ON_AC=off
WIFI_PWR_ON_BAT=on
# Disable wake on LAN: Y/N.
WOL_DISABLE=Y
# Enable audio power saving for Intel HDA, AC97 devices
(timeout in secs).
# A value of 0 disables, >=1 enables power saving
(recommended: 1).
SOUND_POWER_SAVE_ON_AC=0
SOUND_POWER_SAVE_ON_BAT=1
# Disable controller too (HDA only): Y/N.
SOUND_POWER_SAVE_CONTROLLER=Y
# Power off optical drive in UltraBay/MediaBay: 0=disable,
1=enable.
# Drive can be powered on again by releasing (and
reinserting) the eject lever
# or by pressing the disc eject button on newer models.
# Note: an UltraBay/MediaBay hard disk is never powered off.
BAY_POWEROFF_ON_AC=0
BAY_POWEROFF_ON_BAT=0
# Optical drive device to power off (default sr0).
BAY_DEVICE="sr0"
# Runtime Power Management for PCI(e) bus devices:
on=disable, auto=enable.
RUNTIME_PM_ON_AC=on
RUNTIME_PM_ON_BAT=auto
# Exclude PCI(e) device adresses the following list from
Runtime PM
# (separate with spaces). Use lspci to get the adresses (1st
column).
#RUNTIME_PM_BLACKLIST="bb:dd.f 11:22.3 44:55.6"
# Exclude PCI(e) devices assigned to the listed drivers from
Runtime PM.
# Default when unconfigured is "amdgpu nouveau nvidia
radeon" which
# prevents accidential power-on of dGPU in hybrid graphics
setups.
# Use "" to disable the feature completely.
# Separate multiple drivers with spaces.
#RUNTIME_PM_DRIVER_BLACKLIST="amdgpu nouveau nvidia
radeon"
# Set to 0 to disable, 1 to enable USB autosuspend feature.
USB_AUTOSUSPEND=1
# Exclude listed devices from USB autosuspend (separate with
spaces).
# Use lsusb to get the ids.
# Note: input devices (usbhid) are excluded automatically
#USB_BLACKLIST="1111:2222 3333:4444"
# Bluetooth devices are excluded from USB autosuspend:
#? 0=do not exclude,1=exclude.
USB_BLACKLIST_BTUSB=0
# Phone devices are excluded from USB autosuspend:
#? 0=do not exclude,1=exclude (enable charging).
USB_BLACKLIST_PHONE=0
# Printers are excluded from USB autosuspend:
#? 0=do not exclude,1=exclude.
USB_BLACKLIST_PRINTER=1
# WWAN devices are excluded from USB autosuspend:
#? 0=do not exclude,1=exclude.
USB_BLACKLIST_WWAN=1
# Include listed devices into USB autosuspend even if already
excluded
# by the blacklists above (separate with spaces).
# Use lsusb to get the ids.
#USB_WHITELIST="1111:2222 3333:4444"
# Set to 1 to disable autosuspend before shutdown, 0 to do
nothing
# (workaround for USB devices that cause shutdown problems).
#USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN=1
# Restore radio device state (Bluetooth, WiFi, WWAN) from
previous shutdown
# on system startup: 0=disable, 1=enable.
# Hint: the parameters
DEVICES_TO_DISABLE/ENABLE_ON_STARTUP/SHUTDOWN below
#? are ignored whenthis is enabled!
RESTORE_DEVICE_STATE_ON_STARTUP=0
# Radio devices to disable on startup: bluetooth, wifi, wwan.
# Separate multiple devices with spaces.
#DEVICES_TO_DISABLE_ON_STARTUP="bluetooth wifi
wwan"
# Radio devices to enable on startup: bluetooth, wifi, wwan.
# Separate multiple devices with spaces.
#DEVICES_TO_ENABLE_ON_STARTUP="wifi"
# Radio devices to disable on shutdown: bluetooth, wifi,
wwan.
# (workaround for devices that are blocking shutdown).
#DEVICES_TO_DISABLE_ON_SHUTDOWN="bluetooth wifi
wwan"
# Radio devices to enable on shutdown: bluetooth, wifi, wwan.
# (to prevent other operating systems from missing radios).
#DEVICES_TO_ENABLE_ON_SHUTDOWN="wwan"
# Radio devices to enable on AC: bluetooth, wifi, wwan.
#DEVICES_TO_ENABLE_ON_AC="bluetooth wifi wwan"
# Radio devices to disable on battery: bluetooth, wifi, wwan.
#DEVICES_TO_DISABLE_ON_BAT="bluetooth wifi wwan"
# Radio devices to disable on battery when not in use (not
connected):
#? bluetooth, wifi, wwan.
#DEVICES_TO_DISABLE_ON_BAT_NOT_IN_USE="bluetooth wifi
wwan"
# Battery charge thresholds (ThinkPad only, tp-smapi or
acpi-call kernel module
# required). Charging starts when the remaining capacity
falls below the
# START_CHARGE_THRESH value and stops when exceeding the
STOP_CHARGE_THRESH value.
# Main / Internal battery (values in %)
#START_CHARGE_THRESH_BAT0=75
#STOP_CHARGE_THRESH_BAT0=80
# Ultrabay / Slice / Replaceable battery (values in %)
#START_CHARGE_THRESH_BAT1=75
#STOP_CHARGE_THRESH_BAT1=80
# Restore charge thresholds when AC is unplugged: 0=disable,
1=enable.
#RESTORE_THRESHOLDS_ON_BAT=1
#
------------------------------------------------------------------------------
# tlp-rdw - Parameters for the radio device wizard
# Possible devices: bluetooth, wifi, wwan.
# Hints:
# - Parameters are disabled by default, remove the leading #
to enable them
# - Separate multiple radio devices with spaces
# Radio devices to disable on connect.
#DEVICES_TO_DISABLE_ON_LAN_CONNECT="wifi wwan"
#DEVICES_TO_DISABLE_ON_WIFI_CONNECT="wwan"
#DEVICES_TO_DISABLE_ON_WWAN_CONNECT="wifi"
# Radio devices to enable on disconnect.
#DEVICES_TO_ENABLE_ON_LAN_DISCONNECT="wifi wwan"
#DEVICES_TO_ENABLE_ON_WIFI_DISCONNECT=""
#DEVICES_TO_ENABLE_ON_WWAN_DISCONNECT=""
# Radio devices to enable/disable when docked.
#DEVICES_TO_ENABLE_ON_DOCK=""
#DEVICES_TO_DISABLE_ON_DOCK=""
# Radio devices to enable/disable when undocked.
#DEVICES_TO_ENABLE_ON_UNDOCK="wifi"
#DEVICES_TO_DISABLE_ON_UNDOCK=""
使用后的效果,拔掉電源,風(fēng)扇安靜,電流1832mA(僅運(yùn)行桌面,亮度中等,預(yù)測(cè)使用時(shí)間2小時(shí)半)
ps:使用
sudo tlp stat
產(chǎn)看tlp狀態(tài)
存在的疑惑:
由于是本本有單獨(dú)的獨(dú)顯風(fēng)扇,切換核顯后,獨(dú)顯風(fēng)扇時(shí)不時(shí)的自己會(huì)轉(zhuǎn)(熱風(fēng)),疑似獨(dú)顯并沒(méi)有完全關(guān)停,從顯示性能上看確實(shí)為核顯性能。甚為不解。安裝psensor檢測(cè)溫度,切換獨(dú)顯后,測(cè)試顯示性能(千魚測(cè)試),cpu與n卡溫度雙雙狂飆,難道核顯沒(méi)歇著???