Discussion:
[Ghdl-discuss] Simulation speed for versions mcode, llvm, gcc and Xilinx Vivado simulators
Adrien Prost-Boucle
2015-10-21 17:06:39 UTC
Permalink
Hi all,

I've run simulation speed tests for the 3 different flavors of GHDL
(mcode, llvm, gcc) and for 3 versions of the Xilinx Vivado simulator,
XSim (2015.1, 2015.2, 2015.3).

Launched on a x86_64 GNU/Linux system.

I used various applications generated with an HLS tool. The VHDL code
itself is not the point of interest, only simulation speed is.

Attached is the raw result file.

General trend:

- mcode is 2 times slower than gcc and llvm flavors at simulation, but
it launches immediately, which makes it ideal for small-scale
simulations.

- Flavors llvm and gcc present roughly the same perfs.

- Xilinx Vivado simulators are much slower than llvm and gcc flavors of
GHDL. It even seems that the newest version, 2015.3, is a huge
regression compared to version 2015.2.

Besides, for people who are interested in doing tests:
I run ArchLinux distibution and I prepared packages for the 3 GHDL
flavors. All are built from hg source.
mcode  https://aur.archlinux.org/packages/ghdl-mcode-hg/
llvm   https://aur.archlinux.org/packages/ghdl-llvm-hg/
gcc    https://aur.archlinux.org/packages/ghdl-hg/

Adrien
Tristan Gingold
2015-10-22 03:01:31 UTC
Permalink
Post by Adrien Prost-Boucle
Hi all,
I've run simulation speed tests for the 3 different flavors of GHDL
(mcode, llvm, gcc) and for 3 versions of the Xilinx Vivado simulator,
XSim (2015.1, 2015.2, 2015.3).
Launched on a x86_64 GNU/Linux system.
I used various applications generated with an HLS tool. The VHDL code
itself is not the point of interest, only simulation speed is.
Attached is the raw result file.
- mcode is 2 times slower than gcc and llvm flavors at simulation, but
it launches immediately, which makes it ideal for small-scale
simulations.
Yes, this is expected, as code generated by mcode is not optimized.
You don't need to optimize all your design, but generating good code
for ieee packages is a must.
Post by Adrien Prost-Boucle
- Flavors llvm and gcc present roughly the same perfs.
- Xilinx Vivado simulators are much slower than llvm and gcc flavors of
GHDL. It even seems that the newest version, 2015.3, is a huge
regression compared to version 2015.2.
Thank you for the figures!
Post by Adrien Prost-Boucle
I run ArchLinux distibution and I prepared packages for the 3 GHDL
flavors. All are built from hg source.
mcode https://aur.archlinux.org/packages/ghdl-mcode-hg/
llvm https://aur.archlinux.org/packages/ghdl-llvm-hg/
gcc https://aur.archlinux.org/packages/ghdl-hg/
Thanks too. Maybe you want to put this in the wiki pages.

Tristan.

Loading...