Skip to content
Zwetan Kjukov edited this page Nov 22, 2015 · 4 revisions

Hardware Setup

For a very long time time the whole development of Redtamarin
was based on Virtual Machines.

My main OS is Mac OS X, I setup different VM under VMware Fusion
for Windows 7, Linux Ubuntu, etc.

I went trough different phases

  • first, upgrade the RAM to 16GB
  • second, move the VM to an external HDD
  • share a folder between VM
  • etc.

It's good, but not good enough

  • even with 16GB RAM I can only have
    1 VM open on top of the main OS
    if I need a 2nd VM, I need to pause VM1
    open VM2, then pause VM2, to re-open VM1, etc.
  • the compilation is time consuming
    for each OS I need to compile 6 executable
    3x in 32-bit and 3x in 64-bit that means for each releases/updates
    I need to compile 3x (OS) x 6x (exe) = 18 executable
  • while some compilation are running in a VM
    I can not work on another VM
  • if I'm working on some code for a particular OS I can not quickly open another OS to test in parallel

To solve those problems I need to scale the hardware part
and I know only 3 way to do it:

  • buy a new super duper workstation
    that can use 32GB+ RAM and bigger CPU
    to open more VM under one OS
  • buy/rent remote servers
    with their own CPU and RAM
    and remote control them
  • buy smaller/cheaper machines
    with their own CPU and RAM
    and remote control them

The Super Duper Workstation

Because I like to work under Mac OS X that would mean to go with an iMac
or a Mac Pro and max out the RAM.

I like Apple hardware but sorry the price tag is a bit ridiculous
and I also had a bad experience with an iMac 27".

With the iMac 27" I thought I could reuse it either
as a spare screen or a spare remote machine and it died
exactly 1 month after the end of AppleCare
resulting on being able to reuse zero of the hardware.

I come from a independent point of view where I assume
the production costs myself, if something break I should be able
to replace it on the spot and keep working the same day.

A combo like the iMac is just bad for that scenario.

Something like the Mac Pro is good but the total cost of ownership
is simply too high, even with a 3 years AppleCare
eg. if the hardware die 3 years and 1 month later
you are screwed.

A compromise would be to use a replica of my current setup:
a recent mac mini with 16GB RAM.

But wait... I just need Apple hardware to run Mac OS X,
to run Windows or Linux I can use any other hardware.

The Remote Servers

Rent some servers on AWS and remote control them.

Technically it is possible and it would work fine,
except for Mac OS X, you can only legally run
Mac OS X on Apple hardware.

Yes I is possible to rent Apple servers: MacStadium for example
but then your cost is a rent related to time.

But when you think about it, a remote server that remote
is not good at all and the cost of ownership will scale up
with time.

What I really need is to be able to scale the hardware locally and cheaply.

The Smaller/Cheaper Machines

In the 90s it's how you did it: you bought your motherboard,
your CPU, your RAM, your HDD, etc. and you assembled the whole
thing yourself (how I started =)).

But hey, thanks to decades of Windows PC hardware, it still works
you can still assemble your own machine on your own budget.

Here exactly what I need to work on Redtamarin:

  • a computer with at least 4GB of RAM
  • if possible with a fast HDD (related to C/C++ compiler/linkers etc.)
  • all of this x3
    • for Mac OS X
    • for Windows
    • for Linux

And I already have a mac mini with 16GB of RAM,
so in fact I just need the hardware to run Windows and Linux.

Also I don't need screens or keyboards, I will simply
remote desktop onto the machines

  • I can not work at the same time on different machine
    so switching screens is good enough
  • but I do need the machine to keep running
    even if I'm not in front of it
  • I need the screen and keyboard to be responsive
    not a problem over a local network

Here the config I came up with:

Name Price
Gigabyte GB-BXBT-2807
BRIX / Ultra Compact PC kit
120€
Corsair CMSO8GX3M1C1333C9
8GB RAM
~50€
SDSSDA-120G-G25
SanDisk PLUS 120 GB Sata III SSD
~50€
total cost 220€

Pros:

  • cheap price
  • small size
  • will boot from USB
    either Windows or Linux
  • support
    • Windows 7 64-bit
    • Windows 8 32-bit / 64-bit
    • Windows 8.1 32-bit / 64-bit
    • Windows 10 64-bit

Cons:

  • manual assembly
  • manual install
  • max 8GB RAM
  • Intel Celeron
    other version supports i5, i7, etc.
    for ex: GB-BXi7-4500

So yeah it is a compromise, it's the logic of extending an already existing desktop
and not to replace it with a full blown desktop, I could have gone lower in the spec
(4GB RAM, 60GB SSD) but I would have stayed in the range 100€ - 200€,
going higher in the spec (16GB RAM, i7 CPU) and there the price would go up in the range of 500€ - 700€.

In short, you trade "time" (the time to assemble it, the time to install the OS) for a cheap price.

Clone this wiki locally