به دلیل به کارگیری درایور اپن سورس انویدیا در اوبونتو ۱۰.۴ نصب درایور رسمی کمی سخت شده. اسم درایور اپن سورس nouveau هست که باعث کارکردن پلیموث به صورت درست و صحیح میشود. مشکل این درایور ضعف در انجام کارهای سه بعدی میباشد. پس در صورت تمایل به استفاده از افکتهای سه بعدی، باید درایور رسمی شرکت انویدیا رو فعال کرد.
برای نصب درایور رسمی کافیه دستور زیر رو وارد کنید.
sudo jockey-text -e xorg:nvidia_current
حالا باید به کرنل شیرفهم شه که بیخیال درایور اپن سورس انویدیا شه.
sudo gedit /etc/modprobe.d/blacklist.conf
خط زیر رو وارد کنید تا کرنل درایور اپن سورس رو بارگزاری نکنه.
blacklist nouveau
وقتی درایور رسمی فعال شه، متوجه می شید که پلی موث خیلی زشت شده و اصلا اون زیبایی قبل رو نداره! برای حل این مشکل باید دو فایل رو ویرایش کنید.
sudo gedit /etc/default/grub
خط زیر را با برداشتن مربع فعال کنید (خط ۱۸) . رزولوشن را هم متناسب با مانتیور خودتون انتخاب کنید.
#GRUB_GFXMODE=640×480
و در نهایت فایل زیر را باز کنید.
sudo gedit /etc/grub.d/00_header
خط زیر را پیدا کنید.
gfxmode=${GRUB_GFXMODE}
حالا زیرش این خط رو اضافه میکنیم.
set gfxpayload=keep
حالا گراب رو آپدیت می کنیم تا تنظیمات جدید رو بخونه.
دیروز که درایور جدید AMD (کاتالیست ۱۰.۳) منتشر شده بود تو خبرش اومد که هیچ اتفاق جدیدی نیفتاده و همچنان خبری از پشتیبانی xorg server 1.7 نیست چه برسه به نسخه ۱.۸ . اما امروز از یک درایور جدید براساس همون نسخه ۱۰.۳ رو نمایی شده که از OpenGL 4.0/3.3 پشتیبانی به عمل مییاره!!
این در حالی هست که انویدیا چند روز پیش درایور خودش رو با پشتیبانی از OpenGL 3.3 منتشر کرده (۱۹۵.۳۶.۱۵) والبته پشتیبانی نکردن از اپنجیال ۴.۴ به دلیل معرفی نشدن سری جدید کارتهای انویدیا (جیفورس سری ۴۰۰ موسوم به فرمی) طبیعی هست.
اپنجیال ۴ یه جورایی مشابه دایرکتایکس ۱۱ ویندوز هست و کارتهای سری ۵ هزار رادئون هم از اون پشتیبانی به عمل مییارن.
درایور جدید با اینکه هنوز به صورت رسمی منتشر نشده و ظاهرا یه جور جوابیه به خبرای ناامید کننده دیروز بوده :D ولی به صورت پیشنمایش (preview) در این آدرس برای دانلود قرار گرفته است.
نمیدونم چرا هی بند کردم به این کرنل! شاید چون فک می کنم خیلی راحته و خیلیا از رفتن به سمت و سوش ترس دارن!
uname -a میگیرم تا مشخصات کرنل رو بهتون نشون بدم.
Linux linux-19gz 2.6.33-ck1 #1 SMP PREEMPT Mon Mar 1 16:21:28 IRST 2010 x86_64 x86_64 x86_64 GNU/Linux
این یه خط چند تا نکته داره بهمون میگه. یکی اینکه پردازشگر ۶۴ بیتی هست و همینطور کرنل. دیگه اینکه شماره کرنل ۲.۶.۳۳ هست. اون ck1 پسوندی هست که نشون میده با یه کرنل کامپایل شده از رو سورس سر و کار نداریم. بلکه ۱۳ تا وصله برای بالا بردن راندمان کرنل بهش اعمال کردیم. دیگه اینکه در تنظیمات کرنل، SMP و PREEMPT فعال هستند.
حالا ببینیم با این کرنل دستی کامپایل شده، لینوکس چه جایگاهی بین سیستم عاملای دیگه داره.
شرایط سختافزاری در هر سه سیستم عامل برابر و یکسان بوده و هر سه سیستم عاملها ۶۴ بیتی هستند. فرکانس کاری پردازشگر هم سه گیگاهرتز بوده (توجهی به فرکانسی که برای آیمک ثبت شده نکنید!) . و اما بر اساس امتیازی که گیگ بنچ داده، اسنو لئوپارد اپل قوی ترین سیستم عامل و ویندوز سون ۶۴ بیتی با اختلاف کمی از لینوکس رتبه سوم رو به خودش اختصاص داده. لینوکس با کرنل سفارشی و دست ساز هم تونسته رتبه دوم رو به خودش اختصاص بده. اما باید ریز بشیم و ببینیم لینوکس کجاها داره نسبت به مک و یا احتمالا نسبت به ویندوز میلنگه.
برنامه گیگ بنج ۴ دسته امتیاز کلی رو برای همه سیستم عاملها در نظر می گیره. هر دسته شامل تعدادی تست می شه.
این ۴ دسته عبارتند از integer، Floating point، memory، stream . جالب اینجاست که هر کدام از سیستم عاملها در یک دسته اول شدهاند. به جز اسنو اپل که در دو دسته مقام اول رو کسب کرده است.
برنده قسمت integer سون، برنده floating point و stream اسنو و دسته memory نیز لینوکس اول شده است.
یکی از قسمتایی که لینوکس عقب افتاده مربوط به تستای فشرده سازی نوشتهها و عکس (همینطور عمل عکسش) هست. حالا این ینی چی؟ببینید شما با چی نوشته ها رو فشرده می کنید؟جواب bzip2 است. من نگاه کردم دیدم آخرین نسخه این برنامه رو سوزه داره و بنابراین مشکل نسخه قدیمی برنامه نیست. پس مشکل کار کجاست؟
من تنها جایی که مشکل رو می بینم زمان خواندن و نوشتن اطلاعات بر روی پارتیشن هست! دوستان ببینید پارتیشنهای من از نوع LVM هست و نوع آن هم ext4 هست. نمی دونم! اما یه جورایی احساس می کنم عملکرد پایین خیلی از نتایج در لینوکس همین موضوع میتونه باشه:)
شاید به همین دلیل است که لینوکس در دسته حافظه اول شده. چون دراین بخش، فایل سیستم معنایی ندارد پس بهترین راندمان را لینوکس در همین نقطه از خود نشان میدهد. اما در بقیه قسمتها که به نوعی درگیر با هارد دیسک و فایل سیستم هستیم، عملکرد نسبت به اسنو اپل پایین تر است.
نکته مهم اینکه از ۲۱ تست، لینوکس فقط در ۴ تست Blowfish، mandlebrot، Read sequential و stdlib copy اول شده و اختلاف پیروزی در stdlib copy با ویندوز و مک به حدی بالاست که میشه گفت لینوکس داره تو خیلی از قسمتا ( رو سخت افزار من) ضعیف عمل می کنه وفقط به دلیل خوب کار کردن در یک بخش، ضعف در بقیه قسمتا رو به نوعی جبران می کنه:)
به نتایج که نگاه میکنیم، میبینیم، ویندوز تو خیلی از تستا اول هست ( ده تست از ۲۱) ! فقط چون تو چند تا تست مث blur image یا sharpen image سوتی های بدی داده، نتیجه رو حتی به لینوکس هم واگذار کرده:)
باز میگم، احتمال بالا خیلی از نتایج مربوط به این آزمایش، به خصوص آنهایی که با واحد گیگابایت در ثانیه اندازه گیری شدهاند، با عوض شدن فایل سیستم میتونه بهبود پیدا کنه.
و اما سه نکته برای کامپایل کرنل ۲.۶.۳۳ .
اول اینکه شما میتونید ۱۳ پچ اقای کولیواس را یک جا به کرنل پچ کنید. یکی از این پچها BFS است. یکی دیگه از پچهای خیلی مهم مربوط به Timer frequency از زیر مجموعه Processor type and features هست. که بعد از پچ کردن کرنل، میشه مقدارش رو از هزار هرتز هم بالاتر برد. مقدار نهایی ده هزار هست!! این فرکانس از نقاط اختلاف بر انگیز بین علما هست. یک سری میگن این عدد هر چی بالاتر باشه بهتره. یه سری میگن اگه این عدد بالا باشه، برق بیشتری مصرف می شه. پس تو لبتابا باید این عدد رو کمتر از هزار هرتز انتخاب کرد. یه سری هم میگن خیلی بزرگ انتخاب کردن این عدد میتونه منجر به ناپایداری سیستم شه:)) یکی از وصلهها باعث میشه پسوند ck به انتهای شماره کرنل اضافه شه :-D . یکی هم باعث بهبود در عملکرد preempt لینوکس خواهد شد.
برای اعمال پچ هم کافیه، پچ و سورس کرنل در یک دایرکتوری قرار داشته باشن(بعد از خارج شدن از حالت فشرده) . با اعمال دستور زیر هر ۱۳ تا پچ به کرنل وصله خواهند شد.
patch < patch-2.6.33-ck1 -p1
بعد هم به صورت عادی میشه کرنل رو کانفیگ و کامپایل کرد(اضافه کردن زمانبندی فرکانس یادتون نره) .
اما نکته مهمتر در مورد کرنل ۲.۶.۳۳ اینکه شما همه کارا رو درست انجام دادید. کار تموم شده. نوبت میرسه به نصب درایور کارت گرافیکی انویدیا.
جالبه بدونید درایور رسمی انویدیا موقع نصب به شما پیغام خطا خواهد داد. برای حل این مشکل شما باید از یک پچ استفاده کنید. این پچ رو اینبار به درایور انویدیا وصله پینه میکنیم:)) و ربطی به کرنل نداره:دی
برای اینکار بسته به درایور انویدیایی که دارید یکی از دو پچ زیر را دانلود کنید.
بعد از اینکه مطمئن شدید که پچ و درایور رسمی انویدیا در یک دایرکتوری قرار دارند، با یکی از دو دستور زیر (بسته به نسخه درایور) پچ رو اعمال کنید. توجه کنید درایور رسمی انویدیا باید مجوز اجرا شدن را نیز داشته باشد(chmod 777 NVidia.run)
که از این به بعد میشه با این درایور به صورت معمول کار کرد(sudo ./NVIDIA-Linux-x86_64-195.30-pkg2-custom.run).
و اما نکته آخر اینکه آخرین نسخه از درایور رسمی انویدیا ( NVIDIA-Linux-x86_64-195.36.08-pkg2.run ) به صورت رسمی منتشر شده! اما همچنان فک نکنم بشه رو کرنل ۲.۶.۳۳ نصبش کرد و باید منتظر پچ اصلاحیش باشیم:)
درایور انویدیا به شماره ۱۹۵.۳۶.۰۳ که هنوز در مرحله بتا به سر میبره و نسبت به شماره قبلی یعنی ۱۹۵.۳۰ مهمترین تغییرش اینه که دیگه صاحبان جیفورس سری ۶ و ۷ سیستمشون هنگ نمیکنه. و البته در کار کشیدن از کارت گرافیک هم مهارت بیشتری کسب کرده. این درایور همچنان فقط در حد مقدماتی از X Server 1.8 پشتیبانی به عمل نمییاره میآورد و بنابراین فقط میشه تا کرنل ۲.۶.۳۲ از این درایور استفاده کرد! بنابراین فعلا سراغ کرنل ۲.۶.۳۳ برای انجام کارای تست بهتره نرید. البته نتیجه نهایی کار انویدیا هم یه فکرایی کرده و نتیجه کار مقدماتیش رو میشه تا دو ماه دیگه همزمان با انتشار نسخه نهایی X Server 1.8 دید! و جالبه بدونید، اینا در حالی هست که AMD هنوز که هنوزه از X Server 1.7 پشتیبانی به عمل نمییاره و چه خوب گفتن بزرگان :