Tom writes...
http://www.flowjo.com/home/videotutorials.html - we've posted some more flowjo training videos.
http://www.flowjo.com/home/videotutorials.html - we've posted some more flowjo training videos.
It's not finished, but it's testable. First, some disclaimers:
I got a good bunch of questions from a user, which prompted this post. The context here is analyzing a large amounts of 1M+ FCS3 files, ie. high-throughput analysis.
1) Do you think the PC version will sometimes catch up to the Mac version?
Yes. 7.2 is 80% there if you compare performance on single-CPU machines. Mac's big advantage is multi-threading, which we have recently implemented in a 7.5 beta version.
2) When do you plan to release PC version 8.x?
Odd numbers are used for PC, even - for mac. The next version for PC is 7.5, and after that, we start working on 9.0 & FlowDX (clinical FlowJo.)
In Version 7.5 we hope to bridge the gap by introducing support for multiple processors. This is not to say V7.5 will be "as fast" as V8, but it's going to be one step closer. Interestingly, the method we picked for scaling threads in V7 is superior to what we used on the Mac, and will support more than 4 processors as well as distributed processing across network sockets. But you, the user, won't see that difference kick in for at least several more months, since it needs fine-tuning and optimization.
3) What kind of PC hardware do you recommend for smooth operation of FlowJo?
at least 3GB RAM, for your data size. FlowJo will use up to 1.7GB, but that amount gets mirrored by the FlowJo engine's memory allocation. Since 32 bit windows doesn't use more than 3 - 3.5GB RAM, going higher won't change anything.
In therms of CPU, V7.2 series are single-threaded, so it does not matter if you have dual- or quad- core CPU, but V 7.5 will scale linearly with 2- or 4-core processors. I'm not sure what the scaling will be like with 8- or 16- threads, since disk access becomes a bottleneck.
In terms of data bandwidth, use SATA-2 based disks. Don't access big files over network.
4) Can FlowJo run with 64bit versions of Windows (XP/Vista)?
Yes, but it's not supported. That means, if you find bugs in 64 bit windows which I can't reproduce in my 32 bit development environment, I won't be able to fix them ;( But I occasionally test the software in winXP 64 bit and it seems to work OK for version beta 7.5.
Version 7.2x seems to have a problem with vista 64 bit in that it does not find the hardware address of the computer. It's not likely we'll have "official" 64 bit support in the V7 series.
5) Can FlowJo adress more than 4 GB RAM?
In 7.5, since each "thread" gets it's own PID, it will be able to allocate it's own 32bit-compatible amount of RAM (~1.7GB). So if you ran 7.5 on a 64 bit computer which has 8GB and 4 processors, with only 4 threads you should be hitting pretty close to 80% RAM utilization. This is hypothetical, I don't have a windows computer on which I can test this claim.
6) Is RAM more important or the processor's performance?
Yes. This will be true in future versions as well regardless of processor scaling. RAM is ~1000 faster than disk, on average. When computer gets low on RAM, it uses the disk to swap chunks of calculations that don't fit into . Feeding data from disk to the processor imposes a 1000 fold performance penalty. At that point, it doesn't matter how fast the processor is!
7) Do you think it's possible to reach comparable performances with the PC version at all, or should I go and get a Mac (in case, which one would you recommend?) regardless the non-existing support here?
over the next year, while we fine-tune the new multithreading in PC, you should use a Mac for the most demanding analysis.
Apple Care plan (~300 bucks) gets you full support from the source, but if your mac goes down you have to fedex it out - so it's usually down for a week. out of the 15 or so macs I use in testing, some of which have been online for 5+ years, I've only had to repair two, and they were both laptops.
For a new desktop, the best "value" is iMac. the best performance is the quad-core mac pro (the flagship model is 8-core, so the 4-core should be much cheaper by now!)
we're getting more and more questions about compliance to this. I intend to grow my own understanding of these regulations and will use this post (static link) to keep track of that.
Most interesting fact about this, which captures some of the definition of what it means to be "compliant":
Q: Can a vendor guarantee compliant software for Part 11?
more of such facts here - http://www.21cfrpart11.com/pages/faq/index.htmA: It is not possible, nor correct, for any vendor to offer a turnkey 'part 11 compliant system', as this would involve both the vendor AND the user to comply with procedural controls.
also fun to read FDA's warning letters - http://www.fda.gov/foi/warning_letters/s6847c.htm
and wiki entry on this regulation which suggests it's getting a lot of challenges and resistance from the industry:
As of 2007, broad sections of the regulation have been challenged as excessive, and the FDA has stated in guidance that it will exercise enforcement discretion on many parts of the rule. This has led to confusion on exactly what is required, and the rule is being revised. In practice, the requirements on access controls are the only part routinely enforced. The "predicate rules" which required the records to be kept in the first place are still in effect. If electronic records are illegible, inaccessible, or corrupted the manufacturers are still subject to those requirements.
So, you miss the old "immediate" recalculations from 8.7.1 version? From an email I sent to one of our Users earlier today asking about this -
we changed this behavior to address certain flowjo crashes. The most stability we've achieved in the program, is in this version, because of this change. The crashes caused by instant live recalc affected all speeds and models of macs, not just the older ones. If you haven't hit this, you're one of our more careful users who probably waits until "tasks" are finished before you queue up more gate movements, batches, etc.. ;)
To get the old behavior of recalc with a keystroke, click on All Samples and hit [cmd]+[=], or batch, or make a table, all values will be recalculated as needed. We cannot post version 8.7.1 and previous because of fairly major stability concerns on all Macintosh platforms (and various other bugfixes.)
I'm glad Ryan gave me a gigabit link to our email server. Or am I... ;)
:) a couple of movies in the iphone format. Drag them to your itunes movies, then you can synch them from the iphone tab.
baseline subtraction: the instrument keeps track of background fluorescence as events go through, and the average fluorescence in between events is subtracted from each event. Events without fluorescence will sometimes be recorded while the surrounding background measurement is > 0, causing these events to be assigned a negative fluorescence value even before compensation correction.
As an example, imagine a nice gaussian distribution from channel -100 to +100. If you throw away baseline subtraction, half of it will now be in the first available bin on the log scale, causing a "spike" like appearance.
(todo: explain why we see a spike in FCS3 format in FlowJo like the screenshot above.. is that width basis compression? )
The goal of this exercise will be to combine 8 tubes of an antibody titration experiment into one file and then display it as Fluorescence vs. tube #. Our Basic Tutorial data set (google "flowjo basic tutorial") will be used.
First, I create some sort of gate delimiting my cells of interest. I don't want to concatenate all the events, just the interesting ones. I called my gate "Lymphocytes" and applied it to the group:
The next thing we will need is a keyword which we will fill with some values in order to identify the tubes. I'll be using "tube number" filled with integer series {1,2,...8}. Other ideas include dilution factors, or dilution concentration of your antibody, etc. - as long as the values are numerical.
Note: if you need a new keyword, click Workspace menu, new keyword. Otherwise use one of your pre-existing ones. You can access those via Workspace/edit columns.
So here are my tubes lined up with tube numbers in the keyword column:
Note: you can quickly make value series. Double-click in the cell which corresponds to the first editable keyword value (could be blank, or filled. ). Then option-click (hold down option) the workspace menu, and choose "create val series". The dialog is self explanatory and helps you create any sort of numerical series you might need for this task.
Next, click any of the "Lymphocytes" gates and click Workspace/Concatenate. Most of the options you'll see in the Concatenate dialog are self-explanatory. The ones to pay attention to:
- Create Additional Parameters - click Choose and pick the keyword which stores values you wish to make into a parameter in your concat output.
- Batch Concatenation - be sure to select the right option and number here! In my example, I picked "concatenate successive files together" and N=8.
Then let it rip.. it'll ask you where to put the output file. Make a new workspace, and drag in your concatenated file. You'll notice the parameter list will now include the tube number parameter, or whatever, so you can graph vs. that.
Note: in case of FCS3 data, flowjo will try to recognize if your keyword's values create a patter better seen in log and automatically adopt log scaling. In this example, we're using a series of numbers which are linear.
DD Reader Ben has sent in some of his own usage examples in titration: