Friday, March 4, 2016

Break-Even Performance/Cost Evaluation of Two Computers

So, my cheapie motherboard is on it's way and still waiting on my Pine64 to be shipped.  Hmmm...  I have been wondering how I can evaluate which platform will get me the best 'bang for the buck.'  Well, the main job of these machines is to use ImageMagick and maybe some other image utilities, to comb through hundreds (or thousands or millions) of photos and identify meteors.

So...  I start at total system cost.  A complete Pine64 should cost about $40 (inclusive of processing board, flash drive and power supply).  A complete, low-end AMD system using an AMD Dual-Core Ontario C-70* processor  (from NewEgg) should cost about $85 (inclusive of motherboard, processor, 4GB RAM, flash drive and power supply).

I want to evaluate which is a better value based on the amount of time required to process the same 100 images through the same processing steps.  It is really a pretty simple calculation; just required me to open some cranial doors to past algebra classes...  Those door hinges were rather creaky this morning. :-)

The calculation is simple and based on the ratio of  costs; in this case, 40/85.  Let's say the Pine64 requires 10 minutes to process 100 images.  For the AMD solution to be a better bang for the dollar, how many minutes should it take on the AMD platform to process the same 100 photographs?  simple...  10 * (40/85)  or 4.705 minutes.  Any longer and the Pine64 is a better deal.  Any less and the AMD solution is better.

And...  by inverting the ratio, we can solve how many minutes are required by the Pine64 to have a higher performance; 85/40.  Let's say the AMD requires 5 minutes to process 100 images, then 5 * (85/40) = 10.625 is the breaking evaluation point.  If the Pine64 takes less than 10.625 minutes, it is a better deal.

So...  Some algebra...
p1 - Price of system 1
t1 - Time to perform a process on system 1
p2 - Price of  system 2
t2 - Time to perform a process on system 2

t2 = t1*(p1/p2)  - use if t1 is known and looking for t2
and
t1 = t2*(p2/p1)  - use if t2 is known and looking for t1

If the real world results are less than or equal to the above results of t2 or t1, then that system is better in terms of performance/cost.

Now, back to something a bit more simple - website migrations, SQL optimizations and thredifying single thread processes...  oh boy oh boy.

* - Processor and Board Disclaimer - Yes, I know the AMD C-70 is an older, less powerful processor.  That, however, means that available motherboards are quite inexpensive.  Plus, the power consumption of the C-70 is really very low - big plus.

No comments:

Post a Comment