Perfect workstation for FPGA synthesis
Hi there,
I am preparing to build a workstation devoted purely to synthesis and implementation process. The big question is: What would be ideal machine for a single project processing?
I assume tough project parameters:
- that the project is big (over 600k LC)
- the utilisation for logic, FFs, BRAM/URAM/HBM and DSP is high ~80%
- frequency of operation is high (very little slack)
- the design is achievable (can be successfully P&R and timing is fine as well)
- the project is in HDL languages
- the machine has only this one task / project to run at a time
- the machine runs on Linux OS
- the latest Quartus version is run.
I know that a lot can be done by relaxing the parameters above, but for the sake of argument those are fixed - the project is tough but doable. No parameter tricks (like rapid recompile, etc.) are used. Just a pure brute force synthesis from zero to hero.
1) What would be the perfect machine to deliver the quickest results (from ready source code to bitstream)?
2) What kind of memory operations are the limiting factor for the synthesis tool to operate?
___a) memory latency?
___b) memory bandwidth?
___c) memory capacity - for sure it is a limiting factor, however, I can afford a lot of RAM (like 256GB), so this point is out of discussion.
3) What CPU is better?
___a) More slower cores?
___b) fewer, but more efficient?
4) Disk space
___a) NMVe? Maybe Raid?
___b) RAM disk?
5) Does network drive (NAS) affect the performance? In other words, is disk space access latency hidden?
6) Would switching to HLS modify above answers?
I have my gut feelings about that, but I would love to hear from you about your experiences. Having some indication is probably a better approach than just blindly spending my money.
I guess nobody did a full scale investigation, but the short question is what do you do in this field?
Have a great day.