Results

Showing posts with label Alienware. Show all posts
Showing posts with label Alienware. Show all posts

nVidia CUDA, nVidia Optimus, Linux & their complex relationship


After months of brainstorming on whether to get a Macbook or a Win7 laptop, how and where to buy it, what configuration to choose etc, I finally got my new Alienware M14x (Win 7) last week. Unfortunately I got my hands on it last Monday, which in my opinion left me no choice but to reduce my sleeping hours to 3-4hrs a day. With all those extra ‘sleepless’ hours I managed to find, I could accomplish quite a lot of things I had in my rather long TODO list by the end of the week, or so I thought. But I still haven’t completely set up my system, the way I wanted – lots of games, a Linux development environment etc.

The culprit is none other than the most important component in the laptop (for me) - the GPU. Since gaming, photo editing and GPU programming (nVidia CUDA) are the three things I am looking forward to focus on for most of my time, I wanted to make sure I made the right choice in selecting the GPU. The M14x comes with an nVidia GeForce GT 555M and it boasts the nVidia Optimus technology which uses switchable graphics (with Sandy Bridge integrated GPU) for power saving. All the reviews explained a lot about how this laptop takes full advantage of Optimus. But what none of the posts (I read) mentioned was, just like any other new technology, there is no support for Optimus in Linux till date, not by nVidia, not by Linux or not even by the manufacturer (in my case, Dell/Alienware).

What this means is, even though I will be able to use the nVidia GPU in Linux for CUDA programming, I won’t be able to use the nVidia GPU for any graphics applications in Linux. For example, I will be able to do computations on the GPU as a coprocessor, but it cannot be used for display in Linux environment. It doesn’t affect me a lot as I am not looking forward for any graphics programming in Linux in the short term, I already have my hands full with the TODO list I mentioned earlier. But it sure is a bummer considering I wanted to try out some graphics/game programming in the long term in the Linux environment. Hopefully there will be support for the Optimus technology in Linux soon.

I learned this fact the hard way, after spending long hours trying to setup my system to use the nVidia GPU. This post may/may not offer any solutions to any particular problem, but just a few observations and links to some of the sites/forums that helped me in the process.

To begin with, my requirement was to be able to do CUDA programming on a Linux environment in my M14x (GT 555M). On a side note, I have done CUDA setup & programming in the past and was familiar with it. My first step was to choose one of the Linux distributions supported by CUDA. I chose Ubuntu 10.10 and installed it. During my first boot, it asked me to upgrade to 11.04, which I did not accept because I knew that gcc 4.5 or above is not supported by CUDA at the moment. Ubuntu also asked me to activate the nVidia driver which I did it. Then I downloaded the CUDA dev driver, toolkit 4.0 and the code samples. I rebooted the machine and the Xserver failed to start. So, from the command prompt, I removed the ubuntu supplied driver.

sudo apt-get --purge remove nvidia*

Then I installed the dev driver downloaded from nVidia site.
Chmod +x "filename"
./"filename"

I also installed the toolkit (also set the path), samples and the required libraries for building them as specified in the CUDA Getting Started Guide (Linux). I rebooted the machine and again the Xserver failed to start. I poured through support forums & blog entries, tried the black listing method, reinstalled various drivers etc. None of them worked. Ubuntu was unable to load Xserver. So I decided to reinstall Ubuntu and start from step 1.

This time I was more cautious, I did one step at a time. But the moment I installed the dev driver and reboot, Xserver stopped working. What perplexed me more was, I was still able to run the CUDA binaries, which means the driver is installed properly. For a moment, I considered giving Fedora 13 a try.

That’s when I realized that I am using Optimus technology and the thought crossed my mind that what if Linux is trying to use the integrated GPU and nvidia driver is conflicting. My heart sank when I found out that there is no support for Optimus in Linux. There is third party software called bumblebee, which didn’t work for me. Some of the posts talks about a BIOS setting which can force either of the GPUs rather than switching them dynamically. But M14x BIOS doesn’t have that option, yet. So, I was out of options and that when this post helped me. It helped me deactivate the nVidia driver and use the integrated GPU for Xserver. Also the GPU is detected as a coprocessor so that I can do my CUDA programming as long as I am not playing with graphics. Remember to update the Intel graphics driver.
sudo apt-get install xserver-xorg-video-intel

In a nutshell, if your laptop is equipped with Optimus, better use the integrated graphics as of now for Linux. It’s a shame that so much GPU power is simply wasted.

Alienware Area-15 m9750 - A Dream Comes True

“Just when you thought it couldn't get any better... we bring you this!”
Most of you might be wondering what this things is, something related to aliens, from another world? You are almost right, ‘cos there is almost nothing in this earth which can compete with this bad boy! It’s the most recent edition to my gadget collection, and the most priced one too, my new laptop. I cannot entirely say its brand new, ‘cos I’ve had this baby for around a month.

From a Bad Start
I would say, I added this buddy to my collection at a really bad time, at the beginning of the first semester of my Masters. I had some problems getting right ordering and support and also with the factory installed software and drivers. Also I still haven’t got time to play around with it, the way I want to. But I can’t wait to write this entry for so long. ‘Cos its one of my dreams coming true.

My Alienware Area-51 m9750

The Spec Stuff
You can get a usual round of review from any review site in net, but I am going to present the details of my system. In short, it’s awesome. Better than the best machine I have seen and used so far. (that includes desktops also, since I haven’t used any desktops with the Ge-Force 200 series GPUs). Armed with GeForce 8700m GT GPU - “the world's first Microsoft DirectX®10 supported high performance enthusiast gaming notebook GUP”, after which any serious gamer started to think about gaming on a laptop, with a core clock speed of 625MHz, memory clock of 800MHz, dedicated 512MB video memory and a total of around 1269MB (including ~700+MB shared memory), 32 stream processors, and a 128bit memory interface, this baby flies with almost all the latest games. Other specs of this machine includes a Core 2 Duo T7200 @ 2.0 GHz processor, 2GB DDR2, a 17” LCD Display with a resolution of 1920x1200 @ 60Hz, 5.1 surround speakers with sub woofer, 160GB HDD, blah blah blah...

The combination of the big display and the 8700m GPU give you the best imaging quality you have ecer experienced. With digital vibrance technology, I have realized that images were this colorful and vibrant. And with that high resolution, you mostly never have to use the scroll function, since a 100% zoomed MS word page will fit in one screen.

As some of you may have already guessed, this is not the newest laptop or the best configuration available in the market. I wanted to have an SLi with the 9M series, a 4Gig RAM, an SSD HDD etc, but I had constraints on my ‘pocket size’.

I have included screenshot of the System requirements Lab Analysis report of Tomb Raider 8 and Halo 2 here. The recommended requirements for Tomb Raider 8 are shown failed ‘cos they expect to have a CPU with 2.2GHz speed and also a GPU which is Ge-Force 9800GTX/ATI HD 4800 or higher. For a DirectX 9 based, previous generation game like Halo 2, this system passes both the tests.


Gaming Gaming Gaming! - “Seeing is Believing”
As I have stated earlier, I haven’t got enough time to play around with this baby. But I somehow managed to test it with Crysis and Tomb Raider 8. I don’t want to explain the experience. Just see it for yourself.




You could see the expression in Lara’s face. Gaming in this machine is not just fun or entertainment, but it’s an experience. [You may have already guessed it, I am waiting to finish Tomb Raider 8 and write an entry on it ;-)]

Best Machine (with some glitches), Worst Support
Event though the laptop is the best of its class, there is no excuse for the continuous bad support (or lack of support) I am receiving from Alienware. I had to wait for more than 2 months to get my order shipped. Of course it was an international order. Even then, whenever I call them, I got overall really bad experience. (Exceptions are there).

I am having trouble with the integrated webcam. When I received the system, the cam was working fine for 2-3 days. Now it’s not at all showing anything other than a dark screen. I have tried updating my driver. No result. I found that others also had the same experience from some forums, but no idea how to rectify it. I have already sent 3 support request mails to the Alienware team, but no replies. Also, my wireless adapter stops abruptly sometime. The problem used to occur frequently in the beginning, but after driver updates, its working fine.

From my experience, I seriously urge anyone who is thinking to go with an Alienware machine to reconsider your decision, if support is of utmost importance to you.

The Good the Bad and the Ugly
Pros
- Amazing graphics, fast gaming performance
- Awesome screen resolution and large display
- Cool, Solid Design
- Best laptop in its class and worth every penny you spend

Cons
- Weight = Min 3.5Kg/8lbs, Portability = 0, Not for travelers.
- Pricing. I went for the relatively low configuration. But it cost me $1716 + my long distance calling charges for tracking the laptop updates.
- Bad Support

Summary - “Neighbor’s Envy, Owners Pride - Onida”
This machine is not for the ‘casual, light hearted’ people, who’s concept of a laptop is ‘just’ another portable electronic gadget. This is the real thing, custom built for enthusiasts or gadget geeks who are performance hungry, who likes to stay in the bleeding edge of technology. Its not all about performance alone, but about the brand also. Most of the people whom I have come across have no idea what Alienware means or which company made this laptop. But for the few who know what it means to own an Alienware machine, I have seen the mixture of respect and envy in their eyes at the mere mention of the term Alienware or when they see that blue eyed alien shining on the lid of my laptop. I can read their thoughts from their expression - which is something I used to have before, “I wish…”

Links and References
http://www.alienware.com/products/area-51-m9750-notebook.aspx?SysCode=PC-LT-AREA51M9750&SubCode=SKU-DEFAULT
http://www.notebookreview.com/default.asp?newsID=3840
http://www.anandtech.com/mobile/showdoc.aspx?i=3070
http://laptoplogic.com/best-gaming-laptops/
http://www.nvidia.com/object/geforce_8700m.html