« FlowJo for Macintosh - annotating the data post-acquisition | Main | Dongleoids' index of Proliferation/CFSE variables »

May 16, 2007

What are the real system requirements for FlowJo?

What are the system requirements for FlowJo? The basic system requirements are as follows:

Macintosh:
OSX 10.2.8 or higher
512MB RAM
1280x1024 (19 inch) screen
network connection

Windows:
Windows XP, Vista
512MB RAM
1280x1024 (19 inch) screen
network connection

Anyone who's used computers to push their limits with complex data like multicolor FCS files, knows that basic requirements only cover what it takes to open the program ;) what happens after that, depends on your analysis... let's examine some common variables of performance.

Obvious gains in performance come from CPU speed. Generally speaking, a 2GHz processor will be twice as fast in calculations as a 1GHz processor. FlowJo for Mac has a capability of using multiple processors (as many as you have, including 8-core macpro configurations) - so parallel processing is another quick gain in performance.

Let's say you have all the CPU speed in the world, what would be another big bottleneck? well, Random Access Memory (RAM) - but only if your analysis is so big it doesn't fit in your current configuration. When your computer runs out of RAM, it has to "take notes" on its current calculations to the disk, which is called memory swapping (or virtual memory). Accessing data from a hard disk is roughly 1000 times slower than reading to/from RAM - therefore once you hear your disk(s) grinding a lot- it's probably time to get a few more sticks of RAM. On the other hand, if your computer has enough RAM, adding more RAM will actually make it slower (by a few percent), because the OS has to keep track of more RAM , which takes additional processor cycles.

Does the type of CPU matter, as well as the speed? Absolutely... not all 2GHz processors are created equal. FlowJo will benefit from higher amounts of L1 and L2 caches, as well as faster system bus speed and higher RAM frequencies.

Does the graphics card matter? To a point.. FlowJo doesn't take advantage of any hardware 3d acceleration, it only uses 2D. PCI-E cards tend to be faster than AGP cards, which are faster than PCI cards. if you've got one with 64MB RAM, it's probably sufficient.

What about Screen Size? This is critical for me - I have tried several monitors, including the high-end apple 24 and 30 inch models. I've settled for a 24 inch dell monitor. I have it rotated 90 degrees, running at 1200 wide by 1920 high pixels. I find the tall vertical space very helpful in arranging all the windows necessary to debug our clients' documents in tech support. Often I have to do it side-by side with an email window. The more space you have to display windows, the less time you spend moving them around, the more efficient your analysis becomes.

Does the Hard Disk matter ? Yes, but only if you have enough RAM and CPU to a point where loading data becomes a bottleneck. The faster you can read the data into RAM, the faster you can calculate/manipulate it - so the faster your disk the better your performance. SATA-300 disks are very fast, SATA-150 are also pretty good, and IDE disks are generally crappy.

Does the Network speed matter?  Very yes! If the rate of the incoming data is slower than the computer's ability to process it, the CPU has empty cycles and it goes to waste. It always kills me when someone analyzes 2GB files on their brand new Mac Pro .. but over a 10MB/s connection speed. This uses about 20% of the computer's potential. The same is true about CD drives and other media - they are generally MUCH SLOWER than the built-in disk in your computer. I have tested a gigabyte connection - it is still slower than local analysis (SATA-300 disk), almost by 100%.

So, what would be sweet Analytical Science Station configuration for FlowJo?

Version 8(mac)
Mac Pro 8 cores
2x SATA 300 disks
RAM to match your analysis needs.Don't forget to split your RAM equally across the two add-on boards - to increase RAM bandwidth.
gforce 73xx/76xx or ati 19xx series video card

Version 7(PC)
This one is a little tricker because of the great heterogeneity of PC hardware.

I definitely recommend a separate disk for your FCS data, and a separate one for the windows boot partition. SATA 300 disks are the fastest for the money. For video, same as mac..  low-to-mid range nvidia or ATI card will do the job.

For CPU, since we don't support multiprocessing in Windows yet, get the fastest single-core CPU you can get, or if you like to tweak, get a low-end core2duo chip and overclock the sh*t out of it.

The best performing CPU I benchmarked is the 1333MHz FSB edition of the xeon core2duo series coupled with 667MHz RAM (most of the other c2d chips use 1066MHz FSB and 400MHZ RAM). However this setup is wasteful for FlowJo because the other core of the xeon processor sits idle  (unless you like to scroll your workspace at high resolution while it's calculating, which is controlled by a different thread)

FlowJo for Windows will take advantage of up to 2 GB RAM, but after that, it seems to have trouble allocating more RAM even if it is available. If you have analyses requiring more than that, you should get a Mac - and save time.

Comments

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment