09-30-2019 04:00 AM - edited 09-30-2019 04:02 AM
I'm trying to synth a design on Vivado (tried 2018.3 and 2019.1) and been getting
ERROR: [Common 17-345] A valid license was not found for feature 'Synthesis' and/or device 'xcku115'. Please run the Vivado License Manager for assistance in determining
Looking up my company's license servers, we have licenses for SDAccel, Synthesis and Implementation. I noticed 2 colleagues are using 1 one each (although none is actually using SDAccel, they are seemingly using all SDAccel licenses we have; there are plenty Synthesis and Implementation licenses available) and it seems I can't get a Synthesis/Implementation license because all SDAccel licenses are being used?
This doesn't make sense, if I'm not using SDAccel Vivado should not be trying to checkout a license for it, not to mention fail to run.
10-09-2019 02:31 AM
Hello @andrems ,
Please note that Floating license is checked out for each "process (synthesis, implementation, etc)". Once the process is started, the entire license is checked out for the duration of each process run. Even if you are running a Synthesis run, it will first check out the entire license file out of the floating license Server and will then use e.g. Synthesis licensing feature out of it. Once Synthesis completes, it then returns this Synthesis licensing feature and once done, the entire license is Checked back in then to the floating license server.
In your case, you have 2 SDAccel licenses, which come with Vivado features too. If you have just say 3 users working with Vivado/SDAccel at the same time on 3 different PCs, then the first 2 users will be able to occupy these 2 licenses and the 3rd user will have to wait for the licenses to be Checked back in to the floating license server.
Hope the above is clear.
10-11-2019 06:43 PM
10-14-2019 02:04 AM
Hello @andrems ,
Can you please confirm, do you only have a single SDAccel bundle license? This license comes with with the Vivado related features and also SDAccel ones.
If this a single SDAccel bundle license, then indeed, this single license will be fully checked out if any of the users either open and run SDAccel or if they are running any of the Vivado flows, such as Synthesis, Implementation etc., when not even using the SDAccel tool. This is how licensing works.
You've written this: In other words, if one has 100 synth, 100 impl licenses and 1 SDAccel licenses, only 1 host will be able to run Vivado??
Perhaps you meant: if one has 100 synth, 100 impl runs and 1 SDAccel license, only 1 host will be able to run Vivado??
In this case, yes, only one user on a particular machine will be able to run all of these Synthesis/Implementation runs with a single seat SDAccel license file.
1 license checked out per user regardless of how many jobs they run on a single PC.
Or perhaps, in your case, you have a Vivavdo license and also, separately, SDAccel one? If so, what are the version limits of each of these licenses?
You may want to check the following AR:
From here you can see the order of which license takes precedence (please note that the "highest level of operation" (i.e. #1 rule) would only really apply to IP core licenses rather than software licenses, as software is always going to be just on or off and there are no other levels of operation)).
As you can read, your “oldest version limit” related license (if any) will always be used before one with a later version limit.
Therefore, if you have both Vivado and separately a newer SDAccel related license, and the version limits are different, in this case you can use "sort" to prioritize the license you would like to be used first.
I hope the above is clear.
10-15-2019 06:24 AM
To avoid confusion between terms, let me show what I'm seeing on my end
This is my project:
I started an implementation run on this project and opened the License Manager:
No one else besides me was using any license. I can see I'm using 1 seat of the implementation license, but what I don't understand is why is it also using 1 seat of the SDAccel license? What triggers Vivado to require an SDAccel license in addition to the implementation license in this case?
10-15-2019 07:40 AM
Hello @andrems ,
Please note that in each license there is a name of an actual license file and there are also the licensing features that a license comes with. So, the license name in this case is called 'SDAccel' and this license contains many licensing features, such as 'Synthesis', 'Implementation' etc., e.g.
In the above screenshot, SDAccel is not a licensing feature, but a name of this particular license file. The licensing features included with this license are listed in the PACKAGE section as shown above.
As indicated before, the entire Floating license is checked out for each "process (synthesis, implementation, etc)". Once the process is started, the entire license is checked out for the duration of each process run.
If Vivado needs a Synthesis licenses feature for the Synthesis flow, the entire one seat/license out of the 2 available SDAccel licenses will be occupied (that is the reason why you are seeing 1 license used beside the name of the license (SDAccel in this case)) and also, 1 used seat beside an actual feature, i.e. Synthesis in this case.
SDAccel is not a licensing feature but a name of a lic file. SDAccel related licensing feature is calle ap_opencl.
So, if you be doing work in in SDAccel, you'd see 1 seat used for ap_opencl and one - for SDAccel.
Another example: Vivado related licenses would have a name such as Vivado_System_Edition and this license would come with the following licensing features:
So, again, if you run System Generator for example, in VLM you'd see 1 used seat across Vivado_System_Edition, which is your overall license itself and then you'd also see what licensing feature was used out of this license, i.e. SysGen in this case.
Hope the above is clear. If further clarification is needed, please let me know.