Making the switch to 64 bit Ubuntu.

It seems like many people are worried about switching from 32 bit ubuntu to 64 bit ubuntu. This post should help make the transition be easier. This is geared toward ubuntu but should work for almost any linux distro.

Quick Table of Contents:

  1. Quick Faq
  2. Getting Started
  3. Installing 64-bit Flash Player
  4. Installing Skype
  5. Installing Opera
  6. How to run a 32 bit application
  7. Installing a 32 bit deb package

Quick FAQ

1.Q: Is 64 bit faster?
A: It really depends on what you are doing, overall it is about 20% faster, in some areas it’s almost 2x faster. I will Show some benchmarks later.

2.Q: I hear flash doesn’t work on it, or it is really buggy.
A: Not true flash works fine on it, by default it needs the ndiswrapper layer to run which can cause some problems, however you can install the native alpha 64 bit version (which is actually very stable), I will show you how.

3.Q: Does skype work?
A: YES! They have released a 64 bit version, I will show you how to get sound to work on this as well.

4. Q: Does wine work?
A: Yes, wine works wonderfully, they do not have a 64 bit version yet but the 32 bit version runs fine.

5. Q: Will 32 bit apps run on it?
A: Yes, there are only a few compatibility libraries you need to install. Now there are some exceptions to this, zsnes being one, and there are a few firefox extensions that have not been ported to 64 bit yet.

6. Q: What about installing a 32 bit deb package on it?
A: This does get a little tricky but it isn’t too hard to do, I will show you how.

Getting Started


So how much faster is it really? Well I ran a couple of benchmarks on my 32 bit system and then on my 64 bit system.  32-bit164-bit1
As you can see there is generally a performance increase in the 64 bit version, it’s really not much, but I like to think that I am using my processor to it’s full potential.To further boost your performance you need to fix the ondemand threshold for your processor which in my opinion is bugged in jaunty, I made a post about it here, it will also tell you more about the benchmarks I performed. So lets get to business, grab your 64 bit cd and install.

Now that you have it installed (and I KNOW you did) lets get everything working like it should. First of all we need to get your codecs and 32 bit compatability libraries installed, this is extremely easy all you need to do is go to Add/Remove in your applications menu, search for “restricted” make sure the “Show” drop down menu says “All available applications” , now find the “Ubuntu restricted extras” package and select the check box. Now click apply! This will install Java, flash, a bunch of codecs, windows standard true type fonts and 32 bit compatibility libraries (you will not be able to run 32 bit apps without these). An even easier way is to open a terminal window and type or copy and paste:

sudo apt-get install ubuntu-restricted-extras

Installing the 64 bit flash player


Now lets install the 64 bit version of Flash player. This is optional but I HIGHLY reccomend it, keep in mind that it is tagged as an alpha release, however from my experience it seems just as stable as it ever was before. First of all you need to open your package manager, go up to System -> Administration then choose “Synaptic Package Manager”. Now you need to search for “nsplugin” in synaptic and uncheck the “nspluginwrapper” package, this will also remove the flash player that is installed. Now get on over to adobe labs and download your copy! Open it with the archive manager: archive open

Leave the archive manager window open for now. Now, open your Home folder, go to View -> Show Hidden Files to view the hidden files then navigate to the .mozilla folder and open it. You need to create a folder in here called “plugins” (without quotes), now just drag and drop the “libflashplayer.so” file from the archive into the new plugins folder. Restart firefox and verify if flash is working, I usually just go to youtube and see if it works. All done! You should also set up the flash player globally if you have other users on your system or you plan on using other browsers besides firefox. To do this all you need to do is open a terminal window and type:

sudo cp .mozilla/plugins/libflashplayer.so /usr/lib/mozilla/plugins

Installing Skype

One of the biggest reasons I hear people not switching to 64 bit is because of skype. But this is no longer a problem. Finding the 64 bit package can be a bit tricky though since currently the main download page gives you the 32 bit version. The package you are looking for can be found right here. Now once it is installed you will notice that sound does not work. All you need to do is go into your options menu:

screenshot_004

And then you need to go into the “sound devices” area and change all of your sound devices to “pulse” like this:

screenshot_007

For more information on skype for 64 bit you can visit this post.

Installing 64 Bit Opera

Another popular program that people complain about missing in 64 bit is the Opera web browser, Opera is definitely one of the best browsers in existence, in some ways it is even better than Firefox. They have also recently started offering 64 bit packages! The latest version as of this writing is 9.64 and the package you want can be found right here. If you set up the 64 bit flash player globally like I showed you above then flash should work just fine as well.

Running a 32 bit application

Most 32 bit applications should run just fine, there are quite a few pre-compiled games and apps out there that come in tar.bz, zip, rar… etc files instead of a deb, basically that just means it is not packaged for a specific distribution or architecture. Cave Story comes to mind as one of these (absolutely one of the best games I have ever played), so if we wanted to run this program we would do it exactly as we would on a 32 bit system. How do you do that you may ask? Simply just extract the file to a folder in your home directory, now navigate to that folder find the pre-compiled binary file in this case it is named “doukutsu” just double click it!  If you installed the ubuntu-restricted-extras package it will run just great. You will come across a few of these programs out there in your journey through linux land (another example is Renoise). After I have my program in a directory I like I usualy make a link to it in my menu for easy access, some programs have to be run from the directory its self instead of a link, so I just link to the directory and have nautilus open it .

Now sourcecode tar.gz packages are an entirely different story I may post about compiling your own programs later, but for now just do a google search.

Installing a 32 bit deb package

There are also a few programs out there that only made a package for 32 bit ubuntu… for example the Amazon.com mp3 downloader so how do you install this? Well fortunately it isn’t too difficult but does require some terminal “hacking”. To do this you need to open a terminal and navigate the location to the downloaded file now to install the mp3 download you would type:

sudo dpkg -i --force-all ./amazonmp3.deb

The –force-all command will make dpkg ignore the package architecture and any missing libraries. Now go ahead and try to run it! That didn’t work did it? Now open a terminal window and type amazonmp3 to see more information. It complained about missing libraries right? That is because you are missing the 32 bit versions of those libraries, so now we need to head over to ubuntu forums and get a little package called getlibs. Once this is installed you can open your terminal window and type the following:

sudo getlibs /usr/bin/amazonmp3

For getlibs to work you need to provide the path to the binary executable of the program you want to run, which is why I put the path /usr/bin/ in there. Now it should have automatically installed all of the required libraries and everything should be good to go!

I  hope this helps some of you out, and rememeber the more of us that switch to 64 bit the better it is going to get.

Speed up flash and firefox in Ubuntu Jaunty (9.04)!

This is still somewhat of an issue in Karmic (9.10) though it is a bit better. I have more information gathered up from tips from you all and some personal experience with different hardware and such. When I get the time in the next few days I will make an updated blog post for Karmic. Thank you all!

So yesterday I was playing some flash games on pbskids.com with my son, and I realized it was going really really slow. I am running the 32 bit version of Ubuntu 9.04, and I figured I would try out the 64 bit version and compare the speeds, but first I took a few benchmarks to base it upon, I installed hardinfo (which has a few benchmarking utilities in it) from the repositories and also ran Powerbench for flash, and Peacekeeper for the browser.

These are my results:

32-bit164-bit1

As you can see the 64 bit version performed a bit better, I also installed the 64 bit Alpha version of the flash player before the test. But, now here comes the interesting part, I added the CPU Frequency Scaling Monitor to my panel by right clicking a blank area on the top panel and going to “Add to Panel”,  then I ran the tests again. On all test with exception to the Flash and Browser test my processor would scale up to 2.4 ghz which is where it should be when under heavy load. Firefox and Flash tests would not scale above 1 ghz.

I had to investigate. I searched all over google about processor scaling on ubuntu then I came across this post. It seems other people have had this problem but this thread seems like it was pretty much ignored. I followed the advice given in the post and added the following lines to my /etc/init.d/ondemand script.  You can type “sudo gedit /etc/init.d/ondemand” in the terminal to access this file.

for CPU_THRESHOLD in /sys/devices/system/cpu/cpu*/cpufreq/ondemand/up_threshold
do
[ -f $CPU_THRESHOLD ] || continue
echo -n 40 > $CPU_THRESHOLD
done

In the post he puts his threshold value at 20 I put mine at 40 but you can put it at whatever you want. That value basically tells linux to scale your processor when it reaches a certain load. So if mine reaches a 40% load it will scale it up to 1.8 ghz then 2ghz.. and so on. Ubuntu jaunty seems to have a problem with this value, in the thread it is stated that it is set to 95%, but I cannot seem to verify it because I don’t know how. If it is set at 95% then I think that flash somehow doesnt let its self use that much power, thats my theory anyway. You could turn off ondemand all together by modifying this line in the file:

echo -n ondemand > $CPUFREQ

You would replace ondemand with performance, conservative or powersave. But I would watch those cpu temps. i’ve had mine on performance for a while and haven’t noticed any dangerous temperatures yet. I also would not do this on a laptop since your battery power will drain considerably faster.

So I rebooted and ran the tests again:

64-bit-fixed2

As you can see the powerbench and peacekeeper benchmarks have gotten much better since the 32 bit test, and my processor scales as it should now. I cannot guarantee that this will work on your computer, some processors might be set up right but mine wasn’t.  This didn’t seem to be a problem in 8.10, so maybe it is a bug? I dunno. Firefox still scores much lower on the peacekeeper benchmark than it does on a windows system, so sad. Ubuntu is great operating system but things like this really make it look bad to some people.

Oh and yes, I did make this blog just to post this! So thank me or make fun of me I don’t care, I just hope this helps.