cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
463 Views
Registered: ‎12-13-2018

Different results on different Linux OS using 2017.4

I created 2 FPGA builds on 2 different machines using Vivado 2017.4 running 2 different Linux OS using the same design.

Build 1:  Using Linux Red Hat Enterprise Linux Server release 6.4; default maxThreads = 8; build time = ~4hrs; MET TIMING

Build 2:  Using Ubuntu 18.04.3 LTS; default maxThreads = 8; build time = ~2hrs; FAILED TIMING

 

Reran both builds using maxThreads = 1, both resulted in similar error below:

An unrecoverable error has occurred, synthesis cancelled.

TclStackFree: incorrect freePtr. Call out of sequence?

Abnormal program termination (6)

 

Reran both builds using maxThreads = 1 and using vivado '-stack 2000' option, but similar termination.

 

Ran a third build using a different Linux OS using the following:

Build 3:  Using Ubuntu 16.04.6 LTS; default maxThreads = 8; Results in: Abnormal program termination (6)

 

Any ideas on how to get passed this issue?

 

5 Replies
Highlighted
Adventurer
Adventurer
434 Views
Registered: ‎03-31-2017

Re: Different results on different Linux OS using 2017.4

That's very curious - it implies to me that Vivado uses a seed for P&R, but the seed is different depending on something in the environment. However, Xilinx claims that Vivado doesn't use a seed, and uses some other (unspecified) heuristic that isn't seed-based. I'm not quite sure what that means - the unspecified heuristic must in some way be a seed, and presumably differs depending on the OS.

I suspect your only option is to choose the OS you want and change the strategy until you get something that works. Search for 'strategy' in UG901.

0 Kudos
Highlighted
Visitor
Visitor
427 Views
Registered: ‎12-13-2018

Re: Different results on different Linux OS using 2017.4

I agree.

In the old ISE days, you were able to set the seed.  With Vivado, in the first stage of the build, the checksums are already different.  This is concerning in that if I have a design that build and meets timing using a certain OS, and if I ship this same design to another site and the other site builds the same design and then it does not meet timing....very concerning.

I might just have to modify my build script to just churn until it meets timing.

0 Kudos
Highlighted
Teacher
Teacher
423 Views
Registered: ‎06-16-2013

Re: Different results on different Linux OS using 2017.4

Hi @gortega 

 

How many size do you prepare memory on each OS ?

It depends on environments. (ex. CPU core, memory size and so on)

 

Best regards,

0 Kudos
Highlighted
Visitor
Visitor
320 Views
Registered: ‎12-13-2018

Re: Different results on different Linux OS using 2017.4

Some of the machine settings are as follows:

Build 1: MEETS TIMING; ~4hr build time; Intel(R) Xeon(R) CPU E5-4650 0 @ 2.70GHz; 4 CPUs with 8 cores/CPU; 512GB RAM

Build 2: FAILS TIMING; ~2hr build time; Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz; 2 CPUs with 4 cores/CPU; 32GB RAM

 

Build 2 completes in less time but fails in timing.

0 Kudos
Highlighted
Explorer
Explorer
163 Views
Registered: ‎10-12-2018

Re: Different results on different Linux OS using 2017.4

Same issue using 2017.4 on Windows10 and CentOS-7...

 

0 Kudos