Pigs in Xen - Linode Xen Beta Test

Linode Staff

Pigs in Xen - The Linode Xen Beta Test

What is Xen, you ask? Xen is a virtualization technology that provides a few benefits over User Mode Linux, namely: performance, the ability to have SMP Linodes, and kernel modules.

How can I participate in the Xen beta test?

You may register for the Xen Public Beta by logging into the LPM and using the Xen Public Beta Registration page located off the "My Accounts" subtab (link is here: https://www.linode.com/members/xenbeta.cfm).

We will configure a migration to a Xen host which you can execute at your leisure. Migrating moves your Linode's disk images, config profiles, and IP addresses to the new host. The migration is seamless.

What would you like us to test during the beta?

Our Xen implementation has been in development off and on for a few years now (!), so it's well tested and feature complete. While I don't anticipate any bugs, the point of the beta test is to prove that.

Our focus will be mainly on performance and resource fairness. Xen has some sophisticated tools to weigh the scheduling of CPU time, and we'll be using the ionice feature of the CFQ disk scheduler instead of the token-limiter patch that I wrote for UML. All that needs to be tested. Mainly, I want you to continue using your Linode as you did – under normal, production loads.

When will the Xen Public Beta end, and what happens then?

The beta test is open ended. It won't be until we're confident in all aspects of Life Under Xen (functionality, performance, reliability, etc) that we'll end the beta.

During the beta test, Linodes of different plans will be on the same host. Once the beta test ends, some of you will need to migrate off onto production Xen boxes with other Xen Linodes of the same plan. That will be another one-click migration.

I found a bug, where should I report it?

Post a new thread in this forum. That way, we can verify and track any bugs that are found.

Is there a Linode-Xenbeta IRC channel?

Yup. #linode-xenbeta on OFTC.

http://www.linode.com/irc/

Wait a second. I thought Xen could use NPTL!

It can, but with a performance hit. Feel free to turn off the "disable /lib/tls" helper and move /lib/tls.disabled/ back to /lib/tls. Debian has a "libc6-xen" package you can install, or build libc with "-mno-tls-direct-seg-refs".

Will there be 2.4 and 2.6 Xen kernels?

Xen 3.0 only supports Linux-2.6.

What doesn't work yet?

All the features of the Linode Manager work as they did under UML.

–---

If there are other questions, please let me know and I'll add them to this announcement.

Thanks!

-Chris

41 Replies

@caker:

…namely: performance, the ability to have SMP Linodes,

-Chris

I signed up since my Linode is such a CPU hog. I'll be all over SMP.

James

@caker:

…namely: performance, the ability to have SMP Linodes,

-Chris

Well, that was easy.

Performance with apt-get is noticeably better. Floating point performance is quite good, the Ubuntu atlas3-sse2-dev (Automatically Tuned Linear Algebra Subroutines with CPU SSE2 extensions) installed natively with apt-get and runs well giving excellent linear algebra performance. Python pickling/depickling of complex objects is speedy.

I do not see multiple CPU's (with top) for SMP testing, drool drrrroooool slobber…

James

Linode Staff

@zunzun:

I do not see multiple CPU's (with top) for SMP testing, drool drrrroooool slobber…
It's coming. I'm trying to get a kernel newer than what Xen comes with (2.6.18 ) to work – but it may have to wait until tomorrow. I'll let you guys know once it's working…

-Chris

I use Linux 'nice'-ness to control multi-process CPU allocation, and interestingly this works considerably better on the Xen beta server. That is, the kernel scheduler seems to pay very close attention to the 'nice' level now - I had not seen this fine a granularity of CPU allocation previously. This is excellent, and will be much better for users of my web site.

James

Linode Staff

OK, we're good to go with the paravirt_ops guest kernel, which is currently 2.6.23.8-domU-linode2.

Enjoy,

-Chris

@caker:

OK, we're good to go with the paravirt_ops guest kernel, which is currently 2.6.23.8-domU-linode2.

Well, I see 3 processes at 99%CPU each - ahhhh, so lovely! Seems to work perfectly.

James

6 processes at 66% each (4/6) looks correct for 4 cores, so load balancing looks good from here.

James

The 'nice'-ness behaviour seems inverted - process with high nice numbers are being given more CPU that those with low nice numbers.

James

@zunzun:

The 'nice'-ness behaviour seems inverted - process with high nice numbers are being given more CPU that those with low nice numbers.

Well, it's working properly now - must have been my test. The box gets 4 stars out of 4 from me on both performance and resource allocation.

James

Is any space still available in Fremont for the Xen beta test?

@egatenby:

Is any space still available in Fremont for the Xen beta test?
There is, but we've got two outstanding bugs in Xen we're waiting to get resolved before setting up the pending Xen beta requests, since one of the bugs is critical. Otherwise, the beta test has been going well.

Feel free to sign up for the beta test now and we'll inform you once things are cleared up.

-Chris

@caker:

…the beta test has been going well.

I'd mark that as 'very well', personally. Only one minor hiccup.

James

> we'll be using the ionice feature of the CFQ disk scheduler instead of the token-limiter patch that I wrote for UML Does that mean there are no limits to IO? Assuming, there are some limitations, is there a way to monitor the IO situation? Something like the /proc/io_status file?

Are there any plans to offer non-Linux guests under Xen? I am very interested in using FreeBSD as a guest OS – I used it for many years from 3.0 until 5.3 and consider it to be a great server OS.

I am even willing to be a guinea pig… :)

Then they might have to rename the company *node (ala *nix, to describe unix-ish OS's). I don't think *node.com is a valid domain name, though.

Is there a Xen machine in every datacenter? I'm having 2 Linodes in Dallas now, and I thinking of moving 1 to a Xen machine. But I don't want to "leave" Dallas, it gives me the best ping from Belgium, Europe.

@tofu:

Is there a Xen machine in every datacenter?

Yes.

@caker:

What is Xen, you ask? Xen is a virtualization technology that provides a few benefits over User Mode Linux, namely: performance, the ability to have SMP Linodes, and kernel modules.
I note that the current Xen kernel has no module support - I don't particularly need it for anything urgent, but I'm a bit curious to why; is this waiting for more security testing?

Will the ability to upload custom kernels be available at some time? From what I can see, the security implications will be the same as with modules.

Last night I released a new Xen kernel, 2.6.18.8-domU-linode5, which "Latest 2.6" now points to. It's built from the latest stable Xen tree (Xen 3.2.0), and does have module support enabled. Most likely you'll need to source to this tree to build modules – so I'll make that available soon.

As far as custom kernels and other weird things: I do see support in the future, but I want to get to a point where the platform is stable first.

-Chris

@caker:

…and does have module support enabled…

Cool!

What is the incentive for participating in the beta? Is there a discount to the monthly fee?

@mstarks01:

What is the incentive for participating in the beta? Is there a discount to the monthly fee?

No direct financial incentive, but my site now runs with 4 cpus available and my tests show excellent SMP usage and floating point performance. I am continuing to test, for example I'm now checking operating system pipe performance between processes running on different CPUs.

James

@mstarks01:

What is the incentive for participating in the beta? Is there a discount to the monthly fee?

It's cool? It's fast? It's not like a linode costs that much to begin with …

Are 64-bit domU's supported in this Xen beta?

Package management is my incentive to move, not SMP or >4GB addressing. My trusty linode is the last 32-bit linux box that I'm managing. Means building custom packages twice.

@mfoster:

Are 64-bit domU's supported in this Xen beta?

Package management is my incentive to move, not SMP or >4GB addressing. My trusty linode is the last 32-bit linux box that I'm managing. Means building custom packages twice.
The current domU kernels are 32-bit. I don't know if the host supports it - here's (one cpu out of) my linode's /proc/cpuinfo if it helps:

processor       : 3
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Xeon(R) CPU           L5335  @ 2.00GHz
stepping        : 11
cpu MHz         : 2000.070
cache size      : 4096 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl vmx tm2 cx16 xtpr lahf_lm
bogomips        : 3970.75

@bdonlan:

model name : Intel(R) Xeon(R) CPU L5335 @ 2.00GHz

Xeons are 8-bit CPU's, that's why the server needs 4 of them: 8 * 4 = 32, so that the server can run a 32-bit operating system. I learned that from my years at Microsoft, don't you Linux guys know anything about computers? Macs have 32 1-bit CPU's which is why thay can't run Windows, a lot of people don't know that.

James

@zunzun:

Xeons are 8-bit CPU's, that's why the server needs 4 of them: 8 * 4 = 32, so that the server can run a 32-bit operating system. I learned that from my years at Microsoft, don't you Linux guys know anything about computers? Macs have 32 1-bit CPU's which is why thay can't run Windows, a lot of people don't know that.

Would you like to provide some sources to back this statement up?

I should also add that the current generation of Mac's use off the shelf Intel processors, not 32 "1 Bit" processors.

@mwalling:

Would you like to provide some sources to back this statement up?

I was wrong, actually Macs use 64 1/2-bit CPUs to reach 32 bits - sorry, my mistake. Windows can't run on 1/2-bit CPUs, so that is why XP won't run on Macs. I stand corrected.

James

@zunzun:

I was wrong, actually Macs use 64 1/2-bit CPUs to reach 32 bits - sorry, my mistake. Windows can't run on 1/2-bit CPUs, so that is why XP won't run on Macs.

http://www.onmac.net/

![](http://icanhascheezburger.files.wordpre … n-pots.jpg">http://icanhascheezburger.files.wordpress.com/2008/02/funny-pictures-cats-in-pots.jpg" />

@zunzun:

@bdonlan:

model name : Intel(R) Xeon(R) CPU L5335 @ 2.00GHz

Xeons are 8-bit CPU's, that's why the server needs 4 of them: 8 * 4 = 32, so that the server can run a 32-bit operating system. I learned that from my years at Microsoft, don't you Linux guys know anything about computers? Macs have 32 1-bit CPU's which is why thay can't run Windows, a lot of people don't know that.

James
@zunzun:

@mwalling:

Would you like to provide some sources to back this statement up?

I was wrong, actually Macs use 64 1/2-bit CPUs to reach 32 bits - sorry, my mistake. Windows can't run on 1/2-bit CPUs, so that is why XP won't run on Macs. I stand corrected.

James

Please, please please tell me you were saying this as a joke. I know it's early, I haven't had caffeine yet, and it's the start of a long day and possibly a long weekend, but I can very easily imagine people believing that. Please put my bootable install of XP on my MacBook Pro at ease, please put the install of XP on my girlfriend's Mac Mini at ease, and please put the Vista Ultimate 64bit install on the Mac Pro at the shop I frequent down the street at ease.

@LoganTheRed:

Please, please please tell me you were saying this as a joke.

If you tell me where I can purchase 1/2-bit CPUs, I'll say it was a joke. Deal?

James

@zunzun:

@LoganTheRed:

Please, please please tell me you were saying this as a joke.

If you tell me where I can purchase 1/2-bit CPUs, I'll say it was a joke. Deal?

James
A half bit CPU? A HALF BIT processor? What in blazes is a HALF-BIT processor? Is that like it can process a On or a Zer but not a One or a Zero? You have no idea what you're talking about. Macs all run 64 bit, X86-64 chips. They run Windows. I can reboot into my Windows partition on my Macintosh laptop here and post again if you like.

@LoganTheRed:

You have no idea what you're talking about.

I never actually worked at Microsoft. If I HAD worked there, though, my guess is that my posts could have been serious - that's the joke. My apologies for the posts, they were made in jest.

James

James, don't apologize. I was amused. And I'm not sure even now whether your respondents actually fell for it, or were just trolling back at you. Either way, it's funny as all get out.

i fell for it… i read it before finishing coffee consumption…

zunzun: bastard

@mwalling:

zunzun: bastard

I still say that Windows won't run on a 1/2-bit CPU.

James

P.S. on 1/2-bit CPUs, all data are represented by unary - as opposed to binary - numbers. Instead of ones and zeros, or yes and no, it's all maybe. Unary 1/2 bit CPUs appear to run infinitely fast, since the output of every program - no matter how complicated - is always 0.5.

@zunzun:

Instead of ones and zeros, or yes and no, it's all maybe.
That sure sounds like windows compatibility to me.

@zunzun:

@mwalling:

zunzun: bastard

I still say that Windows won't run on a 1/2-bit CPU.

James

P.S. on 1/2-bit CPUs, all data are represented by unary - as opposed to binary - numbers. Instead of ones and zeros, or yes and no, it's all maybe. Unary 1/2 bit CPUs appear to run infinitely fast, since the output of every program - no matter how complicated - is always 0.5.
Assuming, of course, the program halts. Of course, since the data store of a 1/2 bit computer has only one state, we can trivially determine if the program halts by running it until it reaches an earlier point in its program (this assumes its program is something actually useful; ie, it's not a von neumann architecture and program is not data). Therfore, this 1/2 bit computer is not turing complete, and therefore, I submit, not truly deserving of the name 'computer' at all.

@Stever:

@zunzun:

Instead of ones and zeros, or yes and no, it's all maybe.
That sure sounds like windows compatibility to me.

Once again, I stand corrected. My hat is off to you, sir.

James

i had my coffee this morning before reading this thread…

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct