Dual Core or Quad Core when running Quartus 7.1

Hello, I'm about to purchase a new computer and I wanted to get some opinions on what I should get. I mostly work with Quartus II on my job and wanted to know what would be a good system to run the software. I've been hearing more about dual-core and quad core systems which do you think gives better performance running Quartus? Last, should I get

4GB of memory or 2GB? I usually program the larger fpga devices and compilation time takes about 30 minutes and my simulations take about an hour. My current system is a dual processor with 2GB of memory. If anyone can comment on what would be the best computer system I'd greatly appreciate it.

thanks, joe

Reply to
jjlindula
Loading thread data ...

Multi-threaded flows that get strong performance benefits are probably years away. If you won't replace your PC for 5 years, the quad core might be good. For the next 2 years, the dual core should be *plenty* but be sure to get more L2 cache. For the larger FPGAs, larger system memory is suggested. If you were doing Cyclone and Spartan3, I'd suggest the lower memory is fine. With the higher end parts, more memory will be properly utilized.

If you want to run simulations while you're compiling your design and write up the documentation while you wait for those processes to complete, get the quad core. If you just want to do one high-power task and one not so demanding activity, I would expect no improvement of quad-core over dual-core in the next 2 years.

If the quad core allows less L2 cache to the main thread than the dual-core, your performance will actually be worse in the near term. Look into the L2 management as a critical factor in chosing your tool and expect 85-100% of your logical and physical synthesis to be on one core for the year or two directly ahead.

These are my opinions based largely on hear-say and system understanding. I just have a single core at the moment and am trying to make my next work PC (the cheap one) to have as much L2 as is reasonable. The next home system will be the capable machine. It's sad how that goes.

- John_H

Reply to
John_H

Intel's Core-2 based quad-core CPUs (Q6600, QX6700, Xeon E53xx) deliver diminishing returns beyond the dual-core models.

Also, unless you're running Linux, Win XP x64, or Win/Vista 64, the most Windows will use (out of 4GB of physical RAM) is ~3.2GB, depending on what peripherals you have installed.

When I upgraded from an ATI Radeon X600 (128MB) to a Geforce 7900GS (256MB), my "usable RAM" dropped from 3.6GB to 3.2GB. But I can run certain critical applications (Civilizations 4, Company of Heroes, The Sims 2) much better now, so it was a trade-off.

Reply to
Xilinx user

Hi,

To address the question of memory: 2GB should be plenty for almost any design you will do with Quartus. Most Stratix III designs up to a EP3S200 should compile on 32-bit Windows (

Reply to
Paul Leventis

Hi John,

You're right about the importance of memory sub-system performance -- CAD tools have large working sets, so lower memory latency and higher caches are quite important. Intel's quad-core processors are all essentially two dual-core chips slapped into one package, so they possess 2x the L2 cache. Based on the architecture of these chips, I doubt that running a 2-cpu load on a quad-core processor will have a noticeable difference in performance as compared to running the same load on a dual-core processor.

Things will get more interesting when AMD releases their quad-core entry. It supposedly will have independent L2 caches per core, with a shared L3 cache. Also, the integrated memory controller and lower memory latency on the AMD platforms help out Quartus a lot. But then, Intel's 45um offering will also have integrated memory controllers. Isn't competition great?

Regards,

Paul

Reply to
Paul Leventis

Confirmed by an upgrade I did last night from an AMD Althlon 64 3500 to an Athlon 64 X2 4400.

Before the change I rebuilt a design I've been working on recently. It's not that big, Quartus was finished in 4mins 56sec.

When I ran it with the new processor it took.......4mins 56secs, pretty much confirming this is memory bound.

I was a bit disappointed, but at least was able to run Modelsim at full speed in the background at the same time.

I also noticed that when my virus scanner kicked off it's weekly scan I was able to keep working at full speed so I allowed it to finish for a change :-)

Nial.

Reply to
Nial Stewart

Hi Nial,

You have to tell Quartus that you want it to use more than one processor. In the GUI, go to Settings | Compilation Process Settings | Maximum processors allowed for parallel compilation and set it to

  1. Or you can add the line

set_global_assignment -name MAX_PROCESSORS_USED_FOR_MULTITHREADING 2

to your .qsf file.

Not sure why you didn't get a speed-up from the higher clock frequency of your processor though. In general, Quartus benefits both from faster processors and from faster memory, since it isn't fully dominated by the speed of either.

As for the original posters CPU question, I recommend a system-based on the Core2 Duo processor. It is the fastest uni-processor out there (~30% faster than AMD's best right now), and the second core gives you a noticable (10% to 15%) compile time reduction once you set the assignment above. And as Paul notes above, that compile time reduction with a second CPU is growing with each Quartus release.

The quad-core will get you about another 5% compile time reduction now, with more in the future. If you run DSE or multiple Quartus compiles at once you can fully utilize the extra two processors though by simply running another compile (or two) on them. So if you run more than one Quartus at once the quad-core may be worth it, but if not, it isn't worth much more.

If you are compiling the largest devices (3S260 and above), then 4 GB is a better bet than 2 GB. Plus it gives you the option of running more than one Quartus at once to use that second processor if you're targeting a smaller device. If you're using Windows, make sure you get a 64-bit version so you can access all that memory from one process (32-bit Windows only lets you at 2 GB per process).

Vaughn Betz Altera

Reply to
vbetz

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.