Seeking advice:

I'm a full-time drupal developer using a Dell laptop with a core 2 duo 1.8 GHZ processor, 3 gigs of RAM, and an SSD SATA drive.

All my colleagues are on Macs and they make fun of me for sticking with Windows, but I can't stand the proprietary-ness of Macs. Other than Drush, there is no reason for me to switch. I'm happy with my Win7. But I need Drush.

I tried cygwin -- way too slow. I benchmarked it at something like 20X to do the same drush task as on a mid-spec'ed unix desktop box (a work server). "drush sm" took 2 minutes.

Then I tried virtualbox (without quickstart, just did it myself) -- still really slow -- benchmarked something around 7X greater the unix box. Now probably my laptop is considerably lower spec'ed than the server, but the difference still seemed ridiculous. Has this been everyone else's experiences? Basically, are you finding Drush running under virtualbox fast enough for you to be happy? As an overall experience, are you happy with this, or do you find yourself wishing you were on linux/mac?

In any case, I need to upgrade -- to an Intel Sandybridge desktop is the plan -- the gains from that alone will be huge. But now I need to decide between building a Hackintosh, installing Windows and running Drush via Virtualbox (using quickstart, presumably), or installing Ubuntu and running Drush natively and using virtualbox for my Windows apps. Any thoughts on that?

I figure this project was the best place for me to ask this question.

Thanks muchly,
Shiraz

Comments

niklp’s picture

I'm in a remarkably similar position, so I'm leaving this as a subscription marker, cos I want to know too :)

Finding the virtualbox instance quite slow; wondering (read: assuming) if this is primarily a hardware bottleneck. Similar specs to above, same host OS etc.

MichaelCole’s picture

Hah! That's funny.

I think Macintosh's are great for people who never need to do anything complex. I recommend Macs to my parents, small children, and anyone else I think will annoy me by asking questions they could easily Google. Any yes, they *pay* for that simplicity with more than money - but in exchange they get a Mac Store with patient Geniuses.

That said, I value the diversity of it all. I'm sure your colleagues are just at that age :-P

Anyways, flame-baiting aside. Macs are great for graphics and media, and windows is great for business applications.

Having tried all kinds of PHP dev environments on all kinds of platforms (except Mac). I recommend developing on the platform it's deployed on. For LAMP that's Linux. I've been using Ubuntu for almost 2 years as my main desktop and it's been great - both personally pleasurable, and great for my work productivity. I still keep a windows box around for gaming and the occasional IE-only web app.

I'd recommend this:

1) Keep you old computer around for awhile, continuing to use it as your primary desktop.
2) Install Ubuntu 10.10 and/or Debian on your new computer and start to experiment with it. You'll be into it or you won't. If you do, check the hardware for linux compatibility. It's a PITA, but saves time later.

Ubuntu's 11.04 has a new interface to it that looks like it's designed for touch screens. I tried it out, but it's probably not the best UI for a software developer. I think the next Quickstart will either have the Ubuntu 11.04 "classic" Gnome interface or move to Debian.

For hardware and performance, check here: http://drupal.org/node/836948. I'd get an ultra-fast SSD and 8 gigs of mem, then the fastest CPU you care to afford.

As for Hackintosh, it's a crime to build one isn't it? I've consciously chosen to break the law in my life (I was an Iraq war protester and spent a weekend in jail for it), but ask yourself if you really want to be involved with people like that? Supporting their work as they brand you a criminal?! This is why I moved to Linux and free software.

Mike

MichaelCole’s picture

Status: Active » Fixed
shiraz dindar’s picture

Status: Fixed » Active

Glad to know I'm not alone! Cheers.

I should add -- I read a well-researched article yesterday that looked at real-world performance of virtual desktops, specifically in scrutinizing the hardware virtualization that AMD and Intel have started putting on their processors in the last few years (now mainstream). The overall conclusion of the article is that performance in a virtualized environment is highly dependent on the running application -- specifically, CPU is handled with very good efficiency, but hardware interrupts with very poor efficiency, and any i/o, including disk, also with quite poor efficiency -- the latter would well suggest that Drush would never run well on a virtualbox, unless the system was super spec'ed out.

MichaelCole’s picture

Hi Shiraz, do you have a link to the article?

I think this supports the idea that disk i/o is more important than CPU. E.g. spend the money first on 8 gigs of memory, second a fast SSD disk (500mb/s), and third on a fast CPU. Intel may be faster but it's stupid $. For Quickstart, AMD Phenom II is plenty fast.

Also, for the record, this project is "Quickstart", which is a Virtualbox PHP development environment. Drush is a separate project that is used by Quickstart.

Mike

shiraz dindar’s picture

Hi Michael,

Just to clarify, my last comment was in response to NikLP.

First, the article: http://www.anandtech.com/show/2480/13 -- that's the last page of the article with the conclusion as I'd noted.

Also, for clarification -- yes, I'm aware of what quickstart is in the context of Drush.

I don't want to feed the flames, but I do want to clarify that my colleagues are very much professionals -- some are designers and some are coders. Some are regular contributors to Drupal. I believe it's the aesthetic which draws them to the Mac, as well as the seamlessness of the experience -- all commendable in my books, but again, not enough to convince me to tie myself down to a single company like that -- a company which I think will soon be seen in a similar light as Microsoft once was.

On the Hackintosh question, in fact on the tonymac forum, it appears that as long as people pay for their copies of Snow Leopard, Apple is happy -- or at least as happy as they can be, realizing that those folks probably would have never bought Macs anyhow. For example, the moderators delete any posts which discuss technical details of installing upcoming OSX versions (which would necessarily be pirated); the build guides always strongly encourage legal OSX purchases as well. It's a grey area ultimately. That said, I understand the motivation towards an explicitly free OS.

The more I'm thinking about it, the more I'm realizing that I just want to go with Ubuntu. I've waited for years for the OS to feel polished enough. I love the command line for what it does, but I also want a good, polished GUI for other stuff. Now I think Ubuntu is at that level. All our work is deployed on Linux servers, and I do a lot of sys admin remotely on debian boxes, so it only makes sense now.

Ironically, in the course of researching the viability of Ubuntu to replace my laptop, I realized that I could just install it on my laptop and extend its life some time. So between my post yesterday and now, that's become my plan -- Ubuntu on my laptop with a virtualbox windows on top of that for the occasional Windows-only app.

Honestly, I just wish we'd all convene around one single open source OS. It's all about the critical mass. The way it is now -- splitting developer efforts between 3 entirely different platforms, is just plain wasteful.

Thanks for your feedback!

Shiraz

MichaelCole’s picture

Status: Active » Fixed

Hi Shiraz,

Thanks for the link to the article. I didn't know what nested paging was - cool! I shouldn't troll on the mac/win/lin thing. My bad :-)

Glad you found something that works for you. Good luck!

Mike

shiraz dindar’s picture

Status: Fixed » Active

Cheers Mike!

Sean Buscay’s picture

For a PC user, I can tell you QuickStart (and Drush) can be really fast on a Windows 7 64 bit host. 

My specs are high compared to an older computer but fairly standard with new ones. This is an Alienware Laptop. 

--Intel Core i7 740QM Quad Core Processor, 1.73GHz (2.93GHz Turbo Mode, 6M Cache)
--8 Gig Ram
--Solid State Drive

I use the QuickStart scripts to build a 64 bit Ubuntu QuickStart Dev Environment. 64 bit just seems more stable to me, especially when running python based systems like Mercurial. It doesn't time out during big repo syncs. 

With the system specs I listed, I typically give QuickStart 2 processors, 4 cores, and 6.5 G of ram. The performance is really good. 

One thing you can do to speed up Drush is to increase PHP's memory_limit in the cli php.ini. From the command line run: php -i 
to get its location. 

I also started using VMWare rather then VirtualBox. It seems a little more zippy in Windows 7. 

Hope this helps. 

caschbre’s picture

@Sean...

I'm also running Win7 x64 but I'm fairly new to VMs, Ubuntu, etc. I've been trying to figure out how to get the maximum performance with my machine. I'd be interested in hearing more how you've gone about getting VBox to use multiple processors, how you've gone from VBox to VMWare, etc.

I'll say that right now I'm pretty happy with the performance I get just from following the quickstart install instructions. But I'm always looking to get more. :-)

Sean Buscay’s picture

Hello caschbre

In VirtualBox you can change the number of cores vbox uses within the "Processor" tab.

See: http://www.virtualbox.org/manual/ch03.html#settings-motherboard

Michael gives performance tips here: http://drupal.org/node/836948
The link includes his recommendations for CPU settings.

Switching to 64 bit Ubuntu might improve your speed if you have a 64 bit host. In this case you can install Ubuntu 64 bit on a Virtual Box and then follow Michael's directions here: http://drupal.org/node/788994

I'd make sure the IDE's and other dev tools you get are the 64 bit versions.

If you want to build one for another vm system like VMware then you can use the same scripts. I build fresh instead of trying to convert the Quickstart Virtual Box download.

Also, it's not required, but you can edit out VirtualBox specific lines in the install scripts, such as:

sudo apt-get -yq install virtualbox-ose-guest-x11

Please let me know if I can answer anything for you in more detail if you need it.

MichaelCole’s picture

Status: Active » Fixed

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.