Seeking Wisdom and Opinions on my Workstation

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Post Reply
shark
Posts: 12
Joined: Sat Mar 05, 2022 4:24 am

Seeking Wisdom and Opinions on my Workstation

Post by shark »

This is a rather pre-FreeCAD question - not sure where to put it, thus... open discussion.

I have this M1 Macbook Air - its amazing for what I do. Not a gamer, streaming video is about the most cpu intensive thing I do.
I have a bluetooth mac mouse (clearly not the best), a bluetooth logitech keyboard, a dongle that gives me 1 hdmi output (there are ones with two).
Currently I use a 30" Samsung TV at 1360x768 and the lappy in clamshell. Its a decent start. Buuut...

Should I buy two of the same monitors? FreeCAD looks like the toolbars can eat up a lot of screen real estate.
Maybe just two cheap 1080 smart tee vees? I have a 50 inch SONY 1080 but it would almost be maybe wall mounted for my web browser and final pics.

Should I buy one of those futuristic looking CAD mice with buttons all over? (it has to be ambidextrous)
Beer fridge?

What about the interesting trackball?
Is it superior to a mouse?
If I get into this program a lot repetitive strain will become an issue.

These seem like very basic questions, but I want to build this idea the best from the ground up, and clearly there are tons of experts on this forum.

If you had a chance to re-do your CAD workstation setup, what would you recommend I consider before I spend some hard earned cash?
chrisb
Veteran
Posts: 53919
Joined: Tue Mar 17, 2015 9:14 am

Re: Seeking Wisdom and Opinions on my Workstation

Post by chrisb »

I worked for pretty long time with an older MacBook Air. The main issue was the real estate size of the screen. I had no mouse at all and got pretty good accustomed to the track pad.
I would recommend to start with the second monitor and add further hardware only when needed.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
onekk
Veteran
Posts: 6144
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: Seeking Wisdom and Opinions on my Workstation

Post by onekk »

Generally speaking FreeCAD is CAD system, "engineering grade" maybe but has at least for now some limitations:

- is not using the CPU in multithread so it use only one if your 16 core if you have any.
- is not using the GPU calculation ability, and is using OpenGL to show things so no directly any of the GPU shading and vertex manipulation ability that are present in high end graphics cards.

- specialized mouse has to be supported, some people here use sone of them, but you have to check stsbility if driver as I remember some post about compatibility with MacOS new processors.

However:

- a good monitor (properly tuned for contrast, brightness and subpixel rendering) will be of great help.

- a fast disk and an OS that permit to move tmp dirrectory on this disk will help.

- some memory at least 8Gb better more.

- some training and added patience for the important component that resides between the chair and the keyboard and monitor, and for all his computing device. :D

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
User avatar
bobH2
Posts: 36
Joined: Wed Feb 09, 2022 6:32 pm

Re: Seeking Wisdom and Opinions on my Workstation

Post by bobH2 »

Shark,
I upgraded my GPU a couple of days ago. Previously I had two Asus GT710 GPUs with 1 GB of memory (GT710-SL-1GD5 only has 1 GB not 2 GB).

I have got in the habit of appending a version number every so often when I save a project, especially after getting something finally working right. A couple of days ago, I needed to copy in some work I did on previous versions and I had three instance of FreeCAD running. When I opened the fourth everything crashed.

I have been watching GPU memory consumption off and on using Windows Task Manager and the one card stayed at maybe 10% memory utilization and the other was often at 90% or higher. Sometimes when I opened a second project or did some major operation, or when I switched from one instance of FreeCAD to another, I would get a delay and I could see the memory utilization fluctuate. I assume that Windows or the drivers or something only fills one card at a time with graphics data and the memory is not shared between the GPUs. And only the data from one instance at a time was kept in GPU memory.

So I decided to finally upgrade my GPU and find out for myself if indeed a higher capability GPU would make a difference. I didn't want to spend more than $500 CDN but did finally spend a bit more on a GigaByte GeForce RTX 3060 with 12 GB of memory.

It turns out that was total overkill for FreeCAD.

With multiple projects open, I can see GPU memory hitting from 1.2 to 2.4 GB of utilization and I don't get those periodic pauses. In terms of opening and closing projects, or performing a recompute on a big project, I haven't noticed much difference in speed, if any.

I also made sure I got a three fan unit: My thinking was that three fans would turn slower than two fans and be quieter, yet really be able to cool during high demand moments. Well, they hardly ever spin at all, and are often not even spinning. So far FreeCAD has just not put much of a demand on them.

Practically, all I really needed was a cheap GPU with about 4GB of memory. Having 12 GB should help future proof and if any kids or grandkids come over now, they might be impressed but, I could have gotten by with spending a lot less.

By the way, if you get anything over a RTX 3060, you might have to upgrade your PSU. Check the computer forums first.

As far as a CPU goes, I agree with onekk: Get a lower processor count but a higher clock rate. Only one thread runs at a time it seems, with FreeCAD, and these days even two or three cores are all you really need for doing general stuff. The more cores, the slower each core is. Even when running something like WinZip (and I'm using an old licensed copy - maybe they've changed since then) only one thread is used to compress or decompress and having a faster core means it takes less time.

Oh yes, a few months ago, all four of my monitors (all old monitors) packed themselves in (well one sort of works for awhile when I turn it on when I really need it). I replaced them with two, curved 32" 2560x1440 monitors. They are fantastic! Especially for FreeCAD. If you can only afford one, it would still be way better than two smaller ones.

Code: Select all

OS: Windows Server 2016 Version 1809
Word size of FreeCAD: 64-bit
Version: 0.20.2.29177 +426 (Git)
Build type: Release
Branch: (HEAD detached from 0.20.2)
Hash: 930dd9a76203a3260b1e6256c70c1c3cad8c5cb8
Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.3
Locale: English/Canada (en_CA)
Installed mods: 
  * Assembly4 0.12.6
  * Curves 0.6.8
  * fasteners 0.4.55
  * Help 1.0.3
  * MeshRemodel 1.8919.0
  * sheetmetal 0.2.61
  * Trails 2022.1.0
Hope this helps,
Bob.
User avatar
bobH2
Posts: 36
Joined: Wed Feb 09, 2022 6:32 pm

Re: Seeking Wisdom and Opinions on my Workstation

Post by bobH2 »

After responding to this topic, I was curious to explore the issue of single vs multi-threading performance some more on my own machine.

I chose to use the Xeon W22xx Workstation series of CPUs three years ago. I had a couple bad experiences with bad memory corrupting files and swore I'd never run without ECC again. I also wanted higher single core performance (even before FreeCAD), so went with Xeon.

Here are the choices in the family:

CPUs.png
CPUs.png (11.57 KiB) Viewed 587 times

The least expensive is the W2225 but it also has a high, published single core speed. Four cores was fine for what I do.

Interestingly, I started running CPUID HWMonitor to verify performance with FreeCAD a couple of weeks ago. What really surprised me was I getting single core speeds of over 8GHz! Obviously, Intel's published max speeds aren't accurate. Now, I don't know if I got a wonky CPU or if CPUID is glitchy, or my motherboard has some tricks up its sleeve, or maybe Windows is not reporting accurately, and it would be great if someone else could verify such speeds. But here is a possible answer:

When running normal workloads, my cores generally report from about 1198 MHz to 4092 MHz, with the workload being passed around the cores. But every so often, I'll see speeds such as 6301, 7239, 8963, or 9837 MHz. The lowest so far, and highest so far is 572 MHz to 11322 MHz! I suspect that latter number is either from running WSB or Dedup during overnight runs. And it is obvious by watching CPUID HWMonitor or Windows' performance Monitor, that Windows passes single threads among the cores, presumably for better thermal management.

CPU clocks.png
CPU clocks.png (10.1 KiB) Viewed 587 times

One rather important processor rating, other than core speed, is TDP (or Thermal Design Power). It is a rating of how much heat can be dissipated by the CPU package. When a core is working hard (fast), it consumes more power and thus creates more heat. When all cores are running, I suppose they max out around 4.6 GHz on the W2225. But when a single core is running, and the others are not, if the heat can be dissipated, then maybe Intel allows that single core to run faster. (I don't overclock.)

I also imagine the cores on all seven of the above models are identical, and the package size is the same. I then also imagine that the reason why the higher number of cores can dissipate more heat is that the die area is larger (because there are more cores) and can contact more of the heat shield on top of the CPU. A smaller die doesn't touch the whole area. Since more cores are in contact with the cooling surface, they can all collectively run faster than a CPU with only four cores because the package is better able to dissipate the heat. It probably helps that my CPU cooler is rated for 180 Watts, meaning it is quite capable of dissipating a lot of heat from my CPU, even more than the TDP rating for it.

Now it turns out, when I watch the CPUID HWMonitor, or Windows Resource Monitor, that FreeCad often only runs single threaded, but at other times, runs multi-threaded, especially when loading projects. More cores with good heat dissipation could help during those moments.

I also looked up the Passmark scores for the models and divided it by the number of cores. My chart shows that the W2225 has the highest per core speed. This sort of confirms the total heat dissipation argument. I suspect Passmark runs their tests with jobs that stress all the cores at once, and the CPU package just can't dissipate the heat of all cores running at top speed at the same time.

But what about when there is a single thread that needs cycles? I suspect that when Windows cycles a thread among the cores in a higher core count CPU, each core can actually run at the same speed as the W2225, since the cores are presumably all the same. And with better TDP ratings, by rotating a thread to one core after another, they can all run longer at higher speed before having to slow down because of heating. So now I am not so sure, that at least in this W Xeon line, that single core, published speed or a that a single core performance calculation is the most important - that actually, the core speed is similar in all models of the line.

Passmark also publishes Single Thread performance that shows that the cores of each model deliver roughly the same Passmark performance as each other, but at different clock speeds. This confirms my notion that the single cores all run with similar performance throughout the line. But Passmark's data suggests that the cores are not the same in each model - that the higher end cores actually do more per clock cycle, while running at lower speeds. (I wonder then, if Intel uses identical cores in their models and Passmark is reporting wrongly, or if Intel actually uses more efficient cores that can run at slower speeds in their higher end CPUs. I suspect Passmark is reporting wrong, otherwise, the total Passmark score should be much higher when running all cores at their rated clock rate.)

CPUs - by Thread.png
CPUs - by Thread.png (3.89 KiB) Viewed 587 times

Another rating to look at is amount of Cache. Each core in this series has L1 and L2 cache all to themselves and the L3 cache is shared between all cores (and running processes). When CPUs are running highly intensive computational stuff, lots of cache isn't quite that critical. But when accessing a wide working set of memory, it is significant. Memory is actually quite slow compared to CPU speeds. Processors have aggressive caching techniques to preload memory into cache and lazy write it out to memory again when the processor has done modifying it. The idea is that when working on data, a datum might be accessed several times before an algorithm is done with it. By keeping it in high speed cache, the CPU doesn't have to wait for slow memory.

Especially for single threaded performance, since FreeCAD actually can have working sets in the order of 1.5 MB when just started, to almost 1 GB (in my case) once a project is loaded (and double that for committed memory), having lots of cache would likely really speed things up.

So what would be the best processor to get in this Xeon line?

If my above guesses are correct (and it would be great if someone could confirm) and if I was going to pick between three of them, then the choices would be:
1. For price, the W2225 actually is okay.
2. The W2255 has double the cache and double the Passmark score of the W2225 and the same TDP as the other three high end units.
3. For maximum performance, the W2295 has the highest amount of cache and triple the overall performance of the W2225.

CPUsHighlighted.png
CPUsHighlighted.png (16.38 KiB) Viewed 587 times

Despite the published specs, I believe single core wise, both the W2255 and W2295 would likely deliver significantly higher single threaded performance than the W2225.

Now a lot of the above is conjecture. If anyone has the bucks to actually measure the differences, I would be curious. I haven't found any benchmarks on the Internet that have actually swapped out a low core count with a high core count CPU and reported the difference in reality.

One other area that can affect performance is choice of memory. Faster memory speed and short latency is obvious. But also, choosing a CPU and memory sticks that run with dual or quad channels instead of a single channel might offer additional, if moderate, performance gains, depending upon how FreeCAD is programmed.

I know I'm guessing at a couple of factors here, but I hope this helps someone get some insight into what to check out for their next pick.

Bob.
freedman
Veteran
Posts: 3436
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: Seeking Wisdom and Opinions on my Workstation

Post by freedman »

I have never seen a TV type monitor compete with a good computer monitor. Something like a 1920x1200 will allow you to reduce eye strain and most everything will be crisp. I use 2 monitors @ 1920x1200 DVI, a bit outdated but the screens look amazing on two 24" dell monitors. I use a normal mouse and Gesture mode, couldn't be happier.
Post Reply