I need a new computer and I want to hear what others think I should use.
I am not married to any particular architecture or brand, but I use open source software and hardware where possible as both a cost control measure and for transparency. I have a strong interest in reducing power consumption (the new lab will be off grid), but not at the cost of capability. My current and future uses for a computer are as follows, in order of priority, not necessarily frequency of use:
1. CAD / CAM workstation. My models have moved from simple geometries to multipart assemblies with articulations and structural analysis. It is likely that I will add 3D scanning and vision processing within the next 2 years, increasing the computational and memory demands considerably. I use dual monitors for this type of task.
2. Spreadsheets. Yeah, I know that this is usually no big deal, but the spreadsheets I make range from financial / economic analysis (no big deal) to communication link budgets for deep space probes and sensor data correlation and analysis (a big deal, especially if a fourier transformation is required).
3. Research. When I am doing research I will generally have many PDF documents open, a word processor, a spreadsheet or two (see above), and a web browser with a ton of tabs, etc. It adds up quickly and the longer it takes to get the data and move it, the slower the progress. I use dual monitors for this type of task.
4. Coding. We haven't done much coding for projects, but once projects reach a certain maturity this will change. While compiling a program for the system itself or other platforms (I do embedded Linux work), I need the ability to continue working without a major slowdown. I use dual monitors for this type of task.
5. Magnetic field and CFD analysis. This has become much more complex over the last 2 years. My current PC has been crunching the same 18-26GB dataset for 2 weeks and was only 30% done. More analysis tasks with more detail are coming for future projects over the next 2-3 years. This task usually runs in the background.
6. Virtualization. Unfortunately much of the software I need to run is not available on the same platform as the other important software. While much of this is a choice and preference, some is not. As an example, I need to run GNU Radio and GPredict under Linux and AGI's Satellite ToolKit (STK) under Windows concurrently, sharing data.
7. Video processing. As my projects mature, I would love to share the build, testing, and documentation in both written and video format. Doing a little post production on the videos would make them better, and I would not mind publishing a weekly vlog. I see this becoming a large amount of the work volume over the next year to two years.
8. Software defined radio and similar spectrum processing tasks. While not terribly intensive over a long term, these tasks can be quite computationally intensive in bursts. I don't anticipate a change in the moderate amount of work I do in this area, though the complexity may increase, and with it the computational requirements.
9. Communication and data entry. My use of social media and email for communication is fairly typical. Neither this nor data entry tasks are a major factor in the selection of the new PC since much of this will be automatic and/or involve a tablet, chromebook, or smartphone.
I am evaluating 4 different options in meeting my computational needs over the next 3-5 years. The possibilities are as follows:
1. Do I buy a new PC, and if so, what? I have a fairly generous budget in mind, but this would remove funds from other projects, delaying them further.
2. Do I build a PC, and if so, what specs / components? I am no stranger to building a PC from components, having been a PC tech and modder since the original IBM PC.
3. Do I build a computer using a different architecture (eg. ARM / cell processing supercomputer), and if so, what specs / components? I can do this, but the system's capabilities must be compelling to offset the time spent on learning curves and tweaking.
4. Do I build / purchase multiple PCs dedicated to specific tasks, and if so, how are the tasks split and how is the communications between them handled? This is a possibility, but the increased cost and energy consumption must be offset by parallel speed and reliability.
Please cast your vote and comment below. If you have another solution, please comment as well. Thanks for the time. :)