شما هنوز به سیستم وارد نشده اید.

#1 2016-12-01 16:59:52

sevensar
عضو
ثبت شده: 2016-12-01
ارسال ها: 9

خاموش کردن کارت گرافیک nvidia در لپتاپ

سلام و درود
من لپتاپ asus دارم که دو کارت گرافیک داره :
1-intel gpu 4600
2- nvidia gtx 850m
-------
من برای استفاده بهینه از باتری لپتاپ تصمیم گرفتم که گرافیک دوم nvidia را به کمک ماژول کرنل acpi-call خاموش کنم تا مصرف باتری کمتری داشته باشه.
از ارچ ویکی :
https://wiki.archlinux.org/index.php/hybrid_graphics
------
از درایور های open source زیر هم استفاده میکنم: (لزوما میخوام از درایور های open source استفاده کنم )
xf86-video-intel
xf86-video-nouveau
-----
مشکل اول : در خروجی دستور xrandr --listproviders که کارت گرافیک های منو نشون میده ، کارت nvidia وجود نداره و فقط اینتل را نشون میده:

Providers: number : 1
Provider 0: id: 0x47 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 4 associated providers: 0 name:Intel

خروجی دستور glxinfo | grep "OpenGL renderer" که گرافیک در حال استفاده را نشان میده:

OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile

مشکل دوم : بعد از نصب کردن acpi-call  از مخازن aur ، طبق آرچ ویکی دستور modprobe acpi_call را اجرا میکنم تا ماژول کرنل لود بشه ولی خطای زیر را میده:

modprobe: FATAL: Module acpi_call not found in directory /lib/modules/4.8.10-1-ARCH

بنظرتون مشکل لود نشدن ماژول چیه؟ یا کسی راه دیگه ای سراغ داره برای خاموش کردن کارت گرافیک؟ دستور lspci هم کارت گرافیک nvidia را به صورت 3D controller معرفی میکنه:

01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 850M] (rev a2)

ممنون میشم کمکم کنید . باتشکر

آفلاین

#2 2016-12-01 17:12:38

mazhar
عضو
ثبت شده: 2016-08-01
ارسال ها: 253

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

سلام. برای مصرف کم باتری مجبور نیستید کلا کارت گرافیک رو بیخیال بشید.
bumblebee یک سویچر بین کارت گرافیک های optimus هست. یعنی برای مدیریت دو کارت گرافیک (On-Board and Extended) میتونید ازش استفاده کنید.

به عنوان مثال میتونید برای مواقعی که لپ تاپ از باتری برق مصرف میکنه کلا extended رو خاموش کنید و از On-Board استفاده کنید. تا جایی هم که یادم باشه پیشفرض همین تنظیمات رو داره. فقط همون طور هم که تو پیج توضیح داده از کار کردن هردو کارت گرافیک مطمین بشید (ویکی رو برای nouveau مطالعه کنید).

ویرایش:
برای این دستورات:

sevensar نوشته است که:

مشکل اول : در خروجی دستور xrandr --listproviders که کارت گرافیک های منو نشون میده ، کارت nvidia وجود نداره و فقط اینتل را نشون میده:

Providers: number : 1
Provider 0: id: 0x47 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 4 associated providers: 0 name:Intel

خروجی دستور glxinfo | grep "OpenGL renderer" که گرافیک در حال استفاده را نشان میده:

OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile

دستور lspci هم کارت گرافیک nvidia را به صورت 3D controller معرفی میکنه:

01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 850M] (rev a2)

نگران نباشید.
من هم ایسوس دارم و با bumblebee هیچ مشکلی ندارم و همین دستورات هم برای من همین خروجی رو داشت. smile

آخرین ویرایش توسط mazhar (2016-12-01 17:18:10)

آفلاین

#3 2016-12-01 17:35:58

sevensar
عضو
ثبت شده: 2016-12-01
ارسال ها: 9

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

mazhar نوشته است که:

سلام. برای مصرف کم باتری مجبور نیستید کلا کارت گرافیک رو بیخیال بشید.
bumblebee یک سویچر بین کارت گرافیک های optimus هست. یعنی برای مدیریت دو کارت گرافیک (On-Board and Extended) میتونید ازش استفاده کنید.

به عنوان مثال میتونید برای مواقعی که لپ تاپ از باتری برق مصرف میکنه کلا extended رو خاموش کنید و از On-Board استفاده کنید. تا جایی هم که یادم باشه پیشفرض همین تنظیمات رو داره. فقط همون طور هم که تو پیج توضیح داده از کار کردن هردو کارت گرافیک مطمین بشید (ویکی رو برای nouveau مطالعه کنید).

ویرایش:
برای این دستورات:

sevensar نوشته است که:

مشکل اول : در خروجی دستور xrandr --listproviders که کارت گرافیک های منو نشون میده ، کارت nvidia وجود نداره و فقط اینتل را نشون میده:

Providers: number : 1
Provider 0: id: 0x47 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 4 associated providers: 0 name:Intel

خروجی دستور glxinfo | grep "OpenGL renderer" که گرافیک در حال استفاده را نشان میده:

OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile

دستور lspci هم کارت گرافیک nvidia را به صورت 3D controller معرفی میکنه:

01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 850M] (rev a2)

نگران نباشید.
من هم ایسوس دارم و با bumblebee هیچ مشکلی ندارم و همین دستورات هم برای من همین خروجی رو داشت. smile

ممنون .
مشکل اینجاست که برای استفاده از فناوری optimus باید از bumblebee استفاده بشه که اون هم نیاز به درایور های proprietary و بسته داره . راه حله استفاده از optimus همزمان با درایورهای open source  اینه که از PRIME استفاده کنم که برای این کار نیاز به دستورات xrandr هس که اون هم گرافیک nvidia را برای من نشون نداد sad

دلیل این هم که اصرار به استفاده از درایور های آزاد دارم اینه که درایور بسته ی nvidia  در سرعت بوت تاثیر گذاره و سرعت را کاهش میده ( حدود 10 ثانیه تاخیر بیشتر) . حداقلش برای من اینطور بوده .

آخرین ویرایش توسط sevensar (2016-12-01 17:41:07)

آفلاین

#4 2016-12-01 21:06:25

LinArcX
عضو
ثبت شده: 2015-09-18
ارسال ها: 735
وب سایت

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

درود و عرض خوش آمد به شما دوست گرانقدر.
بنده هم امروز متوجه شدم همچین مشکلی در خروجی دستور  xrandr --listproviders سیستمم وجود داره.هر چند حدودا 3 ماه پیش خروجی هاش شامل هر دو گرافیک اینتل و nvidia بود.کمی سرچ کردم و به Kms رسیدم حدسم اینه(شاید دلایل دیگه ای داشته باشه) که در نسخه های جدیدش اجازه لود شدن درایورهای غیر اینتل رو (به هر دلیلی؟) نمیده.اما با توجه به این بخش از ویکی KMS، میشه مشکل رو با فعال کردن KMS در مرحله initramfs به راحتی حل کرد.در واقع کاری که شما باید انجام بدین این هستش که با ویرایشگری دلخواه فایل زیر رو باز کنید.

sudo nano /etc/mkinitcpio.conf

و سپس در بخش Modules دو پارامتر بهش پاس بدین.پارامتر اول نام گرافیک اینتل تون و دومی هم Nouveau.

MODULES="i915 nouveau"

بعدش سیستم رو یه بار ریبوت کنید.سپس اگه دستور زیر رو فراخوانی کنید:

xrandr --listproviders                                            [20:00:07]
Providers: number : 2
Provider 0: id: 0x8f cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 3 outputs: 5 associated providers: 0 name:Intel
Provider 1: id: 0x62 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 1 associated providers: 0 name:nouveau

ملاحظه میکنید که گرافیک انویدیا تون هم شناخته شده.

آخرین ویرایش توسط LinArcX (2016-12-01 21:45:12)


"Enough!!!Don't Use "DEFAULTS" Any More..."make it simple stupid

آفلاین

#5 2016-12-02 00:44:27

sevensar
عضو
ثبت شده: 2016-12-01
ارسال ها: 9

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

stackoverflow نوشته است که:

درود و عرض خوش آمد به شما دوست گرانقدر.
بنده هم امروز متوجه شدم همچین مشکلی در خروجی دستور  xrandr --listproviders سیستمم وجود داره.هر چند حدودا 3 ماه پیش خروجی هاش شامل هر دو گرافیک اینتل و nvidia بود.کمی سرچ کردم و به Kms رسیدم حدسم اینه(شاید دلایل دیگه ای داشته باشه) که در نسخه های جدیدش اجازه لود شدن درایورهای غیر اینتل رو (به هر دلیلی؟) نمیده.اما با توجه به این بخش از ویکی KMS، میشه مشکل رو با فعال کردن KMS در مرحله initramfs به راحتی حل کرد.در واقع کاری که شما باید انجام بدین این هستش که با ویرایشگری دلخواه فایل زیر رو باز کنید.

sudo nano /etc/mkinitcpio.conf

و سپس در بخش Modules دو پارامتر بهش پاس بدین.پارامتر اول نام گرافیک اینتل تون و دومی هم Nouveau.

MODULES="i915 nouveau"

بعدش سیستم رو یه بار ریبوت کنید.سپس اگه دستور زیر رو فراخوانی کنید:

xrandr --listproviders                                            [20:00:07]
Providers: number : 2
Provider 0: id: 0x8f cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 3 outputs: 5 associated providers: 0 name:Intel
Provider 1: id: 0x62 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 1 associated providers: 0 name:nouveau

ملاحظه میکنید که گرافیک انویدیا تون هم شناخته شده.

سلام خیلی ممنون از کمکتون
تمامی مراحل را انجام دادم ولی مشکل حل نشد و خروجی xrandr --listproviders تغییر نکرد. حتی بعد از تغییر فایل mkinitcpio.conf دستور sudo mkinitcpio -p linux را هم اجرا کردم ولی باز هم نشد roll

آفلاین

#6 2016-12-02 04:04:10

sevensar
عضو
ثبت شده: 2016-12-01
ارسال ها: 9

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

فکر میکنم مشکل اصلی از درایور nouveau باشه چون موقع روشن شدن سیستم اخطار میده . خروجی دستور journalctl -p 3 -xb :

Dec 02 02:56:47 ac-pc kernel: nouveau 0000:01:00.0: priv: HUB0: 10ecc0 ffffffff (1e40822c)
Dec 02 02:56:47 ac-pc kernel: nouveau 0000:01:00.0: DRM: Pointer to TMDS table invalid
Dec 02 02:56:47 ac-pc kernel: nouveau 0000:01:00.0: DRM: Pointer to flat panel table invalid

آفلاین

#7 2016-12-02 13:01:15

LinArcX
عضو
ثبت شده: 2015-09-18
ارسال ها: 735
وب سایت

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

خروجی دستورات زیر رو بدید لطفا:
1-

pacman -Qs xf86-video-nouveau 

2-

sudo lshw -c video  

3-

 lspci | grep VGA 

4-

DRI_PRIME=1 glxinfo|grep 'OpenGL renderer'  

آخرین ویرایش توسط LinArcX (2016-12-02 13:24:10)


"Enough!!!Don't Use "DEFAULTS" Any More..."make it simple stupid

آفلاین

#8 2016-12-03 03:22:45

sevensar
عضو
ثبت شده: 2016-12-01
ارسال ها: 9

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

stackoverflow نوشته است که:

خروجی دستورات زیر رو بدید لطفا:
1-

pacman -Qs xf86-video-nouveau 

2-

sudo lshw -c video  

3-

 lspci | grep VGA 

4-

DRI_PRIME=1 glxinfo|grep 'OpenGL renderer'  

بفرمایید:
1-

$ pacman -Qs xf86-video-nouveau 
local/xf86-video-nouveau 1.0.13-1 (xorg-drivers xorg)
    Open Source 2D acceleration driver for nVidia cards

2-

$ sudo lshw -c video  
  *-display                 
       description: 3D controller
       product: GM107M [GeForce GTX 850M]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a2
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list rom
       configuration: driver=nouveau latency=0
       resources: irq:37 memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f7000000-f707ffff
  *-display
       description: VGA compatible controller
       product: 4th Gen Core Processor Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 06
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:38 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64) memory:c0000-dffff

3-

$ lspci | grep VGA 
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)

4-

$ DRI_PRIME=1 glxinfo|grep 'OpenGL renderer'
OpenGL renderer string: Gallium 0.4 on NV117

در مورد این موضوع من زیاد سرچ کردم ، تا اونجایی که فهمیدم فک میکنم یه باگ هست توی کرنل و خیلیا گزارش دادن این باگ را!
https://bbs.archlinux.org/viewtopic.php?id=210648
بنظر شما اگه اخرین ورژن کرنل (4.9rc7) از linux-mainline را نصب کنم مشکلی از نظره پایداری پیش نمیاد؟ (ورژن کرنل من: 4.8.11)

خروجی دستور  journalctl -b | grep nouveau

Dec 03 01:14:29 ac-pc kernel: nouveau 0000:01:00.0: NVIDIA GM107 (117110a2)
Dec 03 01:14:29 ac-pc kernel: nouveau 0000:01:00.0: bios: version 82.07.2f.00.05
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: fb: 4096 MiB DDR3
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: priv: HUB0: 10ecc0 ffffffff (1e40822c)
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: VRAM: 4096 MiB
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: GART: 1048576 MiB
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: Pointer to TMDS table invalid
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: DCB version 4.0
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: Pointer to flat panel table invalid
Dec 03 01:14:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: MM: using COPY for buffer copies
Dec 03 01:14:31 ac-pc kernel: [drm] Initialized nouveau 1.3.1 20120801 for 0000:01:00.0 on minor 1
Dec 03 01:14:38 ac-pc kernel: nouveau 0000:01:00.0: DRM: evicting buffers...
Dec 03 01:14:38 ac-pc kernel: nouveau 0000:01:00.0: DRM: waiting for kernel channels to go idle...
Dec 03 01:14:38 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending client object trees...
Dec 03 01:14:38 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending kernel object tree...
Dec 03 01:15:28 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming kernel object tree...
Dec 03 01:15:28 ac-pc kernel: nouveau 0000:01:00.0: priv: HUB0: 10ecc0 ffffffff (1c40822c)
Dec 03 01:15:28 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming client object trees...
Dec 03 01:15:33 ac-pc kernel: nouveau 0000:01:00.0: DRM: evicting buffers...
Dec 03 01:15:33 ac-pc kernel: nouveau 0000:01:00.0: DRM: waiting for kernel channels to go idle...
Dec 03 01:15:33 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending client object trees...
Dec 03 01:15:33 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending kernel object tree...
Dec 03 01:53:59 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming kernel object tree...
Dec 03 01:53:59 ac-pc kernel: nouveau 0000:01:00.0: priv: HUB0: 10ecc0 ffffffff (1c40822c)
Dec 03 01:53:59 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming client object trees...
Dec 03 01:54:04 ac-pc kernel: nouveau 0000:01:00.0: DRM: evicting buffers...
Dec 03 01:54:04 ac-pc kernel: nouveau 0000:01:00.0: DRM: waiting for kernel channels to go idle...
Dec 03 01:54:04 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending client object trees...
Dec 03 01:54:04 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending kernel object tree...
Dec 03 01:56:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming kernel object tree...
Dec 03 01:56:31 ac-pc kernel: nouveau 0000:01:00.0: priv: HUB0: 10ecc0 ffffffff (1c40822c)
Dec 03 01:56:31 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming client object trees...
Dec 03 01:56:37 ac-pc kernel: nouveau 0000:01:00.0: DRM: evicting buffers...
Dec 03 01:56:37 ac-pc kernel: nouveau 0000:01:00.0: DRM: waiting for kernel channels to go idle...
Dec 03 01:56:37 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending client object trees...
Dec 03 01:56:37 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending kernel object tree...
Dec 03 01:58:40 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming kernel object tree...
Dec 03 01:58:41 ac-pc kernel: nouveau 0000:01:00.0: priv: HUB0: 10ecc0 ffffffff (1c40822c)
Dec 03 01:58:41 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming client object trees...
Dec 03 01:58:46 ac-pc kernel: nouveau 0000:01:00.0: DRM: evicting buffers...
Dec 03 01:58:46 ac-pc kernel: nouveau 0000:01:00.0: DRM: waiting for kernel channels to go idle...
Dec 03 01:58:46 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending client object trees...
Dec 03 01:58:46 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending kernel object tree...
Dec 03 02:00:18 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming kernel object tree...
Dec 03 02:00:19 ac-pc kernel: nouveau 0000:01:00.0: priv: HUB0: 10ecc0 ffffffff (1c40822c)
Dec 03 02:00:19 ac-pc kernel: nouveau 0000:01:00.0: DRM: resuming client object trees...
Dec 03 02:00:24 ac-pc kernel: nouveau 0000:01:00.0: DRM: evicting buffers...
Dec 03 02:00:24 ac-pc kernel: nouveau 0000:01:00.0: DRM: waiting for kernel channels to go idle...
Dec 03 02:00:24 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending client object trees...
Dec 03 02:00:24 ac-pc kernel: nouveau 0000:01:00.0: DRM: suspending kernel object tree...

آخرین ویرایش توسط sevensar (2016-12-03 03:49:32)

آفلاین

#9 2016-12-07 15:25:09

sevensar
عضو
ثبت شده: 2016-12-01
ارسال ها: 9

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

نظرتون درباره ی نصب اخرین نسخه ی کرنل چیه؟ امکان داره سیستم ناپایدار بشه؟

آفلاین

#10 2016-12-07 18:23:23

Arcush
Moderator
ثبت شده: 2015-09-15
ارسال ها: 1,308

پاسخ: خاموش کردن کارت گرافیک nvidia در لپتاپ

من چندماهی هست که اینترنت نامحدود دارم و تقریبا هرروز آرچم رو آپدیت می کنم و در این مدت مشکلی وجود نداشته برام (مخصوصا درمورد خود کرنل). گرچه البته احتمالش وجود داره (درمورد بقیه توزیع ها هم همینطور و خب شاید (شاید) کمتر) چون شما دارید از نسخه های بروز بسته ها با تست کمتر استفاده می کنید  ولی حجم بسیار زیادی از ناپایداری در آرچ (و بقیه توزیع های معروف) مربوط به عملکرد کاربره تا بروز بودن سیستم. درمورد اصرارتون به استفاده از نرم افزارهای آزاد، گرچه شخصا موافق این شدت از وسواس نیستم ولی پارابولا رو که فورک آزادی از آرچ هست پیشنهاد می کنم:
https://www.parabola.nu/
حتی میتونید آرچ حاضرتون رو تبدیل کنید بهش.

آخرین ویرایش توسط Arcush (2016-12-07 18:26:34)

آفلاین

پانوشت انجمن

پشتیبانی توسط تیم آرچ لینوکس ایران و نیرو گرفته با FluxBB