We’ve been asked the same question before: “What kind of PC do you need for this installation?” Most of us have also felt that same feeling of “How would I know?! We haven’t even started yet…” Between GPU’s, CPU’s, RAM, storage options, mother boards, brand names, chassis options, power supplies, and warranties there are a ton of different ways that you could possibly mess this up. Over all my years of working on large-scale TouchDesigner installations, I’ve put together a strong methodology for how to spec a TouchDesigner PC and some of the things you can think about while spec-ing yours. Let’s dive in.
Know The Workflow
The most important part of the process is actually sitting down and figuring out what the TouchDesigner PC needs to do. Is it a glorified movie player? Is it a 2D generative shader instrument? Is it a 3D SOP-based data viz tool? Is it a projection mapping media server? Is it a glorified Kinect 2 dongle? These may seem like silly or obvious questions but they lay the foundation for everything else in the process because at the end of the day, we want to try to avoid spending more money than we need while making sure we have more than the required amount of processing power to get our project done. This also requires that you learn more about the underlying processing of TouchDesigner so that you’ll know that a GLSL TOP will generally mostly tax the GPU’s pixel shader while dynamic 3D geometry in SOPs will generally tax the CPU. Even the different movie codecs completely change the resource usage of a Movie File In TOP.
I suggest a simple strategy for this: make a list of all the features inside your project and then rate them each on a simple scale, such as None, Low, Medium, and High usage for each of the CPU, GPU, storage speed, and storage space. This will give you useful and thorough information that can be invaluable in deciding what you need
Here’s an example I just put together for a project that does some media playback, projection maps it, has some asset scheduling features, and then finally some dynamic graphics created with SOPs:
I suggest doing something like for all of the projects that require you to spec your own PC.
Level of detail
The level of detail and granularity that you may or may not be able to achieve will be related to how deeply you understand the under-workings of TouchDesigner and the different file formats you’re using for assets and the different types of processing you’re doing. The more detail you can put into your thought process, the more accurate of a specification you’ll be able to confidently create. The example below is for similar project as above but with more detail:
Let’s quickly use the 2 charts above to make some sample specifications! First up:
Looking through this, I can immediately think to myself: “Well, I should probably invest in a CPU with high clock speed so I don’t get bottlenecked by my dynamic SOP workflows, I could probably use a mid-tier GPU, and then I need some fast storage but not a ton of it.” Convert that thought process into real specs and it could be:
- Intel Core i7-9700K Coffee Lake 8-Core 3.6 GHz (4.9 GHz Turbo)
- PNY Quadro RTX 4000 VCQRTX4000-PB 8GB
- SAMSUNG 970 EVO M.2 2280 500GB
And there you have it, the basis of your TouchDesigner PC spec. I know a lot of the product lines pretty well at this point, so I know that I’ll want an i7 and that the latest Quardo in the 4000 level will suffice and the Samsung 970 is what I want for storage (most of the time). The next post in the series will highlight more specific product lines, but for now you need to know what you need!
Let’s follow that same steps for the next example:
I like this! We have more details! I love details. They allow you to make really surgical decisions. So my thought process while looking at this one is similar to the above but more detailed: “Hmm, well I’ll need a high CPU clock speed to deal with SOPs and H264 videos, I’ll probably benefit from a higher core count since H264 can be multithreaded read in TouchDesigner. Medium level GPU will work fine and I don’t have to worry about GPU memory at all. Looks like I could get away with under 200GB of storage space and it should be fast for my HAP assets.”
And if we go and turn this into a spec:
- Intel Core i9-10900X Cascade Lake 10-Core 3.7 GHz
- PNY Quadro RTX 4000 VCQRTX4000-PB 8GB
- SAMSUNG 970 EVO M.2 2280 250GB
Voila! With more details I was confidently able to downgrade the storage to a smaller capacity, and then upgrade the CPU for 2 extra cores that would be helpful in decoding H264 assets.
When you’re just starting out, I would suggest doing this for every project that comes your way. You’ll get a firm handle on the whole thought process after a few projects and then you can figure out for yourself if you need the whole process or if you can do most of it in your head. At this point in my career, I don’t need to build these spreadsheets anymore because as the client rattles off their desired features I can already figure out the TouchDesigner PC specs off the top of my head.
In the next blog post in this series, I’ll talk more specifically about the critical pieces of gear that go into a TouchDesigner PC including CPU, GPU, and storage. Then the final piece will cover whom to buy the PC from vs making it yourself and some considerations about form factors.
As unexciting as it may seem, this is ultimately the most important step in creating your TouchDesigner PC spec. If you don’t actually know what you’re going to be doing on the system and what kind of processing power you’ll need in the main areas of CPU, GPU, and storage, then you’ll always pick the wrong parts and spec your computer incorrectly. The system I laid out of creating a small spreadsheet with all the features and ratings is an easy-to-follow strategy that can help bring clarity to your overall process. Enjoy!