Quartus synthesis hardware - 2024 edition!

Discussion of developmental aspects of the MiSTer Project.
foft
Posts: 344
Joined: Thu Dec 03, 2020 11:05 am
Has thanked: 29 times
Been thanked: 125 times

Quartus synthesis hardware - 2024 edition!

Unread post by foft »

I'm tempted to get a faster CPU to speed up Quartus synthesis again.

It's mostly very single core bound, with part of it improving slightly with 4-6 cores. Unfortunately no-one sells fast single (or 4-6) cores now, without including a ton of excess slower cores for parallel workloads. To get a fast single core seems I need to pay for 16 spare cores...

What I don't know is how impacted it is by:
i) Amount of cache
ii) RAM speed, latency, DDR4 vs 5
iii) Newer CPU designs such as Zen 5 and Arrow Lake

I wonder if we should try compiling a sample project to get a few stats. No-one ever benchmarks Quartus for some reason on the reviews :lol:

I'm using a 12100F with DDR4 now (super budget option) and it is noticeably better than my old 8700. I'm tempted by a reduced 14600K, or even 14900K, though the Arrow lake ones are also looking tempting. How about X3D, I know its made for gaming but the oodles of cache could help maybe?

Neocaron
Top Contributor
Posts: 375
Joined: Sun Sep 27, 2020 10:16 am
Has thanked: 209 times
Been thanked: 87 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by Neocaron »

they should definitely use it in benchmark, it's toasting my 5950x CPU everytime I fiddle with the ao486 core XD
When I upgraded from the 3900x to the 5950, I had a massive gain in Quartus, I don't know if it was IPC related or the core count but it was significant.

Remastering Classic Game Cinematics: My new Youtube fun, check it out :D
https://www.youtube.com/@neocaron87

Flandango
Core Developer
Posts: 459
Joined: Wed May 26, 2021 9:35 pm
Has thanked: 59 times
Been thanked: 383 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by Flandango »

I currently have an I9-14900k with 64Gigs of DDR5-6400 and just compiled the Minimig core (code from repo as of this posting) and it took me 10min 33 seconds using 16 out of 24 cores.
Not sure if this is what you wanted but here is a breakdown of compile times:

Code: Select all

Compile Design:          10:33
Analysis & Synthesis:     2:32
Fitter:                   7:39
Assembler:                 :14
TimeQuest:                 :08
dshadoff
Core Developer
Posts: 547
Joined: Sun May 24, 2020 9:30 pm
Has thanked: 20 times
Been thanked: 145 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by dshadoff »

I currently run an Intel 7700K (4.2GHz) with 16GB RAM, and it's much slower than most systems these days.
In particular, I'm curious about the difference between Intel's "top" and AMD's "top". (Arrow Lake looks like a disappointment).
I'll be getting a news system soon, and I'm waiting for AMD's 9800X3D to become available (that is, after release on November 7, when the dust settles and people can actually just walk into a shop and get one - perhaps January).

It would be good to have a "standard" test here, and people post their times for running that test - this way, people can see whether Intel's processor architecture (or AMD's) has a significant advantage on this code.

.... I also wonder how much impact that disk speed (or at least access time) has on it.
And after the huge improvement that all generations of AMD processors received from Windows' scheduling enhancements in a recent Windows release update, how much variance there is between Windows 10, Windows 11, and Linux on this workload.

foft
Posts: 344
Joined: Thu Dec 03, 2020 11:05 am
Has thanked: 29 times
Been thanked: 125 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by foft »

I guess the minimig core is as good as any (I grabbed it just now as of 64cb9ce23b716a9002aaf3a144d26f71a129a8be). I compiled it with Quartus 17.0.0 on my 12100F with 32GB of 3200 DDR4 ram and an NVME SSD. Under Linux (Ubuntu 22.04.4 LTS).

Quartus12100F.png
Quartus12100F.png (23.73 KiB) Viewed 1837 times

So I'd get a 22.6% boost by going to 14900K with DDR5. That is quite an interesting result since purely on clock speed I'd expect 6/4.3 = ~ 40% and there were some small improvements from Alder Lake to Raptor Lake refresh.

Bas
Top Contributor
Posts: 622
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 80 times
Been thanked: 324 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by Bas »

Try putting the files on a tmpfs to cut io performance out of the equation if you have the RAM.

foft
Posts: 344
Joined: Thu Dec 03, 2020 11:05 am
Has thanked: 29 times
Been thanked: 125 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by foft »

Good thought.

Tried it on Windows 11 too for now (same hardware - 12100F):

quartusminimig_12700f_windows.png
quartusminimig_12700f_windows.png (12.26 KiB) Viewed 1726 times

A bit longer but I'd need to repeat to see if its run to run noise, or just slower.

Antoine.WG
Posts: 55
Joined: Mon Jan 09, 2023 11:30 pm
Has thanked: 34 times
Been thanked: 10 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by Antoine.WG »

If the E-cores are getting in your way, change the processor affinity, either through the Task Manager or using the START command to launch Quartus. You can also exclude the virtual hyperthreaded cores if you want to too. Just playing around with it on my 12700K with DDR4, excluding the E-cores does actually speed it up slightly, but disabling the virtual cores had no real effect.

i7-12700K, 32 GB Crucial DDR4-3200, 1 TB Intel P660 PCIe 4.0 x4 NVME SSD, Windows 11 Pro
Deleted the entire folder and re-extracted the source files in between each run.
Changed the CPU affinity with Task Manager -> Details.

i7-12700K:
25 MB shared L3 cache

8 Performance cores: 3.6-5.0 GHz
1.25 MB L2 cache per core
80 KB (32KB instruction + 48 KB data) per core
Hyperthreaded

4 Efficiency cores: 2.7-3.8 GHz
2 MB L2 cache shared per 4-core cluster
96 KB (64 KB instruction + 32 KB data)

8P+4E cores (20 threads) (CPUs 0-19)

Code: Select all

Compile Design		11:30
Analysis & Synthesis	 2:46
Fitter			 8:17
Assembler		 0:17
TimeQuest Analysis	 0:08

8P cores (16 threads) (CPUs 0-15)

Code: Select all

Compile Design		10:58
Analysis & Synthesis	 2:43
Fitter			 7:49
Assembler		 0:15
TimeQuest Analysis	 0:09

8P cores, no hyperthreading (8 threads) (CPUs 0-14 Even)

Code: Select all

Compile Design		10:58
Analysis & Synthesis	 2:42
Fitter			 7:52
Assembler		 0:15
TimeQuest Analysis	 0:08

4P cores, no hyperthreading (4 threads) (CPUs 0-7 Even)

Code: Select all

Compile Design		11:35
Analysis & Synthesis	 2:51
Fitter			 8:16
Assembler		 0:15
TimeQuest Analysis	 0:09

Interesting result: 4E cores (4 threads) (CPUs 16-19)

Code: Select all

Compile Design		20:49
Analysis & Synthesis	 4:42
Fitter			15:20
Assembler		 0:29
TimeQuest Analysis	 0:16

Interesting result: Diminishing returns with core count (2 P-Cores)

Code: Select all

Compile Design		14:39
Analysis & Synthesis	 2:48
Fitter			 11:22
Assembler		 0:17
TimeQuest Analysis	 0:10

Interesting result: Core count does help, a little (2 E-Cores) (CPUs 16-17)

Code: Select all

Compile Design		26:33
Analysis & Synthesis	 4:48
Fitter			 20:56
Assembler		 0:29
TimeQuest Analysis	 0:18

1 P-core (2 threads) (CPUs 0-1)

Code: Select all

Compile Design		19:07
Analysis & Synthesis	 3:07
Fitter			15:32
Assembler		 0:15
TimeQuest Analysis	 0:12

Confirming Intel Hyperthreading does little for this workload result: 1 P-core (1 thread) (CPU 0)

Code: Select all

Compile Design		19:56
Analysis & Synthesis	 3:14
Fitter			16:12
Assembler		 0:16
TimeQuest Analysis	 0:13

A not unexpected result: 1 E-core (1 thread) (CPU 16)

Code: Select all

Compile Design		35:43
Analysis & Synthesis	 5:39
Fitter			29:11
Assembler		 0:30
TimeQuest Analysis	 0:22

These results are interesting to me. Clock speed helps, but more than 2 cores has diminishing returns, but I suspect cache size is king.

foft
Posts: 344
Joined: Thu Dec 03, 2020 11:05 am
Has thanked: 29 times
Been thanked: 125 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by foft »

Wow interesting result from the 12700K. With the E cores off its matching the 14900K. I wonder if the E cores are getting in the way on 14900K and it'd finish in 8-9 minutes otherwise...

sonic
Posts: 1
Joined: Tue May 26, 2020 7:21 pm
Has thanked: 6 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by sonic »

7950X, 96 GB DDR5-5200, Windows 11:
Analysis & Synthesis 00:02:31
Fitter 00:08:50
Assembler 00:00:16
TimeQuest Timing Analyzer 00:00:08
Total 00:11:45

in Eco mode (105 W):
Analysis & Synthesis 00:02:47
Fitter 00:09:51
Assembler 00:00:17
TimeQuest Timing Analyzer 00:00:09
Total 00:13:04

foft
Posts: 344
Joined: Thu Dec 03, 2020 11:05 am
Has thanked: 29 times
Been thanked: 125 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by foft »

Took the plunge and upgraded.
13900KF 64GB DDR5 (RAM not yet overclocked/XMP) Linux (Ubuntu 22.04.5 LTS):

Screenshot from 2024-11-15 22-05-10.png
Screenshot from 2024-11-15 22-05-10.png (32.03 KiB) Viewed 650 times
foft
Posts: 344
Joined: Thu Dec 03, 2020 11:05 am
Has thanked: 29 times
Been thanked: 125 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by foft »

I improved my RAM timings and while it made a large (~ 35 - 40%) change to memory benchmarks, it had near zero impact to Quartus compilation times.

User avatar
limi
Top Contributor
Posts: 773
Joined: Sun May 24, 2020 6:53 pm
Has thanked: 179 times
Been thanked: 570 times

Re: Quartus synthesis hardware - 2024 edition!

Unread post by limi »

If only Quartus ran on an actually fast single core platform like the M4 😄

(yes, this is a joke post, but OMG those single core numbers)

Post Reply